Ceci est une ancienne révision du document !


Fichier fields.xml : définir des variantes sur les champs transmis

Dans le cadre des requêtes sur l'API sur les fiches (type = fiche, type = q-fiche et type = geojson), il peut être utile de limiter le nombre de champs transmis (pour réduire la taille du fichier JSON résultant) ou de les renommer (par exemple, dans le cas du requête au format GeoJson insérée dans un système qui attend des noms de champs particuliers). Les paramètres fichefields et motclefields permettent de le faire du côté du client, le fichier de configuration fields.xml permet de le faire du côté du serveur.

Effectuer la configuration du côté serveur avec fields.xml simplifie la construction de la requête côté client, offre des possibilités de configuration plus vastes et permet de modifier le comportement par défaut.

Le fichier fields.xml permet de définir des « variantes ». Chaque variante a un nom, il suffit d'indiquer ce nom dans le paramètre fieldvariant disponible dans type = fiche, type = q-fiche et type = geojson pour indiquer la variante à utiliser. Trois variantes sont définies par défaut dans le logiciel avec les noms suivants :

Il suffit de définir dans fields.xml des variantes avec le nom d'une variante par défaut pour la remplacer.

Structure du format XML

L'élément racine est l'élément <fields>. Il peut contenir un nombre illimité d'éléments <variant>, celui-ci doit posséde un attribut obligatoire, @name, qui est le nom de la variante. Le nom de la variante doit être un nom « technique », c'est à dire composé uniquement de minuscules non accentuées, de chiffres et du trait de soulignement _.

Un élément variant possède les élements suivants :

  • <fiche> : optionnel et unique, il possède un attribut @fields destiné à recevoir un contenu identique au paramètre fichefields tel que décrit dans Champs des fiches
  • <motcle> : optionnel et unique, il possède un attribut @fields destiné à recevoir un contenu identique au paramètre motclefields tel que décrit dans Champs des mots-clés
  • <alias : en nombre illimité, permet de renommer un champ, voire de construire un champ concaténant des champs existants, il possède trois attributs :
    • @name : obligatoire, nom du nouveau champ, le nom est libre mais on évitera de le commencer par _ (_ préfixe les champs calculés dans ScrutariJs)
    • @fields : obligatoire, liste des champs composant le nouveau champ, il est similaire à l'attribut @fields de l'élément <fiche>
    • @separator : optionnel, il indique le séparateur à utiliser si le nouveau champ est composé de plusieurs valeurs
serveurscrutari/config/fields.1509801166.txt.gz · Dernière modification: 2017/11/04 14:12 par vincent
CC Attribution-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0