<?xml version="1.0"?>
<!DOCTYPE webpage PUBLIC "-//Norman Walsh//DTD Website V2.1b1//EN" "../../../dtd/website.dtd" [
<!ENTITY conf-entrepot SYSTEM "entrepot.xml" NDATA XML>
<!ENTITY configuration SYSTEM "index.xml" NDATA XML>
<!ENTITY def-entrepot SYSTEM "../introduction/entrepots.xml" NDATA XML>
<!ENTITY index SYSTEM "../configuration.xml" NDATA XML>
]>
<webpage id="configuration_base"> 
  <head> 
	 <title> Configuration d'une base de documents</title> 
	 <titleabbrev>Base de documents</titleabbrev> 
	 <author> 
		<firstname>Martin</firstname> 
		<surname>Sévigny</surname> 
		<affiliation> 
		  <orgname>AJLSM</orgname> 
		</affiliation> 
	 </author> 
	 <revhistory> 
		<revision> 
		  <revnumber>1.0</revnumber> 
		  <date>2004-08-19</date> 
		</revision> 
	 </revhistory> 
  </head> 
  <para>Les bases de documents sont l'une des composantes des applications SDX
	 2. L'élément <sgmltag>&lt;sdx:documentBases&gt;</sgmltag> du fichier
	 <filename>application.xconf</filename> contient les informations qui
	 définissent les bases de documents d'une application ; nous allons
	 expliquer ici quelles sont les informations de configuration associées à cet
	 élément.</para> 
  <para>Il est à noter que la configuration d'une application SDX doit
	 également contenir un élément
	 <sgmltag>&lt;sdx:userDocumentBase&gt;</sgmltag> qui a exactement la même
	 structure que l'élément <sgmltag>&lt;sdx:documentBase&gt;</sgmltag> dont il
	 sera principalement question ici. Ainsi, toutes les informations de ce document
	 peuvent également s'appliquer à l'élément
	 <sgmltag>&lt;sdx:userDoucmentBase&gt;</sgmltag>. Ce dernier permet de
	 configurer la base de documents <emphasis>spéciale</emphasis> qui gère les
	 utilisateurs associés à l'application. Cette base de documents est spéciale
	 à cause du rôle spécifique qu'elle joue pour l'application, mais en fait
	 elle peut également être utilisée de la même manière que toute base de
	 documents, ce qui implique notamment qu'elle peut être utilisée en
	 recherche.</para> 
  <para>L'architectude de SDX a été conçue de manière à ce que la notion
	 de base de documents soit relativement générique, même si pour l'instant un
	 seul type de base de documents peut être défini, soir les bases de documents
	 <emphasis>Lucene</emphasis>. Si jamais d'autres moteurs de recherche sont
	 interfacés avec SDX, d'autres types de bases de documents verront le
	 jour.</para> 
  <section> 
	 <title>Relation avec les entrepôts</title> 
	 <para>Une base de documents n'est pas suffisante pour construire une
		application SDX avec du contenu. En effet, même si celle-ci a toute
		l'information nécessaire pour chercher des documents et les présenter de
		façon sommaire, elle ne contient pas les documents eux-mêmes, ni même une
		référence précise avec leur emplacement. Par contre, les bases de documents
		vont garder une trace de l'<olink targetdocent="def-entrepot">entrepôt de
		  documents</olink> où se trouve le document indexé, ce qui va permettre de
		retrouver les documents eux-mêmes lorsque nécessaire.</para> 
	 <para>La 
		<olink targetdocent="conf-entrepot">configuration d'un entrepôt de
		  documents</olink> peut se situer <emphasis>à l'intérieur</emphasis> (dans le
		sens de la hiérarchie XML) de la configuration d'une base de documents ou
		encore <emphasis>à l'extérieur</emphasis>, c'est-à-dire au niveau de la
		configuration d'une application. Lorsque l'entrepôt est défini à
		l'intérieur d'une base de documents, cela signifie qu'il est accessible
		seulement pour cette base ; autrement dit, les autres bases de documents
		de l'application ne pourront pas stocker les documents dans cet entrepôt. A
		l'opposé, lorsque l'entrepôt est défini au niveau de l'application, toutes
		les bases de documents peuvent y déposer des documents. L'intérêt de cette
		configuration sera plus important lorsque différents types de bases de
		documents seront intégrés à SDX.</para> 
  </section> 
  <section> 
	 <title>L'élément <sgmltag>&lt;sdx:documentBases&gt;</sgmltag></title> 
	 <para>Cet élément a simplement pour but de contenir la liste des bases de
		documents associées à une application. Il doit être à l'intérieur de
		l'élément <sgmltag>&lt;sdx:application&gt;</sgmltag>.</para> 
  </section> 
  <section> 
	 <title>Informations générales à propos d'une base de documents</title> 
	 <para>L'élément <sgmltag>&lt;sdx:documentBase&gt;</sgmltag> contient
		toutes les informations nécessaires pour définir une base de documents, y
		compris certaines informations générales. Ces informations générales sont
		toutes spécifiées en attributs.</para><table> 
	 <title>Attributs de l'élément
		<sgmltag>&lt;sdx:documentBase&gt;</sgmltag></title> 
	 <tgroup cols="3"><colspec colnum="1" colname="col1" align="left" colwidth="5cm"/><colspec colnum="2" colname="col2" colwidth="5cm"/><colspec colnum="3" colname="col3" colwidth="*"/><thead> 
		  <row><entry colname="col1" align="left">Attribut</entry><entry colname="col2">Valeurs possibles</entry><entry colname="col3">Description</entry> 
		  </row></thead><tbody> 
		  <row valign="top"><entry colname="col1" valign="top" align="left"><sgmltag class="attribute">id</sgmltag></entry><entry colname="col2" valign="top">Un
				identifiant. Obligatoire.</entry><entry colname="col3" valign="top">L'identifiant de la base
				de documents. Cet identifiant est obligatoire, il devient par la suite la clé
				d'identification de la base de documents pour toutes les opérations de
				recherche, d'ajout ou de suppression de documents dans cette base.</entry> 
		  </row> 
		  <row valign="top"><entry colname="col1" valign="top" align="left"><sgmltag class="attribute">default</sgmltag></entry><entry colname="col2" valign="top">Un booléen
				(<sgmltag class="attvalue">true</sgmltag> ou <sgmltag class="attribute">false</sgmltag>), par défaut c'est <sgmltag class="attribute">false</sgmltag>.</entry><entry colname="col3" valign="top">Si true, cette base est la base par défaut pour cette
				application. Cela signifie que les opérations de recherche, d'ajout ou de
				suppression de documents se feront dans cette base sauf si une base est
				explicitement mentionnée par son identifiant.</entry> 
		  </row> 
		  <row valign="top"><entry colname="col1" valign="top" align="left"><sgmltag class="attribute">type</sgmltag></entry><entry colname="col2" valign="top">Une
				chaîne.</entry><entry colname="col3" valign="top">Le type de base de
				documents ; pour l'instant, seule la valeur "lucene" est permise.</entry> 
		  </row> 
		  <row valign="top"><entry colname="col1" valign="top" align="left"><sgmltag class="attribute">xml:lang</sgmltag></entry><entry colname="col2" valign="top">Un code de
				langue selon la norme XML (par exemple fr-CA ou en).</entry><entry colname="col3" valign="top">La langue par défaut pour le contenu des champs de
				cette base de documents. Si elle n'est pas spécifiée, c'est la langue par
				défaut de l'application qui est utilisée.</entry> 
		  </row> 
		  <row valign="top"><entry colname="col1" valign="top" align="left"><sgmltag class="attribute">variant</sgmltag></entry><entry colname="col2" valign="top">Un code de
				variante de langue, selon le langage Java.</entry><entry colname="col3" valign="top">Java permettant de préciser des variantes de langue, le contenu
				de cet attribut vient préciser la langue donnée par xml:lang.</entry> 
		  </row> 
		  <row valign="top"><entry colname="col1" valign="top" align="left"><sgmltag class="attribute">remote-access</sgmltag></entry><entry colname="col2" valign="top">Un
				booléen (true ou false), par défaut c'est false.</entry><entry colname="col3" valign="top">Si true, cette base de documents est cherchable par des
				applications SDX autres que celle où elle est définie.</entry> 
		  </row> 
		  <row valign="top"><entry colname="col1" valign="top" align="left"><sgmltag class="attribute">keepOriginalDocuments</sgmltag></entry><entry colname="col2" valign="top">Un
				booléen (true ou false), par défaut c'est true.</entry><entry colname="col3" valign="top">Cet attribut n'a de sens que si le tube d'indexation contient
				plusieurs étapes de transformation. Dans ce cas, une valeur true signifie que
				le document original fourni à l'indexation est conservé par SDX ; dans
				le cas contraire, SDX ne conserve que les documents issus des étapes de
				transformation avec un keep=true.</entry> 
		  </row> 
		  <row valign="top"><entry colname="col1" valign="top" align="left"><sgmltag class="attribute">maxFieldLength</sgmltag></entry><entry colname="col2" valign="top">Un nombre
				entier, par défaut 10 000.</entry><entry colname="col3" valign="top">Le
				nombre de mots indexés dans un champ. La modification de ce nombre peut avoir des
				impacts sur la performance. Consulter la<ulink url="http://jakarta.apache.org/lucene/docs/api/org/apache/lucene/index/IndexWriter.html">
				  documentation de la classe IndexWriter de Lucene</ulink> pour en savoir
				plus.</entry> 
		  </row><row valign="top"><entry colname="col1" valign="top" align="left"><sgmltag class="attribute">autoOptimize</sgmltag></entry><entry colname="col2" valign="top">Un booléen
				(<sgmltag class="attvalue">true</sgmltag> ou <sgmltag class="attribute">false</sgmltag>), par défaut c'est <sgmltag class="attribute">true</sgmltag>.</entry><entry colname="col3" valign="top">Par défaut, SDX optimise les index Lucene à toutes les fois qu'un lot de documents est ajouté ou supprimé à l'index. Voir la section sur la gestion des index ci-dessous pour en savoir plus. A noter que cette fonctionnalité n'est disponible que depuis la version 2.3 de SDX. Si vous utilisez cet attribut avec une version antérieure, il est tout simplement ignoré.</entry></row></tbody> 
	 </tgroup></table> 
  </section> 
  <section> 
	 <title>Générateur d'identifiants</title> 
	 <para>Tous les documents gérés par SDX doivent avoir un identifiant. Cet
		identifiant doit être unique dans la base de documents où il se trouve. En
		général, c'est le processus d'indexation qui est responsable de déterminer
		cet identifiant qui est fourni par l'attribut <sgmltag>id</sgmltag> de
		l'élément <sgmltag>sdx:document</sgmltag> résultant de ce processus
		d'indexation.</para>
	 <para>Toutefois, dans certains cas, il peut être difficile de trouver un
		identifiant lors du processus d'indexation, et c'est pourquoi SDX 2 offre un
		moyen d'en générer automatiquement, à l'aide de <emphasis>générateurs
		d'identifiants</emphasis>. Un générateur d'identifiants est nécessairement
		une classe Java qui implémente l'interface
		<command>fr.gouv.culture.sdx.documentbase.IDGenerator</command> ; SDX 2
		fournit une telle classe nommée
		<command>fr.gouv.culture.sdx.documentbase.DefaultIDGenerator</command> qui
		génère des identifiants de manière aléatoire.</para>
	 <para>Il n'est pas nécessaire de configurer des générateurs
		d'identifiants, même si on désire en utiliser un. En effet, dans une telle
		situation, SDX 2 utilisera toujours son propre générateur d'identifiants par
		défaut. Toutefois, si on veut en utiliser un autre, on doit le déclarer dans
		le <filename>application.xconf</filename>, à l'aide d'un élément
		<sgmltag>sdx:idGenerator</sgmltag>, qui doit avoir un attribut
		<sgmltag>class</sgmltag> qui indique le nom complet de la classe, et peut avoir
		des attributs <sgmltag>idPrefix</sgmltag> et <sgmltag>idSuffix</sgmltag> pour
		indiquer un préfixe et/ou un suffixe à ajouter aux identifiants générés.
		Pour utiliser ce générateur d'identifiants ou celui proposé par SDX 2, on
		doit spécifier l'attribut <sgmltag>generateId</sgmltag> de
		<sgmltag>sdx:document</sgmltag> dans le document retourné par le processus
		d'indexation, et lui donner une valeur <emphasis role="param">true</emphasis>.</para> 
  </section><section><title>Gestion des index</title><note><para>Les informations fournies dans cette section ne sont valables que depuis la version 2.3 de SDX. Sur des versions antérieures, elles n'ont aucun effet.</para></note><para>Il est possible de paramétrer la manière dont SDX va gérer les index Lucene pour une base de documents. Le principal objectif de ce paramétrage est de rendre plus efficace la gestion des gros index, c'est-à-dire lorsqu'il y a un très grand nombre de documents ou lorsque les documents sont de grande taille. Pour les petits index, ces paramétrages sont fonctionnels mais peu utiles.</para><section><title>Optimisation</title><para>Un index Lucene est <emphasis role="italic">optimisé</emphasis> lorsqu'il est stocké dans une structure efficace et optimale. Normalement, lorsqu'on ajoute ou supprime des documents dans un index Lucene, celui-ci n'est plus optimisé, jusqu'à ce qu'on demande explicitement une optimisation. Que l'index soit optimisé ou non, les résultats de recherche seront exactement les mêmes, mais un index optimisé effectuera les recherches plus rapidement. Par ailleurs, l'optimisation d'un index est une opération qui prend un certain sur un index volumineux. C'est pourquoi il ne faut pas chercher à la faire trop souvent. La gestion de l'optimisation d'un index Lucene doit donc être vu comme un compromis entre la performance en recherche (les index optimisés sont plus performants) et la performance en indexation (l'optimisation des index prend du temps).</para><para>Si on ne fait rien de spécial pour une base de documents SDX, ou si on utilise une version de SDX antérieure à la 2.3, alors l'optimisation de l'index Lucene sera effectuée l'ajout ou la suppression de chaque lot de documents. La taille d'un lot est spécifiée par le paramètre <emphasis role="italic">batch</emphasis> que l'on peut fournir lors de l'indexation ; par défaut la valeur est de 25, ce qui est peu. Donc si vous avez des lots de 25 et que vous indexez 1000 documents, alors l'index sera optimisé 40 fois. Si vous indexez un seul document à la fois, l'index sera optimisé une fois.</para><para>C'est pourquoi depuis la version 2.3 de SDX il est possible de configurer une base de documents (et donc des index Lucene) pour que l'optimisation ne soit pas effectuée après l'indexation d'un lot de documents. Pour ce faire, il s'agit d'utiliser l'attribut <sgmltag class="attribute">autoOptimize</sgmltag> de l'élément <sgmltag class="element">sdx:documentBase</sgmltag> et de lui donner la valeur <sgmltag class="attvalue">false</sgmltag> (voir ci-dessus). Dans ce cas, si vous ne faites rien d'autre, les index ne seront jamais optimisés.</para></section></section> 
  <section> 
	 <title>Interprète de requêtes</title> 
	 <para>A faire.</para> 
  </section> 
  <section> 
	 <title>Liste des champs</title> 
	 <para>La liste des champs contient des informations capitales pour une base de documents SDX, puisque toutes les manipulations ultérieures (recherche, tris, résultats, etc.) se font sur des champs. La liste des champs est une liste à plat, une simple collection de champs dont l'ordre n'est pas important. Pour chaque champ, on peut définir un certain nombre de propriétés, certaines ayant des valeurs par défaut, d'autres obligatoires, d'autres optionnelles. De plus, un certain nombre de propriétés peuvent être héritées depuis des éléments parents.</para><para>De manière générale, la définition d'une liste de champs intervient à l'intérieur d'un élément <sgmltag>sdx:documentBase</sgmltag> de la manière suivante :</para><programlisting>
&lt;sdx:documentBase ...&gt;
  ...
  &lt;sdx:fieldList ...&gt;
    &lt;sdx:field .../&gt;
    ...
  &lt;/sdx:fieldList&gt;
&lt;/sdx:documentBase&gt;
</programlisting> 
  <para>La liste des champs est obligatoire, sinon votre base de documents ne sera pas disponible dans l'application.</para><para>L'élément <sgmltag>sdx:fieldList</sgmltag> peut avoir les attributs suivants :</para><table><title></title><tgroup cols="3"><colspec colnum="1" colname="col1" colwidth="1.00*"/><colspec colnum="2" colname="col2" colwidth="1.77*"/><colspec colnum="3" colname="col3" colwidth="3.34*"/><thead><row><entry colname="col1">Atribut</entry><entry colname="col2">Valeurs possibles</entry><entry colname="col3">Description</entry></row></thead><tbody><row><entry colname="col1"><sgmltag class="attribute">ref</sgmltag></entry><entry colname="col2">L'attribut id d'un autre élément <sgmltag>sdx:fieldList</sgmltag>. Optionnel. Pas de valeur par défaut.</entry><entry colname="col3">Cet attribut permet de <emphasis role="italic">pointer</emphasis> sur un autre élément <sgmltag>sdx:fieldList</sgmltag> déclaré <emphasis role="italic">globalement</emphasis>, c'est-à-dire au niveau de l'application, et donc dans l'élément <sgmltag>sdx:application</sgmltag>. Cela permet de réutiliser des listes de champs dans différentes bases de documents. A noter que si vous utilisez cet attribut, toutes les proprités de la liste de champs de référence seront utilisées, mais vous pourrez ajouter des champs en ajoutant des sous-éléments <sgmltag>sdx:field</sgmltag>.</entry></row><row><entry colname="col1"><sgmltag class="attribute">analyzerClass</sgmltag></entry><entry colname="col2">Le nom qualifié d'une classe Java. Optionnel. Pas de valeur par défaut directe.</entry><entry colname="col3">Cette classe Java sera utilisée comme analyseur de mots par défaut pour tous les champs de cette liste. Ainsi, si un champ de type <sgmltag class="attvalue">word</sgmltag> n'a pas de précisions sur l'analyseur de mots à utiliser, c'est celui-ci qui le sera. Cet attribut a préséance sur le rôle joué par l'attribut <sgmltag class="attribute">xml:lang</sgmltag> présenté ci-dessous.</entry></row><row><entry colname="col1"><sgmltag class="attribute">analyzerConf</sgmltag></entry><entry colname="col2">Une URL. Optionnel. Pas de valeur par défaut.</entry><entry colname="col3">L'URL qui indique le fichier de configuration à utiliser pour l'analyse de mots spécifié par défaut, peu importe la méthode dont celui-ci est spécifié.</entry></row><row><entry colname="col1"><sgmltag class="attribute">xml:lang</sgmltag></entry><entry colname="col2">Un code de langue, éventuellement qualifié (par exemple <sgmltag class="attvalue">fr-CA</sgmltag>). Optionnel. Pas de valeur par défaut directe.</entry><entry colname="col3">La langue par défaut du contenu des champs. Si l'attribut <sgmltag class="attribute">analyzerClass</sgmltag> n'est pas utilisé, alors la langue permet de déterminer l'analyseur de mots par défaut. S cet attribut n'est pas spécifié, alors on considère que la langue est donnée par l'attribut <sgmltag class="attribute">xml:lang</sgmltag> de l'élément parent <sgmltag class="element">sdx:documentBase</sgmltag> ou, si celui-ci non plus n'est pas spécifié, on considère que la langue est donnée par l'attribut <sgmltag class="attribute">xml:lang</sgmltag> de l'élément racine <sgmltag class="element">sdx:application</sgmltag>.</entry></row><row><entry colname="col1"><sgmltag class="attribute">variant</sgmltag></entry><entry colname="col2">Une chaîne de caractères. Optionnel. Pas de valeur par défaut.</entry><entry colname="col3">Un complément au code de langue, selon le mécanisme des <emphasis role="italic">locale</emphasis> du langage Java. Pour préciser encore plus la langue par défaut des contenus.</entry></row></tbody></tgroup></table><para>Ensuite, à l'intérieur de l'élément <sgmltag class="element">sdx:fieldList</sgmltag>, on retrouve un ou plusieurs éléments <sgmltag class="element">sdx:field</sgmltag>, chacun identifiant un champ qui sera disponible en recherche ou pour tout autre traitement.</para><para>Le tableau suivant présente les attributs qui peuvent être associés à l'élément <sgmltag class="element">sdx:field</sgmltag> pour déterminer les caractéristiques de chaque champ.</para><table><title></title><tgroup cols="3"><colspec colnum="1" colname="col1" colwidth="1.00*"/><colspec colnum="2" colname="col2" colwidth="1.77*"/><colspec colnum="3" colname="col3" colwidth="3.34*"/><thead><row><entry colname="col1">Atribut</entry><entry colname="col2">Valeurs possibles</entry><entry colname="col3">Description</entry></row></thead><tbody><row><entry colname="col1"><sgmltag class="attribute">name</sgmltag></entry><entry colname="col2">Une chaîne de caractère, unique parmi tous les champs, composée de lettres seulement. Obligatoire.</entry><entry colname="col3">Cet attribut donne un nom unique au champ.</entry></row><row><entry colname="col1"><sgmltag class="attribute">default</sgmltag></entry><entry colname="col2">Un booléen, soit <sgmltag class="attvalue">true</sgmltag> ou <sgmltag class="attvalue">false</sgmltag>. Optionnel. Par défaut, <sgmltag class="attvalue">false</sgmltag>.</entry><entry colname="col3">Indique s'il s'agit du champ de recherche par défaut. Il doit y avoir un seul champ par défaut dans une liste de champs.</entry></row><row><entry colname="col1"><sgmltag class="attribute">type</sgmltag></entry><entry colname="col2">Une des valeurs <sgmltag class="attvalue">word</sgmltag>, <sgmltag class="attvalue">field</sgmltag>, <sgmltag class="attvalue">date</sgmltag>, <sgmltag class="attvalue">unindexed</sgmltag> ou <sgmltag class="attvalue">xml</sgmltag>. Obligatoire. Par défaut <sgmltag class="attvalue">word</sgmltag>.</entry><entry colname="col3">Le type de champ ou d'indexation dont il s'agit. La valeur <sgmltag class="attvalue">word</sgmltag> indique un champ indexé par mots, avec un analyseur de mots. La valeur <sgmltag class="attvalue">field</sgmltag> indique un champ indexé tel quel, sans analyse de mots. La valeur <sgmltag class="attvalue">date</sgmltag> indique que le contenu doit être traité comme une date (format ISO 8601). La valeur <sgmltag class="attvalue">unindexed</sgmltag> indique que le champ n'est pas indexé. La valeur <sgmltag class="attvalue">xml</sgmltag> indique que le champ n'est pas indexé mais que sont contenu doit être interprété comme étant du XML, mais non indexé. A noter que cette dernière valeur n'est possible que depuis la version 2.3 de SDX.</entry></row><row><entry colname="col1"><sgmltag class="attribute">brief</sgmltag></entry><entry colname="col2">Un booléen, soit <sgmltag class="attvalue">true</sgmltag> ou <sgmltag class="attvalue">false</sgmltag>. Optionnel. Par défaut, <sgmltag class="attvalue">false</sgmltag>.</entry><entry colname="col3">Indique si le champ doit être retourné en résultat de recherche ou non. Pour un champ de type <sgmltag class="attvalue">unindexed</sgmltag> ou <sgmltag class="attvalue">xml</sgmltag>, il est conseillé de mettre cette valeur à <sgmltag class="attvalue">true</sgmltag> sinon le champ sera inutile.</entry></row><row><entry colname="col1"><sgmltag class="attribute">analyzerClass</sgmltag></entry><entry colname="col2">Le nom qualifié d'une classe Java. Optionnel. Pas de valeur par défaut directe.</entry><entry colname="col3">Cette classe Java sera utilisée comme analyseur de mots par défaut pour tous ce champ, s'il est de type <sgmltag class="attvalue">word</sgmltag>. Cet attribut a préséance sur l'attribut <sgmltag class="attribute">xml:lang</sgmltag> ou sur les informations fournies au niveau de l'élément <sgmltag class="element">sdx:fieldList</sgmltag>.</entry></row><row><entry colname="col1"><sgmltag class="attribute">analyzerConf</sgmltag></entry><entry colname="col2">Une URL. Optionnel. Pas de valeur par défaut.</entry><entry colname="col3">L'URL qui indique le fichier de configuration à utiliser pour l'analyse de mots pour ce champ.</entry></row><row><entry colname="col1">xml:<sgmltag class="attribute">lang</sgmltag></entry><entry colname="col2">Un code de langue, éventuellement qualifié (par exemple <sgmltag class="attvalue">fr-CA</sgmltag>). Optionnel. Pas de valeur par défaut directe.</entry><entry colname="col3">La langue par défaut du contenu du champs. Si l'attribut <sgmltag class="attribute">analyzerClass</sgmltag> n'est pas utilisé, alors la langue permet de déterminer l'analyseur de mots pour le champ de type <sgmltag class="attvalue">word</sgmltag>. S cet attribut n'est pas spécifié, alors on considère que la langue est donnée par l'attribut <sgmltag class="attribute">xml:lang</sgmltag> de l'élément parent <sgmltag class="element">sdx:fieldList</sgmltag> ou par les règles d'héritage qui lui sont propres..</entry></row><row><entry colname="col1"><sgmltag class="attribute">variant</sgmltag></entry><entry colname="col2">Une chaîne de caractères. Optionnel. Pas de valeur par défaut.</entry><entry colname="col3">Un complément au code de langue, selon le mécanisme des <emphasis role="italic">locale</emphasis> du langage Java. Pour préciser encore plus la langue du contenu du champ.</entry></row><row><entry colname="col1"><sgmltag class="element">storeTermVector</sgmltag></entry><entry colname="col2">Un booléen, soit <sgmltag class="attvalue">true</sgmltag> ou <sgmltag class="attvalue">false</sgmltag>. Optionnel. Par défaut, <sgmltag class="attvalue">false</sgmltag>.</entry><entry colname="col3">Indique si le moteur de recherche Lucene doit consigner des informations de type <emphasis role="italic">term vectors</emphasis> pour ce champ. Pour en savoir plus sur ces informations, voir la documentation de Lucene. A noter que SDX ne fait aucun usage de cette information, mais si elle est stockée alors elle pourrait être exploitée à l'aide d'autres outils, ou en manipulant directement les index Lucene, sans SDX.</entry></row></tbody></tgroup></table></section> 
  <section> 
	 <title>Indexation</title> 
	 <para>A faire.</para> 
  </section> 
</webpage> 
