Gestion du multilinguisme

Langues des contenus

Pour les différents contenus du format ScrutariData, il y a deux politiques différentes :

  • Toutes les fiches sont monolingues : c'est l'élément <lang> contenu dans l'élément <fiche> qui indique la langue de la fiche
  • Les autres contenus (intitulés des bases, corpus, thésaurus et mots-clés) sont potentiellement multilingues, les intitulés dans les différentes langues sont indiqués par une suite d'élément <lib> avec l'attribut @xml:lang avec le code de langue au format ISO.

Le format ScrutariData ne demande pas de déclarer explicitement les langues présentes : c'est le serveur Scrutari qui se charge de recenser les langues disponibles en fonction des valeurs des éléments <lang> ou <lib xml:lang=“”>. Un fichier peut très bien proposer deux thésaurus différents dont un est multilingue et l'autre ne l'est pas, ne serait-ce que parce que la traduction du second n'a pas encore été réalisée.

L'ordre des éléments <lib> est important puisque lorsqu'un intitulé est demandé dans une langue non disponible, c'est la valeur du premier élément <lib> de la liste qui est pris comme valeur par défaut. On mettra donc comme première valeur les langues les plus répandues.

Le monolinguisme est imposé aux fiches pour des raisons de simplicité de traitement. Cette langue unique indique également la langue des titres, sous-titres et champs complémentaires de la fiche en question.

Lorsque une base de données est structurée pour gérer des documents multilingues, la solution est de générer autant d'éléments fiches que nécessaire dans l'extraction au format ScrutariData.

Par exemple, supposons qu'une base possède le document 374 en anglais (en), français (fr) ou espagnol (es), le xml comprendrait trois éléments <fiche> différents (rappelons que l'identifiant d'une fiche n'est pas forcément un nombre) :

<fiche fiche-id="374_en">
  <titre>titre en anglais</titre>
  ...
</fiche>
 
<fiche fiche-id="374_fr">
  <titre>titre en français</titre>
  ...
</fiche>
 
<fiche fiche-id="374_es">
  <titre>titre en espagnol</titre>
  ...
</fiche>

Langues d'interface

Par langues d'interface, on entend les langues disponibles dans l'interface du site lui-même. La différence entre langue d'interface et langue de contenu vient du fait qu'un site peut très bien avoir une interface uniquement en français mais proposer des contenus en anglais ou en espagnol.

Autre exemple : supposons un site avec une interface en anglais, en espagnol et en français. Un internaute français qui lit l'espagnol va probablement lire des contenus aussi bien en français qu'en espagnol mais dans les deux cas, il préfèrera disposer d'une interface en français (c'est à dire avec les boutons, les menus et les liens divers voire les mots-clés dans sa langue).

Dans le système Scrutari, la question de la langue d'interface ne pose qu'à un seul moment : au moment où l'internaute après sa recherche accède à la page complète de la fiche qui l'intéresse. Si l'interface de recherche qu'utilise l'internaute est dans une langue donnée, il est important que l'information de cette langue se retrouve si possible dans l'URL de la page complète pour qu'il continue avec la même langue d'interface quand il arrive sur la page de destination.

Le mécanisme dans le format ScrutariData est le suivant :

1) l'élément <langs-ui> (qui appartient à l'élément <base-metadata>) permet de préciser les langues d'interface disponibles sur le site. Ces langues sont indiquées avec l'aide d'éléments <lang> comme le montre l'exemple suivant (cas de trois langues d'interface : l'anglais, le français, le chinois) :

<base-metadata>
  ...
  <langs-ui>
    <lang>en</lang>
    <lang>fr</lang>
    <lang>zh</lang>
  </langs-ui>

2) Dans les URL, il est possible d'indiquer avec la chaîne $LANGUI l'emplacement où il faut indiquer la langue d'interface demandée. Dans l'exemple qui suit, la langue de l'interface demandée se trouve indiquée dans l'URL après le numéro du document :

http://www.china-europa-forum.net/bdfdoc-1216_$LANGUI.html

$LANGUI sera alors remplacé par en, fr ou zh en fonction de l'internaute, ce qui donnera :

http://www.china-europa-forum.net/bdfdoc-1216_en.html
http://www.china-europa-forum.net/bdfdoc-1216_fr.html
http://www.china-europa-forum.net/bdfdoc-1216_zh.html

La première valeur définie dans <langs-ui> désigne la langue d'interface par défaut si le site ne propose pas d'interface de la langue demandée. Ppar exemple, si la personne demande l'interface en espagnol, il sera dirigé vers :

http://www.china-europa-forum.net/bdfdoc-1216_en.html

et non vers cette URL qui donnerait un message d'erreur :

http://www.china-europa-forum.net/bdfdoc-1216_es.html
scrutaridata/multilinguisme.txt · Dernière modification: 2011/03/25 13:28 par vincent
CC Attribution-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0