--- a/ttml2/spec/ttml2.html Sun Jan 18 10:38:57 2015 -0700
+++ b/ttml2/spec/ttml2.html Sun Jan 18 10:50:17 2015 -0700
@@ -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: 2015/01/18 17:05:14 $<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: 2015/01/18 17:38:57 $<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: 2015/01/18 17:05:14 $ @@ @@@@ @@@@</h2><dl><dt>This version:</dt><dd>
+<h2><a id="w3c-doctype"></a>Editors' copy $Date: 2015/01/18 17:38:57 $ @@ @@@@ @@@@</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/2013/REC-ttml1-20130924/">http://www.w3.org/TR/2013/REC-ttml1-20130924/</a>
@@ -529,11 +529,11 @@
K <a href="#other-references">Other References</a> (Non-Normative)<br>
L <a href="#requirements">Requirements</a> (Non-Normative)<br>
M <a href="#derivation">Vocabulary Derivation</a> (Non-Normative)<br>
- M.1 <a href="#d3e37807">Element Derivation</a><br>
- M.2 <a href="#d3e38324">Attribute Derivation</a><br>
+ M.1 <a href="#d3e37911">Element Derivation</a><br>
+ M.2 <a href="#d3e38428">Attribute Derivation</a><br>
N <a href="#qa">QA Framework Compliance</a> (Non-Normative)<br>
- N.1 <a href="#d3e39317">Requirements</a><br>
- N.2 <a href="#d3e39481">Guidelines</a><br>
+ N.1 <a href="#d3e39421">Requirements</a><br>
+ N.2 <a href="#d3e39585">Guidelines</a><br>
O <a href="#streaming">Streaming TTML Content</a> (Non-Normative)<br>
P <a href="#common-styling">Common Caption Style Examples</a> (Non-Normative)<br>
P.1 <a href="#pop-on-example">Pop-On Caption Example</a><br>
@@ -3060,10 +3060,16 @@
| stereoRight
| userLanguage
</pre></div>
-</td></tr></tbody></table><dl><dt class="label"><a id="bound-parameter-forced"></a><code>forced</code></dt><dd><p>Evaluates to a boolean value that denotes if the <a href="#terms-content-processor">content processor</a> is operating with
-<a href="#terms-forced-subtitle">forced subtitles</a> enabled.</p></dd><dt class="label"><a id="bound-parameter-mediaAspectRatio"></a><code>mediaAspectRatio</code></dt><dd><p>Evaluates to a numeric value equal to the aspect ratio of the <a href="#terms-related-media-object">related media object</a>.</p></dd><dt class="label"><a id="bound-parameter-mediaLanguage"></a><code>mediaLanguage</code></dt><dd><p>Evaluates to a string value equal to the (primary) language of the <a href="#terms-related-media-object">related media object</a>.</p></dd><dt class="label"><a id="bound-parameter-stereoLeft"></a><code>stereoLeft</code></dt><dd><p>Evaluates to a boolean value that denotes if the <a href="#terms-content-processor">content processor</a> is processing the
-left image of a stereo presentation.</p></dd><dt class="label"><a id="bound-parameter-stereoRight"></a><code>stereoRight</code></dt><dd><p>Evaluates to a boolean value that denotes if the <a href="#terms-content-processor">content processor</a> is processing the
-right image of a stereo presentation.</p></dd><dt class="label"><a id="bound-parameter-userLanguage"></a><code>userLanguage</code></dt><dd><p>Evaluates to a string value equal to the (primary) language of the user as determined by the
+</td></tr></tbody></table><dl><dt class="label"><a id="bound-parameter-forced"></a><code>forced</code></dt><dd><p>Evaluates to a boolean value that denotes whether the <a href="#terms-content-processor">content processor</a> is operating with
+<a href="#terms-forced-subtitle">forced subtitles</a> enabled.
+If used in a <a href="#terms-document-instance">document instance</a>, then a <a href="#named-item-usesForced"><code>usesForced</code></a>
+named metadata item should be specified as a child of the <a href="#document-structure-vocabulary-head"><code>head</code></a> element.</p></dd><dt class="label"><a id="bound-parameter-mediaAspectRatio"></a><code>mediaAspectRatio</code></dt><dd><p>Evaluates to a numeric value equal to the aspect ratio of the <a href="#terms-related-media-object">related media object</a>.</p></dd><dt class="label"><a id="bound-parameter-mediaLanguage"></a><code>mediaLanguage</code></dt><dd><p>Evaluates to a string value equal to the (primary) language of the <a href="#terms-related-media-object">related media object</a>.</p></dd><dt class="label"><a id="bound-parameter-stereoLeft"></a><code>stereoLeft</code></dt><dd><p>Evaluates to a boolean value that denotes whether the <a href="#terms-content-processor">content processor</a> is processing the
+left image of a stereo presentation.
+If used in a <a href="#terms-document-instance">document instance</a>, then a <a href="#named-item-usesStereo"><code>usesStereo</code></a>
+named metadata item should be specified as a child of the <a href="#document-structure-vocabulary-head"><code>head</code></a> element.</p></dd><dt class="label"><a id="bound-parameter-stereoRight"></a><code>stereoRight</code></dt><dd><p>Evaluates to a boolean value that denotes whether the <a href="#terms-content-processor">content processor</a> is processing the
+right image of a stereo presentation.
+If used in a <a href="#terms-document-instance">document instance</a>, then a <a href="#named-item-usesStereo"><code>usesStereo</code></a>
+named metadata item should be specified as a child of the <a href="#document-structure-vocabulary-head"><code>head</code></a> element.</p></dd><dt class="label"><a id="bound-parameter-userLanguage"></a><code>userLanguage</code></dt><dd><p>Evaluates to a string value equal to the (primary) language of the user as determined by the
<a href="#terms-document-processing-context">document processing context</a>.</p></dd></dl></div><div class="div3">
<h4><a id="content-value-condition"></a>8.3.3 <condition></h4><p>A <condition> value is used to specify an expression that evaluates to a binary value
which is used to determine if the semantics of a
@@ -5497,15 +5503,17 @@
<region xml:id="r1">
<style tts:extent="30% 10%"/>
<style tts:position="center bottom 10%"/>
- <style condition="parameter('stereoLeft')" <span class="strong">tts:translate="-10px 0%"</span>/>
- <style condition="parameter('stereoRight)" <span class="strong">tts:translate="+10px 0%"</span>/>
+ <style condition="parameter('stereoLeft')" <span class="strong">tts:translate="-10 0"</span>/>
+ <style condition="parameter('stereoRight)" <span class="strong">tts:translate="+10 0"</span>/>
</region>
...
<p region="r1">
3D Text Sample
</p>
</pre></div>
-</td></tr></tbody></table><p></p><table border="1" class="ednote" summary="Editorial note: Translate Example"><tr class="ednote-r1"><td align="left" valign="top"><b>Editorial note: Translate Example</b></td><td align="right" valign="top">2015-01-17</td></tr><tr class="ednote-r2"><td colspan="2" align="left" valign="top">Insert example image of tts:translate.</td></tr></table></div><div class="div3">
+</td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>The above example elides the <code>units</code> component from the <a href="#style-value-length"><length></a> expressions of
+the <code>tts:translate</code> style attribute, which is now permitted in TTML2. In the absence of a <code>units</code> component, <code>px</code>
+units apply.</p></div><p></p><table border="1" class="ednote" summary="Editorial note: Translate Example"><tr class="ednote-r1"><td align="left" valign="top"><b>Editorial note: Translate Example</b></td><td align="right" valign="top">2015-01-17</td></tr><tr class="ednote-r2"><td colspan="2" align="left" valign="top">Insert example image of tts:translate.</td></tr></table></div><div class="div3">
<h4><a id="style-attribute-unicodeBidi"></a>10.2.41 tts:unicodeBidi</h4><p>The <code>tts:unicodeBidi</code> attribute is used to specify a style property that
defines a directional embedding or override according to
the Unicode bidirectional algorithm.</p><p>This attribute may be specified by any
@@ -6040,8 +6048,8 @@
| "vw"
| "vh"
</pre></div>
-</td></tr></tbody></table><p>If no <em>unit</em> is specified in a <length> expression, then it is to be treated as
-if a unit of <code>px</code> (pixels) were specified.</p><p>The semantics of
+</td></tr></tbody></table><p>If no <em>units</em> component is specified in a <length> expression, then it is to be treated as
+if <code>px</code> (pixels) units were specified.</p><p>The semantics of
the unit of measure <code>px</code> (pixel)
are as defined by <a href="#xsl11">[XSL 1.1]</a>, § 5.9.13.</p><div class="issue"><p class="prefix"><a id="issue-179"></a><b>Issue (issue-179):</b></p><p class="prefix"><b>Definition of Pixel</b></p><p><b>Source</b>: <a href="http://www.w3.org/AudioVideo/TT/tracker/issues/179">http://www.w3.org/AudioVideo/TT/tracker/issues/179</a></p><p>Replace unworkable (and unadopted) definition of pixel with an appropriate definition based on units of some viewport coordinate space.</p><p class="prefix"><b>Resolution:</b></p><p>None recorded.</p></div><p>When specified relative to a font whose size is expressed as a single length
measure or as two length measures of equal length, the unit of measure <code>em</code> is considered to be
@@ -8077,6 +8085,8 @@
| translatedProgramTitle
| translator
| translatorContact
+ | usesForced
+ | usesStereo
</pre></div>
</td></tr></tbody></table><p></p><div class="issue"><p class="prefix"><a id="issue-328"></a><b>Issue (issue-328):</b></p><p class="prefix"><b>Alternate Text Metadata</b></p><p><b>Source</b>: <a href="http://www.w3.org/AudioVideo/TT/tracker/issues/328">http://www.w3.org/AudioVideo/TT/tracker/issues/328</a></p><p>Add named item to handle <code>ittm:altText</code>.</p><p class="prefix"><b>Resolution:</b></p><p>None recorded.</p></div><p></p><table border="1" class="ednote" summary="Editorial note: Elaborate Named Items"><tr class="ednote-r1"><td align="left" valign="top"><b>Editorial note: Elaborate Named Items</b></td><td align="right" valign="top">2014-11-26</td></tr><tr class="ednote-r2"><td colspan="2" align="left" valign="top">Further specify the value syntax of certain named items, e.g., by adding external document references (CEA608) or by defining specific value syntax.</td></tr></table><dl><dt class="label"><a id="named-item-cea608CaptionService"></a><code>cea608CaptionService</code></dt><dd><p>A string that expresses the field and channel mapping of a CEA-608 caption service, where the value
adheres to <a href="http://www.w3.org/TR/xmlschema-2/#string">xsd:string</a>.</p></dd><dt class="label"><a id="named-item-cea608Channel"></a><code>cea608Channel</code></dt><dd><p>A string that expresses the channel code of a CEA-608 caption service, where the value
@@ -8091,7 +8101,7 @@
adheres to <a href="http://www.w3.org/TR/xmlschema-2/#positiveInteger">xsd:positiveInteger</a> and is less than 32.</p></dd><dt class="label"><a id="named-item-cea708TransformMode"></a><code>cea708TransformMode</code></dt><dd><p>One of the token values <code>enhanced</code> or <code>preserved</code>.</p></dd><dt class="label"><a id="named-item-cea708TransformOrigin"></a><code>cea708TransformOrigin</code></dt><dd><p>Either the token <code>none</code> or an <a href="http://www.w3.org/TR/xmlschema-2/#anyURI">xsd:anyURI</a>,
where the latter expresses a CEA-708 transformation source format.</p></dd><dt class="label"><a id="named-item-cea708TransformTimingThreshold"></a><code>cea708TransformTimingThreshold</code></dt><dd><p>A real number that expresses a threshold parameter used to suppress the inclusion of temporary timed states when
transforming amongst a CEA-708 caption service and a <a href="#terms-timed-text-content-document">timed text content document</a>,
-where the value adheres to <a href="http://www.w3.org/TR/xmlschema-2/#boolean">xsd:float</a>.</p></dd><dt class="label"><a id="named-item-creationCountryOfOrigin"></a><code>creationCountryOfOrigin</code></dt><dd><p>A string that expresses a the country or origin code associated with this document, where the value
+where the value adheres to <a href="http://www.w3.org/TR/xmlschema-2/#float">xsd:float</a>.</p></dd><dt class="label"><a id="named-item-creationCountryOfOrigin"></a><code>creationCountryOfOrigin</code></dt><dd><p>A string that expresses a the country or origin code associated with this document, where the value
adheres to <a href="http://www.w3.org/TR/xmlschema-2/#string">xsd:string</a>.</p></dd><dt class="label"><a id="named-item-creationDate"></a><code>creationDate</code></dt><dd><p>A date that expresses the creation date of this document, where the value
adheres to <a href="http://www.w3.org/TR/xmlschema-2/#date">xsd:date</a>.</p></dd><dt class="label"><a id="named-item-creationSystem"></a><code>creationSystem</code></dt><dd><p>A free form string expressing the software and version used to create the document, where the value
adheres to <a href="http://www.w3.org/TR/xmlschema-2/#string">xsd:string</a>.</p></dd><dt class="label"><a id="named-item-editor"></a><code>editor</code></dt><dd><p>A string that expresses the name of one or more editors, where the value
@@ -8119,7 +8129,16 @@
adheres to <a href="http://www.w3.org/TR/xmlschema-2/#string">xsd:string</a>.</p></dd><dt class="label"><a id="named-item-translatedProgramTitle"></a><code>translatedProgramTitle</code></dt><dd><p>A string that expresses the program title in the translated (local) language, where the value
adheres to <a href="http://www.w3.org/TR/xmlschema-2/#string">xsd:string</a>.</p></dd><dt class="label"><a id="named-item-translator"></a><code>translator</code></dt><dd><p>A string that expresses the name of one or more translators, where the value
adheres to <a href="http://www.w3.org/TR/xmlschema-2/#string">xsd:string</a>.</p></dd><dt class="label"><a id="named-item-translatorContact"></a><code>translatorContact</code></dt><dd><p>A string that expresses the contact details of one or more translators, where the value
-adheres to <a href="http://www.w3.org/TR/xmlschema-2/#string">xsd:string</a>.</p></dd></dl></div></div></div></div><div class="back"><div class="div1">
+adheres to <a href="http://www.w3.org/TR/xmlschema-2/#string">xsd:string</a>.</p></dd><dt class="label"><a id="named-item-usesForced"></a><code>usesForced</code></dt><dd><p>A boolean that expresses whether some <a href="#content-value-condition"><condition></a> expression
+makes use of the <a href="#bound-parameter-forced"><code>forced</code></a> bound parameter, where the value
+adheres to <a href="http://www.w3.org/TR/xmlschema-2/#boolean">xsd:boolean</a>. If this named metadata item
+is present in a <a href="#terms-document-instance">document instance</a>, then it must be specified as a child
+of the <a href="#document-structure-vocabulary-head"><code>head</code></a> element.</p></dd><dt class="label"><a id="named-item-usesStereo"></a><code>usesStereo</code></dt><dd><p>A boolean that expresses whether some <a href="#content-value-condition"><condition></a> expression
+makes use of the <a href="#bound-parameter-steroLeft"><code>stereoLeft</code></a> or
+<a href="#bound-parameter-steroRight"><code>stereoRight</code></a> bound parameter,
+where the value adheres to <a href="http://www.w3.org/TR/xmlschema-2/#boolean">xsd:boolean</a>. If this named metadata item
+is present in a <a href="#terms-document-instance">document instance</a>, then it must be specified as a child
+of the <a href="#document-structure-vocabulary-head"><code>head</code></a> element.</p></dd></dl></div></div></div></div><div class="back"><div class="div1">
<h2><a id="concrete-encoding"></a>A Concrete Encoding</h2><p><em>This appendix is normative.</em></p><p>In the absence of other requirements, a <a href="#terms-document-instance">document instance</a> should be concretely encoded as a
well-formed XML 1.0 <a href="#xml10">[XML 1.0]</a> document using the UTF-8 character encoding.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>When using XML 1.0 <a href="#xml10">[XML 1.0]</a> as the concrete encoding of TTML, only the following named character entities are defined:
<code>&amp;</code>, <code>&apos;</code>, <code>&gt;</code>, <code>&lt;</code>, and <code>&quot;</code>.</p></div><div class="issue"><p class="prefix"><a id="issue-360"></a><b>Issue (issue-360):</b></p><p class="prefix"><b>Support Content Encoding</b></p><p><b>Source</b>: <a href="http://www.w3.org/AudioVideo/TT/tracker/issues/360">http://www.w3.org/AudioVideo/TT/tracker/issues/360</a></p><p>Specify preference to use of gzip content encoding for compressed delivery in the case that client indicates it accepts encoding.</p><p class="prefix"><b>Resolution:</b></p><p>None recorded.</p></div></div><div class="div1">
@@ -10129,7 +10148,7 @@
<h2><a id="derivation"></a>M Vocabulary Derivation (Non-Normative)</h2><p>This appendix provides information about the derivation of TTML
vocabulary, separately describing derivation of elements and
attributes.</p><table border="1" class="ednote" summary="Editorial note: Update Derivation"><tr class="ednote-r1"><td align="left" valign="top"><b>Editorial note: Update Derivation</b></td><td align="right" valign="top">2015-01-14</td></tr><tr class="ednote-r2"><td colspan="2" align="left" valign="top">Update derivation tables to include new vocabulary added in TTML2.</td></tr></table><div class="div2">
-<h3><a id="d3e37807"></a>M.1 Element Derivation</h3><p>The first column of <a href="#element-vocab-derivation-table"><b>Table M-1 – Elements</b></a>
+<h3><a id="d3e37911"></a>M.1 Element Derivation</h3><p>The first column of <a href="#element-vocab-derivation-table"><b>Table M-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
@@ -10186,7 +10205,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="d3e38324"></a>M.2 Attribute Derivation</h3><p>The first column of <a href="#attribute-vocab-derivation-table"><b>Table M-2 – Attributes</b></a>
+<h3><a id="d3e38428"></a>M.2 Attribute Derivation</h3><p>The first column of <a href="#attribute-vocab-derivation-table"><b>Table M-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
@@ -10278,9 +10297,9 @@
<h2><a id="qa"></a>N 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> <a href="#qaf-sg">[QAF SG]</a>.</p><div class="div2">
-<h3><a id="d3e39317"></a>N.1 Requirements</h3><a id="qa-framework-requirements-table"></a><table class="common"><caption>Table N-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="d3e39421"></a>N.1 Requirements</h3><a id="qa-framework-requirements-table"></a><table class="common"><caption>Table N-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="d3e39481"></a>N.2 Guidelines</h3><a id="qa-framework-guidelines-table"></a><table class="common"><caption>Table N-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-profiling">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="d3e39585"></a>N.2 Guidelines</h3><a id="qa-framework-guidelines-table"></a><table class="common"><caption>Table N-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-profiling">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>M 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">