Pour les articles homonymes, voirITS.
ITS (Internationalization Tag Set) est un jeu d'éléments et d'attributs conçu pour faciliterl'internationalisation et la localisation des documentsXML.
La norme ITS identifie des concepts importants pour l'internationalisation et la localisation appelés "catégories de données ITS". Elle définit également des implémentations de ces concepts au travers d'un jeu d'éléments et d'attributs groupés au sein de l'espace de noms ITS. Les développeurs et auteurs XML peuvent utiliser cet espace de noms pour intégrer directement des fonctionnalités d'internationalisation à leurs propresschémas et documents XML.
ITS version 1.0 comprend sept catégories de données :
Les éléments et attributs ITS fonctionnent de deux façons différentes. D'abord, ils fournissent un balisage que l'on peut utiliser directement dans les documents XML. Ensuite, ils offrent une manière de rattacher certaines balises existantes à des catégories de données ITS, ce qui permet aux processeurs ITS de les traiter de façon adaptée.
ITS s'applique aussi bien à de nouveaux types de documents qu'aux types existants. Il s'applique à la fois aux systèmes de balisage complètement dépourvus de fonctionnalités d'internationalisation qu'à ceux qui prennent déjà en charge certaines fonctionnalités d'internationalisation.
ITS utilise desrègles globales et desrègles locales :
its:rules ;Dans l'exemple de balisage ITS suivant, les éléments et les attributs préfixés parits: font partie de l'espace de noms ITS. L'élémentits:rules énumère les différentes règles à appliquer à ce document. La règleits:translateRule indique tout contenu trouvé dans l'élémenthead ne doit pas être traduit.
L'attributits:translate attaché à certains éléments sert à nuancer la règle générale. Ici, cet attribut est utilisé pour rendre traduisible le contenu detitle et pour rendre non-traduisible le texte "Weltanschauung".
<textxmlns:its="http://www.w3.org/2005/11/its"><head><revision>Sep-10-2011v5</revision><author>CharlesGustaveLejeune</author><contact>cg.lejeune@lameetlavie.fr</contact><titleits:translate="yes">LaconceptionduMonde</title><its:rulesversion="1.0"><its:translateRuletranslate="no"selector="/text/head"/></its:rules></head><body><divxml:id="intro"><head>Introduction</head><p>La<spanits:translate="no">Weltanschauung</span>estunevisiondumonde(ouuneconceptiondumonde),d'unpointdevuemétaphysique,notammentdansl'Allemagneromantiqueoumoderne.</p></div></body></text>
L'élémentits:locNote précise que tout nœud correspondant à l'expression XPath"//msg/data" est associé à une note. L'emplacement de cette note est indiqué par l'attributlocNotePointer, qui contient un chemin XPath relatif pointant sur le nœud où se trouve la note, ici="../notes".
On peut également remarquer l'utilisation de l'attributits:translate pour marquer les balisesnotes comme non-traduisibles.
<Resxmlns:its="http://www.w3.org/2005/11/its"><prolog><its:rulesversion="1.0"><its:translateRuleselector="//msg/notes"translate="no"/><its:locNoteRulelocNoteType="description"selector="//msg/data"locNotePointer="../notes"/></its:rules></prolog><body><msgid="FileNotFound"><notes>Indiquequelefichierderessources{0}n'apaspuêtrechargé.</notes><data>Fichier{0}introuvable.</data></msg><msgid="DivByZero"><notes>Unedivisionparzéroafailliêtrecalculée.</notes><data>Paramètreinvalide.</data></msg></body></Res>
ITS ne constitue pas une solution à tous les problèmes d'internationalisation et de localisation de documents XML.
Une raison en est que la version 1.0 ne dispose pas de catégories de données pour tout. Par exemple, il n'y a pour le moment pas moyen d'indiquer une relation source-cible dans des fichiers bilingues où certaines parties du document contiennent le texte source, alors que d'autres parties contiennent la traduction correspondante.
L'autre raison est que de nombreux aspects de l'internationalisation ne peuvent pas être traduits en balises. Ils se rapportent à la conception de la DTD ou du schéma eux-mêmes. Certainesbonnes pratiques de conception et de rédaction doivent être respectées pour s'assurer que les documents sont correctement internationalisés et faciles à localiser. Par exemple, l'utilisation d'attributs pour stocker des textes à traduire est une mauvaise idée pour plusieurs raisons, mais ITS ne peut pas empêcher un développeur XML de faire un tel choix.