[ttml2] regenerate ED
authorGlenn Adams <glenn@skynav.com>
Sat, 04 Oct 2014 14:06:07 -0600
changeset 746 6b22d127bf96
parent 745 9baedffc327e
child 748 97a40e97024a
[ttml2] regenerate ED
ttml2/spec/ttml2.html
--- a/ttml2/spec/ttml2.html	Sat Oct 04 14:05:40 2014 -0600
+++ b/ttml2/spec/ttml2.html	Sat Oct 04 14:06:07 2014 -0600
@@ -83,9 +83,9 @@
 .obsoleted { background-color: #f26d7d }
 .reqattr { font-weight: bold }
 .optattr { font-style: italic }
-</style><link rel="stylesheet" type="text/css" href="https://www.w3.org/StyleSheets/TR/W3C-ED.css"></head><body>Last Modified: $Date: 2014/10/02 21:39:43 $<div id="revisions"></div><div class="head">
+</style><link rel="stylesheet" type="text/css" href="https://www.w3.org/StyleSheets/TR/W3C-ED.css"></head><body>Last Modified: $Date: 2014/10/04 20:05:40 $<div id="revisions"></div><div class="head">
 <h1><a id="title"></a>Timed Text Markup Language 2 (TTML2)</h1>
-<h2><a id="w3c-doctype"></a>Editors' copy $Date: 2014/10/02 21:39:43 $ @@ @@@@ @@@@</h2><dl><dt>This version:</dt><dd>
+<h2><a id="w3c-doctype"></a>Editors' copy $Date: 2014/10/04 20:05:40 $ @@ @@@@ @@@@</h2><dl><dt>This version:</dt><dd>
 <a href="ttml2.html">ttml2.html</a>
 </dd><dt>Latest version:</dt><dd><a href="https://dvcs.w3.org/hg/ttml/raw-file/default/ttml2/spec/ttml2.html?content-type=text/html;charset=utf-8">https://dvcs.w3.org/hg/ttml/raw-file/default/ttml2/spec/ttml2.html?content-type=text/html;charset=utf-8</a></dd><dt>Previous version:</dt><dd>
 <a href="http://www.w3.org/TR/2010/REC-ttaf1-dfxp-20101118/">http://www.w3.org/TR/2010/REC-ttaf1-dfxp-20101118/</a>
@@ -451,11 +451,11 @@
 H <a href="#other-references">Other References</a> (Non-Normative)<br>
 I <a href="#requirements">Requirements</a> (Non-Normative)<br>
 J <a href="#derivation">Vocabulary Derivation</a> (Non-Normative)<br>
-&nbsp;&nbsp;&nbsp;&nbsp;J.1 <a href="#d3e27800">Element Derivation</a><br>
-&nbsp;&nbsp;&nbsp;&nbsp;J.2 <a href="#d3e28317">Attribute Derivation</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;J.1 <a href="#d3e27863">Element Derivation</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;J.2 <a href="#d3e28380">Attribute Derivation</a><br>
 K <a href="#qa">QA Framework Compliance</a> (Non-Normative)<br>
-&nbsp;&nbsp;&nbsp;&nbsp;K.1 <a href="#d3e29310">Requirements</a><br>
-&nbsp;&nbsp;&nbsp;&nbsp;K.2 <a href="#d3e29474">Guidelines</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;K.1 <a href="#d3e29373">Requirements</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;K.2 <a href="#d3e29537">Guidelines</a><br>
 L <a href="#streaming">Streaming TTML Content</a> (Non-Normative)<br>
 M <a href="#concrete-encoding">Concrete Encoding</a><br>
 N <a href="#time-expression-semantics">Time Expression Semantics</a><br>
@@ -3301,7 +3301,7 @@
 </td></tr><tr><td><em>Inherited:</em></td><td>yes</td></tr><tr><td><em>Percentages:</em></td><td>N/A</td></tr><tr><td><em>Animatable:</em></td><td>discrete</td></tr></tbody></table><p>For the purpose of determining applicability of this style property,
 each character child of a <code>p</code> element is considered to be enclosed in an anonymous
 span.</p><p>If a computed value of the property associated with this attribute is not supported,
-then a <a href="#terms-presentation-processor">presentation processor</a> must use the value <code>normal</code>.</p><table border="1" class="ednote" summary="Editorial note: Font Position Variant Example"><tr class="ednote-r1"><td align="left" valign="top"><b>Editorial note: Font Position Variant Example</b></td><td align="right" valign="top">2014-09-24</td></tr><tr class="ednote-r2"><td colspan="2" align="left" valign="top">Add example and example rendering of tts:fontVariantPosition.</td></tr></table><div class="note"><p class="prefix"><b>Note:</b></p><p>The semantics of the style property
+then a <a href="#terms-presentation-processor">presentation processor</a> must use the value <code>normal</code>.</p><table border="1" class="ednote" summary="Editorial note: Font Position Variant Example"><tr class="ednote-r1"><td align="left" valign="top"><b>Editorial note: Font Position Variant Example</b></td><td align="right" valign="top">2014-09-24</td></tr><tr class="ednote-r2"><td colspan="2" align="left" valign="top">Add example source and rendering of tts:fontVariantPosition.</td></tr></table><div class="note"><p class="prefix"><b>Note:</b></p><p>The semantics of the style property
 represented by this attribute are based upon that defined by <a href="#css3-fonts">[CSS Fonts Module Level 3]</a>,
 § 6.5.</p></div></div><div class="div3">
 <h4><a id="style-attribute-fontWeight"></a>8.2.13 tts:fontWeight</h4><p>The <code>tts:fontWeight</code> attribute is used to specify a style property
@@ -3616,8 +3616,7 @@
 </td></tr><tr><td><em>Initial:</em></td><td><code>none</code></td></tr><tr><td><em>Applies to:</em></td><td>
 <a href="#content-vocabulary-span"><code>span</code></a>
 </td></tr><tr><td><em>Inherited:</em></td><td>no</td></tr><tr><td><em>Percentages:</em></td><td>N/A</td></tr><tr><td><em>Animatable:</em></td><td>discrete</td></tr></tbody></table><p></p><p>If the value of this attribute is <code>none</code>, then no ruby semantics apply; otherwise, the ruby semantics enumerated by
-<a href="#ruby-semantics-mapping-table"><b>Table 8-1 – Ruby Semantics Mapping</b></a> apply, where the maximal content model defined by <a href="#ruby">[Ruby]</a>, §2.1, applies
-and must be treated as an error if violated.</p><p>If a computed value of the property associated with this attribute is not supported,
+<a href="#ruby-semantics-mapping-table"><b>Table 8-1 – Ruby Semantics Mapping</b></a> apply.</p><p>If a computed value of the property associated with this attribute is not supported,
 then a <a href="#terms-presentation-processor">presentation processor</a> must use the value <code>none</code>.</p><a id="ruby-semantics-mapping-table"></a><table class="common"><caption>Table 8-1 – Ruby Semantics Mapping</caption><col width="25%" span="1"><col width="25%" span="1"><col width="25%" span="1"><col width="25%" span="1"><col span="1"><tbody><tr><th>Category</th><th>tts:ruby</th><th>Annotation <a href="#ruby">[Ruby]</a></th><th>CSS display <a href="#cssruby">[CSS Ruby]</a></th></tr><tr><td>Ruby Container</td><td><code>container</code></td><td><code>ruby</code></td><td><code>ruby</code></td></tr><tr><td>Ruby Base Content</td><td><code>base</code></td><td><code>rb</code></td><td><code>ruby-base</code></td></tr><tr><td>Ruby Text Content</td><td><code>text</code></td><td><code>rt</code></td><td><code>ruby-text</code></td></tr><tr><td>Ruby Base Container</td><td><code>baseContainer</code></td><td><code>rbc</code></td><td><code>ruby-base-container</code></td></tr><tr><td>Ruby Text Container</td><td><code>textContainer</code></td><td><code>rtc</code></td><td><code>ruby-text-container</code></td></tr><tr><td>Ruby Fallback Delimiter</td><td><code>delimiter</code></td><td><code>rp</code></td><td><code>none</code></td></tr></tbody></table><p>When using <code>tts:ruby</code>, the following nesting constraints apply:</p><ul><li><p>if the computed value of <code>tts:ruby</code> is <code>container</code>, then the
 computed value of <code>tts:ruby</code> of all ancestor elements is <code>none</code>;</p></li><li><p>if the computed value of <code>tts:ruby</code> is <code>container</code>, then the
 computed value of <code>tts:ruby</code> of its first child element is <code>baseContainer</code>
@@ -3626,7 +3625,7 @@
 computed value of <code>tts:ruby</code> of its first child element is <code>base</code>;</p></li><li><p>if the computed value of <code>tts:ruby</code> is <code>baseContainer</code>, then its
 preceding sibling is <code>null</code> (i.e., no preceding sibling);</p></li><li><p>if the computed value of <code>tts:ruby</code> is <code>textContainer</code>, then the
 computed value of <code>tts:ruby</code> of its parent element is <code>container</code>;</p></li><li><p>if the computed value of <code>tts:ruby</code> is <code>textContainer</code>, then the
-computed value of <code>tts:ruby</code> of its first child element is <code>text</code>;</p></li><li><p>if the computed value of <code>tts:ruby</code> is <code>textContainer</code>, then the
+computed value of <code>tts:ruby</code> of its first child element is either <code>text</code> or <code>delimiter</code>;</p></li><li><p>if the computed value of <code>tts:ruby</code> is <code>textContainer</code>, then the
 computed value of <code>tts:ruby</code> of its preceding sibling is <code>baseContainer</code> or
 <code>textContainer</code>;</p></li><li><p>if the computed value of <code>tts:ruby</code> is <code>textContainer</code>, then the
 computed value of <code>tts:ruby</code> of no more than one sibling is <code>textContainer</code>;</p></li><li><p>if the computed value of <code>tts:ruby</code> is <code>base</code>, then the
@@ -3644,28 +3643,85 @@
 computed value of <code>tts:ruby</code> of its parent element is <code>container</code>,
 then the computed value of <code>tts:ruby</code> of no sibling is <code>text</code>;</p></li><li><p>if the computed value of <code>tts:ruby</code> is <code>text</code>, then the
 computed value of <code>tts:ruby</code> of no descendant element is not <code>none</code>;</p></li><li><p>if the computed value of <code>tts:ruby</code> is <code>delimiter</code>, then the
-computed value of <code>tts:ruby</code> of its parent element is <code>container</code>;</p></li><li><p>if the computed value of <code>tts:ruby</code> is <code>delimiter</code>, then the
+computed value of <code>tts:ruby</code> of its parent element is either <code>container</code> or <code>textContainer</code>;</p></li><li><p>if the computed value of <code>tts:ruby</code> is <code>delimiter</code>, then the
 computed value of <code>tts:ruby</code> of its preceding sibling is <code>base</code> or
 <code>text</code>;</p></li><li><p>if the computed value of <code>tts:ruby</code> is <code>delimiter</code>, then the
 computed value of <code>tts:ruby</code> of exactly one sibling is <code>delimiter</code>;</p></li><li><p>if the computed value of <code>tts:ruby</code> is <code>delimiter</code>, then the
-computed value of <code>tts:ruby</code> of no descendant element is not <code>none</code>;</p></li></ul><div class="note"><p class="prefix"><b>Note:</b></p><p>The above listed constraints are intended to be interpreted as specifying the following nesting model:</p><div class="exampleInner"><pre>
+computed value of <code>tts:ruby</code> of no descendant element is not <code>none</code>;</p></li></ul><p>A validating processor must treat a violation of any of the above constraints as an error.
+For the purpose of presentation processing, the violation of any of these constraints should result in fallback (inline)
+presentation of ruby text annotations, where fallback annotation presentation is considered to be implementation dependent.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>The above listed constraints are intended to be interpreted as specifying the following nesting model:</p><div class="exampleInner"><pre>
 container
-  : baseContainer textContainer textContainer?
-  | base text
+  : base text
   | base delimiter text delimiter
+  | baseContainer textContainer textContainer?
 
 baseContainer
   : base+
 
 textContainer
   : text+
+  | delimiter text+ delimiter
 
 base | text | delimiter
   : ( #PCDATA | { span - tts:ruby } )*
-</pre></div><p>This model corresponds to the maximal content model for the <code>ruby</code> element defined by <a href="#ruby">[Ruby]</a>, §2.1:</p><div class="exampleInner"><pre>
-((rb, (rt | (rp, rt, rp))) | (rbc, rtc, rtc?))
-</pre></div></div><p>A validating processor must treat a violation of any of the above constraints as an error.</p><p>For the purpose of presentation processing, the violation of any of these constraints should result in fallback (inline)
-presentation of ruby text annotations, where fallback annotation presentation is considered to be implementation dependent.</p><p>Use of <code>tts:ruby</code> to specify simple ruby annotation is illustrated by the following example.</p><a id="style-attribute-ruby-example-1"></a><table class="example"><caption>Example Fragment – Simple Ruby</caption><tbody><tr><td>
+</pre></div><p>This model corresponds to the maximal content model for the <code>ruby</code> element defined by <a href="#ruby">[Ruby]</a>, §2.1,
+with the exception that <code>rtc</code> is effectively extended to permit the optional use of delimiters (<code>rp</code>):</p><div class="exampleInner"><pre>
+ruby
+  : rb rt
+  | rb rp rt rp
+  | rbc rtc rtc?
+
+rbc
+  : rb+
+
+rtc
+  : rt+
+  | rp rt+ rp                            // extension to <a href="#ruby">[Ruby]</a>
+</pre></div></div><div class="note"><p class="prefix"><b>Note:</b></p><p>While not supporting as many opportunities for markup minimization as allowed by <a href="#html5">[HTML5]</a>,
+the formulation of ruby annotation defined here does allow the following shorthands:</p><div class="exampleInner"><pre>
+base text =
+  baseContainer
+    base
+  textContainer
+    text
+
+base delimiter text delimiter =
+  baseContainer
+    base
+  textContainer
+    delimiter text delimiter
+</pre></div><p>Given the content of <code>base</code> is <code>B</code> and the content of
+<code>text</code> is <code>T</code>, then the expression <code>base text</code> could be represented variously in <a href="#html5">[HTML5]</a> as follows:</p><div class="exampleInner"><pre>
+&lt;ruby&gt;B&lt;rt&gt;T&lt;/ruby&gt;
+&lt;ruby&gt;B&lt;rt&gt;T&lt;/rt&gt;&lt;/ruby&gt;
+&lt;ruby&gt;&lt;rb&gt;B&lt;rt&gt;T&lt;/ruby&gt;
+&lt;ruby&gt;&lt;rb&gt;B&lt;/rb&gt;&lt;rt&gt;T&lt;/ruby&gt;
+&lt;ruby&gt;&lt;rb&gt;B&lt;/rb&gt;&lt;rt&gt;T&lt;/rt&gt;&lt;/ruby&gt;
+&lt;ruby&gt;B&lt;rtc&gt;&lt;rt&gt;T&lt;/ruby&gt;
+&lt;ruby&gt;B&lt;rtc&gt;&lt;rt&gt;T&lt;/rtc&gt;&lt;/ruby&gt;
+&lt;ruby&gt;B&lt;rtc&gt;&lt;rt&gt;T&lt;/rt&gt;&lt;/ruby&gt;
+&lt;ruby&gt;B&lt;rtc&gt;&lt;rt&gt;T&lt;/rt&gt;&lt;/rtc&gt;&lt;/ruby&gt;
+&lt;ruby&gt;&lt;rb&gt;B&lt;rtc&gt;&lt;rt&gt;T&lt;/ruby&gt;
+&lt;ruby&gt;&lt;rb&gt;B&lt;rtc&gt;&lt;rt&gt;T&lt;/rtc&gt;&lt;/ruby&gt;
+&lt;ruby&gt;&lt;rb&gt;B&lt;/rb&gt;&lt;rtc&gt;&lt;rt&gt;T&lt;/ruby&gt;
+&lt;ruby&gt;&lt;rb&gt;B&lt;/rb&gt;&lt;rtc&gt;&lt;rt&gt;T&lt;/rtc&gt;&lt;/ruby&gt;
+&lt;ruby&gt;&lt;rb&gt;B&lt;/rb&gt;&lt;rtc&gt;&lt;rt&gt;T&lt;/rt&gt;&lt;/ruby&gt;
+&lt;ruby&gt;&lt;rb&gt;B&lt;/rb&gt;&lt;rtc&gt;&lt;rt&gt;T&lt;/rt&gt;&lt;/rtc&gt;&lt;/ruby&gt;
+</pre></div><p>Whereas, in TTML2, the following alternative expressions are possible:</p><div class="exampleInner"><pre>
+&lt;span tts:ruby="container"&gt;
+  &lt;span tts:ruby="base"&gt;B&lt;/span&gt;
+  &lt;span tts:ruby="text"&gt;T&lt;/span&gt;
+&lt;/span&gt;
+</pre></div><p>or its equivalent</p><div class="exampleInner"><pre>
+&lt;span tts:ruby="container"&gt;
+  &lt;span tts:ruby="baseContainer"&gt;
+    &lt;span tts:ruby="base"&gt;B&lt;/span&gt;
+  &lt;/span&gt;
+  &lt;span tts:ruby="textContainer"&gt;
+    &lt;span tts:ruby="text"&gt;T&lt;/span&gt;
+  &lt;/span&gt;
+&lt;/span&gt;
+</pre></div></div><p>Use of <code>tts:ruby</code> to specify simple ruby annotation is illustrated by the following example.</p><a id="style-attribute-ruby-example-1"></a><table class="example"><caption>Example Fragment – Simple Ruby</caption><tbody><tr><td>
 <div class="exampleInner"><pre>
 &lt;span <span class="strong">tts:ruby="container"</span>&gt;
   &lt;span <span class="strong">tts:ruby="base"</span>&gt;利用許諾&lt;/span&gt;
@@ -3708,7 +3764,7 @@
 is equally distributed between each glyph area descendant.
 If the value is <code>spaceAround</code>, then excess whitespace
 is equally distributed before and after each glyph area descendant.</p><p>If a computed value of the property associated with this attribute is not supported,
-then a <a href="#terms-presentation-processor">presentation processor</a> must use the value <code>spaceAround</code>.</p><table border="1" class="ednote" summary="Editorial note: Ruby Align Example"><tr class="ednote-r1"><td align="left" valign="top"><b>Editorial note: Ruby Align Example</b></td><td align="right" valign="top">2014-09-20</td></tr><tr class="ednote-r2"><td colspan="2" align="left" valign="top">Add example and example rendering of tts:rubyAlign.</td></tr></table><div class="note"><p class="prefix"><b>Note:</b></p><p>The semantics of the style property
+then a <a href="#terms-presentation-processor">presentation processor</a> must use the value <code>spaceAround</code>.</p><table border="1" class="ednote" summary="Editorial note: Ruby Align Example"><tr class="ednote-r1"><td align="left" valign="top"><b>Editorial note: Ruby Align Example</b></td><td align="right" valign="top">2014-09-20</td></tr><tr class="ednote-r2"><td colspan="2" align="left" valign="top">Add example source and rendering of tts:rubyAlign.</td></tr></table><div class="note"><p class="prefix"><b>Note:</b></p><p>The semantics of the style property
 represented by this attribute are based upon that defined by <a href="#cssruby">[CSS Ruby]</a>, §4.3, and the examples and example
 renderings shown there apply.</p></div></div><div class="div3">
 <h4><a id="style-attribute-rubyOffset"></a>8.2.21 tts:rubyOffset</h4><p>The <code>tts:rubyOffset</code> attribute is used to specify the offset (distance) of ruby text with respect to its associated ruby base
@@ -3720,7 +3776,7 @@
 </td></tr><tr><td><em>Inherited:</em></td><td>yes</td></tr><tr><td><em>Percentages:</em></td><td>relative to this element's font size</td></tr><tr><td><em>Animatable:</em></td><td>continuous</td></tr></tbody></table><p></p><p>If specified, the value of <code>tts:rubyOffset</code> expresses the offset (distance) between padding edge <em>E<sub>1</sub></em> of the inline area
 generated by a ruby text container (explicit or implied) and padding edge <em>E<sub>2</sub></em>  of the inline area generated by a ruby base container (explicit or implied), where
 <em>E<sub>1</sub></em> and <em>E<sub>2</sub></em> are perpendicular to the block progression direction and are (or would be) adjacent in the absence of
-such an offset.</p><p>Negative length expressions are permitted.</p><table border="1" class="ednote" summary="Editorial note: Ruby Offset Example"><tr class="ednote-r1"><td align="left" valign="top"><b>Editorial note: Ruby Offset Example</b></td><td align="right" valign="top">2014-10-02</td></tr><tr class="ednote-r2"><td colspan="2" align="left" valign="top">Add example and example rendering of tts:rubyOffset.</td></tr></table></div><div class="div3">
+such an offset.</p><p>Negative length expressions are permitted.</p><table border="1" class="ednote" summary="Editorial note: Ruby Offset Example"><tr class="ednote-r1"><td align="left" valign="top"><b>Editorial note: Ruby Offset Example</b></td><td align="right" valign="top">2014-10-02</td></tr><tr class="ednote-r2"><td colspan="2" align="left" valign="top">Add example source and rendering of tts:rubyOffset.</td></tr></table></div><div class="div3">
 <h4><a id="style-attribute-rubyPosition"></a>8.2.22 tts:rubyPosition</h4><p>The <code>tts:rubyPosition</code> attribute is used to specify the position of ruby text in the block progression dimension
 with respect to its associated ruby base.</p><p>This attribute may be specified by any element type that permits use of attributes in the TT Style Namespace; however,
 this attribute applies as a style property only to those element types indicated in the following table.</p><a id="style-property-details-rubyPosition"></a><table class="common"><col width="25%" span="1"><col span="1"><tbody><tr><td><em>Values:</em></td><td>
@@ -3735,7 +3791,7 @@
 annotation.</p><p>The absolute position of the ruby text container or ruby text annotation is determined
 in accordance to the computed value of the <code>tts:writingMode</code> style property of the region into which the affected content is placed; in particular, the
 mappings defined enumerated by <a href="#rubyPosition-semantics-mapping-table"><b>Table 8-2 – Ruby Position Semantics Mapping by Writing Mode</b></a> apply as further defined by <a href="#cssruby">[CSS Ruby]</a>, §4.1.</p><p>If a computed value of the property associated with this attribute is not supported,
-then a <a href="#terms-presentation-processor">presentation processor</a> must use the value <code>before</code>.</p><a id="rubyPosition-semantics-mapping-table"></a><table class="common"><caption>Table 8-2 – Ruby Position Semantics Mapping by Writing Mode</caption><col width="20%" span="1"><col width="20%" span="1"><col width="20%" span="1"><col width="20%" span="1"><col width="20%" span="1"><col span="1"><tbody><tr><th>tts:rubyPosition</th><th><code>lrtb</code></th><th><code>rltb</code></th><th><code>tbrl</code></th><th><code>tblr</code></th></tr><tr><td><code>before</code></td><td><code>over</code></td><td><code>over</code></td><td><code>right</code></td><td><code>left</code></td></tr><tr><td><code>after</code></td><td><code>under</code></td><td><code>under</code></td><td><code>left</code></td><td><code>right</code></td></tr></tbody></table><p></p><table border="1" class="ednote" summary="Editorial note: Ruby Position Example"><tr class="ednote-r1"><td align="left" valign="top"><b>Editorial note: Ruby Position Example</b></td><td align="right" valign="top">2014-09-20</td></tr><tr class="ednote-r2"><td colspan="2" align="left" valign="top">Add example and example rendering of tts:rubyPosition.</td></tr></table><div class="note"><p class="prefix"><b>Note:</b></p><p>The semantics of the style property
+then a <a href="#terms-presentation-processor">presentation processor</a> must use the value <code>before</code>.</p><a id="rubyPosition-semantics-mapping-table"></a><table class="common"><caption>Table 8-2 – Ruby Position Semantics Mapping by Writing Mode</caption><col width="20%" span="1"><col width="20%" span="1"><col width="20%" span="1"><col width="20%" span="1"><col width="20%" span="1"><col span="1"><tbody><tr><th>tts:rubyPosition</th><th><code>lrtb</code></th><th><code>rltb</code></th><th><code>tbrl</code></th><th><code>tblr</code></th></tr><tr><td><code>before</code></td><td><code>over</code></td><td><code>over</code></td><td><code>right</code></td><td><code>left</code></td></tr><tr><td><code>after</code></td><td><code>under</code></td><td><code>under</code></td><td><code>left</code></td><td><code>right</code></td></tr></tbody></table><p></p><table border="1" class="ednote" summary="Editorial note: Ruby Position Example"><tr class="ednote-r1"><td align="left" valign="top"><b>Editorial note: Ruby Position Example</b></td><td align="right" valign="top">2014-09-20</td></tr><tr class="ednote-r2"><td colspan="2" align="left" valign="top">Add example source and rendering of tts:rubyPosition.</td></tr></table><div class="note"><p class="prefix"><b>Note:</b></p><p>The semantics of the style property
 represented by this attribute are based upon that defined by <a href="#cssruby">[CSS Ruby]</a>, §4.1, and the examples and example
 renderings shown there apply modulo the mappings defined above.</p></div></div><div class="div3">
 <h4><a id="style-attribute-showBackground"></a>8.2.23 tts:showBackground</h4><p>The <code>tts:showBackground</code> attribute is used to specify
@@ -6469,7 +6525,7 @@
 </pre></div><p>All values of <code>feature-designation</code> not defined by this specification are reserved
 for future standardization.</p><p>The following sub-sections define all feature designations, expressed
 as relative URIs (fragment identifiers) with respect to the 
-TT Feature Namespace base URI.</p><table border="1" class="ednote" summary="Editorial note: #animation subset features"><tr class="ednote-r1"><td align="left" valign="top"><b>Editorial note: #animation subset features</b></td><td align="right" valign="top">2013-08-26</td></tr><tr class="ednote-r2"><td colspan="2" align="left" valign="top">Add fine grained subset features of #animation.</td></tr></table><p></p><table border="1" class="ednote" summary="Editorial note: #inline-region features"><tr class="ednote-r1"><td align="left" valign="top"><b>Editorial note: #inline-region features</b></td><td align="right" valign="top">2014-03-27</td></tr><tr class="ednote-r2"><td colspan="2" align="left" valign="top">Add feature(s) associated with support for explicit and implied inline regions.</td></tr></table><div class="div3">
+TT Feature Namespace base URI.</p><table border="1" class="ednote" summary="Editorial note: #animation subset features"><tr class="ednote-r1"><td align="left" valign="top"><b>Editorial note: #animation subset features</b></td><td align="right" valign="top">2013-08-26</td></tr><tr class="ednote-r2"><td colspan="2" align="left" valign="top">Add fine grained subset features of #animation.</td></tr></table><p></p><table border="1" class="ednote" summary="Editorial note: #inline-region features"><tr class="ednote-r1"><td align="left" valign="top"><b>Editorial note: #inline-region features</b></td><td align="right" valign="top">2014-03-27</td></tr><tr class="ednote-r2"><td colspan="2" align="left" valign="top">Add feature(s) associated with support for explicit and implied inline regions.</td></tr></table><p></p><table border="1" class="ednote" summary="Editorial note: New style property features"><tr class="ednote-r1"><td align="left" valign="top"><b>Editorial note: New style property features</b></td><td align="right" valign="top">2014-10-02</td></tr><tr class="ednote-r2"><td colspan="2" align="left" valign="top">Add features to cover new style properties: border, fontVariantPosition, ruby, rubyAlign, rubyOffset, rubyPosition, textOrientation, etc.</td></tr></table><div class="div3">
 <h4><a id="feature-animation"></a>D.1.1 #animation</h4><p>A TTML <a href="#terms-transformation-processor">transformation processor</a> supports the <code>#animation</code>
 feature if it recognizes and is capable of transforming the following
 vocabulary defined by <a href="#animation"><b>11 Animation</b></a>:</p><ul><li><p><a href="#animation-vocabulary-animation"><code>animation</code></a></p></li><li><p><a href="#animation-vocabulary-animate"><code>animate</code></a></p></li><li><p><a href="#animation-vocabulary-set"><code>set</code></a></p></li></ul><p>A TTML <a href="#terms-presentation-processor">presentation processor</a> supports the <code>#animation</code>
@@ -7874,6 +7930,10 @@
 Positioning System</cite></a>, US Air Force.
 (See
 <a href="http://www.gps.gov/technical/">http://www.gps.gov/technical/</a>.)
+</dd><dt class="label"><a id="html5"></a>HTML5</dt><dd>Ian Hickson et al.,
+<a href="http://www.w3.org/TR/html5/"><cite>Extensible Stylesheet Language (XSL) Version 1.1</cite></a>,
+W3C Proposed Recommendation, 16 September 2014. (See
+<a href="http://www.w3.org/TR/html5/">http://www.w3.org/TR/html5/</a>.)
 </dd><dt class="label"><a id="media-types"></a>Media Types</dt><dd>Ned Freed and Nathaniel Borenstein,  
 <a href="http://www.rfc-editor.org/rfc/rfc2046.txt"><cite>Multipurpose Internet
 Mail Extensions (MIME) Part Two: Media Types</cite></a>,
@@ -8056,7 +8116,7 @@
 <h2><a id="derivation"></a>J Vocabulary Derivation (Non-Normative)</h2><p>This appendix provides information about the derivation of TTML
 vocabulary, separately describing derivation of elements and
 attributes.</p><div class="div2">
-<h3><a id="d3e27800"></a>J.1 Element Derivation</h3><p>The first column of <a href="#element-vocab-derivation-table"><b>Table J-1 – Elements</b></a>
+<h3><a id="d3e27863"></a>J.1 Element Derivation</h3><p>The first column of <a href="#element-vocab-derivation-table"><b>Table J-1 – Elements</b></a>
 specifies a TTML element vocabulary item; the second column specifies the
 syntactic and/or semantic model on which the vocabulary item is based;
 the third column specifies the reference that defines
@@ -8113,7 +8173,7 @@
 and <code>@version</code> on the <code>svg:svg</code> element.</p></li><li><p>Conceptually derived from existing <code>tt:layout</code> element,
 which is a generic container for layout specifications, but for use
 in defining animation specifications that apply to targeted elements.</p></li></ol></div></div><div class="div2">
-<h3><a id="d3e28317"></a>J.2 Attribute Derivation</h3><p>The first column of <a href="#attribute-vocab-derivation-table"><b>Table J-2 – Attributes</b></a>
+<h3><a id="d3e28380"></a>J.2 Attribute Derivation</h3><p>The first column of <a href="#attribute-vocab-derivation-table"><b>Table J-2 – Attributes</b></a>
 specifies a TTML attribute vocabulary item; the second column specifies the
 syntactic and/or semantic model on which the vocabulary item is based;
 the third column specifies the reference that defines
@@ -8205,9 +8265,9 @@
 <h2><a id="qa"></a>K QA Framework Compliance (Non-Normative)</h2><p>This appendix specifies the compliance of this specification with the
 requirements and guidelines defined by <a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/">QA
 Framework Specifications Guidelines</a>&nbsp;<a href="#qaf-sg">[QAF SG]</a>.</p><div class="div2">
-<h3><a id="d3e29310"></a>K.1 Requirements</h3><a id="qa-framework-requirements-table"></a><table class="common"><caption>Table K-1 – QA Framework Requirements Checklist</caption><col width="76%" span="1"><col width="6%" align="center" span="1"><col width="6%" align="center" span="1"><col width="6%" align="center" span="1"><col width="6%" align="center" span="1"><tbody><tr><td><span class="strong">Requirement</span></td><td><span class="strong">YES</span></td><td><span class="strong">NO</span></td><td><span class="strong">N/A</span></td><td><span class="strong">Notes</span></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#include-conformance-clause-principle">Requirement 01: Include a conformance
+<h3><a id="d3e29373"></a>K.1 Requirements</h3><a id="qa-framework-requirements-table"></a><table class="common"><caption>Table K-1 – QA Framework Requirements Checklist</caption><col width="76%" span="1"><col width="6%" align="center" span="1"><col width="6%" align="center" span="1"><col width="6%" align="center" span="1"><col width="6%" align="center" span="1"><tbody><tr><td><span class="strong">Requirement</span></td><td><span class="strong">YES</span></td><td><span class="strong">NO</span></td><td><span class="strong">N/A</span></td><td><span class="strong">Notes</span></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#include-conformance-clause-principle">Requirement 01: Include a conformance
 clause</a></td><td><a href="#conformance">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#define-scope-principle">Requirement 02: Define the scope.</a></td><td><a href="#intro">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#implement-principle">Requirement 03: Identify who or what will implement the specification.</a></td><td><a href="#conformance">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#ref-norm-principle">Requirement 04: Make a list of normative references.</a></td><td><a href="#references">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#define-terms-principle">Requirement 05: Define the terms used in the normative parts of the specification.</a></td><td><a href="#definitions">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#conf-label-principle">Requirement 06: Create conformance labels for each part of the conformance model.</a></td><td><a href="#conformance">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#consistent-style-principle">Requirement 07: Use a consistent style for conformance requirements and explain how to distinguish them.</a></td><td><a href="#conventions">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#req-opt-conf-principle">Requirement 08: Indicate which conformance requirements are mandatory, which are recommended, and which are optional.</a></td><td><a href="#conventions">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#subdivide-mandatory-principle">Requirement 09: If the technology is subdivided, then indicate which subdivisions are mandatory for conformance.</a></td><td><a href="#conformance">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#subdiv-constraints-principle">Requirement 10: If the technology is subdivided, then address subdivision constraints.</a></td><td><a href="#conformance">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#likehood-extension-principle">Requirement 11: Address Extensibility.</a></td><td><a href="#doctypes">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#deprecated-feature-principle">Requirement 12: Identify deprecated features.</a></td><td></td><td></td><td>N/A</td><td>1</td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#degree-support-principle">Requirement 13: Define how each class of product handles each deprecated feature.</a></td><td></td><td></td><td>N/A</td><td>1</td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><ol class="enumar"><li><p>No feature is deprecated by this version of this specification.</p></li></ol></div></div><div class="div2">
-<h3><a id="d3e29474"></a>K.2 Guidelines</h3><a id="qa-framework-guidelines-table"></a><table class="common"><caption>Table K-2 – QA Framework Guidelines Checklist</caption><col width="76%" span="1"><col width="6%" align="center" span="1"><col width="6%" align="center" span="1"><col width="6%" align="center" span="1"><col width="6%" align="center" span="1"><tbody><tr><td><span class="strong">Guideline</span></td><td><span class="strong">YES</span></td><td><span class="strong">NO</span></td><td><span class="strong">N/A</span></td><td><span class="strong">Notes</span></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#conformance-model-gp">Good Practice 01: Define the specification's conformance model in the conformance clause.</a></td><td><a href="#conformance">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#norm-informative-gp">Good Practice 02: Specify in the conformance clause how to distinguish normative from informative content.</a></td><td><a href="#conventions">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#conformance-claim-gp">Good Practice 03: Provide the wording for conformance claims.</a></td><td><a href="#claims">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#ics-gp">Good Practice 04: Provide an Implementation Conformance Statement Pro Forma.</a></td><td></td><td>NO</td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#ics-claim-gp">Good Practice 05: Require an Implementation Conformance Statement as part of valid conformance claims.</a></td><td><a href="#claims">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#use-example-gp">Good Practice 06: Provide examples, use cases, and graphics.</a></td><td><a href="#example">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#write-sample-gp">Good Practice 07: Write sample code or tests.</a></td><td>YES</td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#ref-define-practice">Good Practice 08: When imposing requirements by normative references, address conformance dependencies.</a></td><td><a href="#references">YES</a></td><td></td><td></td><td>1</td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#define-terms-inline-gp">Good Practice 09: Define unfamiliar terms in-line and consolidate the definitions in a glossary section.</a></td><td><a href="#definitions">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#reuse-terms-gp">Good Practice 10: Use terms already defined without changing their definition.</a></td><td><a href="#definitions">YES</a></td><td></td><td></td><td>2</td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#formal-language-gp">Good Practice 11: Use formal languages when possible.</a></td><td><a href="#schemas">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#write-assertion-gp">Good Practice 12: Write Test Assertions.</a></td><td></td><td>NO</td><td></td><td>3</td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#subdivide-foster-gp">Good Practice 13: Create subdivisions of the technology when warranted.</a></td><td><a href="#conformance">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#rules-profiles-gp">Good Practice 14: If the technology is profiled, define rules for creating new profiles.</a></td><td><a href="#vocabulary-profiles">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#need-option-gp">Good Practice 15:Use optional features as warranted.</a></td><td>YES</td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#label-options-gp">Good Practice 16: Clearly identify optional features.</a></td><td>YES</td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#constraints-gp">Good Practice 17: Indicate any limitations or constraints on optional features.</a></td><td>YES</td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#extensions-prohibited-gp">Good Practice 18: If extensibility is allowed, define an extension mechanism.</a></td><td><a href="#extension-vocabulary-overview">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#breaking-conformance-gp">Good Practice 19: Warn extension creators to create extensions that do not interfere with conformance.</a></td><td><a href="#extension-vocabulary-overview">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#define-error-gp">Good Practice 20: Define error-handling for unknown extensions.</a></td><td><a href="#conformance-processor">YES</a></td><td></td><td></td><td>4</td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#workaround-gp">Good Practice 21: Explain how to avoid using a deprecated feature.</a></td><td></td><td></td><td>N/A</td><td>5</td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#obsolete-gp">Good Practice 22: Identify obsolete features.</a></td><td></td><td></td><td>N/A</td><td>5</td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#error-handling-gp">Good Practice 23: Define an error handling mechanism.</a></td><td><a href="#reduced-infoset">YES</a></td><td></td><td></td><td></td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><ol class="enumar"><li><p>When making normative references to external specifications,
+<h3><a id="d3e29537"></a>K.2 Guidelines</h3><a id="qa-framework-guidelines-table"></a><table class="common"><caption>Table K-2 – QA Framework Guidelines Checklist</caption><col width="76%" span="1"><col width="6%" align="center" span="1"><col width="6%" align="center" span="1"><col width="6%" align="center" span="1"><col width="6%" align="center" span="1"><tbody><tr><td><span class="strong">Guideline</span></td><td><span class="strong">YES</span></td><td><span class="strong">NO</span></td><td><span class="strong">N/A</span></td><td><span class="strong">Notes</span></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#conformance-model-gp">Good Practice 01: Define the specification's conformance model in the conformance clause.</a></td><td><a href="#conformance">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#norm-informative-gp">Good Practice 02: Specify in the conformance clause how to distinguish normative from informative content.</a></td><td><a href="#conventions">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#conformance-claim-gp">Good Practice 03: Provide the wording for conformance claims.</a></td><td><a href="#claims">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#ics-gp">Good Practice 04: Provide an Implementation Conformance Statement Pro Forma.</a></td><td></td><td>NO</td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#ics-claim-gp">Good Practice 05: Require an Implementation Conformance Statement as part of valid conformance claims.</a></td><td><a href="#claims">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#use-example-gp">Good Practice 06: Provide examples, use cases, and graphics.</a></td><td><a href="#example">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#write-sample-gp">Good Practice 07: Write sample code or tests.</a></td><td>YES</td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#ref-define-practice">Good Practice 08: When imposing requirements by normative references, address conformance dependencies.</a></td><td><a href="#references">YES</a></td><td></td><td></td><td>1</td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#define-terms-inline-gp">Good Practice 09: Define unfamiliar terms in-line and consolidate the definitions in a glossary section.</a></td><td><a href="#definitions">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#reuse-terms-gp">Good Practice 10: Use terms already defined without changing their definition.</a></td><td><a href="#definitions">YES</a></td><td></td><td></td><td>2</td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#formal-language-gp">Good Practice 11: Use formal languages when possible.</a></td><td><a href="#schemas">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#write-assertion-gp">Good Practice 12: Write Test Assertions.</a></td><td></td><td>NO</td><td></td><td>3</td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#subdivide-foster-gp">Good Practice 13: Create subdivisions of the technology when warranted.</a></td><td><a href="#conformance">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#rules-profiles-gp">Good Practice 14: If the technology is profiled, define rules for creating new profiles.</a></td><td><a href="#vocabulary-profiles">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#need-option-gp">Good Practice 15:Use optional features as warranted.</a></td><td>YES</td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#label-options-gp">Good Practice 16: Clearly identify optional features.</a></td><td>YES</td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#constraints-gp">Good Practice 17: Indicate any limitations or constraints on optional features.</a></td><td>YES</td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#extensions-prohibited-gp">Good Practice 18: If extensibility is allowed, define an extension mechanism.</a></td><td><a href="#extension-vocabulary-overview">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#breaking-conformance-gp">Good Practice 19: Warn extension creators to create extensions that do not interfere with conformance.</a></td><td><a href="#extension-vocabulary-overview">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#define-error-gp">Good Practice 20: Define error-handling for unknown extensions.</a></td><td><a href="#conformance-processor">YES</a></td><td></td><td></td><td>4</td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#workaround-gp">Good Practice 21: Explain how to avoid using a deprecated feature.</a></td><td></td><td></td><td>N/A</td><td>5</td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#obsolete-gp">Good Practice 22: Identify obsolete features.</a></td><td></td><td></td><td>N/A</td><td>5</td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#error-handling-gp">Good Practice 23: Define an error handling mechanism.</a></td><td><a href="#reduced-infoset">YES</a></td><td></td><td></td><td></td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><ol class="enumar"><li><p>When making normative references to external specifications,
 specific clauses or sections are cited.</p></li><li><p>See also <a href="#derivation"><b>J Vocabulary Derivation</b></a>.</p></li><li><p>Test assertions and test suites will be provided prior to entering
 Proposed Recommendation (PR) phase.</p></li><li><p>See criterion #3 in <a href="#conformance-processor"><b>3.2 Processor Conformance</b></a> and definition of
 TTML <a href="#doctypes">Abstract Document Instance</a>.</p></li><li><p>No feature is deprecated or obsoleted by this version of this specification.</p></li></ol></div></div></div><div class="div1">