| Rev | Age | Author | Path | Log message | Diff | 
           
           
              | 1131 | 4021 d 14 h | aurelien | /branches/v5.10-bambouseraie/ | Création de la branche 5.10 bambouseraie qui permet une recherche étendue contenant le nom d'auteur |  | 
           
              | 1111 | 4074 d 9 h | mathias | /trunk/services/ | Chorodep : ajout du service "infos-espece" qui retourne les mêmes infos que celui de gentiana-services (nom_sci, num_nom, num_tax, noms vernaculaires français, statuts de protection, nombre de départements où l'espèce est présente) Bricolage de sptb
 La classe parente des services (Commun) avait un constructeur foutu à l'envers - ajout de la méthode init() bien pratique
 |  | 
           
              | 1103 | 4088 d 15 h | mathias | /trunk/services/ | Ajout d'un service Noms à chorodep |  | 
           
              | 961 | 4389 d 7 h | raphael | /trunk/services/ | cartes: fixes temporaires (anti-notices) en attendant la story sur l'uniformisation du caractères de séparation des "compléments" dans les ontologies |  | 
           
              | 952 | 4392 d 8 h | raphael | /trunk/services/modules/0.1/ | tests: quelques bugfixes cf php bug #42197 |  | 
           
              | 951 | 4392 d 10 h | raphael | /trunk/services/modules/0.1/ | ontologies: mutualisation de la fonction éclatant des valeurs multiples de "complements", basé sur le séparateur "," |  | 
           
              | 946 | 4392 d 13 h | raphael | /trunk/services/ | tests: retour plus adéquat en cas d'absence de la version de la table de projet demandée et correction des tests en conséquence |  | 
           
              | 941 | 4397 d 8 h | aurelien | /trunk/services/modules/0.1/ | Ajout d'un paramètre référentiel à la méthode de récupération des taxons parents (au lieu de l'extraire de la config) |  | 
           
              | 940 | 4397 d 8 h | aurelien | /trunk/services/ | Ajout ébauche service liste rouge + factorisation de la methode de récupération de hierarchie des taxons dans commun.php |  | 
           
              | 937 | 4398 d 12 h | raphael | /trunk/services/modules/0.1/ | tentative interrompue, de créer une alternative à CommunNomsTaxons pour: - en faire un *toolkit* *véritablement* réutilisable (cf classes éponymes dans bdtfx et isfan)
 - faire remonter les boucles effectuant des requêtes MySQL des niveaux d'imbrications les plus
 enfouis vers les niveaux supérieurs où ils pourraient potentiellement être factorisés.
 
 NB: une réécriture totale s'avèrerait finalement de loin la meilleure option mais du code réutilisable
 passe par la statification des functions/outils présentes dans Commun qui ne dépendent en aucun cas
 (ou presque) de l'instanciation d'une classe.
 |  | 
           
              | 899 | 4420 d 14 h | raphael | /trunk/services/modules/0.1/commun/ | api/aide: correction de "service.wikini" (suppression du "." dans le nom de page) afin de pointer vers une page wikini valide.
 |  | 
           
              | 847 | 4444 d 11 h | aurelien | /trunk/services/modules/0.1/commun/ | Correction des noms trop longs par troncage (temporaire normalement) |  | 
           
              | 837 | 4445 d 8 h | raphael | /trunk/services/modules/0.1/commun/ | meta-données: ajout d'un cache pour les ontologies redondantes |  | 
           
              | 830 | 4446 d 12 h | raphael | /trunk/services/modules/0.1/commun/ | aide: en cas d'erreur, ne pas générer d'E_NOTICE de variable non-existente ce qui ne pourrait qu'amplifier le problème |  | 
           
              | 807 | 4451 d 10 h | raphael | /trunk/services/modules/0.1/ | chorodep|bdtxa/cartes: factorisation du code de génération du fichier de carte PNG, dans Commun |  | 
           
              | 801 | 4452 d 10 h | raphael | /trunk/services/ | cache: fix de l'obtention de la durée du cache auprès de Commun |  | 
           
              | 768 | 4475 d 11 h | raphael | /trunk/services/modules/0.1/ | ontologies/sptb: correction de notices + traçage des requête mysql + compat PHP-5.2 |  | 
           
              | 767 | 4475 d 13 h | raphael | /trunk/services/modules/0.1/ | services: ajout de debug aux requêtes SQL + correction d'un masque pour le service de noms bdtxa |  | 
           
              | 758 | 4483 d 8 h | raphael | /trunk/services/modules/0.1/commun/ | ontologies communes: correction de 2 notices PHP dans le cas de l'absence de passage de masque et de retour_champs.
 Ex: /service:eflore:0.1/bdnt/ontologies/rangTaxo:220/nom
 |  | 
           
              | 733 | 4507 d 11 h | raphael | /trunk/services/modules/0.1/commun/ | ontologies: support de requêtes multi-critères pour les ontologies (partie 2/2). Lorsque des ontologies sont demandées, celles-ci peuvent désormais être regroupées
 au sein d'une même requête.
 La modification, portée à Commun/Ontologie.php affecte donc les web-services n'ayant *pas*
 redéfini leur classe d'accès aux ontologies, c'est à dire (au 28/06/2013):
 * nvjfl
 * bdnt
 
 Exemple:
 Avant, 3 requêtes:
 /service:eflore:0.1/nvjfl/ontologies/numStatut:1
 /service:eflore:0.1/nvjfl/ontologies/numStatut:2
 /service:eflore:0.1/nvjfl/ontologies/genreNombre:10
 
 Après, 1 requête:
 /service:eflore:0.1/nvjfl/ontologies/numStatus:1,numStatus:2,genreNombre:10
 
 Dans le seul cas d'une requête multi-critères le format de retour du web-service
 a été modifié: Un ensemble de clef-valeurs est retourné dans lequel chaque clef
 représente le nom d'un des critères demandés.
 Si un critère ne correspond à rien dans la BDD, celui-ci est absent de l'ensemble retourné.
 
 
 $ ddiff \
 <(GET "http://eflore/$i"|json_pp)				 \
 <(GET "http://www.tela-botanica.org/$i"|json_pp)
 
 # service:eflore:0.1/nvjfl/noms-vernaculaires/attributions?masque.nt=1382&masque.lg=fra&retour.champs=conseil_emploi
 # 2 appels d'ontologies nvjfl, résultat identique
 
 # service:eflore:0.1/bdtxa/taxons/13517/relations/inferieurs
 # 1 appel d'ontologie bdnt/nom, résultat identique
 
 $ diff \
 <(GET http://eflore/service:eflore:0.1/bdnt/ontologies/rangTaxo:70|json_pp) \
 <(GET http://eflore/service:eflore:0.1/bdnt/ontologies/rangTaxo:70,rangTaxo:-1|json_pp) \
 |grep -v rangTaxo:70
 # même résultat (-1 n'existe pas)
 
 Le comparatif suivant provient de l'étude de la requête suivante,
 représentative d'une recherche de nom commun (cf: Cel/export XLS):
 "/service:eflore:0.1/nvjfl/noms-vernaculaires/attributions?masque.nt=1382&masque.lg=fra&retour.champs=conseil_emploi"
 
 Avant   Après
 Requêtes HTTP                  3       2
 Connexions SQL                 4       3
 SELECT                         15      10
 Temps sur 300 (*)              1m36    1m30
 
 (*) $ time \
 mysql -N tb_eflore<<<"SELECT num_taxonomique FROM bdtfx_v1_01 WHERE num_nom = num_nom_retenu ORDER BY ORD(SUBSTRING(nom_sci, 4, 1)) LIMIT 300;"  | \
 xargs -i -t -n 1 curl -so /dev/null "http://eflore/service:eflore:0.1/nvjfl/noms-vernaculaires/attributions?masque.nt={}&masque.lg=fra&retour.champs=conseil_emploi"
 
 Le faible différentiel de temps observable s'explique partiellement par le fait que toutes les recherches de nom vernaculaire
 n'aboutissent pas systématiquement à l'émission de plusieurs requêtes d'ontologie.
 Le différentiel n'en reste pas moins décevant.
 |  |