Subversion Repositories eFlore/Projets.eflore-projets

Rev

Show changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
1131 3714 d 1 h aurelien /branches/v5.10-bambouseraie/ Création de la branche 5.10 bambouseraie qui permet une recherche étendue contenant le nom d'auteur  
1109 3773 d 22 h mathias /trunk/services/modules/0.1/nvjfl/ nvjfl : l'action /#id#/champ+autrechamp marche (il était temps)  
1108 3774 d 20 h mathias /trunk/services/modules/0.1/nvjfl/ nvjfl : group by pour retourner le ombre de résultats demandé, et plusieurs taxons par nom vernaculaire (group_concat, séparés par virgule)  
1107 3776 d 0 h mathias /trunk/services/modules/0.1/ nvjfl : les résultats sont triables, et on peut lui demander de retourner le num_taxon en plus
un peu de refactoring (visibilité d'un attribut)
 
980 4042 d 19 h mathias /trunk/services/modules/0.1/nvjfl/ Le service nvjfl retourne maintenant un nombre de résultats correct  
966 4080 d 21 h raphael /trunk/services/modules/0.1/nvjfl/ nvjfl: retourne du json vide en cas de 0 résultat afin d'éviter des notices pour eflore/consultation qui attend la clef "resultat"  
888 4118 d 20 h raphael /trunk/services/modules/0.1/nvjfl/ regression de r784: "code_langue" est un attribut utilisé par eflore consultation, "langue.code" par les tests  
848 4136 d 23 h raphael /trunk/services/modules/0.1/nvjfl/ nvjfl: fix 2 notices  
832 4138 d 18 h raphael /trunk/services/modules/0.1/nvjfl/ nom-vernaculaires: multiplexage des requêtes ontologiques amélioré [ontologie "genre" pris en compte]

Les requêtes multi-critères sont désormais utilisées pour plusieurs ontologies différentes, du moment
que le webservice distant est le même. Ainsi les performances sont augmentées significativement
lors plusieurs retour.champs appartement à un même webservice d'ontologies sont demandés.

Exemple, pour le taxon nt=1382, la langue français lg=fra et les retour.champs=conseil_emploi,genre:
(/nvjfl/noms-vernaculaires/attributions?masque.nt=1382&masque.lg=fra&retour.champs=conseil_emploi,genre&navigation.limite=4)

La requête d'ontologies interne est désormais:
* /nvjfl/ontologies/numStatut:1,genreNombre:11,genreNombre:10

Alors qu'auparavant elle aurait induit:
* /nvjfl/ontologies/numStatut:1 # multiplage actif, mais une seule valeur pour cette ontologie
* /nvjfl/ontologies/genreNombre:11 # ontologie différente (non-multiplexé par ailleurs)
* /nvjfl/ontologies/genreNombre:10 # idem
 
831 4138 d 20 h raphael /trunk/services/modules/0.1/nvjfl/ nvjfl: ontologies, 2 bugfixes
1) l'attribut _result_ontologies@nvjfl était présent dans le JSON renvoyé à cause
de l'utilisation de isset() sur une valeur de tableau existante mais NULL.
array_key_exists() devait être utilisé

2) Lorsque la recherche d'ontologies est nécessaire, mais que 1 seule l'est, le
JSON d'ontologies renvoyé n'a pas la même structure (il n'est pas indexé par critère
de requête). Ce cas n'était pas traité correctement ce qui amenait à retourner un
"conseil_emploi" NULL.
exemple d'URL: /nvjfl//noms-vernaculaires/attributions?masque.nt=1382&masque.lg=fra&retour.champs=conseil_emploi&navigation.limite=2
 
809 4143 d 20 h raphael /trunk/services/modules/0.1/nvjfl/ nvjfl: utilisation de la bonne URL de webservice (prod-prod, test-test)  
803 4144 d 22 h raphael /trunk/services/modules/0.1/nvjfl/ nvjfl: compat PHP-5.2, utilisation de "self::m" au lieu de "static::m"  
784 4146 d 23 h raphael /trunk/services/ webservices: actualisation de plusieurs tests (chorodep/nvjfl/bdtfx)  
734 4199 d 23 h raphael /trunk/services/modules/0.1/nvjfl/ nom-vernaculaires: support de requêtes multi-critères pour NVJFL, côté client: ACTIVATION
Ce commit active la recherche d'ontologie par multi-critères
pour le web-service de nom vernaculaire JFL.
Un define(), nécessaire mais malheureusement précédemment omis, a été rajouté.
 
731 4200 d 19 h raphael /trunk/services/modules/0.1/nvjfl/ nom-vernaculaires: support de requêtes multi-critères pour NVJFL, côté client (partie 1).
Lorsque des données ontologiques propres à la base NVJFL sont nécessaires, celles-ci sont
chargée en une seule fois en tirant parti des requête ontologiques multi-critères.

ATTENTION: le code effectif est encore désactivé (par un if(FALSE...))
car le commit correspondant dans la classe d'ontologie NVJFL n'est pas encore présent.
(partie 2, cf: services/modules/0.1/commun/Ontologies.php)

Le fonctionnement est le suivant:
1) NvjflOntologieIndex()
Concaténer tous les critères nécessaires, exemple: numStatut:1,numStatut:2,...
et faire un lien entre d'une part
* un tableau temporaire associant requête et résultat
et d'autre part:
* le tableau général associant résultat existant [ champs standards ] et requête

2) NvjflOntologieExpand()
Obtenir une URL vers le web-service multi-critère, l'appeler et
enregistrer les résultats à la place qui leur est destinée dans le
tableau temporaire "requête -> résultat"
L'index spécial créé en 1), du tableau des résultats généraux est mis
à jour automatiquement puisqu'il s'agit d'une référence.

3) NvjflOntologieCombine()
Nettoyer les éléments de résultats pour et copier les valeurs demandée dans
un index correctement nommé (dépendant du web-service, et plus directement de
la variable $champ_infos).

Un modèle similaire pourrait être reproduit pour d'autre partie de code effectuant
des requêtes sans que des modification majeures du concept soient nécessaire.

Cependant une manière plus générale d'aborder la résolution consisterait à effectuer
l'indexation à partir des URL déjà générées plutôt que sur les éléments de tableau de
résultats, cependant le faible nombre de web-service supportant le multi-critère et la
diversité des schémas d'URL ne plaident pas en faveur d'une généralisation trop précoce.
 
730 4200 d 20 h raphael /trunk/services/modules/0.1/nvjfl/ nom-vernaculaires: fix cosmétiques.
Clarification du code (index de tableau) et modification des boucles.
Le cas du traitement des ontologies est découplé de la boucle d'initialisation des
valeurs standard.

Par conséquent, ajouterChampsOntologieLigneResultat() n'est plus utilisée, mais
une fonction faisant le traitement de l'ensemble des résultats la remplace ce qui
pourra permettre, à terme, une vision intelligente du contexte dans le cadre duquel un
ensemble de valeurs ontologiques sont nécessaires à la complétion des résultats.

Un stub à été inséré à l'endroit où un traitement spécifique par ontologie pourra apparaître
permettant ainsi d'utiliser des requêtes multi-critères pour les seuls web-services le supportant
effectivement.
 
729 4200 d 20 h raphael /trunk/services/modules/0.1/nvjfl/ nom-vernaculaires: fix cosmétiques.
Suppression d'affectations inutiles (sur-affectations), de tests inutiles
et généralisation de ajouterChampsOntologieLigneResultat().


Considérant que les sous-appels multiples aux web-services sont nichés dans:
chercherSignificationCode()
Appellée, en boucle, par ajouterChampsOntologieLigneResultat()
Appellée, en boucle, par formaterNomsVernaculairesAttributions(),

Considérant que le cache de réponse par url ($this->signification_code),
ne peut offrir à lui-seul une amélioration sensible des performances,

L'objectif de faire usage d'un webservice supportant de multiples
critères d'ontologies par requête nécessite comme préalable de faire
remonter ces appels en amont du cycle afin de se donner
l'opportunité des les factoriser.

Ce commit représente un premier pas dans ce sens.
 
659 4290 d 19 h delphine /trunk/services/modules/0.1/nvjfl/ changement du tri pour nom et nom_attribution : tri par statut  
627 4482 d 21 h aurelien /trunk/services/modules/0.1/nvjfl/ Modification pour que l'auteur soit renvoyé dans les noms verna  
608 4512 d 2 h mathilde /trunk/services/modules/0.1/nvjfl/ refactorisation de formaterNomsVernaculaires  
563 4557 d 21 h aurelien /trunk/services/modules/0.1/ correction d'un constructeur appelé sans paramètres qui causait une erreur  
536 4574 d 0 h gduche /trunk/services/ cache des webservices  
374 4652 d 3 h delphine /trunk/services/modules/0.1/nvjfl/ debug recupererNomTaxxons suppression envoie de quote dans l'url  
286 4718 d 21 h aurelien /trunk/services/modules/0.1/nvjfl/ ajout d'un paramètre pour indiquer les champs supplémentaires  
285 4718 d 22 h aurelien /trunk/services/modules/0.1/nvjfl/ Correction d'un mauvais commit  
284 4718 d 22 h jpm /trunk/services/modules/0.1/nvjfl/ Correction erreur de commit.  
283 4718 d 22 h jpm /trunk/services/modules/0.1/nvjfl/ Correction affichage de la carte.  
282 4718 d 22 h aurelien /trunk/services/modules/0.1/nvjfl/ Modificatin d'un passage par référence  
281 4718 d 22 h aurelien /trunk/services/modules/0.1/nvjfl/ ajout de commentaires  
280 4718 d 23 h aurelien /trunk/services/modules/0.1/nvjfl/ Grosse amélioration de performance sur le service NomsVernaculaires  
279 4719 d 3 h aurelien /trunk/services/modules/0.1/nvjfl/ Ajout d'un champ de tri par défaut, à voir s'il fait l'indiquer dans l'url  
277 4719 d 20 h aurelien /trunk/services/modules/0.1/nvjfl/ Ajout des infos de conseil d'emploi et de genre lors de la demande en json max  
180 4768 d 19 h delphine /trunk/services/modules/0.1/nvjfl/ ajout de % avant la recherche dans le cadre de la recherche étendue
affichage par ordre alpha
 
164 4769 d 19 h delphine /trunk/services/modules/0.1/nvjfl/ ajout du numéro nomenclaturale dans le cas d'un retour max  
160 4782 d 18 h delphine /trunk/services/modules/0.1/nvjfl/ amélioration et test nvjfl
ajout de la ressource attributions
 
152 4783 d 20 h delphine /trunk/services/modules/0.1/nvjfl/ prise en compte du paramétre version.projet  
136 4790 d 20 h aurelien /trunk/services/modules/0.1/ Modification de la recherche étendue afin que celle ci se comporte comme le carnet en ligne (les ' ' (espaces) sont remplaces par des '% ' (espace et pourcent)  
132 4791 d 2 h aurelien /trunk/services/modules/0.1/nvjfl/ Ajout d'un type de retour oss pour les noms vernaculaires  
109 4796 d 22 h jpm /trunk/services/ Correction du service nvjfl.  
6 4809 d 19 h jpm /trunk/services/modules/0.1/ Ajout des autres projets d'eFlore.