Набор тегов интернационализации
Набор тегов интернационализации ( ITS ) — это набор атрибутов и элементов, предназначенных для обеспечения интернационализации и локализации поддержки в документах XML . [1]
Спецификация ITS определяет концепции (называемые «категориями данных ITS»), которые важны для интернационализации и локализации. Он также определяет реализацию этих концепций посредством набора элементов и атрибутов, сгруппированных в пространстве имен ITS. Разработчики XML могут использовать это пространство имен для интеграции функций интернационализации непосредственно в свои собственные схемы и документы XML.
Обзор
[ редактировать ]ITS v1.0 включает семь категорий данных:
- Перевести : определяет, какие части документа можно перевести, а какие нет.
- Примечание по локализации : содержит предупреждения, подсказки, инструкции и другую информацию, которая поможет локализаторам или переводчикам.
- Терминология : указывает, какие части документов являются терминами, и, при необходимости, указывает на информацию об этих терминах.
- Направленность : указывает, какой тип направленности отображения следует применять к частям документа.
- Ruby : указывает, какие части документа должны отображаться как текст Ruby. ( Рубин — это небольшой фрагмент текста рядом с базовым текстом, который обычно используется в документах Восточной Азии для обозначения произношения или для предоставления краткой аннотации).
- Информация о языке : определяет язык различных частей документа.
- Элементы внутри текста : указывает, как следует обращаться с элементами с точки зрения лингвистической сегментации.
Словарь предназначен для решения двух различных аспектов: во-первых, путем предоставления разметки, которую можно использовать непосредственно в документах XML. Во-вторых, предлагая способ указать, есть ли части данной разметки, которые соответствуют некоторым категориям данных ITS и должны обрабатываться процессорами ITS как таковые.
ITS применяется как к новым типам документов, так и к существующим. Это также относится к обеим разметкам без каких-либо функций интернационализации, а также к документам, уже поддерживающим интернационализацию или функции, связанные с локализацией.
ITS можно определить с использованием глобальных и локальных правил .
- Глобальные правила выражаются в любом месте документа (встроенные глобальные правила) или даже вне документа (внешние глобальные правила) с помощью
its:rules
элемент. - Локальные правила выражаются специализированными атрибутами (а иногда и элементами), указанными внутри экземпляра документа, в том месте, где они применяются.
Примеры
[ редактировать ]Перевести категорию данных
[ редактировать ]В следующем примере разметки ITS элементы и атрибуты с its
префикс являются частью пространства имен ITS. its:rules
Элемент перечисляет различные правила, применимые к этому файлу. есть один its:translateRule
правило, указывающее, что любой контент внутри head
элемент не следует переводить.
The its:translate
атрибуты, используемые в некоторых элементах, используются для отмены глобального правила. Здесь, чтобы сделать переводимым содержание title
и сделать непереводимым текст «faux pas».
<text xmlns:its="http://www.w3.org/2005/11/its">
<head>
<revision>2006-09-10 v5</revision>
<author>Gerson Chicareli</author>
<contact>[email protected]</contact>
<title
its:translate="yes">The Origins of Modern Novel</title>
<its:rules version="1.0">
<its:translateRule translate="no" selector="/text/head"/>
</its:rules>
</head>
<body>
<div xml:id="intro">
<head>Introduction</head>
<p>It would certainly be quite a <span its:translate="no">faux
pas</span> to start a dissertation on the origin of modern novel without
mentioning the <tl>HKLM of GFDL</tl>...</p>
</div>
</body>
</text>
Категория данных «Примечание о локализации»
[ редактировать ]В следующем примере разметки ITS its:locNote
указывает, что любой узел, соответствующий выражению XPath "//msg/data"
имеет связанное примечание. Местоположение этой заметки обозначается locNotePointer
атрибут, который содержит относительное выражение XPath, указывающее на узел, где находится заметка, здесь ="../notes"
.
Обратите также внимание на использование its:translate
атрибут, обозначающий notes
элементы как непереводимые.
<Res xmlns:its="http://www.w3.org/2005/11/its">
<prolog>
<its:rules version="1.0">
<its:translateRule selector="//msg/notes" translate="no"/>
<its:locNoteRule locNoteType="description" selector="//msg/data" locNotePointer="../notes"/>
</its:rules>
</prolog>
<body>
<msg id="FileNotFound">
<notes>Indicates that the resource file {0} could not be loaded.</notes>
<data>Cannot find the file {0}.</data>
</msg>
<msg id="DivByZero">
<notes>A division by 0 was going to be computed.</notes>
<data>Invalid parameter.</data>
</msg>
</body>
</Res>
Ограничения ИТС
[ редактировать ]ITS не предлагает решения всех проблем интернационализации и локализации XML.
Одна из причин заключается в том, что в версии 1.0 нет категорий данных для всего. Например, в настоящее время нет способа указать источник/цель отношения в двуязычных файлах, где некоторые части документа хранят исходный текст, а некоторые другие части - соответствующий перевод.
Другая причина заключается в том, что многие аспекты интернационализации невозможно решить с помощью разметки. Это связано с дизайном DTD или самой схемы. Существуют лучшие практики, рекомендации по проектированию и созданию документов, которые помогают правильно интернационализировать документы и легко локализовать их. Например, использование атрибутов для хранения переводимого текста является плохой идеей по многим причинам, но ITS не может помешать разработчику XML сделать такой выбор.
Некоторые ограничения ITS 1.0 устранены в версии 2.0: см. на http://www.w3.org/TR/its20/ дополнительную информацию .