Pages enfant
  • Ajouter une langue

Voici les 4 opérations à faire pour ajouter une langue dans Uniform :

  1. Déterminer le code de la langue
  2. Evolution de la description de la facette dans le fichier des constantes de l'établissement
  3. Ajout du vocabulaire
  4. Evolution du moteur de recherche
  5. Reconstruire les index


Déterminer le code de la langue

Choisir un code qui représentera la langue dans tous les fichiers Uniform.

Uniform est livré avec les langues françaises,anglaises espagnoles (non activée) et chinoises. Les codes langue sont respectivement fr,en, es et zh-cn. 

Par exemple pour ajouter la langue allemand, nous pouvons choisir le code de

Pour l'utilisation avec ROF, il faut absolument prendre le code défini par ROF

Evolution de la description de la facette dans le fichier des constantes de l'établissement

Il faut d'abord dans le fichier des constantes de l'établissement (constantes.cdmfr-2012-rof-3.10.xml) modifier l'élément facet/language pour y ajouter un nouvel élément data.

Lors de l'installation voici comment se présente l’élément facet

<facet defaut="PUB_fr_DEF" sep="_">
<mobile defaut="mobile">
<data id="mobile"/>
</mobile>
<pdf defaut="pdf">
<data id="pdf"/>
</pdf>
<objectif defaut="lyc">
<data id="lyc"><value lang="fr" >Lycéen</value><value lang="en">lyceen</value></data>
</objectif>
<language defaut="fr">
<data id="fr"><value lang="fr" >Français</value><value lang="en">French</value></data>
<data id="en"><value lang="fr" >Anglais</value><value lang="en">English</value></data>
</language>
<etat defaut="definitif">
<data id="definitif"><value lang="fr" >definitif</value><value lang="en">published</value></data>
<!--data id="provisoire"><value lang="fr" >provisoire</value><value lang="en">draft</value></data-->
</etat>
</facet>

Si on veut y ajouter la langue allemand on ajoute un élément data avec ces valeurs

<data id="de"><value lang="fr" >Allemand</value><value lang="en">German</value><value lang="de">Deutsche</value></data>

Puis ajouter un élément value à chaque élément data déjà en place

<data id="fr"><value lang="fr" >Français</value><value lang="en">French</value><value lang="de">Französische</value></data>

<data id="en"><value lang="fr" >Anglais</value><value lang="en">English</value><value lang="de">Englische</value></data>

Voici l'élément facet après toutes ces manipulations

<facet defaut="PUB_fr_DEF" sep="_">
<mobile defaut="mobile">
<data id="mobile"/>
</mobile>
<pdf defaut="pdf">
<data id="pdf"/>
</pdf>
<objectif defaut="lyc">
<data id="lyc"><value lang="fr" >Lycéen</value><value lang="en">lyceen</value></data>
</objectif>
<language defaut="fr">

<data id="fr"><value lang="fr" >Français</value><value lang="en">French</value><value lang="de">Französische</value></data>

<data id="en"><value lang="fr" >Anglais</value><value lang="en">English</value><value lang="de">Englische</value></data>

<data id="de"><value lang="fr" >Allemand</value><value lang="en">German</value><value lang="de">Deutsche</value></data>

 </language>
<etat defaut="definitif">
<data id="DEF"><value lang="fr" >definitif</value><value lang="en">published</value></data>
<!--data id="provisoire"><value lang="fr" >provisoire</value><value lang="en">draft</value></data-->
</etat>
</facet>

Ajout du vocabulaire

 

Dans le fichier variablesExt.xml, il faut ajouter tous les éléments value avec le code langue souhaité 

Par exemple pour traduire en espagnol le titre les pages dans la balise head défini ainsi dans le fichier variablesExt.xml : 

 

<header type="0">
<!-- Titre des pages dans la balise head -->
<value lang="fr">Catalogue des formations de ... </value>
<value lang="en">Catalog of formations of ...</value>
</header>

 

il faut ajouter <value lang="de">Kurskatalog</value>


<header type="0">
<!-- Titre des pages dans la balise head -->
<value lang="fr">Catalogue des formations de ... </value>
<value lang="en">Catalog of formations of ...</value>

 <value lang="de">Kurskatalog</value>

</header>

Evolution du moteur de recherche

Dans le fichier de configuration du moteur de recherche (search-engine-config.cdmfr-2012-rof-3.10.xml) il faut ajouter les index à prendre en compte pour la nouvelle langue ainsi que la configuration spécifique à cette langue (/search-engine/languages/language).

Lors de la livraison, Uniform indexe :

  • le titre et les mots-clefs de la mention (dépend de la langue)
  • le titre des parcours (dépend de la langue)
  • le domaine (ne dépend pas de la langue)
  • le type de diplôme (ne dépend pas de la langue)

Il faudra donc redéfinir les deux premiers index.

L'attribut name de l'élément index est construit avec la valeur titre- suivie du code la langue. Nous recommandons de faire un cipietr coller avecun attribut index déjà existant

Ainsi pour ajouter l'indexation pour l'espagnol pour le titre et les mots-clefs de la formation principale,  il faut copier :

<index name="titre-en"
terms="/CDM/program[@language='en']/programName/text ; /CDM/program[@language='en']/searchword"
lang="en"/>

 

et le modifier ainsi :

<index name="titre-de"
terms="/CDM/program[@language='de']/programName/text ; /CDM/program[@language='de']/searchword" 
lang="de"/>

Ainsi pour ajouter l'indexation pour l'espagnol pour le titre des parcours,  il faut copier :

<index name="parcours-name-en" terms="programName[../@language='en']/text"
result="true"
lang="en"/>

et le modifier ainsi :

<index name="parcours-name-de" terms="programName[../@language='de']/text"
result="true"
lang="de"/>

Pour définir la configuration pour l'espagnol, il faut copier un élément language déjà en place

<language name="en">
<analyzer>
<whites-chars>
?*-+=_"'`.,;:()[]{}«»&lt;>/\|!°#§&amp;
</whites-chars>
<emptys-words>
0 1 2 3 4 5 6 7 8 9 a and are as at b be but by c d
e f for g h i if in into is it j j k l m n no not o
of on or p q r s such t the to u v w was x y z
</emptys-words>
</analyzer>
<sort>
<by index="domaine" />
<by index="diplome" />
<by index="titre-en" />
</sort>
</language>

 

et le modifier. Si vous ne connaissez pas les mots vides pour la langue, vider cet élément. ou pour l'espagnol on peut choisir de conserver les chiffres et cela donne :

<language name="de">
<analyzer>
<whites-chars>
?*-+=_"'`.,;:()[]{}«»&lt;>/\|!°#§&amp;
</whites-chars>
<emptys-words>
0 1 2 3 4 5 6 7 8 9 
</emptys-words>
</analyzer>
<sort>
<by index="domaine" />
<by index="diplome" />
<by index="titre-de" />
</sort>
</language>

 

Reconstruire les index

Pour reconstruire les index, il faut vider la base et importer à nouveau toutes les formations. Il faut aussi redéployer Uniform 

  1. Vider la base : ant cleandb initdb
  2. importer toutes les formations : ant import_dir -DcodAnu=2014
  3. Arrêter tomcat
  4. déployer uniform : ant deploy
  5. Redémarrer Tomcat

 

 

  • Aucune étiquette