--- a/ttml2/spec/ttml2.html Tue Nov 25 13:24:44 2014 -0700
+++ b/ttml2/spec/ttml2.html Tue Nov 25 13:24:54 2014 -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: 2014/11/25 01:15:28 $<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/11/25 20:24:44 $<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/11/25 01:15:28 $ @@ @@@@ @@@@</h2><dl><dt>This version:</dt><dd>
+<h2><a id="w3c-doctype"></a>Editors' copy $Date: 2014/11/25 20:24:44 $ @@ @@@@ @@@@</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>
@@ -331,8 +331,9 @@
14.1.3 <a href="#metadata-vocabulary-agent">ttm:agent</a><br>
14.1.4 <a href="#metadata-vocabulary-copyright">ttm:copyright</a><br>
14.1.5 <a href="#metadata-vocabulary-desc">ttm:desc</a><br>
- 14.1.6 <a href="#metadata-vocabulary-name">ttm:name</a><br>
- 14.1.7 <a href="#metadata-vocabulary-title">ttm:title</a><br>
+ 14.1.6 <a href="#metadata-vocabulary-item">ttm:item</a><br>
+ 14.1.7 <a href="#metadata-vocabulary-name">ttm:name</a><br>
+ 14.1.8 <a href="#metadata-vocabulary-title">ttm:title</a><br>
14.2 <a href="#metadata-attribute-vocabulary">Metadata Attribute Vocabulary</a><br>
14.2.1 <a href="#metadata-attribute-agent">ttm:agent</a><br>
14.2.2 <a href="#metadata-attribute-role">ttm:role</a><br>
@@ -484,11 +485,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>
- J.1 <a href="#d3e31582">Element Derivation</a><br>
- J.2 <a href="#d3e32099">Attribute Derivation</a><br>
+ J.1 <a href="#d3e31691">Element Derivation</a><br>
+ J.2 <a href="#d3e32208">Attribute Derivation</a><br>
K <a href="#qa">QA Framework Compliance</a> (Non-Normative)<br>
- K.1 <a href="#d3e33092">Requirements</a><br>
- K.2 <a href="#d3e33256">Guidelines</a><br>
+ K.1 <a href="#d3e33201">Requirements</a><br>
+ K.2 <a href="#d3e33365">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>
@@ -1383,6 +1384,7 @@
<a href="#metadata-vocabulary-agent">ttm:agent</a>,
<a href="#metadata-vocabulary-copyright">ttm:copyright</a>,
<a href="#metadata-vocabulary-desc">ttm:desc</a>,
+<a href="#metadata-vocabulary-item">ttm:item</a>,
<a href="#metadata-vocabulary-name">ttm:name</a>,
<a href="#metadata-vocabulary-title">ttm:title</a>
</td></tr><tr id="element-vocab-type-profile"><td>Profile</td><td>
@@ -1438,6 +1440,7 @@
<a href="#metadata-vocabulary-copyright">ttm:agent</a> |
<a href="#metadata-vocabulary-copyright">ttm:copyright</a> |
<a href="#metadata-vocabulary-desc">ttm:desc</a> |
+<a href="#metadata-vocabulary-desc">ttm:item</a> |
<a href="#metadata-vocabulary-title">ttm:title</a>
</td></tr><tr id="element-vocab-group-profile"><td>Profile.class</td><td><a href="#profile-vocabulary-profile">ttp:profile</a></td></tr></tbody></table><p></p><p>The attribute vocabulary specified for use with the core vocabulary
catalog is enumerated in
@@ -1455,6 +1458,8 @@
Data Attributes
</td><td>
<a href="#embedded-content-attribute-encoding">encoding</a>,
+<a href="#embedded-content-attribute-format">format</a>,
+<a href="#embedded-content-attribute-src">src</a>,
<a href="#embedded-content-attribute-type">type</a>
</td></tr><tr id="attribute-vocab-group-layout-binding"><td>
Layout Binding Attribute
@@ -6879,7 +6884,7 @@
a generic container element for grouping metadata information.</p><p>In addition, the following elements, all defined in the TT Metadata Namespace,
provide standard representations for metadata that is expected to be commonly
used in a <a href="#terms-document-instance">document instance</a>:
-</p><ul><li><p><a href="#metadata-vocabulary-actor"><b>14.1.2 ttm:actor</b></a></p></li><li><p><a href="#metadata-vocabulary-agent"><b>14.1.3 ttm:agent</b></a></p></li><li><p><a href="#metadata-vocabulary-copyright"><b>14.1.4 ttm:copyright</b></a></p></li><li><p><a href="#metadata-vocabulary-desc"><b>14.1.5 ttm:desc</b></a></p></li><li><p><a href="#metadata-vocabulary-name"><b>14.1.6 ttm:name</b></a></p></li><li><p><a href="#metadata-vocabulary-title"><b>14.1.7 ttm:title</b></a></p></li></ul><div class="div3">
+</p><ul><li><p><a href="#metadata-vocabulary-actor"><b>14.1.2 ttm:actor</b></a></p></li><li><p><a href="#metadata-vocabulary-agent"><b>14.1.3 ttm:agent</b></a></p></li><li><p><a href="#metadata-vocabulary-copyright"><b>14.1.4 ttm:copyright</b></a></p></li><li><p><a href="#metadata-vocabulary-desc"><b>14.1.5 ttm:desc</b></a></p></li><li><p><a href="#metadata-vocabulary-item"><b>14.1.6 ttm:item</b></a></p></li><li><p><a href="#metadata-vocabulary-name"><b>14.1.7 ttm:name</b></a></p></li><li><p><a href="#metadata-vocabulary-title"><b>14.1.8 ttm:title</b></a></p></li></ul><div class="div3">
<h4><a id="metadata-vocabulary-metadata"></a>14.1.1 metadata</h4><p>The <code>metadata</code> element functions as a generic container for metadata
information.</p><p>Metadata information may be expressed with a <code>metadata</code> element by specifying
(1) one or more metadata attributes or foreign namespace attributes on the <code>metadata</code> element,
@@ -7052,7 +7057,41 @@
</td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>No specific use of the <code>ttm:desc</code> element is defined by this specification.</p></div><p>Examples of the <code>ttm:desc</code> element are shown above in
<a href="#metadata-vocabulary-metadata-example-1"><b>Example Fragment – Document Metadata</b></a> and
<a href="#metadata-vocabulary-metadata-example-2"><b>Example Fragment – Element Metadata</b></a>.</p></div><div class="div3">
-<h4><a id="metadata-vocabulary-name"></a>14.1.6 ttm:name</h4><p>The <code>ttm:name</code> element is used to specify a name of a person, character,
+<h4><a id="metadata-vocabulary-item"></a>14.1.6 ttm:item</h4><p>The <code>ttm:item</code> element is used to express arbitrary named metadata items.</p><a id="elt-syntax-metadata-item"></a><table class="syntax"><caption>XML Representation – Element Information Item: ttm:item</caption><tbody><tr><td>
+<div class="exampleInner"><pre>
+<ttm:item
+ <span class="reqattr">name</span> = <a href="http://www.w3.org/TR/xmlschema-2/#token">xsd:token</a>
+ <a href="#content-attribute-id">xml:id</a> = ID
+ <a href="#content-attribute-lang">xml:lang</a> = <a href="http://www.w3.org/TR/xmlschema-2/#string">xsd:string</a>
+ <a href="#content-attribute-space">xml:space</a> = (<em>default</em>|<em>preserve</em>)
+ {<em>any attribute not in default or any TT namespace</em>}>
+ <em>Content:</em> #PCDATA
+</ttm:item>
+</pre></div>
+</td></tr></tbody></table><p>A <code>name</code> attribute must be specified to identify the name of the item. No standard name
+tokens are defined by this version of this specification.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>This specification places no constraint on the appearance of multiple named metadata items that specify the same name.</p><p>An external specification or a future version of this specification that defines a particular named item may
+constrain the context of usage of a named item, including placing constraints on whether multiple items with the same name can appear in a given context.</p></div><p>The value of a named item is the character content of a <code>ttm:item</code> element, which may be empty.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>A particular named item may be defined (by an external or future version of this specification) so as to
+imply a particular value in the absence of a specified value.</p></div><div class="note"><p class="prefix"><b>Note:</b></p><p>No specific use of the <code>ttm:item</code> element is defined by this version of specification.</p></div><p>The use of a named metadata item is illustrated by the following example, which shows the use of a named metadata item
+in order to associate a <a href="#terms-simple-data-embedding">simple data embedding</a> with an original file name.</p><a id="metadata-vocabulary-item-example-1"></a><table class="example"><caption>Example Fragment – Named Metadata Item</caption><tbody><tr><td>
+<div class="exampleInner"><pre>
+...
+<image>
+ <source>
+ <data type="image/png">
+ <metadata xmlns:ttm="http://www.w3.org/ns/ttml#metadata">
+ <span class="strong"><ttm:item name="originalFileName">image.png</ttm:item></span>
+ </metadata>
+ <chunk length="119">
+ iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+ YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAMSURBVBhXY2BgYAAAAAQAAVzN/2kAAAAASUVORK5CYII=
+ </chunk>
+ </data>
+ <source>
+<image>
+...
+</pre></div>
+</td></tr></tbody></table><p></p></div><div class="div3">
+<h4><a id="metadata-vocabulary-name"></a>14.1.7 ttm:name</h4><p>The <code>ttm:name</code> element is used to specify a name of a person, character,
group, or organization.</p><a id="elt-syntax-metadata-name"></a><table class="syntax"><caption>XML Representation – Element Information Item: ttm:name</caption><tbody><tr><td>
<div class="exampleInner"><pre>
<ttm:name
@@ -7068,7 +7107,7 @@
if specified, must have one of the following values:</p><ul><li><p><code>full</code></p></li><li><p><code>family</code></p></li><li><p><code>given</code></p></li><li><p><code>alias</code></p></li><li><p><code>other</code></p></li></ul><p>The relationship between the type of a name and the syntactic expression of the name
is not defined by this specification.</p><p>Two examples of the <code>ttm:name</code> element are shown above in
<a href="#metadata-vocabulary-agent-example-1"><b>Example Fragment – Agent Metadata</b></a>.</p></div><div class="div3">
-<h4><a id="metadata-vocabulary-title"></a>14.1.7 ttm:title</h4><p>The <code>ttm:title</code> element is used to express a human-readable title of
+<h4><a id="metadata-vocabulary-title"></a>14.1.8 ttm:title</h4><p>The <code>ttm:title</code> element is used to express a human-readable title of
a specific element instance.</p><a id="elt-syntax-metadata-title"></a><table class="syntax"><caption>XML Representation – Element Information Item: ttm:title</caption><tbody><tr><td>
<div class="exampleInner"><pre>
<ttm:title
@@ -8948,7 +8987,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="d3e31582"></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="d3e31691"></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
@@ -9005,7 +9044,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="d3e32099"></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="d3e32208"></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
@@ -9097,9 +9136,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> <a href="#qaf-sg">[QAF SG]</a>.</p><div class="div2">
-<h3><a id="d3e33092"></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="d3e33201"></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="d3e33256"></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-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="d3e33365"></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-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>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">