Documentation SDX-2 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 | # Thesaurus Liste des actions décrites dans cette page : `sdx:thesaurus`. ## 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 action | `sdx-parameters.xsl`
Contexte d'utilisation | `sdx: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 éventuel | `sdx:app`
Tableau 1. Paramètres spécifiques
Nom | Description |
--- | --- | ---
`th` | Identifiant du thesaurus. | Obligatoire
`depth` | Indique la profondeur de recherche autorisée au sein du thesaurus. Par défaut, SDX utilise les valeurs déclarées dans le fichier `application.xconf` | Facultatif
`relation` | Précise le type de relation autorisé. Par défaut, SDX utilise les valeurs déclarées dans le fichier `application.xconf` | Facultatif
`lang` | Indique la langue du terme recherché. Par défaut, il s'agit de la langue courante. (FIXME) | Facultatif
Tableau 2. Paramètres communs
Nom | Description | Elément correspondant |
--- | --- | --- | ---
`app` | Identifiant de l'application. Par défaut, il s'agit de l'application courante. | `sdx:locations` | Facultatif
`appByPath` | Indique la partie de l'URL qui suit "`sdx/`" dans une installation standard, par exemple "`sdxtest`". | `sdx:locations` | Facultatif
`base` | Identifiant de la base de documents. Par défaut, il s'agit de la base courante. | `sdx:locations` | Facultatif
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

| Home |
Copyright © 2000, 2001, 2002, 2003, 2004 Ministère de la culture et de la communication, AJLSM.