type = q-fiche

Cette requête JSON est la requête principale de Scrutari car c'est elle qui permet de faire une recherche sur les fiches. Elles retournent toutes les fiches ainsi que tous les mots-clés qui ont servi à la recherche.

Paramètres

Paramètres communs obligatoires

  • q : séquence de recherche (est ignoré si qid est indiqué) (voir Syntaxe d'une recherche)
  • version : version à utiliser (Version actuelle : 3)

Paramètres communs optionnels

  • q-mode : mode d'analyse de la chaine de recherche définie par le paramètre q (voir Syntaxe d'une recherche)
  • lang : langue à utiliser de préférence pour les intitulés
  • corpuslist : limitation de la recherche aux corpus indiqués
  • baselist : limitation de la recherche aux corpus des bases indiquées
  • categorylist : limitation de la recherche aux corpus appartenant aux catégories indiquées
  • thesauruslist : pour les mots-clés, limiter la recherche aux thésaurus indiqués
  • langlist : limitation de la recherche aux fiches dans des langues déterminées
  • start : point de départ des fiches retournées ; lorqu'il y a des catégories, le comportement exact est déterminé par le paramètre starttype
  • limit : limite du nombre de fiches retournées
  • startype : complement du paramètre start indiquant le comportement de la sélection (n'est utile que s'il y a des catégories), les valeurs possibles sont les suivantes :
    • global (valeur par défaut) : le point de départ est évaluée par rapport à l'ordre global des fiches (si il y a 15 fiches dans la première catégorie et 40 dans une catégorie, le point de départ 20 correspond à la cinquième fiche du second groupe)
    • in_all : le point de départ est évalué pour chaque catégorie prise séparément : le paramétrage start=1 et limit=50 renverra les cinquante premières fiches de chaque catégorie
    • in: … : comme précédemment sauf que le point de départ n'est évalué que pour les catégories listées après in:
  • fichefields : champs qui se retrouveront dans les objets du tableau ficheArray (voir Champs des fiches)
  • motclefields : champs qui se retrouveront dans les objets du tableau motcleArray (voir Champs des mots-clés)
  • fieldvariant : variante de champs à utiliser pour les fiches comme les mots-clés (voir le fichier fields.xml et Champs des fiches) (ignoré si fichefields ou motclefields sont définis)

corpuslist, baselist, categorylist et thesauruslist peuvent être utiliser en mode d'exclusion, c'est à dire pour indiquer des corpus, des bases, des catégories ou des thésaurus qui doivent être exclus de la recherche. Pour cela, il faut commencer le paramètre par un point d'exclamation !.

Dans tous les cas corpuslist et baselist s'additionnent (la liste des corpus sélectionnés est celle de corpuslist ainsi que tous les corpus des bases indiquées par baselist). Si baselist indique une exclusion et corpuslist une inclusion (ou inversement), c'est le critère d'exclusion qui a préséance sur le critère d'inclusion (i.e. un corpus listé dans corpuslist mais appartenant à une base exclue par baselist sera exclu).

Paramètres spécifiques obligatoires

  • qid : au lieu du paramètre q, il est possible d'indiquer l'identifiant du recherche déjà effectuée (afin, par exemple de récupérer l'information sur une plage de fiches). q et qid sont mutuellement excluants (qid ayant la préséance sur q), autrement dit c'est la présence de l'un des deux qui est obligatoire.

Paramètres spécifiques optionnels

  • insert: gère les objets supplémentaires dans l'objet Json retourné, les valeurs possibles (séparées par des virgules) sont les suivantes :
    • -motclearray : le tableau des mots-clés est inséré par défaut, ce paramètre permet de l'éviter
    • -searchmeta : les informations sur la recherche sont insérées par défaut, ce paramètre permet de l'éviter
    • engineinfo : insère les informations sur le moteur (équivalent de type = engine&data=all moins les statistiques)
  • origin : origine de la recherche (chaine libre qui permet d'avoir une idée dans les journaux de l'origine de la recherche)
  • flt (flt-indexation, flt-date, flt-qid) : filtres appliqués constituant une présélection de fiches avant la recherche (voir Syntaxe des filtres)
  • ponderation : poids des différents facteurs dans le calcul de la pertinence (voir Pondération de la pertinence
  • wildchar : indique si une troncature doit être appliquée automatiquement (application d'un astérisque automatique au début ou à la fin du terme), les valeurs possibles sont both, end (valeur par défaut), start et none

Objet retourné

Version 3 :

{
  ficheSearchResult: {
    searchMeta : { //objet contenant les informations sur la recherche
      q:, //séquence de recherche (chaine)
      qId:, //identifiant de la recherche (chaine)
      lang:, //langue utilisée pour l'interface (valeur du paramètre lang s'il était présent) (chaine)
      ficheCount:, //nombre de fiches trouvées
      ficheMaximum:, //nombre de fiches sur lesquelles a porté la recherche
      motcleCount:, //nombre de mots-clés contenant au moins un des composants de la séquence de recherche
      options: { // objet des options
        baselist: { // si la recherche se fait sur une sélection de base
          exclude:, //booléen sir la liste est exclusive ou inclusive
          array: [
            … code des bases
          ]
        },
        langlist:, // même modèle que langlist
        corpuslist:, // même modèle que corpuslist
        thesauruslist: // même modèle que thesauruslist
      }
    },
    ficheGroupType:, // type de groupement des fiches, prend la valeur "category" (regroupement par catégorie) ou "none" (pas de regroupement)
    ficheGroupArray: [ //tableau des groupes de fiches répondant aux critères de recherche, vide s'il n'y aucune fiche
      { // chaque groupe de fiches est un objet
        category:  { // objet décrivant la catégorie du groupement, présent uniquement si ficheGroupType="category", autrement dit, si des catégories sont définies pour le moteur en question
        {
          rank:, // rang de la catégorie(entier > 0)
          name:, // nom de la catégorie (chaine)
          title:// intitulé de la catégorie dans la langue d'interface (chaine)
        },
        ficheCount:,//Nombre total de fiches dans le groupe
        ficheArray: [ //tableau des fiches (sa longueur peut être largement inférieure à ficheCount si le paramètre start est défini)
          { // chaque fiche est un objet
            __fichefields__ // série de propriétés définies par les paramètres fichefields ou fieldvariant
            codemotcleArray: [...] // tableau des codes des mots-clés participant à la recherche et indexant la fiche (tableau d'entiers > 0)
          }
        ]
      }
    ],
    motcleArray: [ // tableau des mots-clés, vide s'il n'y a aucun mot-clé
      {
        __motclefields__ // série propriétés définies par les paramètres motclefields ou fieldvariant
      }
    ],
    engineInfo: {//objet identique à l'objet produit par type=engine (présent si le paramètre insert contient la valeur engineinfo)}
  }
}

Version 1 et 2 :

{
  ficheSearchResult: {
    q:, //séquence de recherche (chaine)
    qId:, //identifiant de la recherche (chaine)
    lang:, //langue utilisée pour l'interface (valeur du paramètre lang s'il était présent) (chaine)
    ficheCount:, //nombre de fiches trouvées
    ficheMaximum:, //nombre de fiches sur lesquelles a porté la recherche
    motcleCount:, //nombre de mots-clés contenant au moins un des composants de la séquence de recherche
    ficheGroupType:, // type de groupement des fiches, prend la valeur "category" (regroupement par catégorie) ou "none" (pas de regroupement)
    ficheGroupArray: [ //tableau des groupes de fiches répondant aux critères de recherche, vide s'il n'y aucune fiche
      { // chaque groupe de fiches est un objet
        category:  { // objet décrivant la catégorie du groupement, présent uniquement si ficheGroupType="category", autrement dit, si des catégoires sont définies pour le moteur en question
        {
          rank:, // rang de la catégorie(entier > 0)
          name:, // nom de la catégorie (chaine)
          title:// intitulé de la catégorie dans la langue d'interface (chaine)
        },
        ficheCount:,//Nombre total de fiches dans le groupe
        ficheArray: [ //tableau des fiches (sa longueur peut être largement inférieure à ficheCount si le paramètre start est défini)
          { // chaque fiche est un objet
            __fichefields__ // série propriétés définies par les paramètres fichefields ou fieldvariant
            codemotcleArray: [...] // tableau des codes des mots-clés participant à la recherche et indexant la fiche (tableau d'entiers > 0)
          }
        ]
      }
    ],
    motcleArray: [ // tableau des mots-clés, vide s'il n'y a aucun mot-clé
      {
        __motclefields__ // série propriétés définies par les paramètres motclefields ou fieldvariant
      }
    ],
    corpusIntituleArray: [ // tableau des intitulés de corpus, si le paramètre intitule est défini
      {
        codecorpus:, // code du corpus (entier > 0)
        corpus:, // intitulé du corpus (chaine)
        fiche:, // intitulé d'une fiche (chaine)
        complement_XXX:// intitulé du complément de numéro XXX
      }
    ],
    attributes: {//objet identique à l'objet attributes de type=engine (présent si le paramètre intitules a la valeur attributes)}
  }
}

Version 0 :

{
 ficheGroupType:"corpusclasse" (remplacé de "category")
 
corpusClasse:  { // à la place category
        {
          rank:, // rang de la classe (entier > 0)
          name:, // nom de la classe (chaine)
          intitule:// intitulé de la classe dans la langue d'interface (chaine)
        },
serveurscrutari/json/type_qfiche.txt · Dernière modification: 2017/11/04 16:05 par vincent
CC Attribution-Noncommercial-Share Alike 4.0 International
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0