Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
Prochaine révision Les deux révisions suivantes
serveurscrutari:json:fiche_fields [2017/11/02 12:42]
vincent
serveurscrutari:json:fiche_fields [2017/11/04 14:48]
vincent
Ligne 1: Ligne 1:
 ====== Champs des fiches ====== ====== Champs des fiches ======
  
-Les champs des fiches constituent la masse la plus importante de données susceptibles d'​être transmise par les différentes requêtes. La liste des champs à transmettre ​doit donc être indiquée par le paramètre //​fichefields//​.+Les champs des fiches constituent la masse la plus importante de données susceptibles d'​être transmise par les différentes requêtes. La liste des champs à transmettre ​est indiquée ​soit par le paramètre //​fichefields//​, soit par la variante de champs à utiliser indiquée par le paramètre //​fieldvariant//​. Dans le cas d'​absence des deux paramètres,​ c'est la variante par défaut qui est utilisée (voir la configuration des variantes de champs côté serveur avec le fichier [[serveurscrutari:​config:​fields|fields.xml]].
  
-La valeur du paramètre //​fichefields//​ est une liste de champs séparés par une virgule avec les valeurs suivantes :+ 
 +La valeur du paramètre //​fichefields// ​ou de l'​attribut //@fields// de l'​élément !!<​fiche>​!! dans [[serveurscrutari:​config:​fields|fields.xml]] ​est une liste de champs séparés par une virgule avec les valeurs suivantes :
  
   * //​-codefiche//​ : par défaut, le code de la fiche est toujours inséré, ce paramètre permet de l'​éviter   * //​-codefiche//​ : par défaut, le code de la fiche est toujours inséré, ce paramètre permet de l'​éviter
Ligne 27: Ligne 28:
   * //mattrs// : tableau associatif des attributs marqués suivant le même principe que //mtitre//, seuls les attributs qui ont servi à la recherche sont inclus   * //mattrs// : tableau associatif des attributs marqués suivant le même principe que //mtitre//, seuls les attributs qui ont servi à la recherche sont inclus
   * //​mattrs_primary//​ : comme précédent,​ mais tous les attributs du premier groupe (ceux placés avanc les champs complémentaires) sont inclus le tableau associatif   * //​mattrs_primary//​ : comme précédent,​ mais tous les attributs du premier groupe (ceux placés avanc les champs complémentaires) sont inclus le tableau associatif
-  * //​mattrs_all//​ : comme précédent,​ mais tous les attributs sont inclus le tableau associatif+  * //​mattrs_all//​ : comme précédent,​ mais tous les attributs ​du premier et second groupes ​sont inclus le tableau associatif, à l'​exception de ceux de type « block » 
 +  * //attrs// : attributs techniques sous le forme d'un tableau associatif 
 +  * //​attrs_primary//​ : attributs techniques et du premier groupe sous la forme d'un tableau associatif 
 +  * //​attrs_all//​ : tous les attributs sans exception sous la forme d'un tableau associatif (peut conduire à un fichier particulièrement volumineux s'il y a des attributs de type « block »)
   * //score// : score de la fiche pour la recherche, c'est un tableau de trois réels entre 0 et 1 : le premier est le score pour l'​occurrence,​ le deuxième pour la date et le troisième pour l'​origine ; c'est la somme de ces scores qui détermine l'​ordre des fiches   * //score// : score de la fiche pour la recherche, c'est un tableau de trois réels entre 0 et 1 : le premier est le score pour l'​occurrence,​ le deuxième pour la date et le troisième pour l'​origine ; c'est la somme de ces scores qui détermine l'​ordre des fiches
   * //{nom d'​attribut}//​ : tout nom d'​attribut valide, la valeur de l'​attribut sera une chaine ; si l'​attribut possède plusieurs valeurs elles seront concaténées suivant un mode opératoire dépendant du type de l'​attribut   * //{nom d'​attribut}//​ : tout nom d'​attribut valide, la valeur de l'​attribut sera une chaine ; si l'​attribut possède plusieurs valeurs elles seront concaténées suivant un mode opératoire dépendant du type de l'​attribut
Ligne 61: Ligne 65:
 ===== Renommage des noms des champs dans l'​objet résultant ===== ===== Renommage des noms des champs dans l'​objet résultant =====
  
-Cette fonctionnalité peut être utile quand l'​objet JSON est traité directement par d'​autres outils (dans l'​export au format GeoJSON notamment), il permet de changer ​le nom de la propriété dans l'objet résultantCette fonction ​est possible ​pour les champs suivants :+Cette fonctionnalité peut être utile quand l'​objet JSON est traité directement par d'​autres outils (dans l'​export au format GeoJSON notamment)
 + 
 +Le moyen le plus efficace est de renommer un champ est d'utiliser les variantes de champs définies du côté serveur avec le fichier [[serveurscrutari:​config:​fields|fields.xml]] et les éléments !!<​alias>​!! (qui permettent notamment la concaténation de plusieurs champs en un seul). 
 + 
 +Pour des raisons historiques et pratiques, il est possible ​de renommer certains ​champs ​directement avec les paramètres ​suivants :
  
   * //​field-titre//​ : nom de la propriété du titre (//titre// par défaut)   * //​field-titre//​ : nom de la propriété du titre (//titre// par défaut)
Ligne 69: Ligne 77:
   * //​field-{nom d'​attribut}//​ : pour toutes les propriétés basées sur un attribut (//{nom de l'​attribut}// ​ par défaut)   * //​field-{nom d'​attribut}//​ : pour toutes les propriétés basées sur un attribut (//{nom de l'​attribut}// ​ par défaut)
  
-Par exemple, l'​application Umap (http://​umap.openstreetmap.fr) peut traiter directement le résultat d'une recherche au format GeoJSON. Cependant, le nom d'un marqueur est déduit de la propriété //name//. Avec le paramètre //​field-titre=name//,​ on s'​assure que le titre apparait sous la propriété //name//.+
  
  
serveurscrutari/json/fiche_fields.txt · Dernière modification: 2022/04/05 00:25 par vincent
CC Attribution-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0