[ttml2] regenerate ED
authorGlenn Adams <glenn@skynav.com>
Thu, 31 Jul 2014 19:22:23 -0600
changeset 681 922b2dc40789
parent 680 37b2b2cf22ac
child 682 1142499d1b93
[ttml2] regenerate ED
ttml2/spec/ttml2.html
--- a/ttml2/spec/ttml2.html	Thu Jul 31 19:21:53 2014 -0600
+++ b/ttml2/spec/ttml2.html	Thu Jul 31 19:22:23 2014 -0600
@@ -82,9 +82,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/07/31 15:58:52 $<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/08/01 01:21:53 $<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/07/31 15:58:52 $ @@ @@@@ @@@@</h2><dl><dt>This version:</dt><dd>
+<h2><a id="w3c-doctype"></a>Editors' copy $Date: 2014/08/01 01:21:53 $ @@ @@@@ @@@@</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>
@@ -278,11 +278,9 @@
 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;11.3.2 <a href="#animation-value-animationValueList">&lt;animationValueList&gt;</a><br>
 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;11.3.3 <a href="#animation-value-calcMode">&lt;calcMode&gt;</a><br>
 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;11.3.4 <a href="#animation-value-fill">&lt;fill&gt;</a><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;11.3.5 <a href="#animation-value-fragmentIdentifier">&lt;fragmentIdentifier&gt;</a><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;11.3.6 <a href="#animation-value-keySplines">&lt;keySplines&gt;</a><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;11.3.7 <a href="#animation-value-keyTimes">&lt;keyTimes&gt;</a><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;11.3.8 <a href="#animation-value-qualifiedName">&lt;qualifiedName&gt;</a><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;11.3.9 <a href="#animation-value-repeatCount">&lt;repeatCount&gt;</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;11.3.5 <a href="#animation-value-keySplines">&lt;keySplines&gt;</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;11.3.6 <a href="#animation-value-keyTimes">&lt;keyTimes&gt;</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;11.3.7 <a href="#animation-value-repeatCount">&lt;repeatCount&gt;</a><br>
 12 <a href="#metadata">Metadata</a><br>
 &nbsp;&nbsp;&nbsp;&nbsp;12.1 <a href="#metadata-element-vocabulary">Metadata Element Vocabulary</a><br>
 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;12.1.1 <a href="#metadata-vocabulary-metadata">metadata</a><br>
@@ -435,11 +433,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="#d3e25252">Element Derivation</a><br>
-&nbsp;&nbsp;&nbsp;&nbsp;J.2 <a href="#d3e25769">Attribute Derivation</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;J.1 <a href="#d3e25201">Element Derivation</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;J.2 <a href="#d3e25718">Attribute Derivation</a><br>
 K <a href="#qa">QA Framework Compliance</a> (Non-Normative)<br>
-&nbsp;&nbsp;&nbsp;&nbsp;K.1 <a href="#d3e26762">Requirements</a><br>
-&nbsp;&nbsp;&nbsp;&nbsp;K.2 <a href="#d3e26926">Guidelines</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;K.1 <a href="#d3e26711">Requirements</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;K.2 <a href="#d3e26875">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>
@@ -2735,7 +2733,7 @@
 <a href="#content-vocabulary-p"><code>p</code></a>,
 <a href="#layout-vocabulary-region"><code>region</code></a>,
 <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>For the purpose of determining applicability of this style property,
+</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, continuous</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>The <code>tts:backgroundColor</code> style is illustrated by the following example.</p><a id="style-attribute-backgroundColor-example-1"></a><table class="example"><caption>Example Fragment – Background Color</caption><tbody><tr><td>
 <div class="exampleInner"><pre>
@@ -2770,7 +2768,7 @@
 <a href="#content-vocabulary-p"><code>p</code></a>,
 <a href="#layout-vocabulary-region"><code>region</code></a>,
 <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>For the purpose of determining applicability of this style property,
+</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, continuous (color and width only)</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 no border width is specified in the value of the <code>tts:border</code> property,
 then the border width must be interpreted as if a width of
@@ -2807,7 +2805,7 @@
 <a href="#style-value-color">&lt;color&gt;</a>
 </td></tr><tr><td><em>Initial:</em></td><td>see prose</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>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,
+</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, continuous</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>The initial value of the <code>tts:color</code> property
 is considered to be implementation dependent. In the absence of
@@ -2994,7 +2992,7 @@
 <a href="#content-vocabulary-div"><code>div</code></a>,
 <a href="#content-vocabulary-p"><code>p</code></a>,
 <a href="#layout-vocabulary-region"><code>region</code></a>
-</td></tr><tr><td><em>Inherited:</em></td><td>no</td></tr><tr><td><em>Percentages:</em></td><td>relative to width and height of <a href="#terms-root-container-region">root container region</a></td></tr><tr><td><em>Animatable:</em></td><td>discrete</td></tr></tbody></table><p>If the value of this attribute consists of two <a href="#style-value-length">&lt;length&gt;</a>
+</td></tr><tr><td><em>Inherited:</em></td><td>no</td></tr><tr><td><em>Percentages:</em></td><td>relative to width and height of <a href="#terms-root-container-region">root container region</a></td></tr><tr><td><em>Animatable:</em></td><td>discrete, continuous</td></tr></tbody></table><p>If the value of this attribute consists of two <a href="#style-value-length">&lt;length&gt;</a>
 specifications, then they must be interpreted as <em>width</em>
 and <em>height</em>, where the first specification is the
 <em>width</em>, and the second specification is the <em>height</em>.</p><p>The <a href="#style-value-length">&lt;length&gt;</a> value(s) used to express extent must be non-negative.</p><p>If the value of this attribute is <code>auto</code>, then the computed value
@@ -3089,7 +3087,7 @@
 <a href="#content-vocabulary-span"><code>span</code></a>
 </td></tr><tr><td><em>Inherited:</em></td><td>yes</td></tr><tr><td><em>Percentages:</em></td><td>if not <a href="#content-vocabulary-span"><code>region</code></a> element,
 then relative to parent element's font size; otherwise, relative to the
-<a href="#terms-computed-cell-size">computed cell size</a></td></tr><tr><td><em>Animatable:</em></td><td>discrete</td></tr></tbody></table><p>If a single <a href="#style-value-length">&lt;length&gt;</a> value is specified, then this length applies
+<a href="#terms-computed-cell-size">computed cell size</a></td></tr><tr><td><em>Animatable:</em></td><td>discrete, continuous</td></tr></tbody></table><p>If a single <a href="#style-value-length">&lt;length&gt;</a> value is specified, then this length applies
 equally to horizontal and vertical scaling of a glyph's EM square; if two
 <a href="#style-value-length">&lt;length&gt;</a> values are specified, then the first expresses the horizontal
 scaling and the second expresses vertical scaling.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>Use of independent horizontal and vertical font sizes is expected to be used
@@ -3215,7 +3213,7 @@
 <a href="#style-value-length">&lt;length&gt;</a>
 </td></tr><tr><td><em>Initial:</em></td><td><code>normal</code></td></tr><tr><td><em>Applies to:</em></td><td>
 <a href="#content-vocabulary-p"><code>p</code></a>
-</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>discrete</td></tr></tbody></table><p>If the value of this attribute is <code>normal</code>, then the
+</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>discrete, continuous</td></tr></tbody></table><p>If the value of this attribute is <code>normal</code>, then the
 computed value of this style property is determined as follows:</p><ol class="enumar"><li><p>
 Let <em>P</em> be the <code>p</code> element to which this style property applies.
 </p></li><li><p>
@@ -3285,7 +3283,7 @@
 <a href="#content-vocabulary-p"><code>p</code></a>,
 <a href="#layout-vocabulary-region"><code>region</code></a>,
 <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>The <code>tts:opacity</code> style is illustrated by the following example.</p><table border="1" class="ednote" summary="Editorial note: Enhance Opacity Example"><tr class="ednote-r1"><td align="left" valign="top"><b>Editorial note: Enhance Opacity Example</b></td><td align="right" valign="top">2013-08-26</td></tr><tr class="ednote-r2"><td colspan="2" align="left" valign="top">Enhance opacity example to demonstrate opacity on content elements.</td></tr></table><p></p><a id="style-attribute-opacity-example-1"></a><table class="example"><caption>Example Fragment – Opacity</caption><tbody><tr><td>
+</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, continuous</td></tr></tbody></table><p>The <code>tts:opacity</code> style is illustrated by the following example.</p><table border="1" class="ednote" summary="Editorial note: Enhance Opacity Example"><tr class="ednote-r1"><td align="left" valign="top"><b>Editorial note: Enhance Opacity Example</b></td><td align="right" valign="top">2013-08-26</td></tr><tr class="ednote-r2"><td colspan="2" align="left" valign="top">Enhance opacity example to demonstrate opacity on content elements.</td></tr></table><p></p><a id="style-attribute-opacity-example-1"></a><table class="example"><caption>Example Fragment – Opacity</caption><tbody><tr><td>
 <div class="exampleInner"><pre>
 &lt;region xml:id="r1" dur="5s"&gt;
   &lt;set begin="0s" dur="1s" <span class="strong">tts:opacity="1.00"</span>/&gt;
@@ -3329,7 +3327,7 @@
 <a href="#content-vocabulary-div"><code>div</code></a>,
 <a href="#content-vocabulary-p"><code>p</code></a>,
 <a href="#layout-vocabulary-region"><code>region</code></a>
-</td></tr><tr><td><em>Inherited:</em></td><td>no</td></tr><tr><td><em>Percentages:</em></td><td>relative to width and height of <a href="#terms-root-container-region">root container region</a></td></tr><tr><td><em>Animatable:</em></td><td>discrete</td></tr></tbody></table><p>If the value of this attribute consists of two <a href="#style-value-length">&lt;length&gt;</a> specifications,
+</td></tr><tr><td><em>Inherited:</em></td><td>no</td></tr><tr><td><em>Percentages:</em></td><td>relative to width and height of <a href="#terms-root-container-region">root container region</a></td></tr><tr><td><em>Animatable:</em></td><td>discrete, continuous</td></tr></tbody></table><p>If the value of this attribute consists of two <a href="#style-value-length">&lt;length&gt;</a> specifications,
 then they must be interpreted as <em>x</em> and <em>y</em> coordinates, where the first specification
 is the <em>x</em> coordinate, and the second specification is the <em>y</em> coordinate.</p><p>If the value of this attribute is <code>auto</code>, then the computed value
 of the style property must be considered to be the same as the origin of the <a href="#terms-root-container-region">root container region</a>.</p><p>If a <code>tts:origin</code> attribute is specified on a <code>div</code> or <code>p</code> element, then that specification must be considered to be
@@ -3434,7 +3432,7 @@
 <a href="#content-vocabulary-p"><code>p</code></a>,
 <a href="#layout-vocabulary-region"><code>region</code></a>,
 <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>relative to width and height of containing region</td></tr><tr><td><em>Animatable:</em></td><td>discrete</td></tr></tbody></table><p>If the value of this attribute consists of one <a href="#style-value-length">&lt;length&gt;</a> specification,
+</td></tr><tr><td><em>Inherited:</em></td><td>no</td></tr><tr><td><em>Percentages:</em></td><td>relative to width and height of containing region</td></tr><tr><td><em>Animatable:</em></td><td>discrete, continuous</td></tr></tbody></table><p>If the value of this attribute consists of one <a href="#style-value-length">&lt;length&gt;</a> specification,
 then that length applies to all edges of the affected areas. If the value
 consists of two <a href="#style-value-length">&lt;length&gt;</a> specifications, then the first applies to the
 before and after edges, and the second applies to the start and end edges.
@@ -3649,7 +3647,7 @@
 <a href="#style-value-length">&lt;length&gt;</a>?
 </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>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>discrete</td></tr></tbody></table><p>For the purpose of determining applicability of this style property,
+</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>discrete, continuous</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>The value of this attribute consists of an optional <a href="#style-value-color">&lt;color&gt;</a> term
 followed by one or two <a href="#style-value-length">&lt;length&gt;</a> terms.  If a <em>color</em> term is
@@ -3874,7 +3872,7 @@
 <a href="#style-value-integer">&lt;integer&gt;</a>
 </td></tr><tr><td><em>Initial:</em></td><td><code>auto</code></td></tr><tr><td><em>Applies to:</em></td><td>
 <a href="#layout-vocabulary-region"><code>region</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>If two areas are associated with the same Z-index value, then, if those areas
+</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, continuous (over integral values only)</td></tr></tbody></table><p>If two areas are associated with the same Z-index value, then, if those areas
 overlap in space, the area(s) generated by lexically subsequent elements must be
 rendered over area(s) generated by lexically prior elements, where lexical
 order is defined as the postorder traversal of a <a href="#terms-document-instance">document instance</a>.</p><p>The semantics of the value <code>auto</code> are those defined by
@@ -5411,7 +5409,12 @@
 core vocabulary catalog, where
 animation is to be understood as a separable layer of information that combines
 timing and styling in order to denote authorial intention about (temporally) dynamic
-styling of content.</p><div class="div2">
+styling of content.</p><table border="1" class="ednote" summary="Editorial note: Out-of-Line Animation Time Containment"><tr class="ednote-r1"><td align="left" valign="top"><b>Editorial note: Out-of-Line Animation Time Containment</b></td><td align="right" valign="top">2014-07-31</td></tr><tr class="ednote-r2"><td colspan="2" align="left" valign="top">Support ability for author to declare whether a referenced out-of-line animation's timing is relative
+to its <code>animation</code> container element's timing or relative to the referring element's timing.
+For example, add an <code>@animateTimeContainer</code> attribute optionally used with the newly defined
+<code>@animate</code> attribute, where value can be <code>normal</code> (the default value) or <code>self</code>, and where <code>normal</code>
+means timing is with respect to the out-of-line animation element's ancestor <code>animation</code> container and <code>self</code> means timing is
+with respect to the referring element.</td></tr></table><div class="div2">
 <h3><a id="animation-element-vocabulary"></a>11.1 Animation Element Vocabulary</h3><p>The following elements specify the structure and principal animation aspects of a
 <a href="#terms-document-instance">document instance</a>:</p><ul><li><p><a href="#animation-vocabulary-animation"><b>11.1.1 animation</b></a></p></li><li><p><a href="#animation-vocabulary-animate"><b>11.1.2 animate</b></a></p></li><li><p><a href="#animation-vocabulary-set"><b>11.1.3 set</b></a></p></li></ul><div class="div3">
 <h4><a id="animation-vocabulary-animation"></a>11.1.1 animation</h4><p>The <code>animation</code> element is a container element used to group
@@ -5604,7 +5607,7 @@
 which has a <a href="#animation-vocabulary-animation"><code>animation</code></a> element as an ancestor.</p><p>A given IDREF must not appear more than one time in the value of an <code>animate</code>
 attribute.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>See the specific element type definitions that permit use of the
 <code>animate</code> attribute.</p></div></div></div><div class="div2">
-<h3><a id="animation-value-expressions"></a>11.3 Animation Value Expressions</h3><p>Animation attribute values include the use of the following expressions:</p><ul><li><p><a href="#animation-value-animationValue"><b>11.3.1 &lt;animationValue&gt;</b></a></p></li><li><p><a href="#animation-value-animationValueList"><b>11.3.2 &lt;animationValueList&gt;</b></a></p></li><li><p><a href="#animation-value-calcMode"><b>11.3.3 &lt;calcMode&gt;</b></a></p></li><li><p><a href="#animation-value-fill"><b>11.3.4 &lt;fill&gt;</b></a></p></li><li><p><a href="#animation-value-fragmentIdentifier"><b>11.3.5 &lt;fragmentIdentifier&gt;</b></a></p></li><li><p><a href="#animation-value-keySplines"><b>11.3.6 &lt;keySplines&gt;</b></a></p></li><li><p><a href="#animation-value-keyTimes"><b>11.3.7 &lt;keyTimes&gt;</b></a></p></li><li><p><a href="#animation-value-qualifiedName"><b>11.3.8 &lt;qualifiedName&gt;</b></a></p></li><li><p><a href="#animation-value-repeatCount"><b>11.3.9 &lt;repeatCount&gt;</b></a></p></li></ul><div class="div3">
+<h3><a id="animation-value-expressions"></a>11.3 Animation Value Expressions</h3><p>Animation attribute values include the use of the following expressions:</p><ul><li><p><a href="#animation-value-animationValue"><b>11.3.1 &lt;animationValue&gt;</b></a></p></li><li><p><a href="#animation-value-animationValueList"><b>11.3.2 &lt;animationValueList&gt;</b></a></p></li><li><p><a href="#animation-value-calcMode"><b>11.3.3 &lt;calcMode&gt;</b></a></p></li><li><p><a href="#animation-value-fill"><b>11.3.4 &lt;fill&gt;</b></a></p></li><li><p><a href="#animation-value-keySplines"><b>11.3.5 &lt;keySplines&gt;</b></a></p></li><li><p><a href="#animation-value-keyTimes"><b>11.3.6 &lt;keyTimes&gt;</b></a></p></li><li><p><a href="#animation-value-repeatCount"><b>11.3.7 &lt;repeatCount&gt;</b></a></p></li></ul><div class="div3">
 <h4><a id="animation-value-animationValue"></a>11.3.1 &lt;animationValue&gt;</h4><p>An &lt;animationValue&gt; expression is used to specify the starting (initial), intermediate,
 or ending (final) of the attribute targeted by the animation.</p><a id="animationValue-syntax"></a><table class="syntax"><caption>Syntax Representation – &lt;animationValue&gt;</caption><tbody><tr><td>
 <div class="exampleInner"><pre>
@@ -5612,7 +5615,8 @@
   : string
 </pre></div>
 </td></tr></tbody></table><p>The syntax of an &lt;animationValue&gt; expression must satisfy all syntax
-requirements that apply to the attribute targeted by the animation.</p><p>The semantics of an &lt;animationValue&gt; expression are those defined by
+requirements that apply to the attribute targeted by the animation.</p><table border="1" class="ednote" summary="Editorial note: Improve Syntax of AnimationValue"><tr class="ednote-r1"><td align="left" valign="top"><b>Editorial note: Improve Syntax of AnimationValue</b></td><td align="right" valign="top">2014-07-31</td></tr><tr class="ednote-r2"><td colspan="2" align="left" valign="top">Enhance detail of syntax of &lt;animationValue&gt; in order to prevent appearance of an unquoted or unescaped semicolon,
+which is used as a delimiter between animation values in &lt;animationValueList&gt;.</td></tr></table><p>The semantics of an &lt;animationValue&gt; expression are those defined by
 <a href="#svg11">[SVG 1.1]</a>, §19.2.9.</p></div><div class="div3">
 <h4><a id="animation-value-animationValueList"></a>11.3.2 &lt;animationValueList&gt;</h4><p>An &lt;animationValueList&gt; expression is used to specify a list of animation values that sequentially
 apply to the attribute targeted by the animation, wherein each pair of values is separated by a SEMICOLON (U+003B) character
@@ -5641,41 +5645,7 @@
 </pre></div>
 </td></tr></tbody></table><p>The semantics of a &lt;fill&gt; expression are those defined by
 <a href="#svg11">[SVG 1.1]</a>, §19.2.8.</p></div><div class="div3">
-<h4><a id="animation-value-fragmentIdentifier"></a>11.3.5 &lt;fragmentIdentifier&gt;</h4><p>A &lt;fragmentIdentifier&gt; expression is used to target (refer to) an animation to a specific element in the same <a href="#terms-document-instance">document instance</a>.</p><a id="fragmentIdentifier-syntax"></a><table class="syntax"><caption>Syntax Representation – &lt;fragmentIdentifier&gt;</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
-&lt;fragmentIdentifier&gt;
-  : "#" fragment
-
-fragment
-  : uric+
-
-uric
-  : reserved
-  | unreserved
-  | escaped
-
-reserved
-  : [;/?:@&amp;=+$,]
-
-unreserved
-  : [a-zA-Z]
-  | [0-9]
-  | [-_.!~*'()]
-
-escaped
-  : "%" hex hex
-
-hex
-  : [0-9a-fA-F]
-</pre></div>
-</td></tr></tbody></table><p>Except for the constraints on syntax and semantics that follow below, the semantics of a &lt;fragmentIdentifier&gt;
-expression are those defined to apply to an "&lt;iri&gt;" expression in <a href="#svg11">[SVG 1.1]</a>, §19.2.4.</p><p>A &lt;fragmentIdentifer&gt; must adhere
-to the <code>xsd:anyURI</code> data type defined by <a href="#xsd-2">[XML Schema Part 2]</a>. Furthermore, it
-must adhere to the fragment identifer syntax defined by <a href="#uri">[URI]</a>,
-Section 4.1, and is a strict subset thereof, since at least one character must appear in
-the fragment component.</p><p>No linear white-space (LWSP) is permitted to appear within a fragment identifier.</p><p>A &lt;fragmentIdentifer&gt; expression must refer to an element in the same <a href="#terms-document-instance">document instance</a>,
-i.e., the fragment component must be a valid IDREF.</p></div><div class="div3">
-<h4><a id="animation-value-keySplines"></a>11.3.6 &lt;keySplines&gt;</h4><p>An &lt;keySplines&gt; expression is used to specify a list of Bezier control points that control the pacing of an
+<h4><a id="animation-value-keySplines"></a>11.3.5 &lt;keySplines&gt;</h4><p>An &lt;keySplines&gt; expression is used to specify a list of Bezier control points that control the pacing of an
 animation, wherein each pair of values is separated by a SEMICOLON (U+003B) character
 optionally surrounded by linear white-space (LWSP) characters.</p><a id="keySplines-syntax"></a><table class="syntax"><caption>Syntax Representation – &lt;keySplines&gt;</caption><tbody><tr><td>
 <div class="exampleInner"><pre>
@@ -5704,7 +5674,7 @@
 </pre></div>
 </td></tr></tbody></table><p>The semantics of a &lt;keySplines&gt; expression are those defined by
 <a href="#svg11">[SVG 1.1]</a>, §19.2.9, as apply to the <code>keySplines</code> attribute.</p></div><div class="div3">
-<h4><a id="animation-value-keyTimes"></a>11.3.7 &lt;keyTimes&gt;</h4><p>An &lt;keyTimes&gt; expression is used to specify a list of relative time values that control the pacing of an
+<h4><a id="animation-value-keyTimes"></a>11.3.6 &lt;keyTimes&gt;</h4><p>An &lt;keyTimes&gt; expression is used to specify a list of relative time values that control the pacing of an
 animation, wherein each pair of values is separated by a SEMICOLON (U+003B) character
 optionally surrounded by linear white-space (LWSP) characters.</p><a id="keyTimes-syntax"></a><table class="syntax"><caption>Syntax Representation – &lt;keyTimes&gt;</caption><tbody><tr><td>
 <div class="exampleInner"><pre>
@@ -5724,24 +5694,7 @@
 </pre></div>
 </td></tr></tbody></table><p>The semantics of a &lt;keyTimes&gt; expression are those defined by
 <a href="#svg11">[SVG 1.1]</a>, §19.2.9, as apply to the <code>keyTimes</code> attribute.</p></div><div class="div3">
-<h4><a id="animation-value-qualifiedName"></a>11.3.8 &lt;qualifiedName&gt;</h4><p>A &lt;qualifiedName&gt; expression is used to specify the attribute targeted by the animation.</p><a id="qualifiedName-syntax"></a><table class="syntax"><caption>Syntax Representation – &lt;qualifiedName&gt;</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
-&lt;qualifiedName&gt;
-  : prefix ":" local
-  | local
-
-prefix
-  : <em>nmchar</em>+
-
-local
-  : <em>nmchar</em>+
-</pre></div>
-</td></tr></tbody></table><p>The syntactic element <em><code>nmchar</code></em> is to be interpreted according
-to the <code>NameChar</code> production defined by <a href="#xml10">[XML 1.0]</a>&nbsp;§2.3,
-except that the COLON (U+003A) character is excluded.</p><p>The semantics of a &lt;qualifiedName&gt; expression are those defined by
-<a href="#svg11">[SVG 1.1]</a>, §19.2.5, as applying to an <code>attributeName</code> attribute
-according to an implied <code>attributeType</code> of <code>XML</code>.</p></div><div class="div3">
-<h4><a id="animation-value-repeatCount"></a>11.3.9 &lt;repeatCount&gt;</h4><p>A &lt;repeatCount&gt; expression is used to determine the number of iterations of a repeated animation.</p><a id="repeatCount-syntax"></a><table class="syntax"><caption>Syntax Representation – &lt;repeatCount&gt;</caption><tbody><tr><td>
+<h4><a id="animation-value-repeatCount"></a>11.3.7 &lt;repeatCount&gt;</h4><p>A &lt;repeatCount&gt; expression is used to determine the number of iterations of a repeated animation.</p><a id="repeatCount-syntax"></a><table class="syntax"><caption>Syntax Representation – &lt;repeatCount&gt;</caption><tbody><tr><td>
 <div class="exampleInner"><pre>
 &lt;repeatCount&gt;
   : count
@@ -7647,7 +7600,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="d3e25252"></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="d3e25201"></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
@@ -7704,7 +7657,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="d3e25769"></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="d3e25718"></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
@@ -7796,9 +7749,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="d3e26762"></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="d3e26711"></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="d3e26926"></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="d3e26875"></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">