Re: [Fwd: Re: terminology]

I have rewritten many sentence in the ITS draft, and removed all uses of
"dislocated"
and all but two of "in situ". I have simply
reworded things to avoid such words, usually,
or used phrases like "rule-based". Since we have no element-level
selectors any more, the
dislocated/in-situ distinction really isn't
so important.

I append a patch, if you can read it, and have
send Felix a revised .odd file.

I have also replaced all occurrences of (eg)
"p" with <gi>p</gi>, so that it can be
rendered better. excessive use of quotes
is EVIL.

I'd like to do more rewriting of the English
(you'll see other occasions where I have
simplified a sentence) but its time to hand
control back to Felix :-}


Sebastian

*** itstagset.odd.2 2006-02-14 12:14:04.000000000 +0000
--- itstagset.odd 2006-02-14 14:25:54.000000000 +0000
***************
*** 152,158 ****
opportunities in the domain of XML internationalization and
localization. In the following examples the <hi rend="localizable">text
in bold face</hi> shows the parts that need to be localized. </p>
<exemplum>
<head>Document with localizable content</head>
! <p>Without localization-specific information it is difficult for tools
to detect that <code>PhaseCode</code> should not be translated, or that
the <code>title</code> attribute sometimes does and sometimes does not.</p>
<egXML xmlns="http://www.tei-c.org/ns/Examples"><![CDATA[<Manual>
<Info>
<PhaseCode>Review Level</PhaseCode>
--- 152,158 ----
opportunities in the domain of XML internationalization and
localization. In the following examples the <hi rend="localizable">text
in bold face</hi> shows the parts that need to be localized. </p>
<exemplum>
<head>Document with localizable content</head>
! <p>Without localization-specific information it is difficult for tools
to detect that <gi>PhaseCode</gi> should not be translated, or that the
<code>title</code> attribute sometimes does and sometimes does not.</p>
<egXML xmlns="http://www.tei-c.org/ns/Examples"><![CDATA[<Manual>
<Info>
<PhaseCode>Review Level</PhaseCode>
***************
*** 245,279 ****
same schema, a specification
of defaults for
translatability and exceptions
! from the defaults is of
! importance (e.g. all
! <code>p</code> elements should
be translated, but not
! <code>p</code> elements inside
! of an <code>index</code>
element). This specification
! responds to these conflicting
requirements by introducing
! mechanisms for selecting ITS
information in
XML documents or schemas, see
<ptr type="specref"
! target="#selection"/>. The
! methodology also provides a
! means for selecting ITS
! information in attributes (a task for which no standard means exists
yet). The ITS mechanisms for selection need to consider the following:</p>
<list type="unordered">
! <item>viable for both XML schemas and XML instances</item>
! <item>viable in situ (at the XML node to which it pertains) or
dislocated (not at the XML node to which it pertains)</item>
</list>

<p><emph>Extensibility</emph>: 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 general extension mechanism, since ordinary XML
mechanisms (e.g. XML Namespaces <ptr target="#xmlns" type="bibref"/>)
may be used.</p>
! <p><emph>Easy of
integration</emph>:</p>
<list type="unordered">
<item> ITS follows the example from <ref
target="http://www.w3.org/TR/xlink11/#att-method">section 4</ref> of
<ptr type="bibref" target="#xlink11"/>, by providing mostly
global attributes for the implementation of ITS data categories.
Avoiding elements for ITS purposes as much as
! possible ensures easy of integration into existing markup schemes, see
<ref target="http://www.w3.org/TR/itsreq/#impact">section 3.14</ref> in
<ptr type="bibref" target="#itsreq"/>. Only for some requirements
additional child
elements have to be used, see for example <ptr type="specref"
target="#ruby-sec"/>.</item>
<item>ITS has no dependency on technologies which are yet to be
developed</item>
<item>ITS fits with existing work in the W3C architecture (e.g. use of
--- 245,285 ----
same schema, a specification
of defaults for
translatability and exceptions
! from the defaults is
! important (e.g. all
! <gi>p</gi> elements should
be translated, but not
! <gi>p</gi> elements inside
! of an <gi>index</gi>
element). This specification
! responds to these
requirements by introducing
! mechanisms for specifying ITS
information in
XML documents or schemas, see
<ptr type="specref"
! target="#selection"/>. This
! method also provides a
! means for specifying ITS
! information for attributes (a
! task for which no standard
! means yet exists). The ITS mechanisms for selection are:</p>
<list type="unordered">
! <item>useable for both XML schemas and XML instances</item>
! <item>useable <emph>in situ</emph> (at the XML node to which it
pertains) or globally (not at the XML node to which it pertains)</item>
</list>

<p><emph>Extensibility</emph>: 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 general extension mechanism, since ordinary XML
mechanisms (e.g. XML Namespaces <ptr target="#xmlns" type="bibref"/>)
may be used.</p>
! <p><emph>Ease of
integration</emph>:</p>
<list type="unordered">
<item> ITS follows the example from <ref
target="http://www.w3.org/TR/xlink11/#att-method">section 4</ref> of
<ptr type="bibref" target="#xlink11"/>, 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 <ref
! target="http://www.w3.org/TR/itsreq/#impact">section
! 3.14</ref> in <ptr type="bibref"
! target="#itsreq"/>. Only for some requirements do additional child
elements have to be used, see for example <ptr type="specref"
target="#ruby-sec"/>.</item>
<item>ITS has no dependency on technologies which are yet to be
developed</item>
<item>ITS fits with existing work in the W3C architecture (e.g. use of
***************
*** 359,365 ****
</list>
<exemplum>
<head>A data category and its implementation</head>
! <p>The data category <ref target="#translate">translatability</ref>
conveys mainly information 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 <code>translate</code>
attribute with two possible values: <code>yes</code> and
<code>no</code>. An implementation on a schema language specific level
would be the declaration of the <code>translate</code> attribute in e.g.
an XML DTD, an XML Schema document or an RELAX NG document.</p>
<p> An alternative formalization on a schema language independent level
is a <ref target="#schemaRule">schemaRule</ref> element which conveys
via a <code>translate</code> attribute information about
translatability. An implementation on a schema language specific level
is the declaration of the <ref target="#schemaRule">schemaRule</ref>
element.</p>
</exemplum>
</div>
--- 365,373 ----
</list>
<exemplum>
<head>A data category and its implementation</head>
! <p>The data category
! <ref
! target="#translate">translatability</ref> 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 <code>translate</code> attribute with two possible values:
<code>yes</code> and <code>no</code>. An implementation on a schema
language specific level would be the declaration of the
<code>translate</code> attribute in e.g. an XML DTD, an XML Schema
document or an RELAX NG document.</p>
<p> An alternative formalization on a schema language independent level
is a <ref target="#schemaRule">schemaRule</ref> element which conveys
via a <code>translate</code> attribute information about
translatability. An implementation on a schema language specific level
is the declaration of the <ref target="#schemaRule">schemaRule</ref>
element.</p>
</exemplum>
</div>
***************
*** 382,398 ****
<p>
<emph>This section is informative.</emph>
</p>
! <p>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). ITS markup explicitly or implicitly
"selects" these XML node(s). ITS destinguishes two ways of selecting XML
nodes: in situ, and dislocated.</p>
! <p>The mechanisms defined for ITS selection resemble those defined in
CSS. in situ ITS information can be compared to the style attribute in
CSS, an the dislocated ITS information is similar to the style element
in CSS. In contrast to CSS, ITS uses XPath.
<list>
! <item>the inSitu approach puts ITS markup in the relevant element of
the host vocabulary (e.g. the "author" element in DocBook)</item>
! <item>the dislocated approach put the ITS markup appears in elements
defined by ITS itself (e.g. the "documentRule" element)</item>
</list>
</p>
<p>ITS markup can be used with XML instances (e.g. a DocBook article),
or schemas (e.g. an XSD for a proprietary document format). Since each
usage defines some specific requirements, ITS markup in XML instances
may look slightly different than ITS markup in schemas.</p>
! <p>The following three examples sketch the destinction between inSitu
and dislocated, and the difference between ITS in XML instances and
schemas.</p>
<exemplum>
! <head>ITS markup inSitu in an XML instance</head>
<egXML xmlns="http://www.tei-c.org/ns/Examples"><![CDATA[
<article xmlns="http://docbook.org/ns/docbook"
xmlns:its="http://www.w3.org/2005/11/its"
--- 390,430 ----
<p>
<emph>This section is informative.</emph>
</p>
! <p>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). ITS markup
! explicitly or implicitly
! selects these XML
! node(s). ITS distinguishes two
! ways of selecting XML nodes:
! locally, and via global rules.</p>
! <p>The mechanisms defined for
! ITS selection resemble those
! defined in CSS. Element-specific ITS
! information can be compared to
! the style attribute in CSS,
! and ITS information in global
! rules is similar to the style
! element in CSS. In contrast to
! CSS, ITS uses XPath for
! identifying nodes.
<list>
! <item>the <emph>in situ </emph>approach puts ITS markup in the
relevant element of the host vocabulary (e.g. the <gi>author</gi>
element in DocBook)</item>
! <item>the rule-based approach puts the ITS markup in elements defined
by ITS itself (i.e.. the <eg><gi>documentRule</gi></eg> element)</item>
</list>
</p>
<p>ITS markup can be used with XML instances (e.g. a DocBook article),
or schemas (e.g. an XSD for a proprietary document format). Since each
usage defines some specific requirements, ITS markup in XML instances
may look slightly different than ITS markup in schemas.</p>
! <p>The following three
! examples sketch the
! destinction between the local
! and global approaches, and the difference between ITS in XML instances
and schemas.</p>
<exemplum>
! <head>ITS markup on
! elements in an XML instance</head>
<egXML xmlns="http://www.tei-c.org/ns/Examples"><![CDATA[
<article xmlns="http://docbook.org/ns/docbook"
xmlns:its="http://www.w3.org/2005/11/its"
***************
*** 411,417 ****
]]></egXML>
</exemplum>
<exemplum>
! <head>ITS markup dislocated in an XML instance</head>
<egXML xmlns="http://www.tei-c.org/ns/Examples"><![CDATA[
<dita:topic xmlns:dita="http://dita.oasis-open.org/architecture/2005/"
xmlns:its="http://www.w3.org/2005/11/its"
--- 443,449 ----
]]></egXML>
</exemplum>
<exemplum>
! <head>ITS global markup in an XML instance</head>
<egXML xmlns="http://www.tei-c.org/ns/Examples"><![CDATA[
<dita:topic xmlns:dita="http://dita.oasis-open.org/architecture/2005/"
xmlns:its="http://www.w3.org/2005/11/its"
***************
*** 428,434 ****
]]></egXML>
</exemplum>
<exemplum>
! <head>ITS markup inSitu in an XML Schema</head>
<egXML xmlns="http://www.tei-c.org/ns/Examples"><![CDATA[
<xs:schema>
<xs:element name="term">
--- 460,467 ----
]]></egXML>
</exemplum>
<exemplum>
! <head>ITS markup on
! elements in an XML Schema</head>
<egXML xmlns="http://www.tei-c.org/ns/Examples"><![CDATA[
<xs:schema>
<xs:element name="term">
***************
*** 444,468 ****
<p>The commonality in all of the examples above is
the markup "its:translate='no'". This piece of ITS markup can be
interpreted as follows:
<list>
! <item>it pertains to the data category "translatability"</item>
<item>the ITS data category attribute "its:translate" holds a value of
"no"</item>
</list>
</p>
! <p>The examples with dislocated and in situ usage of ITS markup show
that ITS data category attributes in some cases appear in elements
defined by ITS itself: "documentRule" (embedded within a "documentRules"
element, "schemaRule". It should come as no surprise that one difference
between these two elements is where there are used:
<list>
<item>documentRule: may appear in XML instances and schemas</item>
<item>schemaRule: may only appear in schemas</item>
</list>
! A less obvious, but important difference between "documentRule" and
"schemaRule" is the following: in addition one or more ITS data category
attributes, "documentRule" contains a corresponding set of so-called
"ITS selector attributes" (in the example "its:translateSelector"). As
their name suggests, they "select" (or designate) 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 may appear as
a child to "documentRules". </p>
<p>ITS selector attributes are very powerful. They allow:
<list>
! <item>ITS data category attributes to appear dislocated (even outside
of an XML instance or schema)</item>
! <item>that ITS data categories attributes pertain to sets of XML nodes
(for example all "p" elements in an XML instance)</item>
<item>ITS markup to pertain to attributes</item>
! <item>ITS markup to map to markup of the host markup scheme (for
example the "term" element in DITA)</item>
</list>
</p>
! <p>The power of ITS selector attributes comes at a price: rules
related to overwriting/precedence, and inheritance have to be established.
</p>
<exemplum>
<head>Overwriting and Inheritance</head>
--- 477,510 ----
<p>The commonality in all of the examples above is
the markup "its:translate='no'". This piece of ITS markup can be
interpreted as follows:
<list>
! <item>it
! pertains to
! the data
! category "translatability"</item>
<item>the ITS data category attribute "its:translate" holds a value of
"no"</item>
</list>
</p>
! <p>The examples with global and local usage of ITS markup show that
ITS data category attributes in some cases appear in elements defined by
ITS itself: <gi>documentRule</gi> (embedded within a
<gi>documentRules</gi> element, <gi>schemaRule</gi>. It should come as
no surprise that one difference between these two elements is where they
are used:
<list>
<item>documentRule: may appear in XML instances and schemas</item>
<item>schemaRule: may only appear in schemas</item>
</list>
! A less obvious, but important difference between <gi>documentRule</gi>
and <gi>schemaRule</gi> is the following: in addition one or more ITS
data category attributes, <gi>documentRule</gi> contains a corresponding
set of ITS selector attributes (in the example "its:translateSelector").
As their name suggests, they select (or designate) 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 <gi>ns</gi> which is a
child of <gi>documentRules</gi>. </p>
<p>ITS selector attributes are very powerful. They allow:
<list>
! <item>ITS data
! category
! attributes to
! appear in
! global rules (even outside of an XML instance or schema)</item>
! <item>ITS data
! categories
! attributes to pertain to sets of XML nodes (for example all <gi>p</gi>
elements in an XML instance)</item>
<item>ITS markup to pertain to attributes</item>
! <item>ITS markup to map to markup of the host markup scheme (for
example the <gi>term</gi> element in DITA)</item>
</list>
</p>
! <p>The power of ITS selector attributes comes at a price: rules
related to overwriting/precedence, and inheritance, have to be established.
</p>
<exemplum>
<head>Overwriting and Inheritance</head>
***************
*** 480,486 ****
]]></egXML>
</exemplum>
<p>
! In this example, the ITS data category attribute "its:translate"
appears twice: dislocated in a "documentRule" and inSitu in a particular
"p" element. Since the ITS selector attribute in the "documentRule"
selects all "p" elements, the question arises what the value for the
"translate" data category of the "p" element which has inSitu markup is.
ITS provides precedence and inheritance rules which answer questions
like this. In the example, the value is "no" (that is the content of the
"p" element should not be translated).
</p>
</div>
<div xml:id="selection">
--- 522,528 ----
]]></egXML>
</exemplum>
<p>
! In this example, the ITS data category attribute "its:translate"
appears twice: in a <gi>documentRule</gi>, and on particular <gi>p</gi>
element. Since the ITS selector attribute in the <gi>documentRule</gi>
selects all <gi>p</gi> elements, the question arises what the value for
the "translate" data category of the <gi>p</gi> element which has local
markup is. ITS provides precedence and inheritance rules which answer
questions like this. In the example, the value is "no" (that is the
content of the <gi>p</gi> element should not be translated).
</p>
</div>
<div xml:id="selection">
***************
*** 504,510 ****
data categories are expressed as schema annotation, and the selection is
the element or attribute declaration which is being annotated</item>
<item>
<ref
! target="#selection-dislocated">dislocated</ref>:
the selection
is realized as
a <ref target="#att.selector">selector attribute</ref>,
--- 546,552 ----
data categories are expressed as schema annotation, and the selection is
the element or attribute declaration which is being annotated</item>
<item>
<ref
! target="#selection-dislocated">global rules</ref>:
the selection
is realized as
a <ref target="#att.selector">selector attribute</ref>,
***************
*** 544,551 ****
<termStruct xml:id="def-xsd-element-selector" term="selectoin of
elements in XML
Schema">
<term>selection of elements in XML Schema</term> is expressed via an
! <code>xs:appinfo</code> element which is a direct child of the
! <code>xs:element</code> element and which contains a
<ref
target="#schemaRule">schemaRule</ref>
element,
--- 586,593 ----
<termStruct xml:id="def-xsd-element-selector" term="selectoin of
elements in XML
Schema">
<term>selection of elements in XML Schema</term> is expressed via an
! <gi>xs:appinfo</gi> element which is a direct child of the
! <gi>xs:element</gi> element and which contains a
<ref
target="#schemaRule">schemaRule</ref>
element,
***************
*** 575,582 ****
<term>selection
of
attributes in XML Schema</term> is expressed via an
! <code>xs:appinfo</code> element which is a direct child of the
! <code>xs:attribute</code> element and which
contains
a <ref
target="#schemaRule">schemaRule</ref>
--- 617,624 ----
<term>selection
of
attributes in XML Schema</term> is expressed via an
! <gi>xs:appinfo</gi> element which is a direct child of the
! <gi>xs:attribute</gi> element and which
contains
a <ref
target="#schemaRule">schemaRule</ref>
***************
*** 605,611 ****
of
elements
in RELAX NG</term> is expressed via a <ref
target="#schemaRule">schemaRule</ref> element which is a direct child of the
! <code>rng:element</code> element, and which has
one
or
more <ref
--- 647,653 ----
of
elements
in RELAX NG</term> is expressed via a <ref
target="#schemaRule">schemaRule</ref> element which is a direct child of the
! <gi>rng:element</gi> element, and which has
one
or
more <ref
***************
*** 628,634 ****
<term>selection
of
attributes in RELAX NG</term> is expressed via a <ref
target="#schemaRule">schemaRule</ref> element which is a direct child of the
! <code>rng:attribute</code> element, and which has one
or
more <ref
target="#att.datacats.attributes">datacategory
--- 670,676 ----
<term>selection
of
attributes in RELAX NG</term> is expressed via a <ref
target="#schemaRule">schemaRule</ref> element which is a direct child of the
! <gi>rng:attribute</gi> element, and which has one
or
more <ref
target="#att.datacats.attributes">datacategory
***************
*** 661,669 ****
</exemplum>
</div>
<div xml:id="selection-dislocated">
! <head>Dislocated Selection</head>
! <p>Dislocated
! selection is realized via a <ref
target="#documentRules">documentRules</ref> element. It contains one or
more <ref target="#documentRule">documentRule</ref> elements. Each <ref
target="#documentRule">documentRule</ref>
element has one or more <ref
target="#att.datacats.attributes">data category attributes</ref>, and
for each data
category attribute an <ref
--- 703,711 ----
</exemplum>
</div>
<div xml:id="selection-dislocated">
! <head>Rule-based Selection</head>
! <p>Rule-based
! selection is realized via the <ref
target="#documentRules"><gi>documentRules</gi></ref> element. It
contains one or more <ref
target="#documentRule"><gi>documentRule</gi></ref> elements. Each <ref
target="#documentRule"><gi>documentRule</gi></ref>
element has one or more <ref
target="#att.datacats.attributes">data category attributes</ref>, and
for each data
category attribute an <ref
***************
*** 672,690 ****
<p>The naming convention for the <ref
target="#att.selector">selector attributes</ref> is
<emph>datacategory</emph> +
<code>Selector</code>, e.g. <ref
!
target="#att.selector.attribute.translateSelector">translateSelector</ref>.
As
! for dislocated selections, the value of the attribute
<ref target="#rfc-conf">must</ref> be an XPath
! expression which starts with "<code>/</code>", that is, it must be an
<ref
target="http://www.w3.org/TR/xpath#NT-AbsoluteLocationPath">AbsoluteLocationPath</ref>
as described in <ptr target="#xpath10" type="bibref"/>. Only in this way
it is assured that the selection can be applied in a dislocated way.</p>
<p>If namespaces <ptr type="bibref" target="#xmlns"/> are used in these
XPath expressions, the following rules <ref
target="#rfc-conf">must</ref> be applied while processing XPath:</p>
<list type="ordered">
! <item>For each prefix, there <ref target="#rfc-conf">must</ref> be an
<ref target="#ns">ns</ref> element as a child of the <ref
target="#documentRules">documentRules</ref> element. The <ref
target="#ns">ns</ref> element has two attributes <ref
target="#att.nsident.attribute.prefix">prefix</ref> (for the namespace
prefix) and <ref target="#att.nsident.attribute.uri">uri</ref> (for the
namespace uri).</item>
<item>Element and attribute names without a prefix are interpreted as
having no namespace.</item>
<item>To avoid a conflict with rule 2., default namespaces <ref
target="#rfc-conf">must not</ref> be used in the XPath expressions.</item>
</list>
<exemplum>
<head>XPath expressions with namespaces and without namespaces</head>
! <p>The <code>term</code> element from the TEI is in a namespace
<code>http://www.tei-c.org/ns/1.0</code>. The <code>qterm</code> element
from DocBook is in no namespace.</p>
<egXML xmlns="http://www.tei-c.org/ns/Examples"><![CDATA[<documentRules
xmlns="http://www.w3.org/2005/11/its">
<its:ns its:prefix="tei" its:uri="http://www.tei-c.org/ns/1.0"/>
<documentRule its:translate="no" its:translateSelector="//tei:term"/>
--- 714,733 ----
<p>The naming convention for the <ref
target="#att.selector">selector attributes</ref> is
<emph>datacategory</emph> +
<code>Selector</code>, e.g. <ref
!
target="#att.selector.attribute.translateSelector">translateSelector</ref>.
In ITS rules selections, the value of the attribute
<ref target="#rfc-conf">must</ref> be an XPath
! expression which starts with "<code>/</code>", that
! is, it must be an <ref
!
target="http://www.w3.org/TR/xpath#NT-AbsoluteLocationPath">AbsoluteLocationPath</ref>
as described in <ptr target="#xpath10" type="bibref"/>. This ensures
that the selection is not relative to a particular location.</p>
<p>If namespaces <ptr type="bibref" target="#xmlns"/> are used in these
XPath expressions, the following rules <ref
target="#rfc-conf">must</ref> be applied while processing XPath:</p>
<list type="ordered">
! <item>For each prefix, there <ref target="#rfc-conf">must</ref> be an
<ref target="#ns">ns</ref> element as a child of the <ref
target="#documentRules"><gi>documentRules</gi></ref> element. The <ref
target="#ns">ns</ref> element has two attributes <ref
target="#att.nsident.attribute.prefix">prefix</ref> (for the namespace
prefix) and <ref target="#att.nsident.attribute.uri">uri</ref> (for the
namespace uri).</item>
<item>Element and attribute names without a prefix are interpreted as
having no namespace.</item>
<item>To avoid a conflict with rule 2., default namespaces <ref
target="#rfc-conf">must not</ref> be used in the XPath expressions.</item>
</list>
<exemplum>
<head>XPath expressions with namespaces and without namespaces</head>
! <p>The <gi>term</gi> element from the TEI is in a namespace
<code>http://www.tei-c.org/ns/1.0</code>. The <gi>qterm</gi> element
from DocBook is in no namespace.</p>
<egXML xmlns="http://www.tei-c.org/ns/Examples"><![CDATA[<documentRules
xmlns="http://www.w3.org/2005/11/its">
<its:ns its:prefix="tei" its:uri="http://www.tei-c.org/ns/1.0"/>
<documentRule its:translate="no" its:translateSelector="//tei:term"/>
***************
*** 692,712 ****
</its:documentRules>]]></egXML>
</exemplum>
<note xml:id="ns-tag-finding"><p>The usage of the <ref
target="#ns">ns</ref> element is motivated by <ptr type="bibref"
target="#schematron"/> and compliant to the requirements on <ref
target="http://www.w3.org/2001/tag/doc/qnameids.html#bindings">namespace
bindings</ref> described in <ptr target="#tag-ns-finding"
type="bibref"/>.</p></note>
! <p>Dislocated selection can appear in a schema (e.g. as content of the
! <code>xs:appinfo</code> element), in an instance file or in a separate
XML document.
The precedence of the processing of the selection information depends on
these variations. See also <ptr type="specref"
target="#selection-precedence"/>.</p>
<note xml:id="schemaRule-vs-documentRule">
! <p>The difference between <ref target="#schemaRule">schemaRule</ref>
and <ref target="#documentRule">documentRule</ref> is that <ref
target="#schemaRule">schemaRule</ref> has no <ref
target="#att.selector">selector attributes</ref>, e.g. no <ref
target="#att.selector.attribute.translateSelector">translateSelector</ref>
attribute. The reason is that
<ref target="#schemaRule">schemaRule</ref> always refers to the element or
attribute declaration of which it is part of. In
contrast, <ref
! target="#documentRule">documentRule</ref> can be used
everywhere in a schema to express
! dislocated selection information. It is possible to use <ref
target="#schemaRule">schemaRule</ref> and <ref
target="#documentRule">documentRule</ref> together in a
schema.</p>
<exemplum>
! <head>Example for using <ref target="#schemaRule">schemaRule</ref> and
<ref target="#documentRule">documentRules</ref> together in a schema.</head>
<egXML xmlns="http://www.tei-c.org/ns/Examples"><![CDATA[<xs:schema>
<xs:annotation>
<xs:appinfo>
--- 735,755 ----
</its:documentRules>]]></egXML>
</exemplum>
<note xml:id="ns-tag-finding"><p>The usage of the <ref
target="#ns">ns</ref> element is motivated by <ptr type="bibref"
target="#schematron"/> and compliant to the requirements on <ref
target="http://www.w3.org/2001/tag/doc/qnameids.html#bindings">namespace
bindings</ref> described in <ptr target="#tag-ns-finding"
type="bibref"/>.</p></note>
! <p>Selection can appear in a schema (e.g. as content of the
! <gi>xs:appinfo</gi> element), in an instance file or in a separate XML
document.
The precedence of the processing of the selection information depends on
these variations. See also <ptr type="specref"
target="#selection-precedence"/>.</p>
<note xml:id="schemaRule-vs-documentRule">
! <p>The difference between <ref target="#schemaRule">schemaRule</ref>
and <ref target="#documentRule"><gi>documentRule</gi></ref> is that <ref
target="#schemaRule">schemaRule</ref> has no <ref
target="#att.selector">selector attributes</ref>, e.g. no <ref
target="#att.selector.attribute.translateSelector">translateSelector</ref>
attribute. The reason is that
<ref target="#schemaRule">schemaRule</ref> always refers to the element or
attribute declaration of which it is part of. In
contrast, <ref
! target="#documentRule"><gi>documentRule</gi></ref> can be used
everywhere in a schema to express
! selection information. It is possible to use <ref
target="#schemaRule">schemaRule</ref> and <ref
target="#documentRule"><gi>documentRule</gi></ref> together in a
schema.</p>
<exemplum>
! <head>Example for using <ref target="#schemaRule">schemaRule</ref> and
<ref target="#documentRule"><gi>documentRules</gi></ref> together in a
schema.</head>
<egXML xmlns="http://www.tei-c.org/ns/Examples"><![CDATA[<xs:schema>
<xs:annotation>
<xs:appinfo>
***************
*** 736,743 ****
realized only with <ref target="#att.datacats.attributes">data
category</ref> attributes. It depends on the data category what is being
selected. The necessary data category specific defaults are described in
<ptr target="#selection-defaults-etc" type="specref"/>.</p>
<exemplum>
<head>Defaults for various data categories</head>
! <p><code>its:translate="no"</code> at the <code>head </code> element
means that the textual content of this element, including child elements
and attributes, should not be translated.
<code>its:translate="yes"</code> at the <code>body</code> element means
that the textual content of this element, including child elements, but
excluding attributes should be translated.</p>
! <p><code>its:dir="ltr"</code> at the <code>body</code> element means
that the directionality of the textual content of this element,
including child elements and attributes, is "left-to-right".</p>
<egXML
xmlns="http://www.tei-c.org/ns/Examples"><![CDATA[<text>
<head its:translate="no"> ... </head>
--- 779,786 ----
realized only with <ref target="#att.datacats.attributes">data
category</ref> attributes. It depends on the data category what is being
selected. The necessary data category specific defaults are described in
<ptr target="#selection-defaults-etc" type="specref"/>.</p>
<exemplum>
<head>Defaults for various data categories</head>
! <p><code>its:translate="no"</code> at the <gi>head</gi> element means
that the textual content of this element, including child elements and
attributes, should not be translated. <code>its:translate="yes"</code>
at the <gi>body</gi> element means that the textual content of this
element, including child elements, but excluding attributes should be
translated.</p>
! <p><code>its:dir="ltr"</code> at the <gi>body</gi> element means that
the directionality of the textual content of this element, including
child elements and attributes, is "left-to-right".</p>
<egXML
xmlns="http://www.tei-c.org/ns/Examples"><![CDATA[<text>
<head its:translate="no"> ... </head>
***************
*** 747,772 ****

</div>
</div>
<div xml:id="selection-precedence">
<head>Precedence between Selections</head>
<p>The following
! precedence order is
! defined for selections
! of ITS information in
! various positions (the first
! item in the list has
! the highest precedence):</p>
! <list type="ordered">
! <item>Selections in instance documents (in situ, realized with the
default selector rules described in <ptr type="specref"
target="#selection-defaults-etc"/>)</item>
! <item>Selections in instance documents (dislocated, using <ref
target="#documentRules">documentRules</ref>)</item>
! <item>Selections in an external file (using <ref
target="#documentRules">documentRules</ref>)</item>
! <item>In a
! schema,
! dislocated
! selections
expressed via
a <ref
! target="#documentRules">documentRules</ref>
element</item>
<item>Selections
expressed via <ref
--- 790,821 ----

</div>
</div>
+
<div xml:id="selection-precedence">
<head>Precedence between Selections</head>
<p>The following
! precedence order is
! defined for selections
! of ITS information in
! various positions (the first
! item in the list has
! the highest precedence):</p>
! <list type="ordered">
! <item>Implicit
! selection in
! instance
! documents
! (datacategory
! attributes on
! a specific element)</item>
! <item>Selections in instance documents (using <ref
target="#documentRules"><gi>documentRules</gi></ref>)</item>
! <item>Selections in an external file (using <ref
target="#documentRules"><gi>documentRules</gi></ref>)</item>
! <item>In a
! schema,
! selections
expressed via
a <ref
! target="#documentRules"><gi>documentRules</gi></ref>
element</item>
<item>Selections
expressed via <ref
***************
*** 788,794 ****
selections of
ITS information which are resolved via the precedence order</head>
<p>Due to the rules described above, the
! translatability information via the <ref
target="#att.selector.attribute.translateSelector">translate</ref>
attribute at the <code>p</code> element has precedence over the
translatability information at the <ref
target="#documentRule">documentRule</ref> element.</p>
<egXML xmlns="http://www.tei-c.org/ns/Examples"><![CDATA[<text>
<head>
<its:documentRules>
--- 837,843 ----
selections of
ITS information which are resolved via the precedence order</head>
<p>Due to the rules described above, the
! translatability information via the <ref
target="#att.selector.attribute.translateSelector">translate</ref>
attribute at the <gi>p</gi> element has precedence over the
translatability information at the <ref
target="#documentRule"><gi>documentRule</gi></ref> element.</p>
<egXML xmlns="http://www.tei-c.org/ns/Examples"><![CDATA[<text>
<head>
<its:documentRules>
***************
*** 806,812 ****
<head>Mapping of ITS Data Categories to Existing Markup</head>
<p>Some markup schemes provide markup which can be used to express ITS
datacategories. ITS data categories can be
! mapped to such existing markup, using the dislocated selection
mechanism described in <ptr type="specref"
target="#selection-dislocated"/>. In this way, there is no need to
integrate ITS markup into documents.</p>
--- 855,861 ----
<head>Mapping of ITS Data Categories to Existing Markup</head>
<p>Some markup schemes provide markup which can be used to express ITS
datacategories. ITS data categories can be
! mapped to such existing markup, using the selection
mechanism described in <ptr type="specref"
target="#selection-dislocated"/>. In this way, there is no need to
integrate ITS markup into documents.</p>
***************
*** 835,846 ****
concept for a particular type of information for internationalization and
localization of XML schemas and documents.</dd>
</dlentry>[...]
! <p>As for the implementation of ITS: just apply the rules in the
order:</p>
<ul>
<li>Default</li>
<li>Rules in the schema</li>
! <li>Dislocated rules</li>
! <li>in situ rules</li>
</ul>
<p><ph ]]><hi
rend="localizable"><![CDATA[translate="no"]]></hi><![CDATA[
xml:lang="fr">Et voila !</ph> The last
rule wins</p>
--- 884,895 ----
concept for a particular type of information for internationalization and
localization of XML schemas and documents.</dd>
</dlentry>[...]
! <p>For the implementation of ITS, apply the rules in the order:</p>
<ul>
<li>Default</li>
<li>Rules in the schema</li>
! <li>Rules in the instance document</li>
! <li>Local attributes</li>
</ul>
<p><ph ]]><hi
rend="localizable"><![CDATA[translate="no"]]></hi><![CDATA[
xml:lang="fr">Et voila !</ph> The last
rule wins</p>
***************
*** 864,870 ****
<row role="head">
<cell>Data category</cell>
<cell>Applicable in schema</cell>
! <cell>dislocated selection applicable</cell>
<cell>default selection in instance document</cell>
</row>
<row>
--- 913,919 ----
<row role="head">
<cell>Data category</cell>
<cell>Applicable in schema</cell>
! <cell>Rule selection applicable</cell>
<cell>default selection in instance document</cell>
</row>
<row>
***************
*** 953,959 ****
</div>
<div xml:id="translate-selector">
<head>Implementation</head>
! <p>Translatability can be expressed in a schema, dislocated or in an
instance document.</p>
<p>In a schema, translatability is expressed via a <ref
target="#schemaRule">schemaRule</ref> element with a <ref
target="#att.datacats.attribute.translate">translate</ref> attribute.
The attribute has the values <code>yes</code> or
<code>no</code>.</p>
<exemplum>
--- 1002,1012 ----
</div>
<div xml:id="translate-selector">
<head>Implementation</head>
! <p>Translatability can
! be expressed in a
! schema, in a set of
! rules, or on an
! individual elements.</p>
<p>In a schema, translatability is expressed via a <ref
target="#schemaRule">schemaRule</ref> element with a <ref
target="#att.datacats.attribute.translate">translate</ref> attribute.
The attribute has the values <code>yes</code> or
<code>no</code>.</p>
<exemplum>
***************
*** 966,975 ****
</xs:annotation> ...
</xs:element>]]></egXML>
</exemplum>
! <p>Dislocated, translatability is expressed via a <ref
target="#documentRule">documentRule</ref> element with a <ref
target="#att.datacats.attribute.translate">translate</ref> attribute.
The attribute has the values <code>yes</code> or
<code>no</code>. In addition, a <ref
target="#att.selector.attribute.translateSelector">translateSelector</ref>
attribute is required.</p>
<exemplum>
! <head>Translatability expressed dislocated</head>
<egXML xmlns="http://www.tei-c.org/ns/Examples"><![CDATA[<its:documentRules>
<its:documentRule its:translate="yes" its:translateSelector="//p"/>
<!-- All p elements should be translated-->
--- 1019,1028 ----
</xs:annotation> ...
</xs:element>]]></egXML>
</exemplum>
! <p>Translatability is expressed via a <ref
target="#documentRule"><gi>documentRule</gi></ref> element with a <ref
target="#att.datacats.attribute.translate">translate</ref> attribute.
The attribute has the values <code>yes</code> or
<code>no</code>. In addition, a <ref
target="#att.selector.attribute.translateSelector">translateSelector</ref>
attribute is required.</p>
<exemplum>
! <head>Translatability expressed in document rules</head>
<egXML xmlns="http://www.tei-c.org/ns/Examples"><![CDATA[<its:documentRules>
<its:documentRule its:translate="yes" its:translateSelector="//p"/>
<!-- All p elements should be translated-->
***************
*** 980,986 ****
elements, but <emph>excluding</emph> attributes.</p>
<exemplum>
<head>Translatability expressed in an instance document</head>
! <p>In the <code>body</code> element, its textual content and the
content of all elements should be translated. The content of the
specified quote element, however, must not be translated.</p>
<egXML xmlns="http://www.tei-c.org/ns/Examples"><![CDATA[<book>
<head>...</head>
<body its:translate="yes"> ...
--- 1033,1039 ----
elements, but <emph>excluding</emph> attributes.</p>
<exemplum>
<head>Translatability expressed in an instance document</head>
! <p>In the <gi>body</gi> element, its textual content and the content
of all elements should be translated. The content of the specified quote
element, however, must not be translated.</p>
<egXML xmlns="http://www.tei-c.org/ns/Examples"><![CDATA[<book>
<head>...</head>
<body its:translate="yes"> ...
***************
*** 1023,1030 ****
</div>
<div xml:id="locInfo-selector">
<head>Implementation</head>
! <p>Localization information can be expressed in a schema, dislocated
or in an instance
! document.</p>
<p>In a schema, localization information is expressed via a <ref
target="#schemaRule">schemaRule</ref> element with a <ref
target="#att.datacats.attribute.locInfo">locInfo</ref> attribute. The
type of the localization information is expressed via
a <ref target="#att.datacats.attribute.locInfoType">locInfoType</ref>
attribute with
the values <code>alert</code> or <code>description</code>.</p>
--- 1076,1087 ----
</div>
<div xml:id="locInfo-selector">
<head>Implementation</head>
! <p>Localization
! information can be
! expressed in a schema,
! in rules, or on
! individual elements.
! </p>
<p>In a schema, localization information is expressed via a <ref
target="#schemaRule">schemaRule</ref> element with a <ref
target="#att.datacats.attribute.locInfo">locInfo</ref> attribute. The
type of the localization information is expressed via
a <ref target="#att.datacats.attribute.locInfoType">locInfoType</ref>
attribute with
the values <code>alert</code> or <code>description</code>.</p>
***************
*** 1039,1047 ****
</xs:annotation> ...
</xs:element>]]></egXML>
</exemplum>
! <p>Dislocated, localization information is expressed via a <ref
target="#documentRule">documentRule</ref> element with the attributes
<ref target="#att.datacats.attribute.locInfo">locInfo</ref> and <ref
target="#att.datacats.attribute.locInfoType">locInfoType</ref>. In
addition, a <ref
target="#att.selector.attribute.locInfoSelector">locInfoSelector</ref>
attribute is required.</p>
<exemplum>
! <head>Localization information expressed dislocated</head>
<egXML xmlns="http://www.tei-c.org/ns/Examples"><![CDATA[<its:documentRules>
<its:documentRule its:locInfo="This p element has to be handled carefully"
its:locInfoType="alert" its:locInfoSelector="/body/p[1]"/>
--- 1096,1104 ----
</xs:annotation> ...
</xs:element>]]></egXML>
</exemplum>
! <p>Localization information is expressed via a <ref
target="#documentRule"><gi>documentRule</gi></ref> element with the
attributes <ref target="#att.datacats.attribute.locInfo">locInfo</ref>
and <ref target="#att.datacats.attribute.locInfoType">locInfoType</ref>.
In addition, a <ref
target="#att.selector.attribute.locInfoSelector">locInfoSelector</ref>
attribute is required.</p>
<exemplum>
! <head>Localization information expressed in rules</head>
<egXML xmlns="http://www.tei-c.org/ns/Examples"><![CDATA[<its:documentRules>
<its:documentRule its:locInfo="This p element has to be handled carefully"
its:locInfoType="alert" its:locInfoSelector="/body/p[1]"/>
***************
*** 1073,1080 ****
</div>
<div xml:id="terms-selector">
<head>Implementation</head>
! <p>The terminology data category can be expressed in a schema,
dislocated or in an
! instance document.</p>
<p>In a schema, the terminology data category is expressed via a <ref
target="#schemaRule">schemaRule</ref> element with a <ref
target="#att.datacats.attribute.term">term</ref> attribute, which has
the value
<code>yes</code>.</p>
<exemplum>
--- 1130,1140 ----
</div>
<div xml:id="terms-selector">
<head>Implementation</head>
! <p>The terminology
! data category can be
! expressed in a schema,
! in rules or on
! individual elements.</p>
<p>In a schema, the terminology data category is expressed via a <ref
target="#schemaRule">schemaRule</ref> element with a <ref
target="#att.datacats.attribute.term">term</ref> attribute, which has
the value
<code>yes</code>.</p>
<exemplum>
***************
*** 1088,1099 ****
</xs:annotation> ...
</xs:element>]]></egXML>
</exemplum>
! <p>Dislocated, the terminology data category is expressed via a <ref
target="#documentRule">documentRule</ref> element with the <ref
target="#att.datacats.attribute.term">term</ref> attribute, which has
the value
<code>yes</code>. A <ref
target="#att.selector.attribute.termSelector">termSelector</ref>
attribute is required. In addition, an optional <ref
target="#att.datacats.attribute.termRef">termRef</ref> attribute can be
used to
refer to external information about the term. The datatype of <ref
target="#att.datacats.attribute.termRef">termRef</ref> is
<code>xs:anyURI</code>.</p>
<exemplum>
! <head>The terminology data category expressed dislocated</head>
<egXML xmlns="http://www.tei-c.org/ns/Examples"><![CDATA[<its:documentRules>
<its:documentRule its:term="yes" its:termSelector="/body/p[1]/span"
its:termRef="http://example.com/termdatabase/#x142539"/>
--- 1148,1162 ----
</xs:annotation> ...
</xs:element>]]></egXML>
</exemplum>
! <p>The terminology data category is expressed via a <ref
target="#documentRule"><gi>documentRule</gi></ref> element with the <ref
target="#att.datacats.attribute.term">term</ref> attribute, which has
the value
<code>yes</code>. A <ref
target="#att.selector.attribute.termSelector">termSelector</ref>
attribute is required. In addition, an optional <ref
target="#att.datacats.attribute.termRef">termRef</ref> attribute can be
used to
refer to external information about the term. The datatype of <ref
target="#att.datacats.attribute.termRef">termRef</ref> is
<code>xs:anyURI</code>.</p>
<exemplum>
! <head>The
! terminology
! data category
! expressed in rules</head>
<egXML xmlns="http://www.tei-c.org/ns/Examples"><![CDATA[<its:documentRules>
<its:documentRule its:term="yes" its:termSelector="/body/p[1]/span"
its:termRef="http://example.com/termdatabase/#x142539"/>
***************
*** 1118,1136 ****
<div>
<head>Definition</head>
<p>This data category expresses the directionality of a piece of text.
Its values are
! <code>ltr</code>, <code>rtl</code>, <code>lro</code> or
<code>rlo</code>. This definition is compliant with the <ref
target="http://www.w3.org/TR/xhtml2/mod-bidi.html#s_bidimodule">dir</ref>
attribute in <ptr type="bibref" target="#xhtml2"/>, except that <ptr
type="bibref" target="#xhtml2"/> does not allow for dislocated
selection.</p>

</div>
<div xml:id="dir-selector">
<head>Implementation</head>
<p>The <ref target="#att.datacats.attribute.dir">dir</ref> attribute is
used for the
implementation of the directionality data category. It has the four
values <code>ltr</code>, <code>rtl</code>, <code>lro</code> or
<code>rlo</code>.</p>
! <p>Directionality can be expressed dislocated or in an instance
document.</p>
! <p>Dislocated, directionality is expressed via a <ref
target="#documentRule">documentRule</ref> element with the <ref
target="#att.datacats.attribute.dir">dir</ref> attribute. In
addition, a <ref
target="#att.selector.attribute.dirSelector">dirSelector</ref> attribute is
required.</p>
<exemplum>
! <head>Directionality expressed dislocated</head>
<egXML xmlns="http://www.tei-c.org/ns/Examples"><![CDATA[<its:documentRules>
<its:documentRule its:dir="rtl"
its:dirSelector="/body/p[1]/quote[xml:lang='he']"/>
<!-- Some Hebrew quotation -->
--- 1181,1208 ----
<div>
<head>Definition</head>
<p>This data category expresses the directionality of a piece of text.
Its values are
! <code>ltr</code>, <code>rtl</code>, <code>lro</code>
! or
! <code>rlo</code>. This
! definition is
! compliant with the
! <ref
!
target="http://www.w3.org/TR/xhtml2/mod-bidi.html#s_bidimodule">dir</ref>
attribute in <ptr type="bibref" target="#xhtml2"/>, except that <ptr
type="bibref" target="#xhtml2"/> does not allow for rule-based
selection.</p>

</div>
<div xml:id="dir-selector">
<head>Implementation</head>
<p>The <ref target="#att.datacats.attribute.dir">dir</ref> attribute is
used for the
implementation of the directionality data category. It has the four
values <code>ltr</code>, <code>rtl</code>, <code>lro</code> or
<code>rlo</code>.</p>
! <p>Directionality can
! be expressed in rules
! or on individual elements.</p>
! <p>Directionality is
! expressed in rules via a <ref
target="#documentRule"><gi>documentRule</gi></ref> element with the <ref
target="#att.datacats.attribute.dir">dir</ref> attribute. In
addition, a <ref
target="#att.selector.attribute.dirSelector">dirSelector</ref> attribute is
required.</p>
<exemplum>
! <head>Directionality expressed in rules</head>
<egXML xmlns="http://www.tei-c.org/ns/Examples"><![CDATA[<its:documentRules>
<its:documentRule its:dir="rtl"
its:dirSelector="/body/p[1]/quote[xml:lang='he']"/>
<!-- Some Hebrew quotation -->
***************
*** 1220,1227 ****
<p>Two topics are covered in this section:</p>
<list type="unordered">
<item>How should ITS be integrated in specific markup schemes? For
example, as for XHTML,
! it is helpful for the interoperability of ITS implementations to
specify that the <ref target="#documentRules">documentRules</ref> or
<ref target="#documentRule">documentRule</ref> elements will always be
part of the content model of the
! <code>head</code> element.</item>
<item>How should ITS data categories be related to existing markup
declarations in a
schema, which fulfill identical or overlapping purposes? For example,
<ptr target="#dita10" type="bibref"/> already
has an attribute to indicate translatability of text, but without a
mechanism for
--- 1292,1299 ----
<p>Two topics are covered in this section:</p>
<list type="unordered">
<item>How should ITS be integrated in specific markup schemes? For
example, as for XHTML,
! it is helpful for the interoperability of ITS implementations to
specify that the <ref
target="#documentRules"><gi>documentRules</gi></ref> or <ref
target="#documentRule"><gi>documentRule</gi></ref> elements will always
be part of the content model of the
! <gi>head</gi> element.</item>
<item>How should ITS data categories be related to existing markup
declarations in a
schema, which fulfill identical or overlapping purposes? For example,
<ptr target="#dita10" type="bibref"/> already
has an attribute to indicate translatability of text, but without a
mechanism for
***************
*** 1245,1266 ****
</div>
<div xml:id="xmlspec">
<head>ITS and XML Spec</head>
! <p><ptr type="bibref" target="#xmlspecbib"/> is intended for W3C
working drafts, notes, recommendations, and all other document types
that fall under the category of "technical reports." XML Spec is
available in the formats of XML DTD, XML Schema and RELAX NG.</p>
<div>
<head>Integration of ITS into XML Spec</head>

<p>ITS has been integrated into <ref
target="http://www.w3.org/International/xmlspec/002/xmlspec-i18n.dtd">xmlspec-i18n.dtd</ref>.
This is a version of the <ref
target="http://www.w3.org/2002/xmlspec/#spec29">XML DTD version 2.9 of
XML Spec</ref> which already supplies various internationalization and
localization related features. For example, there is an attribute
<code>translate</code> in xmlspec-i18n.dtd, which can be used for the
same purposes as the ITS <ref
target="#att.datacats.attribute.translate">translate</ref> attribute. To
be able to separate them from original XML Spec declarations, all
additions are stored in two separate files <ref
target="http://www.w3.org/International/xmlspec/002/i18n-extensions.mod">i18n-extensions.mod</ref>
and <ref
target="http://www.w3.org/International/xmlspec/002/i18n-elements.mod">i18n-elements.mod</ref>.
Xmlspec-i18n.dtd is used within the <ref
target="http://www.w3.org/International/Activity">W3C
Internationalization Activity</ref> for the creation of technical
reports.</p>
<p>For the integration of ITS, the following modifications to the
xmlspec-i18n.dtd have been made:</p>
<list type="ordered">
! <item>A new entity <code>&lt;!ENTITY % its SYSTEM "its.dtd"&gt;</code>
and the entity call <code>%its;</code> have been added to
xmlspec-i18n.dtd.</item>
<item>The existing XML Spec entity <code>common.att</code> has been
modified . The ITS entities <code>att.datacats.attributes</code> and
<code>att.selector.attributes</code> have been added to
<code>common.att</code>. In this way, the <ref
target="#att.datacats.attributes">data category attributes</ref> and the
<ref target="#att.selector.attributes">selector attributes</ref> can be
used at any element defined in the XML Spec DTD.</item>
! <item>The XML Spec entity <code>header.mdl</code> contains the content
model of the <code>header</code> element. The ITS element <ref
target="#documentRules">documentRules</ref> has been added as the last
element to this content model. In this way, <ref
target="#documentRules">documentRules</ref> can be used inside an XML
Spec instance. The <code>header</code> element of the XML Spec DTD has
been choosen as the place for <ref
target="#documentRules">documentRules</ref>, to avoid the impact of ITS
markup on XML Spec markup.</item>
<item>The ITS element <ref target="#ruby">ruby</ref> has been added to
the XML Spec entity <code>p.pcd.mix</code>. In this way it is possible
to use <ref target="#ruby">ruby</ref> as an inline element.<!--TODO:
change of the content models of rubyText and rubyBase?--></item>
</list>
</div>
<div><head>Relating ITS to Existing Markup in XML Spec</head>
! <p>As mentioned before, xmlspec-i18n.dtd has its own existing markup
declarations for various internationalization and localization related
purposes. In the original XML Spec 2.9 DTD, there is a <code>term</code>
element which fulfills the same purpose as the ITS <ref
target="#att.datacats.attribute.term">term</ref> attribute.</p>
! <p>To relate such existing XML Spec and xmlspec-i18n.dtd related
markup to ITS markup (see <ptr type="specref"
target="#purpose-mapping"/>), the following <ref
target="#documentRules">documentRules</ref> has been created. <note
type="ed">This is not an exhaustive list of mappings yet, but only a
first attempt</note>.</p>

<exemplum>
<head>Mapping ITS markup to XML Spec and xmlspec-i18n.dtd markup</head>
--- 1317,1346 ----
</div>
<div xml:id="xmlspec">
<head>ITS and XML Spec</head>
! <p><ptr type="bibref"
! target="#xmlspecbib"/> is
! intended for W3C working
! drafts, notes,
! recommendations, and all other
! document types that fall under
! the category of technical reports. XML Spec is available in the
formats of XML DTD, XML Schema and RELAX NG.</p>
<div>
<head>Integration of ITS into XML Spec</head>

<p>ITS has been integrated into <ref
target="http://www.w3.org/International/xmlspec/002/xmlspec-i18n.dtd">xmlspec-i18n.dtd</ref>.
This is a version of the <ref
target="http://www.w3.org/2002/xmlspec/#spec29">XML DTD version 2.9 of
XML Spec</ref> which already supplies various internationalization and
localization related features. For example, there is an attribute
<code>translate</code> in xmlspec-i18n.dtd, which can be used for the
same purposes as the ITS <ref
target="#att.datacats.attribute.translate">translate</ref> attribute. To
be able to separate them from original XML Spec declarations, all
additions are stored in two separate files <ref
target="http://www.w3.org/International/xmlspec/002/i18n-extensions.mod">i18n-extensions.mod</ref>
and <ref
target="http://www.w3.org/International/xmlspec/002/i18n-elements.mod">i18n-elements.mod</ref>.
Xmlspec-i18n.dtd is used within the <ref
target="http://www.w3.org/International/Activity">W3C
Internationalization Activity</ref> for the creation of technical
reports.</p>
<p>For the integration of ITS, the following modifications to the
xmlspec-i18n.dtd have been made:</p>
<list type="ordered">
! <item>A new entity
! <code>&lt;!ENTITY % its SYSTEM
! "its.dtd"&gt;</code> and the entity call <code>%its;</code> have been
added to xmlspec-i18n.dtd.</item>
<item>The existing XML Spec entity <code>common.att</code> has been
modified . The ITS entities <code>att.datacats.attributes</code> and
<code>att.selector.attributes</code> have been added to
<code>common.att</code>. In this way, the <ref
target="#att.datacats.attributes">data category attributes</ref> and the
<ref target="#att.selector.attributes">selector attributes</ref> can be
used at any element defined in the XML Spec DTD.</item>
! <item>The XML Spec entity <code>header.mdl</code> contains the content
model of the <gi>header</gi> element. The ITS element <ref
target="#documentRules"><gi>documentRules</gi></ref> has been added as
the last element to this content model. In this way, <ref
target="#documentRules"><gi>documentRules</gi></ref> can be used inside
an XML Spec instance. The <gi>header</gi> element of the XML Spec DTD
has been choosen as the place for <ref
target="#documentRules"><gi>documentRules</gi></ref>, to avoid the
impact of ITS markup on XML Spec markup.</item>
<item>The ITS element <ref target="#ruby">ruby</ref> has been added to
the XML Spec entity <code>p.pcd.mix</code>. In this way it is possible
to use <ref target="#ruby">ruby</ref> as an inline element.<!--TODO:
change of the content models of rubyText and rubyBase?--></item>
</list>
</div>
<div><head>Relating ITS to Existing Markup in XML Spec</head>
! <p>As mentioned before, xmlspec-i18n.dtd has its own existing markup
declarations for various internationalization and localization related
purposes. In the original XML Spec 2.9 DTD, there is a <gi>term</gi>
element which fulfills the same purpose as the ITS <ref
target="#att.datacats.attribute.term">term</ref> attribute.</p>
! <p>To relate such existing XML Spec and xmlspec-i18n.dtd related
markup to ITS markup (see <ptr type="specref"
target="#purpose-mapping"/>), the following <ref
target="#documentRules"><gi>documentRules</gi></ref> has been created.
<note type="ed">This is not an exhaustive list of mappings yet, but only
a first attempt</note>.</p>

<exemplum>
<head>Mapping ITS markup to XML Spec and xmlspec-i18n.dtd markup</head>
***************
*** 1396,1402 ****
</specGrp>
<specGrp xml:id="selector-declarations">
<p>The attribute group <ref target="#att.selector">att.selector</ref>
! is used at the <ref target="#documentRule">documentRule</ref> element
to express dislocated selection of ITS information. It <ref
target="#rfc-conf">must not</ref> be used in other positions, e.g. in an
instance documents. It makes use of the data type <ref
target="#data.selector">data.selector</ref>.</p>
<classSpec ident="att.selector" type="atts">
<attList>
<attDef ns="http://www.w3.org/2005/11/its" ident="translateSelector"
usage="opt">
--- 1476,1483 ----
</specGrp>
<specGrp xml:id="selector-declarations">
<p>The attribute group <ref target="#att.selector">att.selector</ref>
! is used at the <ref
! target="#documentRule"><gi>documentRule</gi></ref> element to express
applicability of ITS information. It <ref target="#rfc-conf">must
not</ref> be used in other positions, e.g. individual elements. It makes
use of the data type <ref target="#data.selector">data.selector</ref>.</p>
<classSpec ident="att.selector" type="atts">
<attList>
<attDef ns="http://www.w3.org/2005/11/its" ident="translateSelector"
usage="opt">
***************
*** 1446,1452 ****
</elementSpec>
</specGrp>
<specGrp xml:id="its-schemaRule">
! <p>The <code>schemaRule</code>
element contains rules for ITS
information, to be used as
schema annotation. It uses attributes from the <ref
target="#att.datacats">ITS data categories</ref>.</p>
--- 1527,1533 ----
</elementSpec>
</specGrp>
<specGrp xml:id="its-schemaRule">
! <p>The <gi>schemaRule</gi>
element contains rules for ITS
information, to be used as
schema annotation. It uses attributes from the <ref
target="#att.datacats">ITS data categories</ref>.</p>
***************
*** 1456,1462 ****
information about the
element declaration to
which the
! <code>schemaRule</code>
element is attached as schema annotation.</desc>
<classes>
<memberOf key="att.datacats"/>
--- 1537,1543 ----
information about the
element declaration to
which the
! <gi>schemaRule</gi>
element is attached as schema annotation.</desc>
<classes>
<memberOf key="att.datacats"/>
***************
*** 1467,1474 ****
</elementSpec>
</specGrp>
<specGrp xml:id="its-documentRules">
! <p>The <code>documentRules</code> element contains rules for ITS
information, to be used
! as schema annotation. The <code>documentRule</code> element contains
attributes from the
<ref target="#att.datacats">data category attributes</ref> and the <ref
target="#att.selector">selector attributes</ref>.</p>
<elementSpec
ident="documentRules">
--- 1548,1555 ----
</elementSpec>
</specGrp>
<specGrp xml:id="its-documentRules">
! <p>The <gi>documentRules</gi> element contains rules for ITS
information, to be used
! as schema annotation. The <gi>documentRule</gi> element contains
attributes from the
<ref target="#att.datacats">data category attributes</ref> and the <ref
target="#att.selector">selector attributes</ref>.</p>
<elementSpec
ident="documentRules">
***************
*** 1547,1555 ****
express ITS
information and select
parts of a
! document respectively. <code>documentRule</code>
! is to be used in a dislocated
! position.</desc>
<classes>
<memberOf key="att.selector"/>
<memberOf key="att.datacats"/>
--- 1628,1636 ----
express ITS
information and select
parts of a
! document respectively. <gi>documentRule</gi>
! is to be used in a in
! rule context only.</desc>
<classes>
<memberOf key="att.selector"/>
<memberOf key="att.datacats"/>
***************
*** 1576,1582 ****

<p>Conformance to ITS falls into two categories: conformance to the ITS
data categories (cf.
<ptr type="specref" target="#datacat-description"/>, including data
category specific default selections) and
! conformance to dislocated selection mechanisms (cf. <ptr
type="specref" target="#selection"/>).</p>
<div xml:id="schema-conformance">
<head>Conformance to the ITS Data Categories and Data Category Specific
Default Selection Mechanisms</head>
<note type="ed">We still have to add conformance information for ruby,
and possibly for directionality.</note>
--- 1657,1663 ----

<p>Conformance to ITS falls into two categories: conformance to the ITS
data categories (cf.
<ptr type="specref" target="#datacat-description"/>, including data
category specific default selections) and
! conformance to selection mechanisms (cf. <ptr type="specref"
target="#selection"/>).</p>
<div xml:id="schema-conformance">
<head>Conformance to the ITS Data Categories and Data Category Specific
Default Selection Mechanisms</head>
<note type="ed">We still have to add conformance information for ruby,
and possibly for directionality.</note>
***************
*** 1587,1593 ****
is declared in the schema.</item>
<item>The interpretation of data category attributes in instance
documents <ref target="#rfc-conf">must</ref> be conformant to the data
category specific default selections described in <ptr type="specref"
target="#selection-defaults-etc"/>.</item>

! <item>The schema <ref target="#rfc-conf">should</ref> allow the usage
of the <ref target="#documentRules">documentRules</ref> element at one
or more elements in the schema.</item>
</list>
<p>The <ref target="#schemaRule">schemaRule</ref> element is to be used
as schema annotations. It is the
responsibility of the schema processor to allow for such annotations.</p>
--- 1668,1674 ----
is declared in the schema.</item>
<item>The interpretation of data category attributes in instance
documents <ref target="#rfc-conf">must</ref> be conformant to the data
category specific default selections described in <ptr type="specref"
target="#selection-defaults-etc"/>.</item>

! <item>The schema <ref target="#rfc-conf">should</ref> allow the usage
of the <ref target="#documentRules"><gi>documentRules</gi></ref> element
at one or more elements in the schema.</item>
</list>
<p>The <ref target="#schemaRule">schemaRule</ref> element is to be used
as schema annotations. It is the
responsibility of the schema processor to allow for such annotations.</p>
***************
*** 1638,1648 ****
</exemplum>
</div>
<div xml:id="selection-conformance">
! <head>Conformance to Dislocated Selection
Mechanisms</head>
! <p>Conformance to Dislocated Selection Mechanisms encompasses <ref
target="#schema-conformance">conformance to the ITS data categories and
data category specific default selection mechanisms</ref>, with the
following changes:</p>
<list type="unordered">
! <item>The schema <ref target="#rfc-conf">must</ref> allow the usage of
the <ref target="#documentRules">documentRules</ref> element in at least
one element in the schema</item>
<item>An application
which processes ITS
elements and
--- 1719,1729 ----
</exemplum>
</div>
<div xml:id="selection-conformance">
! <head>Conformance to Selection
Mechanisms</head>
! <p>Conformance to Selection Mechanisms encompasses <ref
target="#schema-conformance">conformance to the ITS data categories and
data category specific default selection mechanisms</ref>, with the
following changes:</p>
<list type="unordered">
! <item>The schema <ref target="#rfc-conf">must</ref> allow the usage of
the <ref target="#documentRules"><gi>documentRules</gi></ref> element in
at least one element in the schema</item>
<item>An application
which processes ITS
elements and
***************
*** 1653,1660 ****
</item>
</list>
<p>A mandatory part of this conformance criterion is the usage of XPath.
An application
! which processes dislocated ITS information <ref
target="#rfc-conf">must</ref> be able to
! process XPath in the version 1.0 or higher. It is not required to
support a specific
host language of XPath, like for example <ptr type="bibref"
target="#xslt10"/>.</p>
</div>
</div>
--- 1734,1741 ----
</item>
</list>
<p>A mandatory part of this conformance criterion is the usage of XPath.
An application
! which processes ITS selection rules <ref target="#rfc-conf">must</ref>
be able to
! process XPath in version 1.0 or higher. It is not required to support
a specific
host language of XPath, like for example <ptr type="bibref"
target="#xslt10"/>.</p>
</div>
</div>

Received on Tuesday, 14 February 2006 14:34:13 UTC