Introduction
This section is informative.
This document defines a standard for high-quality, cost
efficient internationalization and localization of schemas and
XML instances (both existing ones and new ones). On the one
hand, the standard is defined conceptually through the notion
of data categories. On the other hand, the standard defines
implementations of these data categories as a set of elements
and attributes called the Internationalization Tag Set
(ITS). The document provides examples of how ITS can be used
with existing popular markup schemes such as
DocBook. Furthermore, the document provides implementations
for three schema languages: XML DTD , XML Schema and RELAX NG .
Requirements for this document are formulated in . Not all requirements listed there
are addressed in this document. Those which are not addressed here
are either covered in or may be addressed in a future
version of this specification.
This document covers the following requirements:
-
[R002 -
span-like element](http://www.w3.org/TR/2006/WD-itsreq-20060518/#span), see [span](#span)
-
[R006 -
identifying language/locale](http://www.w3.org/TR/2006/WD-itsreq-20060518/#langlocale), see
-
[R007 -
identifying Terms](http://www.w3.org/TR/2006/WD-itsreq-20060518/#termid), see
-
[R008 -
purpose specification/mapping](http://www.w3.org/TR/2006/WD-itsreq-20060518/#mapping ), see
-
[R011 -
bidirectional text support](http://www.w3.org/TR/2006/WD-itsreq-20060518/#bidi ), see
-
[R012 -
indicator of translatability](http://www.w3.org/TR/2006/WD-itsreq-20060518/#transinfo ), see
-
[R014 -
limited impact](http://www.w3.org/TR/2006/WD-itsreq-20060518/#impact ), see
-
[R017 -
localization notes](http://www.w3.org/TR/2006/WD-itsreq-20060518/#locnotes ), see
-
[R020 -
annotation markup](http://www.w3.org/TR/2006/WD-itsreq-20060518/#annomark ), see
-
[R025 -
elements and segmentation](http://www.w3.org/TR/2006/WD-itsreq-20060518/#elemseg ), see
The following requirements will be addressed in :
-
[R003 -
CDATA Section](http://www.w3.org/TR/2006/WD-itsreq-20060518/#cdata)
-
[R004 - Unique
Identifier](http://www.w3.org/TR/2006/WD-itsreq-20060518/#uid)
-
[R005 -
Handling of Entities](http://www.w3.org/TR/2006/WD-itsreq-20060518/#entities)
-
[R015 -
Attributes and Translatable Text](http://www.w3.org/TR/2006/WD-itsreq-20060518/#transattr)
-
[R016 -
Naming Scheme](http://www.w3.org/TR/2006/WD-itsreq-20060518/#naming)
-
[R019 -
Multilingual Documents](http://www.w3.org/TR/2006/WD-itsreq-20060518/#multilang)
-
[R022
- Nested Elements](http://www.w3.org/TR/2006/WD-itsreq-20060518/#nestedelems)
The Working Group decided not to cover the following
requirements
at this time to be able to focus on the most important ones.
-
[R001
- Indicator of Constraints](http://www.w3.org/TR/2006/WD-itsreq-20060518/#constraints)
-
[R009
- Content Style](http://www.w3.org/TR/2006/WD-itsreq-20060518/#contstyle)
-
[R010
- Link to Internal/External Text](http://www.w3.org/TR/2006/WD-itsreq-20060518/#linkedtext)
-
[R013 -
Metrics Count](http://www.w3.org/TR/2006/WD-itsreq-20060518/#metrics)
-
[R018
- Handling of White-Spaces](http://www.w3.org/TR/2006/WD-itsreq-20060518/#whitespaces)
-
[R021
- Identifying Date and Time](http://www.w3.org/TR/2006/WD-itsreq-20060518/#datetime)
-
[R023
- Linguistic Markup
](http://www.w3.org/TR/2006/WD-itsreq-20060518/#lingml)
-
[R024 -
Variables](http://www.w3.org/TR/2006/WD-itsreq-20060518/#variables)
-
[R026 -
Associated
Objects](http://www.w3.org/TR/2006/WD-itsreq-20060518/#objects)
Users and Usages of ITS
Potential Users of ITS
The ITS specification aims to provide different types
of users with information about what markup should be
supported to enable worldwide use and effective
internationalization and localization of content. The following paragraphs sketch
these different types of users, and their usage of
ITS.
- Schema developers who start a schema from ground
up
This type of user will find proposals for attribute
and element names to be included in their new schema
(aka “host vocabulary”). Using the attribute and
element names proposed in the ITS specification may be
helpful because it leads to easier recognition of the
concepts represented by both schema users and
processors. It is perfectly possible, however, for a
schema developer to develop his own set of attribute and
element names. The specification sets out, first and
foremost, to ensure the required markup is available,
and that the behaviour of that markup meets established
needs.
- Schema developers who work with an existing schema
This type of user will be
working with schemas such as DocBook, DITA, or perhaps a proprietary
schema.
The ITS Working Group has sought input from experts developing
widely used formats such as the ones mentioned, and the ITS specification provides
examples of how those formats (aka “host vocabulary”) could be used with ITS.
The Working Group covers the question
“How use ITS with existing popular markup schemes?”
in more detail in a separate document .
Developers working on existing schemas
should check whether their schemas support the
markup proposed in this specification, and, where
appropriate, add the markup proposed here to their
schema.
In some cases, an existing schema may
already contain markup equivalent to that
recommended in ITS. In this case it is not necessary
to add duplicate markup since ITS provides
mechanisms for associating ITS
markup with markup in the host vocabulary which
serves a similar purpose (see ). The developer should, however,
check that the behaviour associated with the markup
in their own schema is fully compatible with the
expectations described in this specification.
- Vendors of content-related tools
This type of
users encompasses companies which provide tools for
authoring, translation or other flavours of
content-related software solutions. It is important to
ensure that such tools enable worldwide use and
effective localization of content. For example,
translation tools should prevent content marked up as
not for translation from being changed or translated. It
is hoped that the ITS specification will make the job of
vendors easier by standardising the format and
processing expectations of certain relevant markup
items, and allowing them to more effectively identify
how content should be handled.
- Content producers
This type of users comprises
authors, translators and other types of content
authors. The markup proposed in this specification may
be used by them to mark up specific bits of
content. Aside: The burden of inserting markup should be
removed from content producers by relating the ITS
information to relevant bits of content in a global
manner (see [global,
rule-based approach](#selection-global)). This global work, however,
may fall to information architects, rather than the
content producers themselves.
In order to support all of these users, the information
about what markup should be supported to enable worldwide
use and effective internationalization and localization of content is provided in
this specification in two ways:
- abstractly in the data category descriptions:
- concretely in the ITS schemas:
Ways to Use ITS
The ITS specification proposes several mechanisms for
supporting worldwide use and effective internationalization and localization of
content. We will sketch them below by looking at them from the
perspectives of certain user types. For the purpose of
illustration, we will answer the question, how ITS can
indicate that certain parts of content should or should
not be translated.
-
A content author uses an attribute on a particular
element to say that the text in the element should not
be translated
Use of ITS by content author
-
A content author or information architect uses
markup at the top of the document to identify a
particular type of element or context in which the
content should not be translated.
Use of ITS by information architect
-
A processor may inject markup at the top of the
document which links to ITS information outside of the
document.
Use of ITS by processor
-
A schema developer integrates ITS markup
declarations in his schema to allow users to indicate
that specific parts of the content should not be
translated.
The first two approaches above can be likened to the
use of CSS in XHTML. Using a style attribute,
an XHTML content author may assign a colour to a
particular paragraph. That author could also have used the
style element at the top of the page to say that
all paragraphs of a particular class or in a particular
context would be coloured red.
Motivation for ITS
Content or software that is authored in one language
(so-called source language) is often made available in
additional languages or adapted with regard to other
cultural aspects. This is done through a process called
localization, where the original material is translated and
adapted to the target audience.
In addition, document formats expressed by schemas may be
used by people in different parts of the world, and these
people may need special markup to support the local language
or script. For example, people authoring in languages such
as Arabic, Hebrew, Persian or Urdu need special markup to
demarcate directionality in mixed direction text.
From the viewpoints of feasibility, cost, and efficiency,
it is important that the original material should be
suitable for localization. This is achieved by appropriate
design and development, and the corresponding process is
referred to as internationalization. For a detailed
explanation of the terms "localization" and
"internationalization", see .
The increasing usage of XML as a medium for
documentation-related content (e.g. DocBook, and DITA as
formats for writing structured documentation, well suited to
computer hardware and software manuals) and software-related
content (e.g. the eXtensible User Interface Language ) creates challenges and
opportunities in the domain of XML internationalization and
localization.
The following examples sketch one of the issues that
currently hinder efficient XML-related localization: the
lack of a standard, declarative mechanism which identifies
which parts of an XML document need to be translated. Tools often cannot automatically do this identification.
Document with partially translatable content
PhaseCode should not be translated; the
title attribute sometimes has to be
translated and sometimes must not be translated.
Document with partially translatable content
The first file name in the first component
element would not be translated.
Document with partially translatable content
In the example below, there are no clear mechanisms
allowing one to know which string element needs
to be translated.
Out of Scope
This standard does not exhaustively cover all mechanisms
and data formats which might be needed for configuring
localization workflows or tools to process a specific
format. These mechanisms and data formats, sometimes called
Localization Properties, however, possibly may
be implemented by the framework put forth in this standard.
“XML localization properties” is a generic term to
name the mechanisms and data formats that allows
localization tools to be configured in order to process a
specific XML format. Examples of "XML localization
properties" are: the "Trados DTD Settings" file, and the
SDLX "Analysis" file.
Important Design Principles
Abstraction via data categories: ITS defines
data categories as an abstract notion for information for
internationalization and localization of XML schemas and
documents. This abstraction is helpful in realizing
independence from a particular implementation e.g. using an
element or attribute. See for a definition of the term data
categories, for the definition of the various ITS data
categories, and subsections in for the data
category implementations.
Powerful selection mechanism: For ITS
markup which appears in an XML instance, it has to be
clearly defined to which XML nodes the ITS-related
information pertains. Thus, ITS defines
[selection](#termdef-selection) mechanisms to specify to what parts
of an XML document an ITS data category and its values
should be applied. Selection relies on the information which is
given in the XML Information Set . ITS applications may implement inclusion mechanisms
such as XInclude or DITA's conref.
Content authors need for example a simple way to work
with the [translatability data
category](#translate) in order to express whether the content of an
element or attribute should be translated or
not. Localization coordinators, on the other hand, need an
efficient way for managing translations of large document
sets based on the same schema. This could by realized by a
specification of defaults for translatability and exceptions
from the defaults (e.g. all p elements should be
translated, but not p elements inside of an
index element).
This specification responds to these requirements by
introducing mechanisms for specifying ITS information in XML
documents, see . These mechanisms also provide a means for specifying ITS
information for attributes (a task for which no standard
means yet exists). The ITS mechanisms for selection are:
- as for XML documents, usable
[local](#selection-local) (at the XML node to
which it pertains) or [globally](#selection-global) (not at the XML
node to which it pertains)
- as for global usage: possibly in the target XML
document or in a separate file
No dedicated extensibility: It may be useful
or necessary to extend the set of information available
for internationalization or localization purposes beyond
what is provided by ITS. This specification does not
define a dedicated extension mechanism, since ordinary XML
mechanisms (e.g. XML Namespaces ) may be used.
Ease of integration:
- ITS follows the example from
[section
4](http://www.w3.org/TR/2001/REC-xlink-20010627/#att-method) of , by
providing mostly global attributes for the implementation
of ITS data categories. Avoiding elements for ITS purposes
as much as possible ensures ease of integration into
existing markup schemes, see [section
3.14](http://www.w3.org/TR/itsreq/#impact) in . Only
for some requirements additional child elements have to be
used, see for example .
- ITS has no dependency on technologies which are
still under development
- ITS fits with existing work in the W3C architecture
(e.g. use of XPath
for the selection mechanism)
Development of this Specification
This specification has been developed using the ODD (One Document Does it
all) language of the Text Encoding Initiative (). This is a literate programming language for writing XML schemas, with three characteristics:
- The element and attribute set is specified using an XML vocabulary which includes support for macros (like DTD entities, or schema patterns), a hierarchical class system for attributes and elements, and creation of modules.
- The content models for elements and attributes are written using embedded RELAX NG XML notation.
- Documentation for elements, attributes, value lists etc. is written inline, along with examples and other supporting material.
XSLT transformations are provided by the TEI to extract documentation in HTML, XSL FO or LaTeX forms, and to generate RELAX NG documents and DTD. From the RELAX NG documents, James Clark's [trang](http://www.thaiopensource.com/relaxng/trang.html) can be used to create XML Schema documents.
Basic Concepts
This section is informative.
Information (e.g. "translate this") captured by ITS markup
(e.g. its:translate='yes') always pertains to
one or more XML nodes (mainly element and attribute nodes). In
a sense, ITS markup “selects” the XML node(s). Selection may
be explicit or implicit. ITS distinguishes two approaches to
selection: local, and with global rules.
The mechanisms defined for ITS selection resemble those
defined in . The local
approach can be compared to the style attribute in
CSS, and the approach with global rules is similar to the
style element in CSS. In contrast to CSS, ITS uses
XPath for identifying nodes. Thus, the
- local approach puts ITS markup in the relevant
element of the host vocabulary (e.g. the author
element in DocBook)
- the
[rule-based, global
approach](#selection-global) puts the ITS markup in elements defined by
ITS itself (namely the rules element)
ITS markup can be used with XML documents (e.g. a DocBook
article), or schemas (e.g. an XML Schema document for a proprietary document
format). Since each usage defines some specific requirements,
ITS markup may take different shapes.
The following two examples sketch the distinction between
the local and global approaches.
ITS markup on elements in an XML document (local approach)
The example above shows how a content author may use the
ITS translate attribute to indicate what text
should be translated and what text should be protected from
translation. Translation tools that are aware of the meaning
of this attribute can then screen the relevant content from
the translation process.
For this to work, the schema developer will need to add the
translate attribute to the schema as a common
attribute or on all the relevant element definitions. Note
how there is an expectation in this case that inheritance
plays a part in identifying which content does have to be
translated and which does not. Tools that process this content
for translation will need to implement the expected
inheritance.
ITS global markup in an XML document (rule-based approach)
The example above shows a different approach to identifying
non-translatable content, similar to that used with a
style element in XHTML, but using an ITS-defined
element called rules. It works as follows: A document
can contain a rules element (it is recommended to use
a “head” section), which contains one or more data category
specific ITS elements (for example
translateRule). Each of these specific elements
contains a selector attribute. As its name
suggests, this attribute selects (or designates) the XML node
or nodes to which a corresponding ITS information
pertains. The values of ITS selector attributes are XPath
absolute location paths. Information for the handling of
namespaces in these path expressions is contained in the ITS
element ns which is a child of rules.
For this to work, the schema developer needs to add the
rules element and associated markup to the schema. In
some cases this may allow the schema developer to avoid adding
other ITS markup (such as an translate attribute)
to the elements in the schema. However, it is likely that
authors will want to use attributes on markup from time to
time to override the general rule. For specification of the
[translatability](#translate) information, the contents of the
rules element would normally be designed by an
information architect familiar with the document format and
familiar with, or working with someone familiar with, the
needs of the localization group.
The global, rule-based approach has the following
benefits:
- Content authors do not have to concern themselves with
creating additional markup or verifying that the markup was
applied correctly. ITS data categories are associated with
sets of XML nodes (for example all p elements in an
XML instance)
- Changes can be done in a single location, rather than
by searching and modifying the markup throughout a document
(or documents, if the rules element is stored as an
external entity)
- ITS data categories can designate attribute values as
well as elements.
- It is possible to associate ITS markup with existing
markup (for example the term element in
DITA)
The commonality in both examples above is the markup
translate='no'. This piece of ITS markup can
be interpreted as follows:
- it pertains to the data category
[translatability](#translate)
- the attribute translate holds a value of
no
To summarize: The examples with global and local usage of
ITS markup show that ITS markup, in some cases, appears in
elements defined by ITS itself (the translateRule
element (embedded within a rules element)) and in
other cases appears in elements of the host vocabulary. In
addition to one or more ITS data category specific attributes,
translateRule or other rule elements contain a
corresponding selector attribute. As their name
suggests, a selector selects (or designates) one or
more XML nodes (namely those to which a corresponding ITS data
category attribute pertains). The value of ITS selector
attributes are XPath absolute location paths. Information for
to the handling of namespaces in these path expression is
contained in the ITS element ns which is a child of
rules.
The ITS selector attribute allows:
- ITS data category attributes to appear in global rules
(even outside of an XML document or schema)
- ITS data categories attributes to pertain to sets of
XML nodes (for example all p elements in an XML
document)
- ITS markup to pertain to attributes
- ITS markup to
[
associate with existing markup](#associating-its-with-existing-markup) (for example the
term element in DITA)
The power of the ITS selection mechanisms comes at
a price: rules related to [overriding/precedence](#selection-precedence),
and [inheritance](#selection-defaults-etc),
have to be established.
Overriding and Inheritance
In this example, the ITS data category attribute
translate appears twice: in a rules
element, and on a specific p element. Since the ITS
selector attribute in the rules element
selects all p elements, a question arises: What is
the value for the [translatability](#translate) data category of the
p element which has local markup? ITS provides
precedence and inheritance rules which answer questions like
this. In the example, the value is no (that is to
say, the content of the p element should not be
translated).
Depending on the data category and its usage, there are
additional attributes for adding information to the selected
nodes, or for pointing to existing information in the
document. For example, the data category for localization
information can be used to add information to selected nodes,
or to point at existing information in the document. For the
former purpose, a locInfo element can be used. For
the latter purpose, a locInfoPointer attribute can
be used.
The functionality of adding information to the selected
nodes is available for each data category except [language information](#datacat-lang). Pointing to
existing information is not possible for data categories which
express a closed set of values, that is: [translatability](#translate), [directionality](#dir-sec) and [elements within text](#datacat-within-text).
The functionalities of adding information and pointing to
existing information are mutually exclusive. That
is to say, attributes for pointing and adding must not appear
at the same rule element.
Notation and Terminology
This section is normative.
Notation
The keywords "MUST", "MUST NOT",
"REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT",
"RECOMMENDED", "MAY", and "OPTIONAL" in this document are to
be interpreted as described in .
The namespace URI that [MUST](#rfc-conf)
be used by implementations of this specification is:
http://www.w3.org/2005/11/its
The namespace prefix used in this specification for this
URI is "its". It is recommended that implementations of this
specification use this prefix.
In addition, the following namespaces are used in this
document:
http://www.w3.org/2001/XMLSchema for
the XML Schema namespace, here used with the prefix
"xs"
http://relaxng.org/ns/structure/1.0 for
the RELAX NG namespace, here used with the prefix
"rng"
http://www.w3.org/1999/xlink for the XLink namespace, here used with the prefix "xlink"
Schema Language
Schema language refers in this
specification to an XML-related modelling or validation
language such as XML DTD, XML Schema or RELAX
NG.
This specification provides schemas in the format of
XML DTD, XML Schema or RELAX NG. However, these schemas
are only non-normative: [conformance for ITS
markup declarations](#conformance-product-schema) defines only mandatory positions
of ITS declarations in schemas. This makes it possible to
use ITS with any schema language which allows for using
these positions.
Data category
ITS
defines data category as an abstract concept
for a particular type of information for
internationalization and localization of XML schemas and
documents. The concept of a data category is
independent of its implementation in an XML environment
(e.g. using an element or attribute).
For each data category, ITS distinguishes between the
following:
- the prose description, see
- schema language independent formalization, see the
"markup declarations" subsections in
- schema language specific implementations, see
A data category and its implementation
The data category [translatability](#translate) conveys
information as to whether a piece of content should be
translated or not.
The simplest formalization of this prose description on
a schema language independent level is a
translate attribute with two possible values:
yes and no. An implementation on a
schema language specific level would be the declaration of
the translate attribute in e.g. an XML DTD, an
XML Schema document or an RELAX NG document. A different implementation would be a translateRule element which allows for specifying [global rules](#selection-global) about translatability.
Selection
selection encompasses
mechanisms to specify to what parts of an XML document an
ITS data category and its values should be applied
to. Selection is discussed in detail in . Selection can be
applied globally, see , and locally, see . As for global
selection, ITS information can be [added](#def-adding-pointing) to the selected
nodes, or it can [point to
existing information](#def-adding-pointing) which is related to selected
nodes.
Selection relies on the information which is
given in the XML Information Set . ITS applications [MAY](#rfc-conf) implement inclusion mechanisms
such as XInclude or DITA's conref.
The selection of the ITS data categories applies to text nodes. In
some cases these nodes form pointers to other resources; a well-known
example is the src attribute on the img element in
HTML. The ITS translatability data category applies to the
text of the pointer itself, not the object to which it points. Thus in
the following example, the translation information specified via the translateRule element applies to the filename
instructions.jpg, and is not an instruction to open the
graphic and change the words therein.
Selecting the text of a pointer to an external object
Conformance
This section is normative.
The usage of the term conformance clause in
this section is in compliance with .
This specification defines two types of conformance:
conformance of [1)
ITS markup declarations](#conformance-product-schema) , and conformance of [2)
processing expectations for ITS Markup](#conformance-product-processing-expectations). These
conformance types complement each other. An implementation of
this specification [MAY](#rfc2119) use them
separately or together.
Conformance Type 1: ITS Markup Declarations
Description: ITS markup declarations
encompass all declarations which are part of the
Internationalization Tag Set. They do not concern the
usage of the markup in XML documents. Such
markup is subject to the conformance clauses in .
Definitions related to this conformance
type: ITS markup declarations are defined in various
subsections in and
(e.g. ) in a
schema language independent manner, relying on the ODD
language. Their occurrence in other sections of this
document is typographically marked via bold face and
color.
Who uses this conformance type: Schema
designers integrating ITS markup declarations into a
schema. All conformance clauses for this conformance type
concern the position of ITS markup declarations in that
schema, and their status as mandatory or optional.
Conformance clauses:
1-1: At least one of the following [MUST](#rfc-conf)
be in the schema:
- rules element
- one of the
[local
ITS attributes](#span.attributes)
- span element
- ruby element
1-2: If the rules element is
used, it [MUST](#rfc-conf) be part of the
content model of at least one element declared in the
schema. It [SHOULD](#rfc-conf) be in a
content model for meta information, if this is available
in that schema (e.g. the head element in
XHTML).
1-3: If the ruby element is
used, it [SHOULD](#rfc-conf) be declared
as an inline element.
1-4: If the span element is
used, it [SHOULD](#rfc-conf) be declared
as an inline element.
Full
implementations of this conformance type will implement all
markup declarations for ITS. Statements related to this
conformance type [MUST](#rfc-conf) list all
markup declarations they implement.
Examples: Examples of the usage of ITS
markup declarations in various existing schemas are given in
a separate document .
Since the ITS markup declarations are schema language
independent, each schema language can use its own,
possibly multiple mechanisms to implement the conformance
clauses for ITS markup declarations. For example, an XML
DTD can use parameter entities to encapsulate the [ITS local attributes](#span.attributes), or
declare them directly for each element. The appropriate
steps to integrate ITS into a schema depend on the design
of this schema (e.g. whether it already has a
customization layer which uses parameter entities). The
ITS schemas in the format of XML DTD, XML Schema and RELAX
NG in are only
informative examples.
Conformance Type 2: The Processing Expectations for ITS Markup
Description: Processors need to compute the
ITS information which pertains to a node in an XML
document. The ITS processing expectations define how the
computation has to be carried out. Correct computation
involves support for [selection
mechanism](#def-selector), [defaults](#selection-defaults-etc), and [precedence](#selection-precedence). The markup
[MAY](#rfc-conf) be valid against a schema
which conforms to the clauses in .
Definitions related to this conformance
type: The processing expectations for ITS markup make
use of selection mechanisms defined in . The individual data
categories defined in have [default selections](#selection-defaults-etc),
and allow for using ITS markup in various positions ([global](#selection-global) and [local](#selection-local)). In addition, a set
of processing expectations specific to the [ruby data category](#ruby-sec) and the [directionality data category](#dir-sec), refer
to external specifications.
Who uses this conformance type: Applications
which need to process for internationalization or
localization the nodes captured by a data category. Examples
for this type of application are: ITS markup-aware editors,
or translation tools which make use of ITS markup to filter
translatable text as an input to the localization
process.
Application-specific processing (that is processing
which goes beyond the computation of ITS information for a
node) such as automated filtering of translatable content
based on the [translatability data
category](#translate) is not covered by the conformance clauses
below.
Conformance clauses:
2-1: A processor [
must](#rfc-conf) implement at least one [data category](#def-datacat).
For each implemented [data category](#def-datacat), the following
[MUST](#rfc-conf) be taken into account:
2-1-1:
processing of at least one selection mechanism ([global](#selection-global) or [local](#selection-local)).
2-1-2: the
[default
selections for the data category](#selection-defaults-etc).
2-1-3: the
precedence definitions for selections defined in , for
the type of selections it processes.
2-2: If an application claims to
process ITS markup for the [ruby
data category](#ruby-sec) or the [
directionality data category](#dir-sec), it [MUST](#rfc-conf) be compliant with the
external specifications referenced for [ruby](#ruby-implementation) or [directionality](#dir-def).
2-3: If an application claims to
process ITS markup for the global selection mechanism, it
[MUST](#rfc-conf) process an XLink
href attribute found on a rules
elements.
Statements
related to this conformance type [MUST](#rfc-conf) list all [data categories](#def-datacat) they implement,
and for each [data category](#def-datacat)
which type of selection they support.
Processing of ITS information
This section is normative.
Summary of ITS Markup
The following list summarizes elements relating to global rules and their attributes:
The following list summarizes elements and attributes to be used locally:
Indicating the Version of ITS
The version of the ITS schema defined in this specification is
1.0. The version is indicated by the ITS
version attribute. This attribute is mandatory for the
rules element, where it [MUST](#rfc-conf) be in the ITS namespace and use its prefix, e.g. its:version. If there is no rules element in an
XML document, the ITS version attribute
[MUST](#rfc-conf) be provided on the
root element of the document. If there is both a version
attribute at the root element and a rules element in a
document, they [MUST NOT](#rfc-conf) specify
different versions.
Each XML document can have a different
version. That is: if external rules are linked via an XLink
href attribute on the rules element, they can
specify a different version than the rules element.
Locations of Data Categories
ITS data categories can appear in two places:
[global rules](#selection-global):
the selection is realized within a rules
element. It contains [rule
elements](#rules.content) for each data category. Each rule element
has an selector attribute and possibly other
attributes. The selector attribute contains an
[
AbsoluteLocationPath](http://www.w3.org/TR/xpath#NT-AbsoluteLocationPath) as described in .
[locally in a
document](#selection-local): the selection is realized using [ITS local attributes](#span.attributes),
which are attached to the selected element node, or the
span or ruby element. There is no
additional selector attribute. The default
selection for each data category defines whether the
selection covers attributes and child elements. See .
The two locations are described in detail below.
Global, Rule-based Selection
Global, rule-based selection is implemented using the
rules element. It contains zero or more [rule elements](#rules.content). Each [rule element](#rules.content) has a mandatory
selector attribute. This attribute and all other possible attributes at [rule elements](#rules.content) are in the empty namespace and used without a prefix.
If there is more than one rules element in an XML document, the rules from each section are to be processed at the same precedence level. The rules sections are to be read in document order, and the ITS rules with them processed sequentially. The versions of these rules elements [MUST NOT](#rfc-conf) be different.
Depending on the data
category and its usage, there are additional attributes
for adding information to the selected nodes, or for
pointing to existing information in the document. For
example, the data category [localization
information](#locInfo-datacat-def) can be used for adding information to
selected nodes, or for pointing to existing information in
the document. For the former purpose, an locInfo
element can be used. For the latter purpose, a
locInfoPointer attribute can be used.
The functionality of adding information to the selected
nodes is available for each data category except [language
information](#datacat-lang). Pointing to existing information is not
possible for data categories which express a closed
set of values, that is: [translatability](#translate), [directionality](#dir-sec) and [elements within
text](#datacat-within-text).
The functionalities of adding information and pointing
to existing information are mutually
exclusive. That is: markup for pointing and adding
[MUST NOT](#rfc-conf) appear at the same
rule element.
Another difference between adding and
pointing is the usage of XPath:
-
The value of the selector attribute [MUST](#rfc-conf) be an XPath expression
which starts with "/". That is, it must
be an [
AbsoluteLocationPath](http://www.w3.org/TR/xpath#NT-AbsoluteLocationPath) as described in . This ensures that
the selection is not relative to a specific
location. The resulting nodes [MUST](#rfc-conf) be either element or
attribute nodes.
-
As for data category specific attributes like
locInfoPointer which point to existing
information in the document, a [
RelativeLocationPath](http://www.w3.org/TR/xpath#NT-RelativeLocationPath) as described in [MUST](#rfc-conf) be used. The XPath
expression is evaluated relative to the nodes which
are selected via the selector
attribute.
If namespaces are
used in XPath expressions in the selector
attribute or the pointing attributes, the following rules
[MUST](#rfc-conf) be applied while
processing XPath:
- For each prefix, there
[MUST](#rfc-conf) be an ns element
as a child of the rules element. The
ns element has two attributes prefix
(for the namespace prefix) and uri (for the
namespace URI).
- Element and attribute names without a prefix are
interpreted as having no namespace.
- To avoid a conflict with rule 2., default
namespaces
[MUST NOT](#rfc-conf) be
used in the XPath expressions.
XPath expressions with namespaces
The term element from the TEI is in a
namespace http://www.tei-c.org/ns/1.0.
XPath expressions without namespaces
The qterm element from DocBook is in no
namespace.
The usage of the ns element is inspired by
and compliant
to the requirements on [namespace
bindings](http://www.w3.org/2001/tag/doc/qnameids.html#bindings) described in .
Global rules can appear in the XML document they will
be applied to, or in a separate XML document. The
precedence of their processing depends on these
variations. See also .
Markup for global, rule-based selection is defined as
follows.
Container for global rules.
The ITS namespace.
http://www.w3.org/2005/11/its
A valid XML namespace
The ITS namespace.
http://www.w3.org/2005/11/its
A valid XML namespace
Pointer to external rules files.
An element to describe namespace URIs and prefixes within XPath expressions in
rules elements.
The namespace prefix used in selection expressions.
The namespace being identified.
XPath selection attribute.
Expression identifing the nodes to be selected.
ITS version attribute.
Version of the ITS schema.
1.0
Local Selection in an XML Document
Local selection in XML documents is realized with [local ITS attributes](#span.attributes), the
ruby element, or the span
element. span serves just as a wrapper for the
local ITS attributes and ruby.
It depends on the data category what is being
selected. The necessary data category specific defaults
are described in .
Defaults for various data categories
its:translate="no" at the
head element means that the textual content
of this element, including child elements, should not be
translated. its:translate="yes" at the
body element means that the textual content
of this element, including child elements, should be
translated. Attribute values of the selected elements
or their children's are not affected by local
translate attributes. By default they are not
translatable.
its:dir="ltr" at the body
element means that the directionality of the textual
content of this element, including child elements and
attributes, is "left-to-right".
Markup for local selection is defined as follows.
Inline element to contain ITS information.
The ITS namespace.
http://www.w3.org/2005/11/its
A valid XML namespace
The ITS namespace.
http://www.w3.org/2005/11/its
A valid XML namespace
Link to External Rules
One way to associate a document with a set of external
ITS rules is to use the optional XLink href attribute in the
rules element. The referenced document must be a
valid XML document containing at most one rules
element. That rules element can be the root element
or anywhere within the document tree (for example, the
document could be an XML Schema).
The rules contained in the referenced document [MUST](#rfc-conf) be processed as if they were
at the top of the rules element with the XLink
href attribute.
External file myRules.xml with global rules:
The example demonstrates how metadata can be added to
ITS rules.
Document with a link to myRules.xml
The result of processing the two documents above is the
same as processing the following document.
Document with identical rules as in the case of included rules
Application processing global ITS markup [MUST](#rfc-conf) recognize the XLink
href attribute in the rules element;
they [MUST](#rfc-conf) load the
corresponding referenced document and process its rules
element before processing the content of the rules
element where the original XLink href attribute
is.
External rules may also have links to other external
rules. The linking mechanism is recursive, the deepest rules
being overridden by the top-most rules, if any.
Precedence between Selections
The following precedence order is defined for selections
of ITS information in various positions (the first item in
the list has the highest precedence):
- Implicit local selection
in documents (
[ITS local
attributes](#span.attributes) on a specific element)
- Global selections
in documents (using a rules element)
- Global
selections in an external file (using a rules
element), linked via the XLink href attribute
or a different mechanism
- Selections via defaults
for data categories, see
In case of conflicts between global selections via
multiple [rule](#selection-global)
elements, the last selector has higher precedence.
The precedence order fulfills the same purpose as the
built-in template rules of .
Conflicts between selections of ITS information which are resolved using the
precedence order
Due to the rules described above, the local
translatability information from the translate
attribute on the p element has precedence over
the translatability information on the first
translateRule element. A conflict occurs for
p elements inside of entry elements,
because of the two translateRule elements. This
conflict is resolved via the order of the
translateRule elements (the last one has higher
precedence).
Associating ITS Data Categories with Existing Markup
Some markup schemes provide markup which can be used to
express ITS data categories. ITS data categories can be associated with such existing markup, using
the global selection mechanism described in . In this way,
there is no need to integrate ITS markup into documents.
Associating existing markup with ITS data
categories can be only done if the processing expectations
are the same or if the processing expectations of the host
markup cover at least the same as ITS.
Association of the ITS data categories [
translatability](#translate) and [terminology](#terms) with markup
Schemas for ITS
This section is informative.
The following schemas are provided:
-
[DTD for ITS](its.dtd)
-
[XML Schema document for ITS](its.xsd)
-
[RELAX NG compact syntax document
for ITS](its.rnc)
-
[RELAX NG XML syntax document for
ITS](its.rng)
Checking ITS Markup Constraints
This section is informative.
Several constraints of ITS markup cannot be validated with ITS schemas. The following document allows for validating some of these constraints.
Testing constraints in ITS markup
References
Karl Dubost, Lynne Rosental, Dominique
Hazaël-Massieux, Lofton Henderson.
[QA Framework:
Specification Guidelines](http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/)
. W3C Recommendation 17 August 2005. Available at [
http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/](http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/). The latest version of
[QAFRAMEWORK](http://www.w3.org/TR/qaframe-spec/) is available at
http://www.w3.org/TR/qaframe-spec/.
James Clark, Makoto Murata.
[RELAX
NG Specification](http://www.oasis-open.org/committees/relax-ng/spec-20011203.html)
. OASIS Committee Specification 3 December 2001. Available at [
http://www.oasis-open.org/committees/relax-ng/spec-20011203.html](http://www.oasis-open.org/committees/relax-ng/spec-20011203.html). The latest
version of [RELAX
NG](http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=relax-ng) is available at
http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=relax-ng.
S. Bradner. [Key Words for use in RFCs to Indicate
Requirement Levels](http://www.ietf.org/rfc/rfc2119.txt). IETF RFC 2119. Available at [
http://www.ietf.org/rfc/rfc2119.txt](http://www.ietf.org/rfc/rfc2119.txt).
Addison Phillips, Mark Davis.
[Tags
for the Identification of Languages](http://www.ietf.org/internet-drafts/draft-ietf-ltru-registry-14.txt)
. IETF Internet-Draft, October 2005. See [
http://www.ietf.org/internet-drafts/draft-ietf-ltru-registry-14.txt](http://www.ietf.org/internet-drafts/draft-ietf-ltru-registry-14.txt).
Marcin Sawicki (until 10 October, 1999), Michel
Suignard, Masayasu Ishikawa (石川 雅康), Martin Dürst, Tex Texin,
[Ruby Annotation](http://www.w3.org/TR/ruby/)
. W3C Recommendation 31 May 2001. Available at [
http://www.w3.org/TR/2001/REC-ruby-20010531/ ](http://www.w3.org/TR/2001/REC-ruby-20010531/). The latest version of [Ruby Annotation](http://www.w3.org/TR/ruby/) is available at
http://www.w3.org/TR/ruby/.
Jonny Axelsson, Mark Birbeck, Micah Dubinko, Beth
Epperson, Masayasu Ishikawa, Shane McCarron, Ann Navarro, Steven Pemperton.
[XHTML™ 2.0]( http://www.w3.org/TR/2005/WD-xhtml2-20050527/)
. W3C Working Draft 27 May 2005. Available at [
http://www.w3.org/TR/2005/WD-xhtml2-20050527/](http://www.w3.org/TR/2005/WD-xhtml2-20050527/). The latest version of [XHTML 2.0](http://www.w3.org/TR/xhtml2/) is available at
http://www.w3.org/TR/xhtml2.
Steve DeRose, Eve Maler, David Orchard.
[XML Linking Language
1.0](http://www.w3.org/TR/2001/REC-xlink-20010627/)
. W3C Recommendation 27 June 2001. Available at [
http://www.w3.org/TR/2001/REC-xlink-20010627/](http://www.w3.org/TR/2001/REC-xlink-20010627/). The latest version of [XLink 1.0](http://www.w3.org/TR/xlink/) is available at
http://www.w3.org/TR/xlink/.
Tim Bray, Jean Paoli, C.M. Sperberg-McQueen, et al.,
editors.
[Extensible Markup Language
(XML) 1.0 (Third Edition)](http://www.w3.org/TR/2004/REC-xml-20040204/)
, W3C Recommendation 04 February 2004. Available at [
http://www.w3.org/TR/2004/REC-xml-20040204/](http://www.w3.org/TR/2004/REC-xml-20040204/). The latest version of [XML 1.0](http://www.w3.org/TR/REC-xml/) is available at
http://www.w3.org/TR/REC-xml/.
John Cowan, Richard Tobin.
[XML Information Set
(Second Edition)](http://www.w3.org/TR/2004/REC-xml-infoset-20040204/)
. W3C Recommendation 4 February 2004. Available at [
http://www.w3.org/TR/2004/REC-xml-infoset-20040204/](http://www.w3.org/TR/2004/REC-xml-infoset-20040204/). The latest version of [XML Infoset](http://www.w3.org/TR/xml-infoset/) is available at
http://www.w3.org/TR/xml-infoset/.
Tim Bray, Dave Hollander, Andrew Layman.
[Namespaces in
XML](http://www.w3.org/TR/1999/REC-xml-names-19990114/)
. W3C Recommendation 14 January 1999. Available at [
http://www.w3.org/TR/1999/REC-xml-names-19990114/](http://www.w3.org/TR/1999/REC-xml-names-19990114/). The latest version of [XML Names](http://www.w3.org/TR/REC-xml-names/) is available at
http://www.w3.org/TR/REC-xml-names/.
Henry S. Thompson, David Beech, Murray Maloney,
Noah Mendelsohn.
[XML Schema Part 1:
Structures Second Edition](http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/)
. W3C Recommendation 28 October 2004. Available at [
http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/](http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/). The latest version of [XML Schema](http://www.w3.org/TR/xmlschema-1/) is
available at http://www.w3.org/TR/xmlschema-1/.
James Clark.
[XML Path Language (XPath)
Version 1.0](http://www.w3.org/TR/1999/REC-xpath-19991116)
. W3C Recommendation 16 November 1999. Available at [
http://www.w3.org/TR/1999/REC-xpath-19991116](http://www.w3.org/TR/1999/REC-xpath-19991116). The latest version of [XPath 1.0](http://www.w3.org/TR/xpath) is available at
http://www.w3.org/TR/xpath.
References
[Cascading Style Sheets,
level 2](http://www.w3.org/TR/1998/REC-CSS2-19980512/)
. W3C Recommendation 12 May 1998. Available at [
http://www.w3.org/TR/1998/REC-CSS2-19980512](http://www.w3.org/TR/1998/REC-CSS2-19980512/). The latest version of [CSS2](http://www.w3.org/TR/REC-CSS2/) is available at
http://www.w3.org/TR/REC-CSS2/.
Michael Priestley, JoAnn Hackos, et. al., editors. [OASIS Darwin Information Typing
Architecture (DITA) Language Specification v1.0](http://www.oasis-open.org/committees/download.php/15316/dita10.zip). OASIS Standard 9 May 2005. Available at [http://www.oasis-open.org/committees/download.php/15316/dita10.zip](http://www.oasis-open.org/committees/download.php/15316/dita10.zip).
Norman Walsh and Leonard Muellner.
[DocBook: The Definitive Guide](http://www.docbook.org/)
. Available at [
http://www.docbook.org/](http://www.docbook.org/).
Richard Ishida, Susan Miller. [Localization vs.
Internationalization](http://www.w3.org/International/questions/qa-i18n). Article of the [W3C Internationalization Activity](http://www.w3.org/International/),
January 2006.
Yves Savourel.
[Internationalization and
Localization Markup Requirements](http://www.w3.org/TR/2006/WD-itsreq-20060518/)
. W3C Working Draft 18 May 2006. Available at [
http://www.w3.org/TR/2005/WD-itsreq-20060518/](http://www.w3.org/TR/2006/WD-itsreq-20060518/). The latest version of [ITS REQ](http://www.w3.org/TR/itsreq/) is available at
http://www.w3.org/TR/itsreq/.
Michael Brauer et al.
[OASIS
Open Document Format for Office Applications (OpenDocument).](http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=office)
. Oasis Standard 1 May 2005. Available at [
http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=office](http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=office). The latest
version of [
OpenDocument](http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=office) is available at
http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=office.
[Schematron - A Language for Making Assertions
about Patterns Found in XML Documents](http://www.schematron.com/)
. Available at [
http://www.schematron.com/](http://www.schematron.com/).
Norman Walsh.
[Using Qualified Names
(QNames) as Identifiers in XML Content](http://www.w3.org/2001/tag/doc/qnameids.html)
. TAG Finding 17 March 2004. Available at [
http://www.w3.org/2001/tag/doc/qnameids.html](http://www.w3.org/2001/tag/doc/qnameids.html).
Lou Burnard and Syd Bauman (eds).
[Text Encoding Initiative Guidelines development
version (P5)](http://www.tei-c.org/P5/)
. TEI Consortium, Charlottesville, Virginia, USA, Text Encoding Initiative.
Steven Pemperton et al.
[XHTML™ 1.0 The Extensible
HyperText Markup Language (Second Edition)](http://www.w3.org/TR/2002/REC-xhtml1-20020801/)
. W3C Recommendation 26 January 2000, revised 1 August 2002. Available at [
http://www.w3.org/TR/2002/REC-xhtml1-20020801/](http://www.w3.org/TR/2002/REC-xhtml1-20020801/). The latest version of [XHTML 1.0](http://www.w3.org/TR/xhtml1/) is available at
http://www.w3.org/TR/xhtml1/.
Yves Savourel, Diane Stoick. [Best Practices for XML Internationalization](http://www.w3.org/TR/2006/WD-xml-i18n-bp-20060518/). Available at [http://www.w3.org/TR/2006/WD-xml-i18n-bp-20060518/](http://www.w3.org/TR/2006/WD-xml-i18n-bp-20060518/). The latest version of [xml-i18n-bp](http://www.w3.org/TR/xml-i18n-bp/) is available at http://www.w3.org/TR/xml-i18n-bp/.
[The XML Spec Schema and
Stylesheets](http://www.w3.org/2002/xmlspec/)
. Available at [
http://www.w3.org/2002/xmlspec/](http://www.w3.org/2002/xmlspec/).
James Clark.
[XSL Transformations (XSLT)
Version 1.0](http://www.w3.org/TR/1999/REC-xslt-19991116)
. W3C Recommendation 16 November 1999. Available at [
http://www.w3.org/TR/1999/REC-xslt-19991116](http://www.w3.org/TR/1999/REC-xslt-19991116). The latest version of [XSLT 1.0](http://www.w3.org/TR/xslt) is available at
http://www.w3.org/TR/xslt.
[exTensible User Inferface Language](http://www.xulplanet.com/)
. Available at [
http://www.xulplanet.com/](http://www.xulplanet.com/).
Revision Log
The following log records
major changes that have been made to this document since the
[
publication in November 2005](http://www.w3.org/TR/2005/WD-its-20051122/).
- A section about
[basic
concepts](#basic-concepts) of ITS has been created.
- Terminology has been modified: the terms for position
of ITS information
[in
situ versus dislocated](http://www.w3.org/TR/2005/WD-its-20051122/#design-decisions) have been replaced by [selection in an instance
document](#selection-local) versus [global, rule-based
selection](#selection-global).
- The definition of the
[directionality data category](#dir-sec) has
been changed, to be compliant to various other
specifications. See the [comment
on bidirectionality](http://www.w3.org/Bugs/Public/show_bug.cgi?id=2551) for further information.
- Terminology within the text of this document and
within the markup declarations has been modified:
[scope
of ITS information](http://www.w3.org/TR/2005/WD-its-20051122/#scope) has been replaced with [selection of ITS
information](#selection).
- The
[
schemaRules](http://www.w3.org/TR/2005/WD-its-20051122/#schemaRules) element has been removed. For ITS
information as schema annotation, where is now only a
schemaRule element.
- All ITS attributes are now defined as qualified
attributes. This leads to changes in the
[generated ITS schemas](#its-schemas), for
example the generation of parameter entities for prefixes in
the XML DTD. This allows for easy changing of prefixes in
element or attribute names.
- The possibility of selector attributes in instance
documents (in the previous draft this was called
[
scope in an instance document](http://www.w3.org/TR/2005/WD-its-20051122/#scope-instance)) has been removed. [Local selection in an instance
document](#selection-local) now relies only on [default selections of data
categories](#selection-defaults-etc). Due to this change, the definition of [precedence between
selections](#selection-precedence) and [conformance
criteria](#conformance) have been simplified, and the [
issue on namespace requirements and selector values](http://www.w3.org/Bugs/Public/show_bug.cgi?id=2719)
could be resolved.
- Definitions of
[default selections of data
categories](#selection-defaults-etc) have been modified.
- An ns element has been added to the
rules element to allow for specifying namespace
bindings.
- The implementation of the
[ruby
data category](#ruby-sec) has been modified, to reflect the
removal of selector attributes in instance documents.
- A section on
[mapping of
ITS data categories to existing markup](#associating-its-with-existing-markup) has been
created.
- Examples of integrating ITS markup into a TEI schema
and into XML Spec have been created.
- A span element has been created.
- The examples have been modified to reflect changes
mentioned above.
- For clarity, various sections have been reworded and
re-structured, and the visualization of ITS markup within
the text of this document has been modified.
- Tracking of issues is now handled via Bugzilla.
- A revision log has been added.
The following log records
major changes that have been made to this document since the
[
publication in February 2006](http://www.w3.org/TR/2006/WD-its-20060222/).
- The schemaRule element, and the notion of
schema annotation which was connected to it, have been
abandoned.
- The section on conformance has been rewritten and
placed at the beginning of the document.
- In global rules, the documentRule element has
been replaced with elements which have data category
specific names. This eases the creation and validation of
global rules.
- In global rules, instead of rule specific attributes
for selection, there is now just one selector
attribute.
- In global rules, the documentRules element
has been renamed to rules.
- In global rules, in addition to the existing
functionality of
[adding](#def-adding-pointing) ITS information
to selected nodes, a new functionality of [pointing](#def-adding-pointing) to information
in an XML document has been created.
- An XLink href attribute has been added to
the rules element to allow for
[links to external
rules](#link-external-rules). The [precedence between
selections](#selection-precedence) has been modified to reflect this
change.
- Two new data categories
[language information](#datacat-lang) and [elements within text](#datacat-within-text)
have been defined.
- The data category
[ruby](#ruby-sec)
has been redefined, to be conforming to .
- The declarations for ITS markup have been rewritten,
to adopt the changes mentioned above.
- The declarations for ITS markup (formally all
assembled in a single section) have been separated and
placed in the sections there they are described.
- A modularization of ITS and XHTML 1.0 has been
created.
- The informative and have been rewritten.
- Examples and the modularizations of ITS with existing
markup schemes have been changed to reflect the modifications
mentioned above.
The following
log records major changes that have been made to this document
since the [publication
in April 2006](http://www.w3.org/TR/2006/WD-its-20060414/).
- The
[conformance
section](#conformance) has been rewritten.
- The terminology of mapping ITS data categories with
existing markup has been changed to
[associating
ITS Data Categories with existing markup](#associating-its-with-existing-markup).
- The global rule elements have been rewritten to
have attributes in the empty namespace.
- The examples have been validated, partially modified and extended.
- Documentation strings have been added to elements
and attributes.
- The data category
[elements within text](#datacat-within-text) has been redefined.
- Clarifications about
[ITS and inclusion mechanisms](#selection-and-inclusion-mechanisms) and [selections of pointers to external (possibly non-textual) objects](#note-object-selection) have been made.
- The
[local attributes](#span.attributes) have been reorganised into various data category specific groups.
- A
[versioning mechanism](#its-version-attribute) has been introduced
- A
[summary of ITS markup](#its-markup-summary) has been created.
- The automatically generated
[ITS schemas](#its-schemas) have been augmented with element and attribute documentations.
- A description of
[ITS markup constraints](#its-schematron-constraints) not covered by the ITS schemas has been created.
- The attributes
[termRef](http://www.w3.org/TR/2006/WD-its-20060414/#att.termRef.attribute.termRef) and [termRefPointer](http://www.w3.org/TR/2006/WD-its-20060414/#att.termRefPointer.attribute.termRefPointer) have been renamed to termInfoRef and termInfoRefPointer.
- A list of requirements which are formulated in , but not covered in this document, has been created. See .
Acknowledgements
This document has been developed with contributions by the
ITS Working Group. At the date of publication, the members of
the Working Group were: Damien Donlon (Sun Microsystems),
Martin Dürst (Invited Expert), Richard Ishida (W3C), Masaki
Itagaki (Invited Expert), Christian Lieske (SAP AG), Naoyuki
Nomura (Ricoh), Sebastian Rahtz (Invited Expert), François
Richard (HP), Goutam Saha (CDAC), Felix Sasaki (W3C), Yves
Savourel (ENLASO), Dianne Stoick (Boeing), Najib Tounsi (Ecole
Mohammadia d'Ingénieurs Rabat (EMI)) and Andrzej Zydroń
(Invited Expert).
A special thanks goes to Sebastian Rahtz who introduced us
to the ODD language, which was used to create this document,
and who provided the stylesheets to generate schemas and the
XHTML version out of an ODD document. The generation of XHTML
from ODD takes an intermediate step through the
xmlspec-i18n.dtd.
$Id: itstagset.odd,v 1.124 2006/04/20 14:24:12 fsasaki
Exp $