Implementation Report - Internationalization Tag Set (ITS) Version 1.0

This report describes the implementation status of Internationalization Tag Set (ITS) Version 1.0 (editor's copy) before requesting transition to Proposed Recommendation. It covers implementations of all conformance types defined in the specification:

0. Summary: CR Exit Criteria

The CR exit criteria proposed were:

1. Conformance Type 1: ITS Markup Declarations

Implementations of the Conformance Type 1: ITS Markup Declarations are markup schemes containing ITS markup declarations.

Three such markup schemes are described in section ITS Applied to Existing Formats of the latest public Working Draft of Best Practices for XML Internationalization: ITS and TEI, ITS and XHTML 1.0, and ITS and XML Spec. In response to comment Please use XHTML Modularization for defining ITS DTD and Schema, the Working Group has defined an ITS module for XHTML, using the XHTML modularization framework.

The three markup schemes are available as a tarball. The following table demonstrates how these markup schemes conform to Conformance Type 1.

-ITS and TEIITS and XHTML 1.0ITS and XML Spec
Conf.Cl. 1-1: "At least one of the following MUST be in the schema: rules element, one of the local ITS attributes, span element, ruby element." implemented for: rules element, local ITS attributes, span element. implemented for: rules element, local ITS attributes. implemented for: rules element, local ITS attributes, ruby element.
Conf.Cl. 1-2: "If the rules element is used, it MUST be part of the content model of at least one element declared in the schema. It SHOULD be in a content model for meta information, if this is available in that schema (e.g. the head element in XHTML 1.0)." implemented implemented implemented
Conf.Cl. 1-3: "If the ruby element is used, it SHOULD be declared as an inline element." not implemented not implemented. implemented.
Conf.Cl. 1-4: "If the span element is used, it SHOULD be declared as an inline element." implemented. not implemented. not implemented.

Detailed information is below:

2. Conformance Type 2: The Processing Expectations for ITS Markup

2.1. Implementations

Implementations of the Conformance Type 2: The Processing Expectations for ITS Markup are applications that need to process for internationalization or localization the nodes captured by an ITS data category.

The ITS Working Group is aware of the following implementations for this conformance type:

  1. Sebastian Rahtz (invited Expert from University of Oxford) has created Spritser, an implementation of all ITS data categories, both global and local selection mechanisms, as well as defaults for data categories and precedence between selections.
  2. The Okapi Framework open-source project has implemented four ITS data categories: Translate, Localization Note, Terminology and Elements Within Text. All implementations process both global and local selection mechanisms, as well as defaults for data categories and precedence between selections. The CVS repository for the source code and the Rainbow and XML filter download (which apply this implementation) are freely available.

    Applying the Okapi XML filter, Enlaso has implemented a simple Web interface to test ITS. It implements the following data categories: Translate, Localization Note, Terminology, and Elements Within Text (both globally and locally).

  3. Felix Saskai (W3C) has created ITSImpl, an implementation of all ITS data categories, both global and local selection mechanisms, as well as defaults for data categories and precedence between selections.
  4. xml-intl has implemented the ITS data categories Translate and Elements Within Text. The implementations process global selection mechanisms.

All implementations are able to process embedded and linked rules.

The implementations 1), 2) and 3) are open source implementations. 4) is a comercial implementation. The implementations 1), 2) and 3) are also able to produce the debug format for comparison with other tools, which is applied within the test suite (see below).

2.2. Test Suite

The Internationalization Tag Set (ITS) Version 1.0 testsuite (available as a tarball) is composed of tests which apply a common debug format (example). The format lists all element and attribute nodes in an XML document after ITS processing, and the ITS information which is available for them in the <o:output> element. For each ITS data category, there is:

  1. a set of input documents (example)
  2. for each input document a result document in the debug format. These result documents have been used to test during the CR phase whether an implementation is conform to conformance type 2 (example)

The following features have been tested for all data categories:

For the language information data category, two tests have been developed (Language1.xml, Language2.xml) and processed (Language1-result.xml, Language2-result.xml) by implementation 1 and implementation 3 to demonstrate output of ITS processing which conforms to RFC 4646.

An XSLT script is used for the comparison of output. It relies on the output format described below. The format uses the namespace http://www.w3.org/2005/11/its/testoutputformat. An XML Schema document describing the ITS test suite outputformat is available.


$Id: ImpReport.html,v 1.31 2007/02/19 05:51:10 fsasaki Exp $
Felix Sasaki