xml:langSpécifie la langue (et éventuellement les paramètres de lieu) du contenu de l'élément. L'intention déclarée avec xml:lang est censée s'appliquer à tous les attributs et au contenu de l'élément sur lequel il apparaît, sauf écrasement par une instance de xml:lang sur un autre élément au sein de ce contenu. Lorsqu'aucune valeur xml:lang n'est fournie, le processeur devrait supposer une valeur par défaut.
Pour un document DITA avec une seule langue, l'élément au niveau supérieur comprenant le contenu devrait toujours
affecter l'attribut xml:lang de la langue (et éventuellement des paramètres de lieux) qui s'applique au document.
Puisque l'élément <dita> n'accepte pas l'attribut xml:lang, l'élément au niveau supérieur
qui devrait l'indiquer est l'élément <topic> (ou les dérivés au même niveau).
Pour un document DITA avec plusieurs langues, l'élément au niveau supérieur devrait toujours affecer l'attribut xml:lang
de la langue principale (et éventuellement du paramètre de lieu) qui s'applique au document. À chaque fois qu'une autre langue
apparaît dans le document, l'élément contenant le texte ou la structure dans cette autre langue devrait affecter
l'attribut xml:lang conformément. Cette façon de supplanter la langue par défaut du document s'applique à la fois
aux éléments de type bloc et ceux de type en-ligne utilisant l'autre langue.
L'utilisation d'un balisage pour identifier la langue est fortement recommandée pour rendre le document aussi portable qui possible. En outre, le document balisé peut être lu et compris par des humains. Enfin, pour la mise à jour du document, les frontières de chaque langue sont claires, ce qui la facilite pour l'auteur.
Les applications devraient s'assurer que chaque élément <topic> au niveau supérieur et que
l'élément racine <map< comportent explicitement l'attribut xml:lang.
L'attribut xml:lang peut être spécifié sur l'élément <map>. Le comportement d'héritage attendu
de la langue sur la carte est similaire à celui sur le thème. À savoir, que la langue principale pour la carte devrait être établie
sur l'élément <map> (ou supposée par l'application si non définie explicitement), et devrait rester active
pour tous les sous-éléments sauf ceux définissant une valeur xml:lang différente.
Si la valeur xml:lang sur un élément <topicref> ne correspond pas à celle sur
l'élément <topic>, la valeur sur l'élément <topic> prévaut.
conrefSi l'attribut conref est utilisé pour inclure un contenu de thème dans un thème, la valeur xml:lang
doit être obtenue du thème inclus. Si le contenu inclus ne définit pas explicitement de valeur xml:lang,
le processeur doit obtenir la valeur xml:lang du parent le plus proche du contenu inclus. Si le contenu inclus n'a pas
d'élément parent qui définisse xml:lang, l'application devrait par défaut retenir la même valeur utilisée pour les thèmes
qui ne définissent pas l'attribut xml:lang.
Ce comportement est montré dans l'exemple suivant, où la valeur xml:lang de la note incluse est obtenue de son
élément ancêtre <section> (id="qqwwee") qui définit xml:lang. Dans cet exemple,
la valeur xml:lang appliquée à la note d'identificateur "mynote" est "fr".
****************installingAcme.xml*********************
<?xml version="1.0"?>
<!DOCTYPE dita PUBLIC "-//OASIS//DTD DITA Composite//EN" "ditabase.dtd">
<dita>
<topic id="topic_3FD87D" xml:lang="en">
<title>Installing Acme</title>
<shortdesc>Step by step details on how to install Acme</shortdesc>
<body>
<p id="p_60A72">Welcome message goes here</p>
<section id="section_C25">
<title>Before you begin</title>
<p id="p_E57324D">Special notes when installing Acme in
France:</p>
<note id="mynote" conref="warningsAcme.xml#topic_warnings/frenchwarnings"></note>
</section>
</body>
</topic>
</dita>
*******************************************
****************warningsAcme.dita*********************
<?xml version="1.0"?>
<!DOCTYPE dita PUBLIC "-//OASIS//DTD DITA Composite//EN" "ditabase.dtd">
<dita>
<topic id="topic_warnings">
<title>Warnings</title>
<shortdesc>warnings in all languages</shortdesc>
<body>
<section id="qqwwee" xml:lang="fr">
<title>Avertissements en français</title>
<p id="p_F2A">Voici les avertissements en français.</p>
<note id="frenchwarnings">Note en français !</note>
</section>
<section xml:lang="en" id="aassdd">
<title>English warnings</title>
<p id="p_5F961">These are our English warnings.</p>
<note id="englishwarnings">Note in English!</note>
</section>
</body>
</topic>
</dita>
*************************************
OASIS DITA Version 1.1 Architectural Specification — OASIS Standard, 1 August 2007
Copyright © OASIS Open 2005, 2007. All Rights Reserved.