Télécharger
    Installer
    Présentation
    Configuration
    Indexation
    Recherche
    OAI
    Javadoc
    Référence API-XSP
       Pages XSP
       Paramètres SDX
       Vue d'ensemble
          Structure
          Paramètres et flux
          Identification
          Droits
          Localisation
          Pipelines
         +Thesaurus <-
          Indexation
          Recherche
          Documents
       Liste alphabétique
    Migration
    Schemas
    Performances


SDX

Thesaurus

Liste des actions décrites dans cette page :

Concepts clés

SDX-2 introduit l'utilisation de thesauri dans ses applications. Cela renforce le cadre de recherche offert par SDX, un thesaurus permettant d'étendre une requête à des termes équivalents, proches, spécifiques, etc.

L'emploi d'un thesaurus dans une application SDX-2 est relativement simple. Un thesaurus se présente physiquement sous la forme d'un fichier XML (voir le fichier dico.xml fourni avec l'application SDXTest). Pour SDX, un thesaurus est une base de documents à part entière. Elle est déclarée dans le fichier application.xconf comme une autre base. Son fichier XML sera indexé ; il devient donc cherchable. Autrement dit, l'utilisation d'un thesaurus dans une requête revient à effectuer une recherche dans (au moins) deux bases de documents.

On pourra se reporter au fichier application.xconf de démonstration fourni avec cette documentation pour connaître la syntaxe de déclaration d'un thesaurus.

On se reportera à la documentation de l'élément sdx:expandQuery qui permet d'utiliser un thesaurus pour étendre une recherche.

sdx:thesaurus

Code implémentant cette actionsdx-parameters.xsl
Contexte d'utilisationsdx:thesaurus ou ses attributs spécifiques peuvent être employés avec sdx:expandQuery. Ce dernier étant utilisable avec l'ensemble des actions de recherche ; cela signifie que l'on peut employer un thesaurus avec l'ensemble des sdx:*Query.
Contenu éventuelsdx:app

Tableau 1. Paramètres spécifiques

NomDescription 
thIdentifiant du thesaurus.Obligatoire
depthIndique la profondeur de recherche autorisée au sein du thesaurus. Par défaut, SDX utilise les valeurs déclarées dans le fichier application.xconfFacultatif
relationPrécise le type de relation autorisé. Par défaut, SDX utilise les valeurs déclarées dans le fichier application.xconfFacultatif
langIndique la langue du terme recherché. Par défaut, il s'agit de la langue courante. (FIXME)Facultatif

Tableau 2. Paramètres communs

NomDescriptionElément correspondant 
appIdentifiant de l'application. Par défaut, il s'agit de l'application courante.sdx:locationsFacultatif
appByPathIndique la partie de l'URL qui suit "sdx/" dans une installation standard, par exemple "sdxtest".sdx:locationsFacultatif
baseIdentifiant de la base de documents. Par défaut, il s'agit de la base courante.sdx:locationsFacultatif

On trouvera un exemple de l'utilisation d'un thesaurus dans une requête avec la description de l'action sdx:expandQuery.

Exemple 1. Déclaration d'un thesaurus

Le code suivant est extrait du fichier application.xconf de l'application SDXTest. Il présente un exemple de déclaration de thesaurus. On voit bien ici que les relations entre les termes sont définis dans ce document. Cela signifie que l'on peut en ajouter (il n'y a pas de relation d'opposition dans l'exemple ci-dessous) ou en retirer.

<sdx:thesauri>
 <sdx:thesaurus id="dico" type="lucene" src="dico.xml">

 <!--Les valeurs par défaut-->
  <sdx:depth>0</sdx:depth>
  <sdx:relations>
   <sdx:relation>et</sdx:relation>
  </sdx:relations>

 <!--Déclaration des champs pour l'indexation du thesaurus "dico.xml"-->
 <sdx:fieldList xml:lang="fr-FR" variant=""
   analyzerConf="/sdx/resources/conf/analysis/fr.xml">

   <!--Le champ de recherche par défaut
       (i.e. le champ dans lequel SDX effectue la recherche
       lorsqu'aucun n'est précisé
   -->
   <sdx:field name="term" type="word" brief="true" default="true">
    <sdx:name xml:lang="fr-FR">Term</sdx:name>
   </sdx:field>
   <sdx:field name="fterm" type="field" brief="true">
    <sdx:name xml:lang="fr-FR">Term TYPE Field</sdx:name>
   </sdx:field>
   <sdx:field name="bts" type="field" brief="true">
    <sdx:name xml:lang="fr-FR">Broader TermS</sdx:name>
   </sdx:field>
   <sdx:field name="bt" type="field" brief="true">
    <sdx:name xml:lang="fr-FR">Broader Term</sdx:name>
   </sdx:field>
   <sdx:field name="nt" type="field" brief="true">
    <sdx:name xml:lang="fr-FR">Narrower Term</sdx:name>
   </sdx:field>
   <sdx:field name="et" type="field" brief="true">
    <sdx:name xml:lang="fr-FR">Equivalent Term</sdx:name>
   </sdx:field>
   <sdx:field name="pe" type="field" brief="true">
    <sdx:name xml:lang="fr-FR">Partial Equivalence</sdx:name>
   </sdx:field>
   <sdx:field name="use" type="field" brief="true">
    <sdx:name xml:lang="fr-FR">Use</sdx:name>
   </sdx:field>
   <sdx:field name="uf" type="word" brief="true">
    <sdx:name xml:lang="fr-FR">Used For</sdx:name>
   </sdx:field>
   <sdx:field name="fuf" type="field" brief="true">
    <sdx:name xml:lang="fr-FR">Used For TYPE Field</sdx:name>
   </sdx:field>
   <sdx:field name="sn" type="word" brief="true">
    <sdx:name xml:lang="fr-FR">Scope note</sdx:name>
   </sdx:field>
  </sdx:fieldList>

 </sdx:thesaurus>
</sdx:thesauri>

Exemple 2. Thesaurus d'équivalence français/anglais

Le code suivant est extrait du thesaurus utilisé dans l'application de démonstration SDXTest dico.xml. Il présente la similarité entre le mot français "actualités" et son pendant "news" dans la langue anglaise. Chaque terme est traduit par un concept acceptant la description de relations portant un type et la référence au concept cible. On notera qu'il n'y a qu'une relation pour chacun des termes décrit ici. On aurait pu donner, par exemple, les termes proches mais pas équivalent.

<thesaurus xmlns="http://sdx.culture.fr/thesaurus/1.0" id="dico">
 <concept id="f16" xml:lang="fr">
  <term>actualites</term>
  <relations>
   <relation type="ET" ref="e16"/>
  </relations>
 </concept>
 <concept id="e16" xml:lang="en">
  <term>news</term>
  <relations>
   <relation type="ET" ref="f16"/>
  </relations>
 </concept>
 ...
</thesaurus>


Auteur : Malo Pichot (AJLSM) - 2003-07-09