Arborescence
- Le format ScrutariData
- Le serveur Scrutari
- Les clients Scrutari
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. La requête renverra toujours au minimum le code de la fiche.
La valeur du paramètre fichefields est une liste de champs séparés par une virgule.
Les champs possibles sont les suivants :
Une chaine marquée est une chaine découpée pour indiquer la position des sous-chaines correspondant à la séquence de recherche. Ce découpage permet par exemple de surligner ces sous-chaines pour les mettre en évidence. Une chaine découpée se présente sous forme d'un tableau qui contient soit des chaines (parties non marquées), soit des objets avec deux propriétés : i pour la position de de la chaine recherchée correspondante dans la chaine de recherche et s pour la chaine elle-même.
Exemple : la séquence de recherche est durab dev, le titre trouvé est « définition du Développement Durable », la propriété mtitreretournée sera le tableau suivant :
mtitre: [ "définition du ", // début du titre { //objet correspondant à la présence de la deuxième séquence : dev i: 2, s: "Dév" }, "eloppement ", // suite du titre { //objet correspondant à la présence de la première séquence : durab i: 1; s: "Durab" }, "le" // fin du titre ]
Cela permettra de l'afficher ainsi : définition du Développement Durable
Note : dans le cas d'une chaine qui est non marquée mais tout de même incluse (cas de mtitre_def), le résultat sera un toujours tableau qui contiendra simplement une unique chaine
Note : même si un champ est indiqué dans fichefields, la propriété peut être absente dans l'objet JSON correspondant si la valeur est nulle.
{ codefiche: … , // code de la fiche, toujours présent (entier > 0) codecorpus: … , // champ 'codecorpus' (entier > 0) codebase: … , // champ 'codebase' (entier > 0) basename: … , //nom technique de la base tel que dans l'URI (chaine) corpusname: … , //nom technique du corpus tel que dans l'URI (chaine) ficheId: …, // champ 'fiche-id' (chaine) titre: … , // champ 'titre' (chaine) soustitre: … , // champ 'soustitre' (chaine) href: … , // champ 'href' (chaine) lang: … , // champ 'lang' (chaine, code ISO de la langue) annee: … , // champ 'annee' (entier) ficheIcon: … , // champ 'ficheicon' (chaine) icon: … , // champ 'icon' (chaine) lat: … , // latitude si champ 'geo' (chaine) lon: … , // longitude si champ 'geo' (chaine) complementArray: [ // tableau des champs complémentaires si champ 'complements' { num: … , // numéro du champ complémentaire (entier > 0) comp: … // texte du champ complémentaire (chaine) } ], mtitre: [ // tableau du titre marqué // voir ci-dessus chaines marquées ], msoustitre: [ // tableau du soustitre marqué // voir ci-dessus chaines marquées ], mcomplementArray: [ // si champ 'mcomplements, tableau des compléments marqués { num: … , // numéro du champ complémentaire (entier > 0) mcomp: [ // tableau du complément marqué // voir ci-dessus chaines marquées ] } ], pertinence: … , // pertinence de la fiche par rapport à la recherche (réel entre 0 et 1) }