--- a/ttml1/spec/ttml1.html Thu Sep 19 17:00:50 2013 -0600
+++ b/ttml1/spec/ttml1.html Thu Sep 19 17:44:20 2013 -0600
@@ -1,25 +1,28 @@
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html lang="en-us"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><title>Timed Text Markup Language 1 (TTML1) (Second Edition)</title><style type="text/css">
-code { font-family: monospace; }
-
-div.constraint,
-div.issue,
-div.note,
-div.notice { margin-left: 2em; }
-
-ol.enumar { list-style-type: decimal; }
-ol.enumla { list-style-type: lower-alpha; }
-ol.enumlr { list-style-type: lower-roman; }
-ol.enumua { list-style-type: upper-alpha; }
-ol.enumur { list-style-type: upper-roman; }
-
-
-div.exampleInner pre { margin-left: 1em;
+<!DOCTYPE html>
+<html lang="en-us">
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <title>Timed Text Markup Language 1 (TTML1) (Second Edition)</title>
+ <style type="text/css">
+ code { font-family: monospace; }
+
+ div.constraint,
+ div.issue,
+ div.note,
+ div.notice { margin-left: 2em; }
+
+ ol.enumar { list-style-type: decimal; }
+ ol.enumla { list-style-type: lower-alpha; }
+ ol.enumlr { list-style-type: lower-roman; }
+ ol.enumua { list-style-type: upper-alpha; }
+ ol.enumur { list-style-type: upper-roman; }
+
+
+ div.exampleInner pre { margin-left: 1em;
margin-top: 0em; margin-bottom: 0em}
-div.exampleOuter {border: 4px double gray;
+ div.exampleOuter {border: 4px double gray;
margin: 0em; padding: 0em}
-div.exampleInner { background-color: #d5dee3;
+ div.exampleInner { background-color: #d5dee3;
border-top-width: 4px;
border-top-style: double;
border-top-color: #d3d3d3;
@@ -27,465 +30,919 @@
border-bottom-style: double;
border-bottom-color: #d3d3d3;
padding: 4px; margin: 0em }
-div.exampleWrapper { margin: 4px }
-div.exampleHeader { font-weight: bold;
+ div.exampleWrapper { margin: 4px }
+ div.exampleHeader { font-weight: bold;
margin: 4px}
-li p { margin-top: 0.3em; margin-bottom: 0.3em; }
-div.issue { border: 2px solid black; background-color: #ffff66; padding: 0em 1em; margin: 0em 0em }
-table.ednote { border-collapse: collapse; border: 2px solid black; width: 85% }
-table.ednote td { background-color: #ddaa66; border: 2px solid black }
-table.acronyms td.label { width: 15% }
-table.acronyms td.def { width: 65% }
-table.graphic { border: 0px none black; width: 100%; border-collapse: collapse }
-table.graphic caption { font-weight: bold; text-align: center; padding-bottom: 0.5em }
-table.graphic td { border: 0px none black; text-align: center }
-table.common { border: 2px solid black; width: 85%; border-collapse: collapse }
-table.common caption { font-weight: bold; text-align: left; padding-bottom: 0.5em }
-table.common th { padding: 0em 0.5em; border: 2px solid black; text-align: left }
-table.common td { padding: 0em 0.5em; border: 2px solid black }
-table.syntax { border: 0px solid black; width: 85%; border-collapse: collapse }
-table.syntax caption { font-weight: bold; text-align: left; padding-bottom: 0.5em }
-table.syntax th { border: 0px solid black; text-align: left }
-table.syntax td { border: 0px solid black }
-table.syntax div { background-color: #ffffc8 }
-table.semantics { border: 0px solid black; width: 85%; border-collapse: collapse }
-table.semantics caption { font-weight: bold; text-align: left; padding-bottom: 0.5em }
-table.semantics th { border: 0px solid black; text-align: left }
-table.semantics td {
+ li p { margin-top: 0.3em; margin-bottom: 0.3em; }
+ div.issue { border: 2px solid black; background-color: #ffff66; padding: 0em 1em; margin: 0em 0em }
+ table.ednote { border-collapse: collapse; border: 2px solid black; width: 85% }
+ table.ednote td { background-color: #ddaa66; border: 2px solid black }
+ table.acronyms td.label { width: 15% }
+ table.acronyms td.def { width: 65% }
+ table.graphic { border: 0px none black; width: 100%; border-collapse: collapse }
+ table.graphic caption { font-weight: bold; text-align: center; padding-bottom: 0.5em }
+ table.graphic td { border: 0px none black; text-align: center }
+ table.common { border: 2px solid black; width: 85%; border-collapse: collapse }
+ table.common caption { font-weight: bold; text-align: left; padding-bottom: 0.5em }
+ table.common th { padding: 0em 0.5em; border: 2px solid black; text-align: left }
+ table.common td { padding: 0em 0.5em; border: 2px solid black }
+ table.syntax { border: 0px solid black; width: 85%; border-collapse: collapse }
+ table.syntax caption { font-weight: bold; text-align: left; padding-bottom: 0.5em }
+ table.syntax th { border: 0px solid black; text-align: left }
+ table.syntax td { border: 0px solid black }
+ table.syntax div { background-color: #ffffc8 }
+ table.semantics { border: 0px solid black; width: 85%; border-collapse: collapse }
+ table.semantics caption { font-weight: bold; text-align: left; padding-bottom: 0.5em }
+ table.semantics th { border: 0px solid black; text-align: left }
+ table.semantics td {
border-left: 0px solid black;
border-right: 0px solid black;
border-top: 4px double #d3d3d3;
border-bottom: 4px double #d3d3d3;
background-color: #ccffcc
-}
-table.semantics code.formulae {
+ }
+ table.semantics code.formulae {
padding: 1em;
border: 1px dashed #005a9c;
line-height: 1.1em;
background-color: #fdfdfd;
-}
-table.example { border: 0px solid black; width: 85%; border-collapse: collapse }
-table.example caption { font-weight: bold; text-align: left; padding-bottom: 0.5em }
-table.example th { border: 0px solid black; text-align: left }
-table.example td { border: 0px solid black; }
-table.example div { background-color: #c8ffff }
-table.example-images { text-align: center; border: 0px solid black; width: 85%; border-collapse: collapse }
-table.example-images caption { font-weight: bold; text-align: center; padding-bottom: 0.5em }
-table.example-images td { border: 0px solid black; text-align: center }
-table.example-images-bordered { text-align: center; border: 0px solid black; width: 85%; border-collapse: collapse }
-table.example-images-bordered caption { font-weight: bold; text-align: center; padding-bottom: 0.5em }
-table.example-images-bordered td { border: 1px solid red; text-align: left }
-.tbd { background-color: #ffff33; border: 2px solid black; width: 85% }
-.strong { font-weight: bold }
-.reqattr { font-weight: bold }
-.optattr { font-style: italic }
-</style><link rel="stylesheet" type="text/css" href="http://www.w3.org/StyleSheets/TR/W3C-REC.css"></head><body><div class="head"><p><a href="http://www.w3.org/"><img src="http://www.w3.org/Icons/w3c_home" alt="W3C" height="48" width="72"></a></p>
-<h1><a id="title"></a>Timed Text Markup Language 1 (TTML1) (Second Edition)</h1>
-<h2><a id="w3c-doctype"></a>W3C Recommendation 24 September 2013</h2><dl><dt>This version:</dt><dd>
-<a href="http://www.w3.org/TR/2013/REC-ttml1-20130924/">http://www.w3.org/TR/2013/REC-ttml1-20130924/</a>
-</dd><dt>Latest version:</dt><dd><a href="http://www.w3.org/TR/ttml1/">http://www.w3.org/TR/ttml1/</a></dd><dt>Previous version:</dt><dd>
-<a href="http://www.w3.org/TR/2013/PER-ttaf1-dfxp-20130709/">http://www.w3.org/TR/2013/PER-ttaf1-dfxp-20130709/</a>
-</dd><dt>Previous recommendation:</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></dd><dt>Editor:</dt><dd>Glenn Adams, Cox Communications, Inc.</dd><dt>Contributing Authors:</dt><dd>Mike Dolan, Invited Expert</dd><dd>Geoff Freed, WGBH National Center for Accessible Media</dd><dd>Sean Hayes, Microsoft</dd><dd>Erik Hodge, RealNetworks</dd><dd>David Kirby, British Broadcasting Corporation (BBC)</dd><dd>Thierry Michel, W3C</dd><dd>Dave Singer, Apple Computer</dd></dl><p>Please refer to the <a href="ttml1-errata.html"><strong>errata</strong></a> for this document, which may
- include normative corrections.</p><p>See also <a href="http://www.w3.org/2003/03/Translations/byTechnology?technology=ttml1"><strong>translations</strong></a>.</p><p class="copyright"><a href="http://www.w3.org/Consortium/Legal/ipr-notice#Copyright">Copyright</a> © 2013 <a href="http://www.w3.org/"><acronym title="World Wide Web Consortium">W3C</acronym></a><sup>®</sup> (<a href="http://www.csail.mit.edu/"><acronym title="Massachusetts Institute of Technology">MIT</acronym></a>, <a href="http://www.ercim.eu/"><acronym title="European Research Consortium for Informatics and Mathematics">ERCIM</acronym></a>, <a href="http://www.keio.ac.jp/">Keio</a>, <a href="http://ev.buaa.edu.cn/">Beihang</a>), All Rights Reserved. W3C <a href="http://www.w3.org/Consortium/Legal/ipr-notice#Legal_Disclaimer">liability</a>, <a href="http://www.w3.org/Consortium/Legal/ipr-notice#W3C_Trademarks">trademark</a> and <a href="http://www.w3.org/Consortium/Legal/copyright-documents">document use</a> rules apply.</p></div><hr><div>
-<h2><a id="abstract"></a>Abstract</h2><p>This document specifies Timed Text Markup Language (TTML), Version 1, also known as TTML1,
-in terms of a vocabulary and semantics thereof.</p><p>The Timed Text Markup Language is a content type that represents
-timed text media for the purpose of interchange among authoring
-systems. Timed text is textual information that is intrinsically or
-extrinsically associated with timing information.</p><p>It is intended to be used
-for the purpose of transcoding or exchanging timed text information
-among legacy distribution content formats presently in use for
-subtitling and captioning functions.</p><p>In addition to being used for interchange among legacy distribution content
-formats, TTML Content may be used directly as a distribution format,
-for example, providing a standard content format to reference from a <code><track></code>
-element in an HTML5 document, or a <code><text></code> or
-<code><textstream></code> media element in a <a href="#smil21">[SMIL 2.1]</a> document.</p></div><div>
-<h2><a id="status"></a>Status of this Document</h2><p><em>This section describes the status of this document at the
-time of its publication. Other documents may supersede this document.
-A list of current W3C publications and the latest revision of this
-technical report can be found in the <a href="http://www.w3.org/TR/">W3C technical reports index</a> at
-http://www.w3.org/TR/.</em></p><p>This document has been reviewed by W3C Members, by software developers,
-and by other W3C groups and interested parties, and is endorsed by the Director
-as a W3C Recommendation. It is a stable document and may be used as reference
-material or cited from another document. W3C's role in making the Recommendation
-is to draw attention to the specification and to promote its widespread
-deployment. This enhances the functionality and interoperability of the Web.</p><p>This version reflects changes made as a result of applying errata and addressing
-comments received since the Recommendation was first published. With one minor
-exception noted below, these changes are editorial.</p><p>This document is a revision of Timed Text Markup Language (TTML) 1.0
-<a href="#ttml10">[TTML10]</a>, superseding that <a href="http://www.w3.org/TR/2010/REC-ttaf1-dfxp-20101118/">previous
-Recommendation</a>. The only identified substantive difference between this version and
-its predecessor is a change of the default treatment of the <code>ttp:markerMode</code> parameter attribute
-from <code>continuous</code> to <code>discontinuous</code>. A cumulative summary of all changes applied
-to this version since the Recommendation was first published is available at
-<a href="ttml1-changes.html#change-history-rec-to-2e-per">Changes
-from Recommendation to Proposed Edited Recommendation (2nd Ed.)</a> and
-<a href="ttml1-changes.html#change-history-2e-per-to-rec-2e">Changes
-from Proposed Edited Recommendation (2nd Ed.) to Recommendation (2nd Ed.)</a>.</p><p>A <a href="http://www.w3.org/2008/10/dfxp-testsuite.zip">sample test suite</a> is available. This set of tests is not intended to
-be exhaustive. The <a href="http://www.w3.org/2009/05/dfxp-results.html">implementation report</a> used by the director to
-transition to Recommendation has been made available. There have been no formal objections
-to the publication of this document.</p><p>This document was produced by the <a href="http://www.w3.org/AudioVideo/TT/">Timed Text (TT) Working Group</a> as
-part of the W3C <a href="http://www.w3.org/2008/WebVideo/">Video
-in the Web Activity</a>, following the procedures set out for the W3C <a href="http://www.w3.org/Consortium/Process/">Process</a>. The authors of this
-document are listed in the header of this document, including input and review
-by liaisons from the <a href="http://www3.ebu.ch/cms/en/home">European
-Broadcasting Union (EBU)</a>, and the <a href="https://www.smpte.org">Society
-of Motion Picture & Television Engineers (SMPTE)</a>.</p><p>If you wish to report errors in or submit comments on this document, then please
-submit them to <a href="mailto:public-tt@w3.org">public-tt@w3.org</a>
-(<a href="mailto:public-tt-request@w3.org">subscribe</a>,
-<a href="http://lists.w3.org/Archives/Public/public-tt/">archive</a>). All comments are welcome.</p><p>This document was produced by a group operating under the <a href="http://www.w3.org/Consortium/Patent-Policy-20040205/">5 February
-2004 W3C Patent Policy</a>. W3C maintains a <a href="http://www.w3.org/2004/01/pp-impl/34314/status#disclosures" rel="disclosure">public list of any patent
-disclosures</a> made in connection with the deliverables of the group;
-that page also includes instructions for disclosing a patent. An
-individual who has actual knowledge of a patent which the individual
-believes contains <a href="http://www.w3.org/Consortium/Patent-Policy-20040205/#def-essential">Essential
-Claim(s)</a> must disclose the information in accordance with <a href="http://www.w3.org/Consortium/Patent-Policy-20040205/#sec-Disclosure">section
-6 of the W3C Patent Policy</a>.</p></div><div class="toc">
-<h2><a id="contents"></a>Table of Contents</h2><p class="toc">1 <a href="#intro">Introduction</a><br>
- 1.1 <a href="#model">System Model</a><br>
- 1.2 <a href="#example">Document Example</a><br>
-2 <a href="#definitions">Definitions</a><br>
- 2.1 <a href="#acronyms">Acronyms</a><br>
- 2.2 <a href="#terms">Terminology</a><br>
- 2.3 <a href="#conventions">Documentation Conventions</a><br>
-3 <a href="#conformance">Conformance</a><br>
- 3.1 <a href="#conformance-content">Content Conformance</a><br>
- 3.2 <a href="#conformance-processor">Processor Conformance</a><br>
- 3.2.1 <a href="#conformance-generic-processor">Generic Processor Conformance</a><br>
- 3.2.2 <a href="#conformance-transformation-processor">Transformation Processor Conformance</a><br>
- 3.2.3 <a href="#conformance-presentation-processor">Presentation Processor Conformance</a><br>
- 3.3 <a href="#claims">Claims</a><br>
-4 <a href="#doctypes">Document Types</a><br>
- 4.1 <a href="#ttml-content-doctype">TTML Content</a><br>
-5 <a href="#vocabulary">Vocabulary</a><br>
- 5.1 <a href="#vocabulary-namespaces">Namespaces</a><br>
- 5.2 <a href="#vocabulary-profiles">Profiles</a><br>
- 5.3 <a href="#vocabulary-overview">Catalog</a><br>
- 5.3.1 <a href="#core-vocabulary-overview">Core Catalog</a><br>
- 5.3.2 <a href="#extension-vocabulary-overview">Extension Catalog</a><br>
-6 <a href="#parameters">Parameters</a><br>
- 6.1 <a href="#parameter-element-vocabulary">Parameter Element Vocabulary</a><br>
- 6.1.1 <a href="#parameter-vocabulary-profile">ttp:profile</a><br>
- 6.1.2 <a href="#parameter-vocabulary-features">ttp:features</a><br>
- 6.1.3 <a href="#parameter-vocabulary-feature">ttp:feature</a><br>
- 6.1.4 <a href="#parameter-vocabulary-extensions">ttp:extensions</a><br>
- 6.1.5 <a href="#parameter-vocabulary-extension">ttp:extension</a><br>
- 6.2 <a href="#parameter-attribute-vocabulary">Parameter Attribute Vocabulary</a><br>
- 6.2.1 <a href="#parameter-attribute-cellResolution">ttp:cellResolution</a><br>
- 6.2.2 <a href="#parameter-attribute-clockMode">ttp:clockMode</a><br>
- 6.2.3 <a href="#parameter-attribute-dropMode">ttp:dropMode</a><br>
- 6.2.4 <a href="#parameter-attribute-frameRate">ttp:frameRate</a><br>
- 6.2.5 <a href="#parameter-attribute-frameRateMultiplier">ttp:frameRateMultiplier</a><br>
- 6.2.6 <a href="#parameter-attribute-markerMode">ttp:markerMode</a><br>
- 6.2.7 <a href="#parameter-attribute-pixelAspectRatio">ttp:pixelAspectRatio</a><br>
- 6.2.8 <a href="#parameter-attribute-profile">ttp:profile</a><br>
- 6.2.9 <a href="#parameter-attribute-subFrameRate">ttp:subFrameRate</a><br>
- 6.2.10 <a href="#parameter-attribute-tickRate">ttp:tickRate</a><br>
- 6.2.11 <a href="#parameter-attribute-timeBase">ttp:timeBase</a><br>
-7 <a href="#content">Content</a><br>
- 7.1 <a href="#content-element-vocabulary">Content Element Vocabulary</a><br>
- 7.1.1 <a href="#document-structure-vocabulary-tt">tt</a><br>
- 7.1.2 <a href="#document-structure-vocabulary-head">head</a><br>
- 7.1.3 <a href="#document-structure-vocabulary-body">body</a><br>
- 7.1.4 <a href="#content-vocabulary-div">div</a><br>
- 7.1.5 <a href="#content-vocabulary-p">p</a><br>
- 7.1.6 <a href="#content-vocabulary-span">span</a><br>
- 7.1.7 <a href="#content-vocabulary-br">br</a><br>
- 7.2 <a href="#content-attribute-vocabulary">Content Attribute Vocabulary</a><br>
- 7.2.1 <a href="#content-attribute-id">xml:id</a><br>
- 7.2.2 <a href="#content-attribute-lang">xml:lang</a><br>
- 7.2.3 <a href="#content-attribute-space">xml:space</a><br>
-8 <a href="#styling">Styling</a><br>
- 8.1 <a href="#styling-element-vocabulary">Styling Element Vocabulary</a><br>
- 8.1.1 <a href="#styling-vocabulary-styling">styling</a><br>
- 8.1.2 <a href="#styling-vocabulary-style">style</a><br>
- 8.2 <a href="#styling-attribute-vocabulary">Styling Attribute Vocabulary</a><br>
- 8.2.1 <a href="#style-attribute-style">style</a><br>
- 8.2.2 <a href="#style-attribute-backgroundColor">tts:backgroundColor</a><br>
- 8.2.3 <a href="#style-attribute-color">tts:color</a><br>
- 8.2.4 <a href="#style-attribute-direction">tts:direction</a><br>
- 8.2.5 <a href="#style-attribute-display">tts:display</a><br>
- 8.2.6 <a href="#style-attribute-displayAlign">tts:displayAlign</a><br>
- 8.2.7 <a href="#style-attribute-extent">tts:extent</a><br>
- 8.2.8 <a href="#style-attribute-fontFamily">tts:fontFamily</a><br>
- 8.2.9 <a href="#style-attribute-fontSize">tts:fontSize</a><br>
- 8.2.10 <a href="#style-attribute-fontStyle">tts:fontStyle</a><br>
- 8.2.11 <a href="#style-attribute-fontWeight">tts:fontWeight</a><br>
- 8.2.12 <a href="#style-attribute-lineHeight">tts:lineHeight</a><br>
- 8.2.13 <a href="#style-attribute-opacity">tts:opacity</a><br>
- 8.2.14 <a href="#style-attribute-origin">tts:origin</a><br>
- 8.2.15 <a href="#style-attribute-overflow">tts:overflow</a><br>
- 8.2.16 <a href="#style-attribute-padding">tts:padding</a><br>
- 8.2.17 <a href="#style-attribute-showBackground">tts:showBackground</a><br>
- 8.2.18 <a href="#style-attribute-textAlign">tts:textAlign</a><br>
- 8.2.19 <a href="#style-attribute-textDecoration">tts:textDecoration</a><br>
- 8.2.20 <a href="#style-attribute-textOutline">tts:textOutline</a><br>
- 8.2.21 <a href="#style-attribute-unicodeBidi">tts:unicodeBidi</a><br>
- 8.2.22 <a href="#style-attribute-visibility">tts:visibility</a><br>
- 8.2.23 <a href="#style-attribute-wrapOption">tts:wrapOption</a><br>
- 8.2.24 <a href="#style-attribute-writingMode">tts:writingMode</a><br>
- 8.2.25 <a href="#style-attribute-zIndex">tts:zIndex</a><br>
- 8.3 <a href="#styling-style-value-expressions">Style Value Expressions</a><br>
- 8.3.1 <a href="#style-value-alpha"><alpha></a><br>
- 8.3.2 <a href="#style-value-color"><color></a><br>
- 8.3.3 <a href="#style-value-digit"><digit></a><br>
- 8.3.4 <a href="#style-value-duration"><duration></a><br>
- 8.3.5 <a href="#style-value-familyName"><familyName></a><br>
- 8.3.6 <a href="#style-value-genericFamilyName"><genericFamilyName></a><br>
- 8.3.7 <a href="#style-value-hexDigit"><hexDigit></a><br>
- 8.3.8 <a href="#style-value-integer"><integer></a><br>
- 8.3.9 <a href="#style-value-length"><length></a><br>
- 8.3.10 <a href="#style-value-namedColor"><namedColor></a><br>
- 8.3.11 <a href="#style-value-quotedString"><quotedString></a><br>
- 8.3.12 <a href="#style-value-string"><string></a><br>
- 8.4 <a href="#semantics-style-resolution">Style Resolution</a><br>
- 8.4.1 <a href="#semantics-style-association">Style Association</a><br>
- 8.4.1.1 <a href="#semantics-style-association-inline">Inline Styling</a><br>
- 8.4.1.2 <a href="#semantics-style-association-referential">Referential Styling</a><br>
- 8.4.1.3 <a href="#semantics-style-association-chained-referential">Chained Referential Styling</a><br>
- 8.4.1.4 <a href="#semantics-style-association-nested">Nested Styling</a><br>
- 8.4.2 <a href="#semantics-style-inheritance">Style Inheritance</a><br>
- 8.4.2.1 <a href="#semantics-style-inheritance-content">Content Style Inheritance</a><br>
- 8.4.2.2 <a href="#semantics-style-inheritance-region">Region Style Inheritance</a><br>
- 8.4.3 <a href="#semantics-style-resolution-value-categories">Style Resolution Value Categories</a><br>
- 8.4.3.1 <a href="#semantics-style-resolved-value-category-specified">Specified Values</a><br>
- 8.4.3.2 <a href="#semantics-style-resolved-value-category-computed">Computed Values</a><br>
- 8.4.3.3 <a href="#semantics-style-resolved-value-category-actual">Actual Values</a><br>
- 8.4.4 <a href="#semantics-style-resolution-processing">Style Resolution Processing</a><br>
- 8.4.4.1 <a href="#semantics-style-resolution-processing-definitions">Conceptual Definitions</a><br>
- 8.4.4.2 <a href="#semantics-style-resolution-processing-sss">Specified Style Set Processing</a><br>
- 8.4.4.3 <a href="#semantics-style-resolution-processing-css">Computed Style Set Processing</a><br>
- 8.4.4.4 <a href="#semantics-style-resolution-process-overall">Style Resolution Process</a><br>
-9 <a href="#layout">Layout</a><br>
- 9.1 <a href="#layout-element-vocabulary">Layout Element Vocabulary</a><br>
- 9.1.1 <a href="#layout-vocabulary-layout">layout</a><br>
- 9.1.2 <a href="#layout-vocabulary-region">region</a><br>
- 9.2 <a href="#layout-attribute-vocabulary">Layout Attribute Vocabulary</a><br>
- 9.2.1 <a href="#layout-attribute-region">region</a><br>
- 9.3 <a href="#semantics-region-layout">Region Layout and Presentation</a><br>
- 9.3.1 <a href="#semantics-default-region">Default Region</a><br>
- 9.3.2 <a href="#semantics-region-layout-step-1">Intermediate Synchronic Document Construction</a><br>
- 9.3.3 <a href="#semantics-region-layout-step-2">Synchronic Flow Processing</a><br>
- 9.3.4 <a href="#semantics-region-layout-example">Elaborated Example (Informative)</a><br>
- 9.4 <a href="#semantics-line-layout">Line Layout</a><br>
-10 <a href="#timing">Timing</a><br>
- 10.1 <a href="#timing-element-vocabulary">Timing Element Vocabulary</a><br>
- 10.2 <a href="#timing-attribute-vocabulary">Timing Attribute Vocabulary</a><br>
- 10.2.1 <a href="#timing-attribute-begin">begin</a><br>
- 10.2.2 <a href="#timing-attribute-end">end</a><br>
- 10.2.3 <a href="#timing-attribute-dur">dur</a><br>
- 10.2.4 <a href="#timing-attribute-timeContainer">timeContainer</a><br>
- 10.3 <a href="#timing-time-value-expressions">Time Value Expressions</a><br>
- 10.3.1 <a href="#timing-value-timeExpression"><timeExpression></a><br>
- 10.4 <a href="#timing-time-intervals">Time Intervals</a><br>
-11 <a href="#animation">Animation</a><br>
- 11.1 <a href="#animation-element-vocabulary">Animation Element Vocabulary</a><br>
- 11.1.1 <a href="#animation-vocabulary-set">set</a><br>
- 11.2 <a href="#animation-attribute-vocabulary">Animation Attribute Vocabulary</a><br>
-12 <a href="#metadata">Metadata</a><br>
- 12.1 <a href="#metadata-element-vocabulary">Metadata Element Vocabulary</a><br>
- 12.1.1 <a href="#metadata-vocabulary-metadata">metadata</a><br>
- 12.1.2 <a href="#metadata-vocabulary-title">ttm:title</a><br>
- 12.1.3 <a href="#metadata-vocabulary-desc">ttm:desc</a><br>
- 12.1.4 <a href="#metadata-vocabulary-copyright">ttm:copyright</a><br>
- 12.1.5 <a href="#metadata-vocabulary-agent">ttm:agent</a><br>
- 12.1.6 <a href="#metadata-vocabulary-name">ttm:name</a><br>
- 12.1.7 <a href="#metadata-vocabulary-actor">ttm:actor</a><br>
- 12.2 <a href="#metadata-attribute-vocabulary">Metadata Attribute Vocabulary</a><br>
- 12.2.1 <a href="#metadata-attribute-agent">ttm:agent</a><br>
- 12.2.2 <a href="#metadata-attribute-role">ttm:role</a><br>
-</p>
-<h3><a id="appendices"></a>Appendices</h3><p class="toc">A <a href="#reduced-infoset">Reduced XML Infoset</a><br>
- A.1 <a href="#reduced-infoset-document">Document Information Item</a><br>
- A.2 <a href="#reduced-infoset-element">Element Information Item</a><br>
- A.3 <a href="#reduced-infoset-attribute">Attribute Information Item</a><br>
- A.4 <a href="#reduced-infoset-character">Character Information Item</a><br>
-B <a href="#schemas">Schemas</a><br>
- B.1 <a href="#ttml-schema-rnc">Relax NG Compact (RNC) Schema</a><br>
- B.2 <a href="#ttml-schema-xsd">XML Schema Definition (XSD) Schema</a><br>
-C <a href="#media-types-registration">Media Type Registration</a><br>
-D <a href="#features">Features</a><br>
- D.1 <a href="#feature-designations">Feature Designations</a><br>
- D.1.1 <a href="#feature-animation">#animation</a><br>
- D.1.2 <a href="#feature-backgroundColor">#backgroundColor</a><br>
- D.1.3 <a href="#feature-backgroundColor-block">#backgroundColor-block</a><br>
- D.1.4 <a href="#feature-backgroundColor-inline">#backgroundColor-inline</a><br>
- D.1.5 <a href="#feature-backgroundColor-region">#backgroundColor-region</a><br>
- D.1.6 <a href="#feature-bidi">#bidi</a><br>
- D.1.7 <a href="#feature-cellResolution">#cellResolution</a><br>
- D.1.8 <a href="#feature-clockMode">#clockMode</a><br>
- D.1.9 <a href="#feature-clockMode-gps">#clockMode-gps</a><br>
- D.1.10 <a href="#feature-clockMode-local">#clockMode-local</a><br>
- D.1.11 <a href="#feature-clockMode-utc">#clockMode-utc</a><br>
- D.1.12 <a href="#feature-color">#color</a><br>
- D.1.13 <a href="#feature-content">#content</a><br>
- D.1.14 <a href="#feature-core">#core</a><br>
- D.1.15 <a href="#feature-direction">#direction</a><br>
- D.1.16 <a href="#feature-display">#display</a><br>
- D.1.17 <a href="#feature-display-block">#display-block</a><br>
- D.1.18 <a href="#feature-display-inline">#display-inline</a><br>
- D.1.19 <a href="#feature-display-region">#display-region</a><br>
- D.1.20 <a href="#feature-displayAlign">#displayAlign</a><br>
- D.1.21 <a href="#feature-dropMode">#dropMode</a><br>
- D.1.22 <a href="#feature-dropMode-dropNTSC">#dropMode-dropNTSC</a><br>
- D.1.23 <a href="#feature-dropMode-dropPAL">#dropMode-dropPAL</a><br>
- D.1.24 <a href="#feature-dropMode-nonDrop">#dropMode-nonDrop</a><br>
- D.1.25 <a href="#feature-extent">#extent</a><br>
- D.1.26 <a href="#feature-extent-region">#extent-region</a><br>
- D.1.27 <a href="#feature-extent-root">#extent-root</a><br>
- D.1.28 <a href="#feature-fontFamily">#fontFamily</a><br>
- D.1.29 <a href="#feature-fontFamily-generic">#fontFamily-generic</a><br>
- D.1.30 <a href="#feature-fontFamily-non-generic">#fontFamily-non-generic</a><br>
- D.1.31 <a href="#feature-fontSize">#fontSize</a><br>
- D.1.32 <a href="#feature-fontSize-anamorphic">#fontSize-anamorphic</a><br>
- D.1.33 <a href="#feature-fontSize-isomorphic">#fontSize-isomorphic</a><br>
- D.1.34 <a href="#feature-fontStyle">#fontStyle</a><br>
- D.1.35 <a href="#feature-fontStyle-italic">#fontStyle-italic</a><br>
- D.1.36 <a href="#feature-fontStyle-oblique">#fontStyle-oblique</a><br>
- D.1.37 <a href="#feature-fontWeight">#fontWeight</a><br>
- D.1.38 <a href="#feature-fontWeight-bold">#fontWeight-bold</a><br>
- D.1.39 <a href="#feature-frameRate">#frameRate</a><br>
- D.1.40 <a href="#feature-frameRateMultiplier">#frameRateMultiplier</a><br>
- D.1.41 <a href="#feature-layout">#layout</a><br>
- D.1.42 <a href="#feature-length">#length</a><br>
- D.1.43 <a href="#feature-length-cell">#length-cell</a><br>
- D.1.44 <a href="#feature-length-em">#length-em</a><br>
- D.1.45 <a href="#feature-length-integer">#length-integer</a><br>
- D.1.46 <a href="#feature-length-negative">#length-negative</a><br>
- D.1.47 <a href="#feature-length-percentage">#length-percentage</a><br>
- D.1.48 <a href="#feature-length-pixel">#length-pixel</a><br>
- D.1.49 <a href="#feature-length-positive">#length-positive</a><br>
- D.1.50 <a href="#feature-length-real">#length-real</a><br>
- D.1.51 <a href="#feature-lineBreak-uax14">#lineBreak-uax14</a><br>
- D.1.52 <a href="#feature-lineHeight">#lineHeight</a><br>
- D.1.53 <a href="#feature-markerMode">#markerMode</a><br>
- D.1.54 <a href="#feature-markerMode-continuous">#markerMode-continuous</a><br>
- D.1.55 <a href="#feature-markerMode-discontinuous">#markerMode-discontinuous</a><br>
- D.1.56 <a href="#feature-metadata">#metadata</a><br>
- D.1.57 <a href="#feature-nested-div">#nested-div</a><br>
- D.1.58 <a href="#feature-nested-span">#nested-span</a><br>
- D.1.59 <a href="#feature-opacity">#opacity</a><br>
- D.1.60 <a href="#feature-origin">#origin</a><br>
- D.1.61 <a href="#feature-overflow">#overflow</a><br>
- D.1.62 <a href="#feature-overflow-visible">#overflow-visible</a><br>
- D.1.63 <a href="#feature-padding">#padding</a><br>
- D.1.64 <a href="#feature-padding-1">#padding-1</a><br>
- D.1.65 <a href="#feature-padding-2">#padding-2</a><br>
- D.1.66 <a href="#feature-padding-3">#padding-3</a><br>
- D.1.67 <a href="#feature-padding-4">#padding-4</a><br>
- D.1.68 <a href="#feature-pixelAspectRatio">#pixelAspectRatio</a><br>
- D.1.69 <a href="#feature-presentation">#presentation</a><br>
- D.1.70 <a href="#feature-profile">#profile</a><br>
- D.1.71 <a href="#feature-showBackground">#showBackground</a><br>
- D.1.72 <a href="#feature-structure">#structure</a><br>
- D.1.73 <a href="#feature-styling">#styling</a><br>
- D.1.74 <a href="#feature-styling-chained">#styling-chained</a><br>
- D.1.75 <a href="#feature-styling-inheritance-content">#styling-inheritance-content</a><br>
- D.1.76 <a href="#feature-styling-inheritance-region">#styling-inheritance-region</a><br>
- D.1.77 <a href="#feature-styling-inline">#styling-inline</a><br>
- D.1.78 <a href="#feature-styling-nested">#styling-nested</a><br>
- D.1.79 <a href="#feature-styling-referential">#styling-referential</a><br>
- D.1.80 <a href="#feature-subFrameRate">#subFrameRate</a><br>
- D.1.81 <a href="#feature-textAlign">#textAlign</a><br>
- D.1.82 <a href="#feature-textAlign-absolute">#textAlign-absolute</a><br>
- D.1.83 <a href="#feature-textAlign-relative">#textAlign-relative</a><br>
- D.1.84 <a href="#feature-textDecoration">#textDecoration</a><br>
- D.1.85 <a href="#feature-textDecoration-over">#textDecoration-over</a><br>
- D.1.86 <a href="#feature-textDecoration-through">#textDecoration-through</a><br>
- D.1.87 <a href="#feature-textDecoration-under">#textDecoration-under</a><br>
- D.1.88 <a href="#feature-textOutline">#textOutline</a><br>
- D.1.89 <a href="#feature-textOutline-blurred">#textOutline-blurred</a><br>
- D.1.90 <a href="#feature-textOutline-unblurred">#textOutline-unblurred</a><br>
- D.1.91 <a href="#feature-tickRate">#tickRate</a><br>
- D.1.92 <a href="#feature-timeBase-clock">#timeBase-clock</a><br>
- D.1.93 <a href="#feature-timeBase-media">#timeBase-media</a><br>
- D.1.94 <a href="#feature-timeBase-smpte">#timeBase-smpte</a><br>
- D.1.95 <a href="#feature-timeContainer">#timeContainer</a><br>
- D.1.96 <a href="#feature-time-clock">#time-clock</a><br>
- D.1.97 <a href="#feature-time-clock-with-frames">#time-clock-with-frames</a><br>
- D.1.98 <a href="#feature-time-offset">#time-offset</a><br>
- D.1.99 <a href="#feature-time-offset-with-frames">#time-offset-with-frames</a><br>
- D.1.100 <a href="#feature-time-offset-with-ticks">#time-offset-with-ticks</a><br>
- D.1.101 <a href="#feature-timing">#timing</a><br>
- D.1.102 <a href="#feature-transformation">#transformation</a><br>
- D.1.103 <a href="#feature-unicodeBidi">#unicodeBidi</a><br>
- D.1.104 <a href="#feature-visibility">#visibility</a><br>
- D.1.105 <a href="#feature-visibility-block">#visibility-block</a><br>
- D.1.106 <a href="#feature-visibility-inline">#visibility-inline</a><br>
- D.1.107 <a href="#feature-visibility-region">#visibility-region</a><br>
- D.1.108 <a href="#feature-wrapOption">#wrapOption</a><br>
- D.1.109 <a href="#feature-writingMode">#writingMode</a><br>
- D.1.110 <a href="#feature-writingMode-vertical">#writingMode-vertical</a><br>
- D.1.111 <a href="#feature-writingMode-horizontal">#writingMode-horizontal</a><br>
- D.1.112 <a href="#feature-writingMode-horizontal-lr">#writingMode-horizontal-lr</a><br>
- D.1.113 <a href="#feature-writingMode-horizontal-rl">#writingMode-horizontal-rl</a><br>
- D.1.114 <a href="#feature-zIndex">#zIndex</a><br>
- D.2 <a href="#feature-support">Feature Support</a><br>
-E <a href="#extensions">Extensions</a><br>
- E.1 <a href="#extension-designations">Extension Designations</a><br>
-F <a href="#profiles">Profiles</a><br>
- F.1 <a href="#profile-dfxp-transformation">DFXP Transformation Profile</a><br>
- F.2 <a href="#profile-dfxp-presentation">DFXP Presentation Profile</a><br>
- F.3 <a href="#profile-dfxp-full">DFXP Full Profile</a><br>
-G <a href="#references">References</a><br>
-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="#d3e18942">Element Derivation</a><br>
- J.2 <a href="#d3e19424">Attribute Derivation</a><br>
-K <a href="#qa">QA Framework Compliance</a> (Non-Normative)<br>
- K.1 <a href="#d3e20309">Requirements</a><br>
- K.2 <a href="#d3e20473">Guidelines</a><br>
-L <a href="#streaming">Streaming TTML Content</a> (Non-Normative)<br>
-M <a href="#concrete-encoding">Concrete Encoding</a> (Non-Normative)<br>
-N <a href="#time-expression-semantics">Time Expression Semantics</a> (Non-Normative)<br>
- N.1 <a href="#time-expression-semantics-clock">Clock Time Base</a><br>
- N.2 <a href="#time-expression-semantics-media">Media Time Base</a><br>
- N.3 <a href="#time-expression-semantics-smpte">SMPTE Time Base</a><br>
-O <a href="#common-styling">Common Caption Style Examples</a> (Non-Normative)<br>
- O.1 <a href="#pop-on-example">Pop-On Caption Example</a><br>
- O.2 <a href="#roll-up-example">Roll-Up Caption Example</a><br>
- O.3 <a href="#paint-on-example">Paint-On Caption Example</a><br>
-P <a href="#acknowledgments">Acknowledgments</a> (Non-Normative)<br>
-</p></div><hr><div class="body"><div class="div1">
-<h2><a id="intro"></a>1 Introduction</h2><p><em>Unless specified otherwise, this section and its sub-sections are non-normative.</em></p><p>The Timed Text Markup Language (TTML) Version 1, also referred to as TTML1,
-provides a standardized representation of a particular subset of
-textual information with which stylistic, layout, and timing semantics are associated by
-an author or an authoring system for the purpose of interchange and processing.</p><p>TTML is expressly designed to meet only a limited set of requirements
-established by <a href="#ttaf1-req">[TTAF1-REQ]</a>, and summarized in <a href="#requirements"><b>I Requirements</b></a>. In particular, only those requirements which service the
-need of performing interchange with existing, legacy distribution systems are
-satisfied.</p><p>In addition to being used for interchange among legacy distribution content
-formats, TTML Content may be used directly as a distribution format, providing, for
-example, a standard content format to reference from a <code><track></code>
-element in an HTML5 document, or a <code><text></code> or
-<code><textstream></code> media element in a <a href="#smil21">[SMIL 2.1]</a> document. Certain properties of TTML support
-streamability of content, as described in <a href="#streaming"><b>L Streaming TTML Content</b></a>.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>While TTML is not expressly designed for direct (embedded) integration into an
-HTML or a SMIL document instance, such integration is not precluded.</p></div><div class="note"><p class="prefix"><b>Note:</b></p><p>In some contexts of use, it may be appropriate to employ
-animated content to depict sign language representations of the same content
-as expressed by a Timed Text <em>Document Instance</em>. This use case is not
-explicitly addressed by TTML mechanisms, but may be addressed by some
-external multimedia integration technology, such as SMIL.</p></div><div class="note"><p class="prefix"><b>Note:</b></p><p>In the first edition of this specification, the version number <code>1.0</code> was
-used to refer to this version of TTML. In this second edition, this version number is simplified
-to <code>1</code> as a result of a determination to call the next (future) version <code>2</code>
-instead of <code>1.1</code>.</p></div><div class="note"><p class="prefix"><b>Note:</b></p><p>In previous drafts of this specification, TTML was referred to as DFXP (Distribution
-Format Exchange Profile). This latter term is retained for historical reasons in
-certain contexts, such as profile names and designators, and the short name
-<code>ttaf1-dfxp</code> used in older URLs to refer to this specification. Starting in
-this edition of the first version of TTML, the short name <code>ttml1</code> will be
-used, and subsequent versions of TTML are expected to use short names of
-<code>ttml2</code>, etc., with integer version numbers.</p></div><div class="div2">
-<h3><a id="model"></a>1.1 System Model</h3><p>Use of TTML is intended to function in a wider context of Timed Text
-Authoring and Distribution mechanisms that are based upon the system
-model depicted in <a href="#model-graphic"><b>Figure 1 – System Model</b></a>, wherein the Timed Text Markup Language
-serves as a bidirectional interchange format among a heterogeneous collection of
-authoring systems, and as a unidirectional interchange format to a
-heterogeneous collection of distribution formats after undergoing transcoding
-or compilation to the target distribution formats as required, and where one
-particular distribution format is TTML (labeled as "DFXP" in the figure).</p><a id="model-graphic"></a><table class="example-images"><caption>Figure 1 – System Model</caption><tbody><tr><td><img src="images/model.png" alt="System Model"></td></tr></tbody></table></div><div class="div2">
-<h3><a id="example"></a>1.2 Document Example</h3><p>A TTML <em>Document Instance</em> consists of a <code>tt</code> document element that contains
-a header and a body, where the header specifies document level metadata, styling
-definitions and layout definitions, and the body specifies text content intermixed
-with references to style and layout information and inline styling and timing information.</p><a id="ttml-example-document-structure"></a><table class="example"><caption>Example Fragment – TTML Document Structure</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+ }
+ table.example { border: 0px solid black; width: 85%; border-collapse: collapse }
+ table.example caption { font-weight: bold; text-align: left; padding-bottom: 0.5em }
+ table.example th { border: 0px solid black; text-align: left }
+ table.example td { border: 0px solid black; }
+ table.example div { background-color: #c8ffff }
+ table.example-images { text-align: center; border: 0px solid black; width: 85%; border-collapse: collapse }
+ table.example-images caption { font-weight: bold; text-align: center; padding-bottom: 0.5em }
+ table.example-images td { border: 0px solid black; text-align: center }
+ table.example-images-bordered { text-align: center; border: 0px solid black; width: 85%; border-collapse: collapse }
+ table.example-images-bordered caption { font-weight: bold; text-align: center; padding-bottom: 0.5em }
+ table.example-images-bordered td { border: 1px solid red; text-align: left }
+ .tbd { background-color: #ffff33; border: 2px solid black; width: 85% }
+ .strong { font-weight: bold }
+ .reqattr { font-weight: bold }
+ .optattr { font-style: italic }
+ </style>
+ <link rel="stylesheet" type="text/css" href="http://www.w3.org/StyleSheets/TR/W3C-REC.css">
+</head>
+
+<body>
+ <div class="head">
+ <p><a href="http://www.w3.org/"><img src="http://www.w3.org/Icons/w3c_home" alt="W3C"
+ height="48" width="72"></a></p>
+
+ <h1><a id="title" name="title"></a>Timed Text Markup Language 1 (TTML1) (Second
+ Edition)</h1>
+
+ <h2><a id="w3c-doctype" name="w3c-doctype"></a>W3C Recommendation 24 September
+ 2013</h2>
+
+ <dl>
+ <dt>This version:</dt>
+
+ <dd><a href=
+ "http://www.w3.org/TR/2013/REC-ttml1-20130924/">http://www.w3.org/TR/2013/REC-ttml1-20130924/</a></dd>
+
+ <dt>Latest version:</dt>
+
+ <dd><a href="http://www.w3.org/TR/ttml1/">http://www.w3.org/TR/ttml1/</a></dd>
+
+ <dt>Previous version:</dt>
+
+ <dd><a href=
+ "http://www.w3.org/TR/2013/PER-ttaf1-dfxp-20130709/">http://www.w3.org/TR/2013/PER-ttaf1-dfxp-20130709/</a></dd>
+
+ <dt>Previous recommendation:</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></dd>
+
+ <dt>Editor:</dt>
+
+ <dd>Glenn Adams, Cox Communications, Inc.</dd>
+
+ <dt>Contributing Authors:</dt>
+
+ <dd>Mike Dolan, Invited Expert</dd>
+
+ <dd>Geoff Freed, WGBH National Center for Accessible Media</dd>
+
+ <dd>Sean Hayes, Microsoft</dd>
+
+ <dd>Erik Hodge, RealNetworks</dd>
+
+ <dd>David Kirby, British Broadcasting Corporation (BBC)</dd>
+
+ <dd>Thierry Michel, W3C</dd>
+
+ <dd>Dave Singer, Apple Computer</dd>
+ </dl>
+
+ <p>Please refer to the <a href="ttml1-errata.html"><strong>errata</strong></a> for
+ this document, which may include normative corrections.</p>
+
+ <p>See also <a href=
+ "http://www.w3.org/2003/03/Translations/byTechnology?technology=ttml1"><strong>translations</strong></a>.</p>
+
+ <p class="copyright"><a href=
+ "http://www.w3.org/Consortium/Legal/ipr-notice#Copyright">Copyright</a> © 2013 <a href="http://www.w3.org/"><acronym title="World Wide Web Consortium">W3C</acronym></a><sup>®</sup>
+ (<a href="http://www.csail.mit.edu/"><acronym title=
+ "Massachusetts Institute of Technology">MIT</acronym></a>, <a href=
+ "http://www.ercim.eu/"><acronym title=
+ "European Research Consortium for Informatics and Mathematics">ERCIM</acronym></a>,
+ <a href="http://www.keio.ac.jp/">Keio</a>, <a href=
+ "http://ev.buaa.edu.cn/">Beihang</a>), All Rights Reserved. W3C <a href=
+ "http://www.w3.org/Consortium/Legal/ipr-notice#Legal_Disclaimer">liability</a>,
+ <a href="http://www.w3.org/Consortium/Legal/ipr-notice#W3C_Trademarks">trademark</a>
+ and <a href="http://www.w3.org/Consortium/Legal/copyright-documents">document use</a>
+ rules apply.</p>
+ </div>
+ <hr>
+
+ <div>
+ <h2><a id="abstract" name="abstract"></a>Abstract</h2>
+
+ <p>This document specifies Timed Text Markup Language (TTML), Version 1, also known
+ as TTML1, in terms of a vocabulary and semantics thereof.</p>
+
+ <p>The Timed Text Markup Language is a content type that represents timed text media
+ for the purpose of interchange among authoring systems. Timed text is textual
+ information that is intrinsically or extrinsically associated with timing
+ information.</p>
+
+ <p>It is intended to be used for the purpose of transcoding or exchanging timed text
+ information among legacy distribution content formats presently in use for subtitling
+ and captioning functions.</p>
+
+ <p>In addition to being used for interchange among legacy distribution content
+ formats, TTML Content may be used directly as a distribution format, for example,
+ providing a standard content format to reference from a <code><track></code>
+ element in an HTML5 document, or a <code><text></code> or
+ <code><textstream></code> media element in a <a href="#smil21">[SMIL 2.1]</a>
+ document.</p>
+ </div>
+
+ <div>
+ <h2><a id="status" name="status"></a>Status of this Document</h2>
+
+ <p><em>This section describes the status of this document at the time of its
+ publication. Other documents may supersede this document. A list of current W3C
+ publications and the latest revision of this technical report can be found in the
+ <a href="http://www.w3.org/TR/">W3C technical reports index</a> at
+ http://www.w3.org/TR/.</em></p>
+
+ <p>This document has been reviewed by W3C Members, by software developers, and by
+ other W3C groups and interested parties, and is endorsed by the Director as a W3C
+ Recommendation. It is a stable document and may be used as reference material or
+ cited from another document. W3C's role in making the Recommendation is to draw
+ attention to the specification and to promote its widespread deployment. This
+ enhances the functionality and interoperability of the Web.</p>
+
+ <p>This version reflects changes made as a result of applying errata and addressing
+ comments received since the Recommendation was first published. With one minor
+ exception noted below, these changes are editorial.</p>
+
+ <p>This document is a revision of Timed Text Markup Language (TTML) 1.0 <a href=
+ "#ttml10">[TTML10]</a>, superseding that <a href=
+ "http://www.w3.org/TR/2010/REC-ttaf1-dfxp-20101118/">previous Recommendation</a>. The
+ only identified substantive difference between this version and its predecessor is a
+ change of the default treatment of the <code>ttp:markerMode</code> parameter
+ attribute from <code>continuous</code> to <code>discontinuous</code>. A cumulative
+ summary of all changes applied to this version since the Recommendation was first
+ published is available at <a href=
+ "ttml1-changes.html#change-history-rec-to-2e-per">Changes from Recommendation to
+ Proposed Edited Recommendation (2nd Ed.)</a> and <a href=
+ "ttml1-changes.html#change-history-2e-per-to-rec-2e">Changes from Proposed Edited
+ Recommendation (2nd Ed.) to Recommendation (2nd Ed.)</a>.</p>
+
+ <p>A <a href="http://www.w3.org/2008/10/dfxp-testsuite.zip">sample test suite</a> is
+ available. This set of tests is not intended to be exhaustive. The <a href=
+ "http://www.w3.org/2009/05/dfxp-results.html">implementation report</a> used by the
+ director to transition to Recommendation has been made available. There have been no
+ formal objections to the publication of this document.</p>
+
+ <p>This document was produced by the <a href="http://www.w3.org/AudioVideo/TT/">Timed
+ Text (TT) Working Group</a> as part of the W3C <a href=
+ "http://www.w3.org/2008/WebVideo/">Video in the Web Activity</a>, following the
+ procedures set out for the W3C <a href=
+ "http://www.w3.org/Consortium/Process/">Process</a>. The authors of this document are
+ listed in the header of this document, including input and review by liaisons from
+ the <a href="http://www3.ebu.ch/cms/en/home">European Broadcasting Union (EBU)</a>,
+ and the <a href="https://www.smpte.org">Society of Motion Picture & Television
+ Engineers (SMPTE)</a>.</p>
+
+ <p>If you wish to report errors in or submit comments on this document, then please
+ submit them to <a href="mailto:public-tt@w3.org">public-tt@w3.org</a> (<a href=
+ "mailto:public-tt-request@w3.org">subscribe</a>, <a href=
+ "http://lists.w3.org/Archives/Public/public-tt/">archive</a>). All comments are
+ welcome.</p>
+
+ <p>This document was produced by a group operating under the <a href=
+ "http://www.w3.org/Consortium/Patent-Policy-20040205/">5 February 2004 W3C Patent
+ Policy</a>. W3C maintains a <a href=
+ "http://www.w3.org/2004/01/pp-impl/34314/status#disclosures" rel="disclosure">public
+ list of any patent disclosures</a> made in connection with the deliverables of the
+ group; that page also includes instructions for disclosing a patent. An individual
+ who has actual knowledge of a patent which the individual believes contains <a href=
+ "http://www.w3.org/Consortium/Patent-Policy-20040205/#def-essential">Essential
+ Claim(s)</a> must disclose the information in accordance with <a href=
+ "http://www.w3.org/Consortium/Patent-Policy-20040205/#sec-Disclosure">section 6 of
+ the W3C Patent Policy</a>.</p>
+ </div>
+
+ <div class="toc">
+ <h2><a id="contents" name="contents"></a>Table of Contents</h2>
+
+ <p class="toc">1 <a href="#intro">Introduction</a><br>
+ 1.1 <a href="#model">System Model</a><br>
+ 1.2 <a href="#example">Document Example</a><br>
+ 2 <a href="#definitions">Definitions</a><br>
+ 2.1 <a href="#acronyms">Acronyms</a><br>
+ 2.2 <a href="#terms">Terminology</a><br>
+ 2.3 <a href="#conventions">Documentation Conventions</a><br>
+ 3 <a href="#conformance">Conformance</a><br>
+ 3.1 <a href="#conformance-content">Content
+ Conformance</a><br>
+ 3.2 <a href="#conformance-processor">Processor
+ Conformance</a><br>
+ 3.2.1 <a href=
+ "#conformance-generic-processor">Generic Processor Conformance</a><br>
+ 3.2.2 <a href=
+ "#conformance-transformation-processor">Transformation Processor Conformance</a><br>
+ 3.2.3 <a href=
+ "#conformance-presentation-processor">Presentation Processor Conformance</a><br>
+ 3.3 <a href="#claims">Claims</a><br>
+ 4 <a href="#doctypes">Document Types</a><br>
+ 4.1 <a href="#ttml-content-doctype">TTML Content</a><br>
+ 5 <a href="#vocabulary">Vocabulary</a><br>
+ 5.1 <a href="#vocabulary-namespaces">Namespaces</a><br>
+ 5.2 <a href="#vocabulary-profiles">Profiles</a><br>
+ 5.3 <a href="#vocabulary-overview">Catalog</a><br>
+ 5.3.1 <a href=
+ "#core-vocabulary-overview">Core Catalog</a><br>
+ 5.3.2 <a href=
+ "#extension-vocabulary-overview">Extension Catalog</a><br>
+ 6 <a href="#parameters">Parameters</a><br>
+ 6.1 <a href="#parameter-element-vocabulary">Parameter Element
+ Vocabulary</a><br>
+ 6.1.1 <a href=
+ "#parameter-vocabulary-profile">ttp:profile</a><br>
+ 6.1.2 <a href=
+ "#parameter-vocabulary-features">ttp:features</a><br>
+ 6.1.3 <a href=
+ "#parameter-vocabulary-feature">ttp:feature</a><br>
+ 6.1.4 <a href=
+ "#parameter-vocabulary-extensions">ttp:extensions</a><br>
+ 6.1.5 <a href=
+ "#parameter-vocabulary-extension">ttp:extension</a><br>
+ 6.2 <a href="#parameter-attribute-vocabulary">Parameter
+ Attribute Vocabulary</a><br>
+ 6.2.1 <a href=
+ "#parameter-attribute-cellResolution">ttp:cellResolution</a><br>
+ 6.2.2 <a href=
+ "#parameter-attribute-clockMode">ttp:clockMode</a><br>
+ 6.2.3 <a href=
+ "#parameter-attribute-dropMode">ttp:dropMode</a><br>
+ 6.2.4 <a href=
+ "#parameter-attribute-frameRate">ttp:frameRate</a><br>
+ 6.2.5 <a href=
+ "#parameter-attribute-frameRateMultiplier">ttp:frameRateMultiplier</a><br>
+ 6.2.6 <a href=
+ "#parameter-attribute-markerMode">ttp:markerMode</a><br>
+ 6.2.7 <a href=
+ "#parameter-attribute-pixelAspectRatio">ttp:pixelAspectRatio</a><br>
+ 6.2.8 <a href=
+ "#parameter-attribute-profile">ttp:profile</a><br>
+ 6.2.9 <a href=
+ "#parameter-attribute-subFrameRate">ttp:subFrameRate</a><br>
+ 6.2.10 <a href=
+ "#parameter-attribute-tickRate">ttp:tickRate</a><br>
+ 6.2.11 <a href=
+ "#parameter-attribute-timeBase">ttp:timeBase</a><br>
+ 7 <a href="#content">Content</a><br>
+ 7.1 <a href="#content-element-vocabulary">Content Element
+ Vocabulary</a><br>
+ 7.1.1 <a href=
+ "#document-structure-vocabulary-tt">tt</a><br>
+ 7.1.2 <a href=
+ "#document-structure-vocabulary-head">head</a><br>
+ 7.1.3 <a href=
+ "#document-structure-vocabulary-body">body</a><br>
+ 7.1.4 <a href=
+ "#content-vocabulary-div">div</a><br>
+ 7.1.5 <a href=
+ "#content-vocabulary-p">p</a><br>
+ 7.1.6 <a href=
+ "#content-vocabulary-span">span</a><br>
+ 7.1.7 <a href=
+ "#content-vocabulary-br">br</a><br>
+ 7.2 <a href="#content-attribute-vocabulary">Content Attribute
+ Vocabulary</a><br>
+ 7.2.1 <a href=
+ "#content-attribute-id">xml:id</a><br>
+ 7.2.2 <a href=
+ "#content-attribute-lang">xml:lang</a><br>
+ 7.2.3 <a href=
+ "#content-attribute-space">xml:space</a><br>
+ 8 <a href="#styling">Styling</a><br>
+ 8.1 <a href="#styling-element-vocabulary">Styling Element
+ Vocabulary</a><br>
+ 8.1.1 <a href=
+ "#styling-vocabulary-styling">styling</a><br>
+ 8.1.2 <a href=
+ "#styling-vocabulary-style">style</a><br>
+ 8.2 <a href="#styling-attribute-vocabulary">Styling Attribute
+ Vocabulary</a><br>
+ 8.2.1 <a href=
+ "#style-attribute-style">style</a><br>
+ 8.2.2 <a href=
+ "#style-attribute-backgroundColor">tts:backgroundColor</a><br>
+ 8.2.3 <a href=
+ "#style-attribute-color">tts:color</a><br>
+ 8.2.4 <a href=
+ "#style-attribute-direction">tts:direction</a><br>
+ 8.2.5 <a href=
+ "#style-attribute-display">tts:display</a><br>
+ 8.2.6 <a href=
+ "#style-attribute-displayAlign">tts:displayAlign</a><br>
+ 8.2.7 <a href=
+ "#style-attribute-extent">tts:extent</a><br>
+ 8.2.8 <a href=
+ "#style-attribute-fontFamily">tts:fontFamily</a><br>
+ 8.2.9 <a href=
+ "#style-attribute-fontSize">tts:fontSize</a><br>
+ 8.2.10 <a href=
+ "#style-attribute-fontStyle">tts:fontStyle</a><br>
+ 8.2.11 <a href=
+ "#style-attribute-fontWeight">tts:fontWeight</a><br>
+ 8.2.12 <a href=
+ "#style-attribute-lineHeight">tts:lineHeight</a><br>
+ 8.2.13 <a href=
+ "#style-attribute-opacity">tts:opacity</a><br>
+ 8.2.14 <a href=
+ "#style-attribute-origin">tts:origin</a><br>
+ 8.2.15 <a href=
+ "#style-attribute-overflow">tts:overflow</a><br>
+ 8.2.16 <a href=
+ "#style-attribute-padding">tts:padding</a><br>
+ 8.2.17 <a href=
+ "#style-attribute-showBackground">tts:showBackground</a><br>
+ 8.2.18 <a href=
+ "#style-attribute-textAlign">tts:textAlign</a><br>
+ 8.2.19 <a href=
+ "#style-attribute-textDecoration">tts:textDecoration</a><br>
+ 8.2.20 <a href=
+ "#style-attribute-textOutline">tts:textOutline</a><br>
+ 8.2.21 <a href=
+ "#style-attribute-unicodeBidi">tts:unicodeBidi</a><br>
+ 8.2.22 <a href=
+ "#style-attribute-visibility">tts:visibility</a><br>
+ 8.2.23 <a href=
+ "#style-attribute-wrapOption">tts:wrapOption</a><br>
+ 8.2.24 <a href=
+ "#style-attribute-writingMode">tts:writingMode</a><br>
+ 8.2.25 <a href=
+ "#style-attribute-zIndex">tts:zIndex</a><br>
+ 8.3 <a href="#styling-style-value-expressions">Style Value
+ Expressions</a><br>
+ 8.3.1 <a href=
+ "#style-value-alpha"><alpha></a><br>
+ 8.3.2 <a href=
+ "#style-value-color"><color></a><br>
+ 8.3.3 <a href=
+ "#style-value-digit"><digit></a><br>
+ 8.3.4 <a href=
+ "#style-value-duration"><duration></a><br>
+ 8.3.5 <a href=
+ "#style-value-familyName"><familyName></a><br>
+ 8.3.6 <a href=
+ "#style-value-genericFamilyName"><genericFamilyName></a><br>
+ 8.3.7 <a href=
+ "#style-value-hexDigit"><hexDigit></a><br>
+ 8.3.8 <a href=
+ "#style-value-integer"><integer></a><br>
+ 8.3.9 <a href=
+ "#style-value-length"><length></a><br>
+ 8.3.10 <a href=
+ "#style-value-namedColor"><namedColor></a><br>
+ 8.3.11 <a href=
+ "#style-value-quotedString"><quotedString></a><br>
+ 8.3.12 <a href=
+ "#style-value-string"><string></a><br>
+ 8.4 <a href="#semantics-style-resolution">Style
+ Resolution</a><br>
+ 8.4.1 <a href=
+ "#semantics-style-association">Style Association</a><br>
+ 8.4.1.1
+ <a href="#semantics-style-association-inline">Inline Styling</a><br>
+ 8.4.1.2
+ <a href="#semantics-style-association-referential">Referential Styling</a><br>
+ 8.4.1.3
+ <a href="#semantics-style-association-chained-referential">Chained Referential
+ Styling</a><br>
+ 8.4.1.4
+ <a href="#semantics-style-association-nested">Nested Styling</a><br>
+ 8.4.2 <a href=
+ "#semantics-style-inheritance">Style Inheritance</a><br>
+ 8.4.2.1
+ <a href="#semantics-style-inheritance-content">Content Style Inheritance</a><br>
+ 8.4.2.2
+ <a href="#semantics-style-inheritance-region">Region Style Inheritance</a><br>
+ 8.4.3 <a href=
+ "#semantics-style-resolution-value-categories">Style Resolution Value
+ Categories</a><br>
+ 8.4.3.1
+ <a href="#semantics-style-resolved-value-category-specified">Specified Values</a><br>
+ 8.4.3.2
+ <a href="#semantics-style-resolved-value-category-computed">Computed Values</a><br>
+ 8.4.3.3
+ <a href="#semantics-style-resolved-value-category-actual">Actual Values</a><br>
+ 8.4.4 <a href=
+ "#semantics-style-resolution-processing">Style Resolution Processing</a><br>
+ 8.4.4.1
+ <a href="#semantics-style-resolution-processing-definitions">Conceptual
+ Definitions</a><br>
+ 8.4.4.2
+ <a href="#semantics-style-resolution-processing-sss">Specified Style Set
+ Processing</a><br>
+ 8.4.4.3
+ <a href="#semantics-style-resolution-processing-css">Computed Style Set
+ Processing</a><br>
+ 8.4.4.4
+ <a href="#semantics-style-resolution-process-overall">Style Resolution
+ Process</a><br>
+ 9 <a href="#layout">Layout</a><br>
+ 9.1 <a href="#layout-element-vocabulary">Layout Element
+ Vocabulary</a><br>
+ 9.1.1 <a href=
+ "#layout-vocabulary-layout">layout</a><br>
+ 9.1.2 <a href=
+ "#layout-vocabulary-region">region</a><br>
+ 9.2 <a href="#layout-attribute-vocabulary">Layout Attribute
+ Vocabulary</a><br>
+ 9.2.1 <a href=
+ "#layout-attribute-region">region</a><br>
+ 9.3 <a href="#semantics-region-layout">Region Layout and
+ Presentation</a><br>
+ 9.3.1 <a href=
+ "#semantics-default-region">Default Region</a><br>
+ 9.3.2 <a href=
+ "#semantics-region-layout-step-1">Intermediate Synchronic Document
+ Construction</a><br>
+ 9.3.3 <a href=
+ "#semantics-region-layout-step-2">Synchronic Flow Processing</a><br>
+ 9.3.4 <a href=
+ "#semantics-region-layout-example">Elaborated Example (Informative)</a><br>
+ 9.4 <a href="#semantics-line-layout">Line Layout</a><br>
+ 10 <a href="#timing">Timing</a><br>
+ 10.1 <a href="#timing-element-vocabulary">Timing Element
+ Vocabulary</a><br>
+ 10.2 <a href="#timing-attribute-vocabulary">Timing Attribute
+ Vocabulary</a><br>
+ 10.2.1 <a href=
+ "#timing-attribute-begin">begin</a><br>
+ 10.2.2 <a href=
+ "#timing-attribute-end">end</a><br>
+ 10.2.3 <a href=
+ "#timing-attribute-dur">dur</a><br>
+ 10.2.4 <a href=
+ "#timing-attribute-timeContainer">timeContainer</a><br>
+ 10.3 <a href="#timing-time-value-expressions">Time Value
+ Expressions</a><br>
+ 10.3.1 <a href=
+ "#timing-value-timeExpression"><timeExpression></a><br>
+ 10.4 <a href="#timing-time-intervals">Time Intervals</a><br>
+ 11 <a href="#animation">Animation</a><br>
+ 11.1 <a href="#animation-element-vocabulary">Animation
+ Element Vocabulary</a><br>
+ 11.1.1 <a href=
+ "#animation-vocabulary-set">set</a><br>
+ 11.2 <a href="#animation-attribute-vocabulary">Animation
+ Attribute Vocabulary</a><br>
+ 12 <a href="#metadata">Metadata</a><br>
+ 12.1 <a href="#metadata-element-vocabulary">Metadata Element
+ Vocabulary</a><br>
+ 12.1.1 <a href=
+ "#metadata-vocabulary-metadata">metadata</a><br>
+ 12.1.2 <a href=
+ "#metadata-vocabulary-title">ttm:title</a><br>
+ 12.1.3 <a href=
+ "#metadata-vocabulary-desc">ttm:desc</a><br>
+ 12.1.4 <a href=
+ "#metadata-vocabulary-copyright">ttm:copyright</a><br>
+ 12.1.5 <a href=
+ "#metadata-vocabulary-agent">ttm:agent</a><br>
+ 12.1.6 <a href=
+ "#metadata-vocabulary-name">ttm:name</a><br>
+ 12.1.7 <a href=
+ "#metadata-vocabulary-actor">ttm:actor</a><br>
+ 12.2 <a href="#metadata-attribute-vocabulary">Metadata
+ Attribute Vocabulary</a><br>
+ 12.2.1 <a href=
+ "#metadata-attribute-agent">ttm:agent</a><br>
+ 12.2.2 <a href=
+ "#metadata-attribute-role">ttm:role</a><br></p>
+
+ <h3><a id="appendices" name="appendices"></a>Appendices</h3>
+
+ <p class="toc">A <a href="#reduced-infoset">Reduced XML Infoset</a><br>
+ A.1 <a href="#reduced-infoset-document">Document Information
+ Item</a><br>
+ A.2 <a href="#reduced-infoset-element">Element Information
+ Item</a><br>
+ A.3 <a href="#reduced-infoset-attribute">Attribute
+ Information Item</a><br>
+ A.4 <a href="#reduced-infoset-character">Character
+ Information Item</a><br>
+ B <a href="#schemas">Schemas</a><br>
+ B.1 <a href="#ttml-schema-rnc">Relax NG Compact (RNC)
+ Schema</a><br>
+ B.2 <a href="#ttml-schema-xsd">XML Schema Definition (XSD)
+ Schema</a><br>
+ C <a href="#media-types-registration">Media Type Registration</a><br>
+ D <a href="#features">Features</a><br>
+ D.1 <a href="#feature-designations">Feature
+ Designations</a><br>
+ D.1.1 <a href=
+ "#feature-animation">#animation</a><br>
+ D.1.2 <a href=
+ "#feature-backgroundColor">#backgroundColor</a><br>
+ D.1.3 <a href=
+ "#feature-backgroundColor-block">#backgroundColor-block</a><br>
+ D.1.4 <a href=
+ "#feature-backgroundColor-inline">#backgroundColor-inline</a><br>
+ D.1.5 <a href=
+ "#feature-backgroundColor-region">#backgroundColor-region</a><br>
+ D.1.6 <a href=
+ "#feature-bidi">#bidi</a><br>
+ D.1.7 <a href=
+ "#feature-cellResolution">#cellResolution</a><br>
+ D.1.8 <a href=
+ "#feature-clockMode">#clockMode</a><br>
+ D.1.9 <a href=
+ "#feature-clockMode-gps">#clockMode-gps</a><br>
+ D.1.10 <a href=
+ "#feature-clockMode-local">#clockMode-local</a><br>
+ D.1.11 <a href=
+ "#feature-clockMode-utc">#clockMode-utc</a><br>
+ D.1.12 <a href=
+ "#feature-color">#color</a><br>
+ D.1.13 <a href=
+ "#feature-content">#content</a><br>
+ D.1.14 <a href=
+ "#feature-core">#core</a><br>
+ D.1.15 <a href=
+ "#feature-direction">#direction</a><br>
+ D.1.16 <a href=
+ "#feature-display">#display</a><br>
+ D.1.17 <a href=
+ "#feature-display-block">#display-block</a><br>
+ D.1.18 <a href=
+ "#feature-display-inline">#display-inline</a><br>
+ D.1.19 <a href=
+ "#feature-display-region">#display-region</a><br>
+ D.1.20 <a href=
+ "#feature-displayAlign">#displayAlign</a><br>
+ D.1.21 <a href=
+ "#feature-dropMode">#dropMode</a><br>
+ D.1.22 <a href=
+ "#feature-dropMode-dropNTSC">#dropMode-dropNTSC</a><br>
+ D.1.23 <a href=
+ "#feature-dropMode-dropPAL">#dropMode-dropPAL</a><br>
+ D.1.24 <a href=
+ "#feature-dropMode-nonDrop">#dropMode-nonDrop</a><br>
+ D.1.25 <a href=
+ "#feature-extent">#extent</a><br>
+ D.1.26 <a href=
+ "#feature-extent-region">#extent-region</a><br>
+ D.1.27 <a href=
+ "#feature-extent-root">#extent-root</a><br>
+ D.1.28 <a href=
+ "#feature-fontFamily">#fontFamily</a><br>
+ D.1.29 <a href=
+ "#feature-fontFamily-generic">#fontFamily-generic</a><br>
+ D.1.30 <a href=
+ "#feature-fontFamily-non-generic">#fontFamily-non-generic</a><br>
+ D.1.31 <a href=
+ "#feature-fontSize">#fontSize</a><br>
+ D.1.32 <a href=
+ "#feature-fontSize-anamorphic">#fontSize-anamorphic</a><br>
+ D.1.33 <a href=
+ "#feature-fontSize-isomorphic">#fontSize-isomorphic</a><br>
+ D.1.34 <a href=
+ "#feature-fontStyle">#fontStyle</a><br>
+ D.1.35 <a href=
+ "#feature-fontStyle-italic">#fontStyle-italic</a><br>
+ D.1.36 <a href=
+ "#feature-fontStyle-oblique">#fontStyle-oblique</a><br>
+ D.1.37 <a href=
+ "#feature-fontWeight">#fontWeight</a><br>
+ D.1.38 <a href=
+ "#feature-fontWeight-bold">#fontWeight-bold</a><br>
+ D.1.39 <a href=
+ "#feature-frameRate">#frameRate</a><br>
+ D.1.40 <a href=
+ "#feature-frameRateMultiplier">#frameRateMultiplier</a><br>
+ D.1.41 <a href=
+ "#feature-layout">#layout</a><br>
+ D.1.42 <a href=
+ "#feature-length">#length</a><br>
+ D.1.43 <a href=
+ "#feature-length-cell">#length-cell</a><br>
+ D.1.44 <a href=
+ "#feature-length-em">#length-em</a><br>
+ D.1.45 <a href=
+ "#feature-length-integer">#length-integer</a><br>
+ D.1.46 <a href=
+ "#feature-length-negative">#length-negative</a><br>
+ D.1.47 <a href=
+ "#feature-length-percentage">#length-percentage</a><br>
+ D.1.48 <a href=
+ "#feature-length-pixel">#length-pixel</a><br>
+ D.1.49 <a href=
+ "#feature-length-positive">#length-positive</a><br>
+ D.1.50 <a href=
+ "#feature-length-real">#length-real</a><br>
+ D.1.51 <a href=
+ "#feature-lineBreak-uax14">#lineBreak-uax14</a><br>
+ D.1.52 <a href=
+ "#feature-lineHeight">#lineHeight</a><br>
+ D.1.53 <a href=
+ "#feature-markerMode">#markerMode</a><br>
+ D.1.54 <a href=
+ "#feature-markerMode-continuous">#markerMode-continuous</a><br>
+ D.1.55 <a href=
+ "#feature-markerMode-discontinuous">#markerMode-discontinuous</a><br>
+ D.1.56 <a href=
+ "#feature-metadata">#metadata</a><br>
+ D.1.57 <a href=
+ "#feature-nested-div">#nested-div</a><br>
+ D.1.58 <a href=
+ "#feature-nested-span">#nested-span</a><br>
+ D.1.59 <a href=
+ "#feature-opacity">#opacity</a><br>
+ D.1.60 <a href=
+ "#feature-origin">#origin</a><br>
+ D.1.61 <a href=
+ "#feature-overflow">#overflow</a><br>
+ D.1.62 <a href=
+ "#feature-overflow-visible">#overflow-visible</a><br>
+ D.1.63 <a href=
+ "#feature-padding">#padding</a><br>
+ D.1.64 <a href=
+ "#feature-padding-1">#padding-1</a><br>
+ D.1.65 <a href=
+ "#feature-padding-2">#padding-2</a><br>
+ D.1.66 <a href=
+ "#feature-padding-3">#padding-3</a><br>
+ D.1.67 <a href=
+ "#feature-padding-4">#padding-4</a><br>
+ D.1.68 <a href=
+ "#feature-pixelAspectRatio">#pixelAspectRatio</a><br>
+ D.1.69 <a href=
+ "#feature-presentation">#presentation</a><br>
+ D.1.70 <a href=
+ "#feature-profile">#profile</a><br>
+ D.1.71 <a href=
+ "#feature-showBackground">#showBackground</a><br>
+ D.1.72 <a href=
+ "#feature-structure">#structure</a><br>
+ D.1.73 <a href=
+ "#feature-styling">#styling</a><br>
+ D.1.74 <a href=
+ "#feature-styling-chained">#styling-chained</a><br>
+ D.1.75 <a href=
+ "#feature-styling-inheritance-content">#styling-inheritance-content</a><br>
+ D.1.76 <a href=
+ "#feature-styling-inheritance-region">#styling-inheritance-region</a><br>
+ D.1.77 <a href=
+ "#feature-styling-inline">#styling-inline</a><br>
+ D.1.78 <a href=
+ "#feature-styling-nested">#styling-nested</a><br>
+ D.1.79 <a href=
+ "#feature-styling-referential">#styling-referential</a><br>
+ D.1.80 <a href=
+ "#feature-subFrameRate">#subFrameRate</a><br>
+ D.1.81 <a href=
+ "#feature-textAlign">#textAlign</a><br>
+ D.1.82 <a href=
+ "#feature-textAlign-absolute">#textAlign-absolute</a><br>
+ D.1.83 <a href=
+ "#feature-textAlign-relative">#textAlign-relative</a><br>
+ D.1.84 <a href=
+ "#feature-textDecoration">#textDecoration</a><br>
+ D.1.85 <a href=
+ "#feature-textDecoration-over">#textDecoration-over</a><br>
+ D.1.86 <a href=
+ "#feature-textDecoration-through">#textDecoration-through</a><br>
+ D.1.87 <a href=
+ "#feature-textDecoration-under">#textDecoration-under</a><br>
+ D.1.88 <a href=
+ "#feature-textOutline">#textOutline</a><br>
+ D.1.89 <a href=
+ "#feature-textOutline-blurred">#textOutline-blurred</a><br>
+ D.1.90 <a href=
+ "#feature-textOutline-unblurred">#textOutline-unblurred</a><br>
+ D.1.91 <a href=
+ "#feature-tickRate">#tickRate</a><br>
+ D.1.92 <a href=
+ "#feature-timeBase-clock">#timeBase-clock</a><br>
+ D.1.93 <a href=
+ "#feature-timeBase-media">#timeBase-media</a><br>
+ D.1.94 <a href=
+ "#feature-timeBase-smpte">#timeBase-smpte</a><br>
+ D.1.95 <a href=
+ "#feature-timeContainer">#timeContainer</a><br>
+ D.1.96 <a href=
+ "#feature-time-clock">#time-clock</a><br>
+ D.1.97 <a href=
+ "#feature-time-clock-with-frames">#time-clock-with-frames</a><br>
+ D.1.98 <a href=
+ "#feature-time-offset">#time-offset</a><br>
+ D.1.99 <a href=
+ "#feature-time-offset-with-frames">#time-offset-with-frames</a><br>
+ D.1.100 <a href=
+ "#feature-time-offset-with-ticks">#time-offset-with-ticks</a><br>
+ D.1.101 <a href=
+ "#feature-timing">#timing</a><br>
+ D.1.102 <a href=
+ "#feature-transformation">#transformation</a><br>
+ D.1.103 <a href=
+ "#feature-unicodeBidi">#unicodeBidi</a><br>
+ D.1.104 <a href=
+ "#feature-visibility">#visibility</a><br>
+ D.1.105 <a href=
+ "#feature-visibility-block">#visibility-block</a><br>
+ D.1.106 <a href=
+ "#feature-visibility-inline">#visibility-inline</a><br>
+ D.1.107 <a href=
+ "#feature-visibility-region">#visibility-region</a><br>
+ D.1.108 <a href=
+ "#feature-wrapOption">#wrapOption</a><br>
+ D.1.109 <a href=
+ "#feature-writingMode">#writingMode</a><br>
+ D.1.110 <a href=
+ "#feature-writingMode-vertical">#writingMode-vertical</a><br>
+ D.1.111 <a href=
+ "#feature-writingMode-horizontal">#writingMode-horizontal</a><br>
+ D.1.112 <a href=
+ "#feature-writingMode-horizontal-lr">#writingMode-horizontal-lr</a><br>
+ D.1.113 <a href=
+ "#feature-writingMode-horizontal-rl">#writingMode-horizontal-rl</a><br>
+ D.1.114 <a href=
+ "#feature-zIndex">#zIndex</a><br>
+ D.2 <a href="#feature-support">Feature Support</a><br>
+ E <a href="#extensions">Extensions</a><br>
+ E.1 <a href="#extension-designations">Extension
+ Designations</a><br>
+ F <a href="#profiles">Profiles</a><br>
+ F.1 <a href="#profile-dfxp-transformation">DFXP
+ Transformation Profile</a><br>
+ F.2 <a href="#profile-dfxp-presentation">DFXP Presentation
+ Profile</a><br>
+ F.3 <a href="#profile-dfxp-full">DFXP Full Profile</a><br>
+ G <a href="#references">References</a><br>
+ 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="#d3e18942">Element Derivation</a><br>
+ J.2 <a href="#d3e19424">Attribute Derivation</a><br>
+ K <a href="#qa">QA Framework Compliance</a> (Non-Normative)<br>
+ K.1 <a href="#d3e20309">Requirements</a><br>
+ K.2 <a href="#d3e20473">Guidelines</a><br>
+ L <a href="#streaming">Streaming TTML Content</a> (Non-Normative)<br>
+ M <a href="#concrete-encoding">Concrete Encoding</a> (Non-Normative)<br>
+ N <a href="#time-expression-semantics">Time Expression Semantics</a>
+ (Non-Normative)<br>
+ N.1 <a href="#time-expression-semantics-clock">Clock Time
+ Base</a><br>
+ N.2 <a href="#time-expression-semantics-media">Media Time
+ Base</a><br>
+ N.3 <a href="#time-expression-semantics-smpte">SMPTE Time
+ Base</a><br>
+ O <a href="#common-styling">Common Caption Style Examples</a> (Non-Normative)<br>
+ O.1 <a href="#pop-on-example">Pop-On Caption Example</a><br>
+ O.2 <a href="#roll-up-example">Roll-Up Caption
+ Example</a><br>
+ O.3 <a href="#paint-on-example">Paint-On Caption
+ Example</a><br>
+ P <a href="#acknowledgments">Acknowledgments</a> (Non-Normative)<br></p>
+ </div>
+ <hr>
+
+ <div class="body">
+ <div class="div1">
+ <h2><a id="intro" name="intro"></a>1 Introduction</h2>
+
+ <p><em>Unless specified otherwise, this section and its sub-sections are
+ non-normative.</em></p>
+
+ <p>The Timed Text Markup Language (TTML) Version 1, also referred to as TTML1,
+ provides a standardized representation of a particular subset of textual
+ information with which stylistic, layout, and timing semantics are associated by an
+ author or an authoring system for the purpose of interchange and processing.</p>
+
+ <p>TTML is expressly designed to meet only a limited set of requirements
+ established by <a href="#ttaf1-req">[TTAF1-REQ]</a>, and summarized in <a href=
+ "#requirements"><b>I Requirements</b></a>. In particular, only those requirements
+ which service the need of performing interchange with existing, legacy distribution
+ systems are satisfied.</p>
+
+ <p>In addition to being used for interchange among legacy distribution content
+ formats, TTML Content may be used directly as a distribution format, providing, for
+ example, a standard content format to reference from a <code><track></code>
+ element in an HTML5 document, or a <code><text></code> or
+ <code><textstream></code> media element in a <a href="#smil21">[SMIL 2.1]</a>
+ document. Certain properties of TTML support streamability of content, as described
+ in <a href="#streaming"><b>L Streaming TTML Content</b></a>.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>While TTML is not expressly designed for direct (embedded) integration into an
+ HTML or a SMIL document instance, such integration is not precluded.</p>
+ </div>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>In some contexts of use, it may be appropriate to employ animated content to
+ depict sign language representations of the same content as expressed by a Timed
+ Text <em>Document Instance</em>. This use case is not explicitly addressed by
+ TTML mechanisms, but may be addressed by some external multimedia integration
+ technology, such as SMIL.</p>
+ </div>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>In the first edition of this specification, the version number
+ <code>1.0</code> was used to refer to this version of TTML. In this second
+ edition, this version number is simplified to <code>1</code> as a result of a
+ determination to call the next (future) version <code>2</code> instead of
+ <code>1.1</code>.</p>
+ </div>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>In previous drafts of this specification, TTML was referred to as DFXP
+ (Distribution Format Exchange Profile). This latter term is retained for
+ historical reasons in certain contexts, such as profile names and designators,
+ and the short name <code>ttaf1-dfxp</code> used in older URLs to refer to this
+ specification. Starting in this edition of the first version of TTML, the short
+ name <code>ttml1</code> will be used, and subsequent versions of TTML are
+ expected to use short names of <code>ttml2</code>, etc., with integer version
+ numbers.</p>
+ </div>
+
+ <div class="div2">
+ <h3><a id="model" name="model"></a>1.1 System Model</h3>
+
+ <p>Use of TTML is intended to function in a wider context of Timed Text Authoring
+ and Distribution mechanisms that are based upon the system model depicted in
+ <a href="#model-graphic"><b>Figure 1 – System Model</b></a>, wherein the Timed
+ Text Markup Language serves as a bidirectional interchange format among a
+ heterogeneous collection of authoring systems, and as a unidirectional
+ interchange format to a heterogeneous collection of distribution formats after
+ undergoing transcoding or compilation to the target distribution formats as
+ required, and where one particular distribution format is TTML (labeled as "DFXP"
+ in the figure).</p><a id="model-graphic" name="model-graphic"></a>
+
+ <table class="example-images">
+ <caption>
+ Figure 1 – System Model
+ </caption>
+
+ <tbody>
+ <tr>
+ <td><img src="images/model.png" alt="System Model"></td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+
+ <div class="div2">
+ <h3><a id="example" name="example"></a>1.2 Document Example</h3>
+
+ <p>A TTML <em>Document Instance</em> consists of a <code>tt</code> document
+ element that contains a header and a body, where the header specifies document
+ level metadata, styling definitions and layout definitions, and the body
+ specifies text content intermixed with references to style and layout information
+ and inline styling and timing information.</p><a id=
+ "ttml-example-document-structure" name="ttml-example-document-structure"></a>
+
+ <table class="example">
+ <caption>
+ Example Fragment – TTML Document Structure
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<tt xml:lang="" xmlns="http://www.w3.org/ns/ttml">
<head>
<metadata/>
@@ -494,21 +951,58 @@
</head>
<body/>
</tt>
-</pre></div>
-</td></tr></tbody></table><p>Document level metadata may specify a document title, description,
-and copyright information. In addition, arbitrary metadata drawn from
-other namespaces may be specified.</p><a id="ttml-example-metadata"></a><table class="example"><caption>Example Fragment – TTML Metadata</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>Document level metadata may specify a document title, description, and
+ copyright information. In addition, arbitrary metadata drawn from other
+ namespaces may be specified.</p><a id="ttml-example-metadata" name=
+ "ttml-example-metadata"></a>
+
+ <table class="example">
+ <caption>
+ Example Fragment – TTML Metadata
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<metadata xmlns:ttm="http://www.w3.org/ns/ttml#metadata">
<ttm:title>Timed Text TTML Example</ttm:title>
<ttm:copyright>The Authors (c) 2006</ttm:copyright>
</metadata>
-</pre></div>
-</td></tr></tbody></table><p>Styling information may be specified in the form of style specification
-definitions that are referenced by layout and content information,
-specified inline with content information, or both.</p><p>In <a href="#ttml-example-styling"><b>Example Fragment – TTML Styling</b></a>, four style sets of specifications
-are defined, with one set serving as a collection of default styles.</p><a id="ttml-example-styling"></a><table class="example"><caption>Example Fragment – TTML Styling</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>Styling information may be specified in the form of style specification
+ definitions that are referenced by layout and content information, specified
+ inline with content information, or both.</p>
+
+ <p>In <a href="#ttml-example-styling"><b>Example Fragment – TTML Styling</b></a>,
+ four style sets of specifications are defined, with one set serving as a
+ collection of default styles.</p><a id="ttml-example-styling" name=
+ "ttml-example-styling"></a>
+
+ <table class="example">
+ <caption>
+ Example Fragment – TTML Styling
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<styling xmlns:tts="http://www.w3.org/ns/ttml#styling">
<!-- s1 specifies default color, font, and text alignment -->
<style xml:id="s1"
@@ -524,18 +1018,34 @@
<!-- a style based on s2 but justified to the left -->
<style xml:id="s2Left" style="s2" tts:textAlign="start" />
</styling>
-</pre></div>
-</td></tr></tbody></table><p>Layout information defines one or more regions into which content
-is intended to be presented. A region definition may reference one or
-more sets of style specifications in order to permit content flowed in the
-region to inherit from these styles.
-In <a href="#ttml-example-layout"><b>Example Fragment – TTML Layout</b></a>, the region definition makes
-reference to style specification <code>s1</code> augmented by specific inline
-styles which, together, allow content flowed into the region to inherit
-from the region's styles (in the case
-that a style is not already explicitly specified on content or inherited
-via the content hierarchy.)</p><a id="ttml-example-layout"></a><table class="example"><caption>Example Fragment – TTML Layout</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>Layout information defines one or more regions into which content is intended
+ to be presented. A region definition may reference one or more sets of style
+ specifications in order to permit content flowed in the region to inherit from
+ these styles. In <a href="#ttml-example-layout"><b>Example Fragment – TTML
+ Layout</b></a>, the region definition makes reference to style specification
+ <code>s1</code> augmented by specific inline styles which, together, allow
+ content flowed into the region to inherit from the region's styles (in the case
+ that a style is not already explicitly specified on content or inherited via the
+ content hierarchy.)</p><a id="ttml-example-layout" name=
+ "ttml-example-layout"></a>
+
+ <table class="example">
+ <caption>
+ Example Fragment – TTML Layout
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<layout xmlns:tts="http://www.w3.org/ns/ttml#styling">
<region xml:id="subtitleArea"
style="s1"
@@ -545,18 +1055,35 @@
tts:displayAlign="after"
/>
</layout>
-</pre></div>
-</td></tr></tbody></table><p>The content of a <em>Document Instance</em> is expressed in its
-body, which is organized in terms of block and inline text elements.
-The hierarchical organization of content elements serves a primary role in
-determining both spatial and temporal relationships. For example, in
-<a href="#ttml-example-body"><b>Example Fragment – TTML Body</b></a>, each paragraph (<code>p</code> element)
-is flowed into its target region in the specified lexical order; furthermore,
-the active time interval of each paragraph is timed in accordance to its
-parent or sibling according to the applicable time containment semantics —
-in this case, the division parent is interpreted (by default) as a parallel time
-container.</p><a id="ttml-example-body"></a><table class="example"><caption>Example Fragment – TTML Body</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>The content of a <em>Document Instance</em> is expressed in its body, which is
+ organized in terms of block and inline text elements. The hierarchical
+ organization of content elements serves a primary role in determining both
+ spatial and temporal relationships. For example, in <a href=
+ "#ttml-example-body"><b>Example Fragment – TTML Body</b></a>, each paragraph
+ (<code>p</code> element) is flowed into its target region in the specified
+ lexical order; furthermore, the active time interval of each paragraph is timed
+ in accordance to its parent or sibling according to the applicable time
+ containment semantics — in this case, the division parent is interpreted (by
+ default) as a parallel time container.</p><a id="ttml-example-body" name=
+ "ttml-example-body"></a>
+
+ <table class="example">
+ <caption>
+ Example Fragment – TTML Body
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<body region="subtitleArea">
<div>
<p xml:id="subtitle1" begin="0.76s" end="3.45s">
@@ -599,157 +1126,631 @@
</p>
</div>
</body>
-</pre></div>
-</td></tr></tbody></table><p>The first subtitle <a href="#ttml-example-subtitle-1"><b>Subtitle 1 – Time Interval [0.76, 3.45)</b></a> is
-presented during the time interval 0.76 to 3.45 seconds.
-This
-subtitle inherits its font family, font size,
-foreground color, and text alignment from the region into which it is
-presented. Since no region is explicitly specified on the paragraph,
-the nearest ancestor that specifies a region determines the
-targeted region. Note also that content is presented
-at the bottom (after edge) of the containing region due to the <code>tts:displayAlign="after"</code>
-being specified on the region definition.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>The notation "[<em>X</em>,<em>Y</em>]" denotes a closed
-interval from <em>X</em> to <em>Y</em>, including
-<em>X</em> and <em>Y</em>;
-"[<em>X</em>,<em>Y</em>)" denotes a right half-open
-interval from <em>X</em> to <em>Y</em>, including
-<em>X</em> but not including <em>Y</em>;
-"(<em>X</em>,<em>Y</em>]" denotes a left half-open
-interval from <em>X</em> to <em>Y</em>, not including
-<em>X</em> but including <em>Y</em>;
-"(<em>X</em>,<em>Y</em>)" denotes an open
-interval from <em>X</em> to <em>Y</em>, not including
-<em>X</em> or <em>Y</em>.
-</p></div><div class="note"><p class="prefix"><b>Note:</b></p><p>In this example, the <code>p</code> element is used as a presentational
-element rather than as a semantic element, i.e., as a linguistic paragraph.
-It is up to an author to determine which TTML elements are used to convey
-the intended meaning. For instance, this example could be written to use
-timing on <code>span</code> elements in order to preserve the integrity of
-semantic paragraphs.</p></div><a id="ttml-example-subtitle-1"></a><table class="example-images"><caption>Subtitle 1 – Time Interval [0.76, 3.45)</caption><tbody><tr><td><img src="images/subtitle1.png" alt="Subtitle 1"></td></tr></tbody></table><p>The second subtitle continues with the default style, except that it contains
-two lines of text with an intervening author-specified line break. Note the effects of
-the use of <code>tts:textAlign="center"</code> to specify the paragraph's alignment
-in the inline progression direction.</p><a id="ttml-example-subtitle-2"></a><table class="example-images"><caption>Subtitle 2 – Time Interval [5.0, 10.0)</caption><tbody><tr><td><img src="images/subtitle2.png" alt="Subtitle 2"></td></tr></tbody></table><p>The third subtitle continues, using a variant style which overrides the default style's
-foreground color with a different color.</p><a id="ttml-example-subtitle-3"></a><table class="example-images"><caption>Subtitle 3 – Time Interval [10.0, 16.0)</caption><tbody><tr><td><img src="images/subtitle3.png" alt="Subtitle 3"></td></tr></tbody></table><p>The fourth subtitle reverts to the default style.</p><a id="ttml-example-subtitle-4"></a><table class="example-images"><caption>Subtitle 4 – Time Interval [17.2, 23.0)</caption><tbody><tr><td><img src="images/subtitle4.png" alt="Subtitle 4"></td></tr></tbody></table><p>The fifth subtitle continues, again using a variant style which
-overrides the default style's foreground color with a different color.</p><a id="ttml-example-subtitle-5"></a><table class="example-images"><caption>Subtitle 5 – Time Interval [23.0, 27.0)</caption><tbody><tr><td><img src="images/subtitle5.png" alt="Subtitle 5"></td></tr></tbody></table><p>During the next active time interval, two distinct subtitles are simultaneously active, with
-the paragraphs expressing each subtitle using different styles that override color and paragraph
-text alignment of the default style. Note that the flow order is determined by the lexical
-order of elements as they appear in the content hierarchy.</p><a id="ttml-example-subtitle-6"></a><table class="example-images"><caption>Subtitles 6a and 6b – Time Interval [28.0, 34.6)</caption><tbody><tr><td><img src="images/subtitle6.png" alt="Subtitles 6a and 6b"></td></tr></tbody></table><p>The next subtitle is specified in a similar manner using
-a style override to give the paragraph right (end) justification in the
-inline progression direction.</p><a id="ttml-example-subtitle-7"></a><table class="example-images"><caption>Subtitle 7 – Time Interval [34.6, 45.0)</caption><tbody><tr><td><img src="images/subtitle7.png" alt="Subtitles 7a and 7b"></td></tr></tbody></table><p>The eighth subtitle uses the same style override as the previous
-subtitle in order to maintain the right (end) justification of the
-paragraph.</p><a id="ttml-example-subtitle-8"></a><table class="example-images"><caption>Subtitle 8 – Time Interval [47.3, 49.0)</caption><tbody><tr><td><img src="images/subtitle8.png" alt="Subtitle 8"></td></tr></tbody></table><p>During the final (ninth) active time interval, two distinct
-subtitles are again simultaneously active, but with a different
-style applied to the second paragraph to override the default color.
-Note that the flow order is determined by the lexical order of
-elements as they appear in the content hierarchy.</p><a id="ttml-example-subtitle-9"></a><table class="example-images"><caption>Subtitles 9a and 9b – Time Interval [53.5, 58.7)</caption><tbody><tr><td><img src="images/subtitle9.png" alt="Subtitles 9a and 9b"></td></tr></tbody></table><p>The examples shown above demonstrate the primary types of information that may
-be authored using TTML: metadata, styling, layout, timing, and content. In typical cases,
-styling and layout information are separately specified in a <em>Document Instance</em>. Content information
-is expressed in a hierarchical fashion that embodies the organization of both spatial (flow) and
-timing information. Content makes direct or indirect references to styling and layout information
-and may specify inline overrides to styling.</p></div></div><div class="div1">
-<h2><a id="definitions"></a>2 Definitions</h2><div class="div2">
-<h3><a id="acronyms"></a>2.1 Acronyms</h3><table class="acronyms" summary="Glossary List"><tr><td class="label"><b>DFXP</b></td><td class="def"><p>Distribution Format Exchange Profile</p></td></tr><tr><td class="label"><b>TT</b></td><td class="def"><p>Timed Text</p></td></tr><tr><td class="label"><b>TTML</b></td><td class="def"><p>Timed Text Markup Language</p></td></tr><tr><td class="label"><b>TTAF</b></td><td class="def"><p>Timed Text Authoring Format</p></td></tr><tr><td class="label"><b>TTWG</b></td><td class="def"><p>Timed Text Working Group</p></td></tr></table></div><div class="div2">
-<h3><a id="terms"></a>2.2 Terminology</h3><dl><dt class="label">Abstract Document Instance</dt><dd><p>An instance of an abstract data set as represented by a
-<em>Reduced XML Infoset</em>.</p></dd><dt class="label">Abstract Document Type</dt><dd><p>A set of constraints that defines a class of <em>XML Information
-Sets</em> <a href="#infoset">[XML InfoSet]</a>.</p></dd><dt class="label">Attribute Information Item</dt><dd><p>Each specified or defaulted attribute of an XML document corresponds with an attribute information
-item as defined by <a href="#infoset">[XML InfoSet]</a>, §2.3.</p></dd><dt class="label">Character Information Item</dt><dd><p>Each data character appearing in an XML document corresponds with a character information
-item as defined by <a href="#infoset">[XML InfoSet]</a>, §2.6.</p></dd><dt class="label">Computed Cell Size</dt><dd><p>The size (extent) of a cell computed by dividing the width of the <em>Root Container
-Region</em> by the column count, i.e., the number of cells in the horizontal axis, and by dividing
-the height of the <em>Root Container Region</em> by the row count, i.e., the number of cells in the vertical
-axis, where the column and row counts are determined by the <code>ttp:cellResolution</code> parameter attribute.</p></dd><dt class="label">Content Processor</dt><dd><p>A processing system capable of importing (receiving) Timed Text Markup Language
-content for the purpose of transforming, presenting, or otherwise processing the content.</p></dd><dt class="label">Content Region</dt><dd><p>A logical region into which rendered content is placed when modeling or
-performing presentation processing.</p></dd><dt class="label">Document Instance</dt><dd><p>A concrete realization of a Timed Text Markup Language document, where the concrete form
-is specific to the context of reference. For example, a sequence of bytes that represents an
-XML serialization of a Timed Text document, an internal, parsed representation of such a
-Timed Text document, etc.</p></dd><dt class="label">Document Interchange Context</dt><dd><p>The implied context or environment external to a <em>Content Processor</em> in
-which document interchange occurs, and in which out-of-band protocols or specifications
-may define certain behavioral defaults, such as an implied profile.</p></dd><dt class="label">Document Processing Context</dt><dd><p>The implied context or environment internal to a <em>Content Processor</em> in
-which document processing occurs, and in which out-of-band protocols or specifications
-may define certain behavioral defaults, such as the establishment or creation of a
-<em>Synthetic Document Syncbase</em>.</p></dd><dt class="label">Element Information Item</dt><dd><p>Each element appearing in an XML document corresponds with an element information
-item as defined by <a href="#infoset">[XML InfoSet]</a>, §2.2.</p></dd><dt class="label">Exchange Profile</dt><dd><p>A profile of content that serves a set of needs for content interchange.</p></dd><dt class="label">Extension</dt><dd><p>A syntactic or semantic expression or capability that is defined and
-labeled (using a extension designation) in another (public or private)
-specification.</p></dd><dt class="label">Feature</dt><dd><p>A syntactic or semantic expression or capability that is defined and
-labeled (using a feature designation) in this specification (or a
-future revision of this specification).</p></dd><dt class="label">Presentation Processor</dt><dd><p>A <em>Content Processor</em> which purpose is to layout, format, and render,
-i.e., to present, <em>Timed Text Markup Language</em> content by applying the presentation semantics
-defined in this specification.</p></dd><dt class="label">Processor</dt><dd><p>See <em>Content Processor</em>.</p></dd><dt class="label">Profile Definition Document</dt><dd><p>A document that defines a specific collection of features and extensions
-for which support is required or optional in a recipient content
-processor.</p></dd><dt class="label">Region</dt><dd><p>A logical construct that models authorial intention regarding
-desired or potential presentation processing, and which is represented as
-a rectangular area of a presentation surface into which content
-is composed and rendered during presentation processing.</p></dd><dt class="label">Reduced XML Infoset</dt><dd><p>An XML Information Set <a href="#infoset">[XML InfoSet]</a> that satisfies the
-constraints specify by <a href="#reduced-infoset"><b>A Reduced XML Infoset</b></a>.</p></dd><dt class="label">Related Media Object</dt><dd><p>A (possibly null) media object associated with or otherwise related
-to a <em>Document Instance</em>. For example, an aggregate audio/video media
-object for which a <em>Document Instance</em> provides caption or subtitle
-information, and with which that <em>Document Instance</em> is associated.</p></dd><dt class="label">Related Media Object Region</dt><dd><p>When a non-null <em>Related Media Object</em> exists, the region of this media object,
-expressed in the coordinate system that applies to the <em>Document Instance</em> that is associated with the
-related media object.</p></dd><dt class="label">Root Container Region</dt><dd><p>A logical region that establishes a coordinate system into which
-<em>Document Instance</em> content regions are placed and optionally clipped.</p></dd><dt class="label">Root Temporal Extent</dt><dd><p>
-The temporal extent (interval) defined by the temporal beginning and ending of a <em>Document Instance</em> in relationship with some external application or presentation context.
-</p></dd><dt class="label">SMPTE Time Code</dt><dd><p>A time code whose format and semantics are established by <a href="#smpte12m">[SMPTE 12M]</a>,
-which may be embedded into or otherwise associated with media content, such
-as a broadcast audio/video stream.</p></dd><dt class="label">Synthetic Document Syncbase</dt><dd><p>A document level <a href="http://www.w3.org/TR/2005/REC-SMIL2-20051213/smil-timing.html#Timing-Syncbases">syncbase</a>
-<a href="#smil21">[SMIL 2.1]</a>, § 10.7.1, synthesized or otherwise established by
-the <em>Document Processing Context</em> in accordance with the
-<em>Related Media Object</em> or other processing criteria.</p></dd><dt class="label">Synthetic SMPTE Document Syncbase</dt><dd><p>A <em>Synthetic Document Syncbase</em> constructed from <em>SMPTE Time
-Code</em> values embedded in or associated with the <em>Related Media Object</em> or
-otherwise determined by the <em>Document Processing Context</em>.</p></dd><dt class="label">Timed Text</dt><dd><p>Textual information that is intrinsically or extrinsically
-associated with timing information.</p></dd><dt class="label">Timed Text Markup Language</dt><dd><p>A content type that represents timed text media for the purpose of
-interchange among authoring systems.</p></dd><dt class="label">Timed Text Authoring System</dt><dd><p>A content authoring system capable of importing and exporting
-Timed Text Markup Language content.</p></dd><dt class="label">Transformation Processor</dt><dd><p>A <em>Content Processor</em> which purpose is to transform or otherwise rewrite
-<em>Timed Text Markup Language</em> content to either <em>Timed Text Markup Language</em>
-or to another (arbitrary) content format. An example of the first is a processor that removes
-or rewrites TTML features so as to conform to a profile of TTML. An example of the latter is
-a processor that translates TTML into a completely different timed text format. Because this
-specification does not otherwise define a target profile or format for transformation processing,
-no further transformation semantics are defined by this specification.</p></dd><dt class="label">Valid Abstract Document Instance</dt><dd><p>An <em>Abstract Document Instance</em> which has been assessed for validity
-and found to be valid as defined by <a href="#doctypes"><b>4 Document Types</b></a>.</p></dd></dl></div><div class="div2">
-<h3><a id="conventions"></a>2.3 Documentation Conventions</h3><p>Within normative prose in this specification, the words
-<em>may</em>, <em>should</em>, and <em>must</em> are
-defined as follows:</p><dl class="conformance-keywords"><dt class="label">may</dt><dd><p>Conforming documents and/or TTML processors are permitted to,
-but need not behave as described. </p></dd><dt class="label">should</dt><dd><p>Conforming documents and/or TTML processors are strongly
-recommended to, but need not behave as described.</p></dd><dt class="label">must</dt><dd><p>Conforming documents and/or TTML processors are required
-to behave as described; otherwise, they are in error. </p></dd></dl><p>If normative specification language takes an imperative form,
-then it is to be treated as if the term <span class="strong">must</span>
-applies. Furthermore, if normative language takes a declarative form,
-and this language is governed by <span class="strong">must</span>,
-then it is also to be treated as if the term <span class="strong">must</span>
-applies.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>For example, the phrases "treat X as an error" and "consider X
-as an error" are to be read as mandatory requirements in the context of use. Similarly, if the specification
-prose is "X must apply", "X applies", or "X is mandatory", and "X" is further defined as "X is Y and Z",
-then, by transitive closure, this last declarative phrase is to be read as "Y is mandatory" and
-"Z is mandatory" in the context of use.</p></div><p>All normative syntactic definitions of XML representations and
-other related terms are depicted with a light yellow-orange background color
-and labeled as "XML Representation" or "Syntax Representation", such
-as in the following:</p><a id="elt-syntax-example"></a><table class="syntax"><caption>XML Representation – Element Information Item: example</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>The first subtitle <a href="#ttml-example-subtitle-1"><b>Subtitle 1 – Time
+ Interval [0.76, 3.45)</b></a> is presented during the time interval 0.76 to 3.45
+ seconds. This subtitle inherits its font family, font size, foreground color, and
+ text alignment from the region into which it is presented. Since no region is
+ explicitly specified on the paragraph, the nearest ancestor that specifies a
+ region determines the targeted region. Note also that content is presented at the
+ bottom (after edge) of the containing region due to the
+ <code>tts:displayAlign="after"</code> being specified on the region
+ definition.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The notation "[<em>X</em>,<em>Y</em>]" denotes a closed interval from
+ <em>X</em> to <em>Y</em>, including <em>X</em> and <em>Y</em>;
+ "[<em>X</em>,<em>Y</em>)" denotes a right half-open interval from <em>X</em> to
+ <em>Y</em>, including <em>X</em> but not including <em>Y</em>;
+ "(<em>X</em>,<em>Y</em>]" denotes a left half-open interval from <em>X</em> to
+ <em>Y</em>, not including <em>X</em> but including <em>Y</em>;
+ "(<em>X</em>,<em>Y</em>)" denotes an open interval from <em>X</em> to
+ <em>Y</em>, not including <em>X</em> or <em>Y</em>.</p>
+ </div>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>In this example, the <code>p</code> element is used as a presentational
+ element rather than as a semantic element, i.e., as a linguistic paragraph. It
+ is up to an author to determine which TTML elements are used to convey the
+ intended meaning. For instance, this example could be written to use timing on
+ <code>span</code> elements in order to preserve the integrity of semantic
+ paragraphs.</p>
+ </div><a id="ttml-example-subtitle-1" name="ttml-example-subtitle-1"></a>
+
+ <table class="example-images">
+ <caption>
+ Subtitle 1 – Time Interval [0.76, 3.45)
+ </caption>
+
+ <tbody>
+ <tr>
+ <td><img src="images/subtitle1.png" alt="Subtitle 1"></td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>The second subtitle continues with the default style, except that it contains
+ two lines of text with an intervening author-specified line break. Note the
+ effects of the use of <code>tts:textAlign="center"</code> to specify the
+ paragraph's alignment in the inline progression direction.</p><a id=
+ "ttml-example-subtitle-2" name="ttml-example-subtitle-2"></a>
+
+ <table class="example-images">
+ <caption>
+ Subtitle 2 – Time Interval [5.0, 10.0)
+ </caption>
+
+ <tbody>
+ <tr>
+ <td><img src="images/subtitle2.png" alt="Subtitle 2"></td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>The third subtitle continues, using a variant style which overrides the
+ default style's foreground color with a different color.</p><a id=
+ "ttml-example-subtitle-3" name="ttml-example-subtitle-3"></a>
+
+ <table class="example-images">
+ <caption>
+ Subtitle 3 – Time Interval [10.0, 16.0)
+ </caption>
+
+ <tbody>
+ <tr>
+ <td><img src="images/subtitle3.png" alt="Subtitle 3"></td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>The fourth subtitle reverts to the default style.</p><a id=
+ "ttml-example-subtitle-4" name="ttml-example-subtitle-4"></a>
+
+ <table class="example-images">
+ <caption>
+ Subtitle 4 – Time Interval [17.2, 23.0)
+ </caption>
+
+ <tbody>
+ <tr>
+ <td><img src="images/subtitle4.png" alt="Subtitle 4"></td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>The fifth subtitle continues, again using a variant style which overrides the
+ default style's foreground color with a different color.</p><a id=
+ "ttml-example-subtitle-5" name="ttml-example-subtitle-5"></a>
+
+ <table class="example-images">
+ <caption>
+ Subtitle 5 – Time Interval [23.0, 27.0)
+ </caption>
+
+ <tbody>
+ <tr>
+ <td><img src="images/subtitle5.png" alt="Subtitle 5"></td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>During the next active time interval, two distinct subtitles are
+ simultaneously active, with the paragraphs expressing each subtitle using
+ different styles that override color and paragraph text alignment of the default
+ style. Note that the flow order is determined by the lexical order of elements as
+ they appear in the content hierarchy.</p><a id="ttml-example-subtitle-6" name=
+ "ttml-example-subtitle-6"></a>
+
+ <table class="example-images">
+ <caption>
+ Subtitles 6a and 6b – Time Interval [28.0, 34.6)
+ </caption>
+
+ <tbody>
+ <tr>
+ <td><img src="images/subtitle6.png" alt="Subtitles 6a and 6b"></td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>The next subtitle is specified in a similar manner using a style override to
+ give the paragraph right (end) justification in the inline progression
+ direction.</p><a id="ttml-example-subtitle-7" name="ttml-example-subtitle-7"></a>
+
+ <table class="example-images">
+ <caption>
+ Subtitle 7 – Time Interval [34.6, 45.0)
+ </caption>
+
+ <tbody>
+ <tr>
+ <td><img src="images/subtitle7.png" alt="Subtitles 7a and 7b"></td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>The eighth subtitle uses the same style override as the previous subtitle in
+ order to maintain the right (end) justification of the paragraph.</p><a id=
+ "ttml-example-subtitle-8" name="ttml-example-subtitle-8"></a>
+
+ <table class="example-images">
+ <caption>
+ Subtitle 8 – Time Interval [47.3, 49.0)
+ </caption>
+
+ <tbody>
+ <tr>
+ <td><img src="images/subtitle8.png" alt="Subtitle 8"></td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>During the final (ninth) active time interval, two distinct subtitles are
+ again simultaneously active, but with a different style applied to the second
+ paragraph to override the default color. Note that the flow order is determined
+ by the lexical order of elements as they appear in the content
+ hierarchy.</p><a id="ttml-example-subtitle-9" name="ttml-example-subtitle-9"></a>
+
+ <table class="example-images">
+ <caption>
+ Subtitles 9a and 9b – Time Interval [53.5, 58.7)
+ </caption>
+
+ <tbody>
+ <tr>
+ <td><img src="images/subtitle9.png" alt="Subtitles 9a and 9b"></td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>The examples shown above demonstrate the primary types of information that may
+ be authored using TTML: metadata, styling, layout, timing, and content. In
+ typical cases, styling and layout information are separately specified in a
+ <em>Document Instance</em>. Content information is expressed in a hierarchical
+ fashion that embodies the organization of both spatial (flow) and timing
+ information. Content makes direct or indirect references to styling and layout
+ information and may specify inline overrides to styling.</p>
+ </div>
+ </div>
+
+ <div class="div1">
+ <h2><a id="definitions" name="definitions"></a>2 Definitions</h2>
+
+ <div class="div2">
+ <h3><a id="acronyms" name="acronyms"></a>2.1 Acronyms</h3>
+
+ <table class="acronyms" summary="Glossary List">
+ <tr>
+ <td class="label"><b>DFXP</b></td>
+
+ <td class="def">
+ <p>Distribution Format Exchange Profile</p>
+ </td>
+ </tr>
+
+ <tr>
+ <td class="label"><b>TT</b></td>
+
+ <td class="def">
+ <p>Timed Text</p>
+ </td>
+ </tr>
+
+ <tr>
+ <td class="label"><b>TTML</b></td>
+
+ <td class="def">
+ <p>Timed Text Markup Language</p>
+ </td>
+ </tr>
+
+ <tr>
+ <td class="label"><b>TTAF</b></td>
+
+ <td class="def">
+ <p>Timed Text Authoring Format</p>
+ </td>
+ </tr>
+
+ <tr>
+ <td class="label"><b>TTWG</b></td>
+
+ <td class="def">
+ <p>Timed Text Working Group</p>
+ </td>
+ </tr>
+ </table>
+ </div>
+
+ <div class="div2">
+ <h3><a id="terms" name="terms"></a>2.2 Terminology</h3>
+
+ <dl>
+ <dt class="label">Abstract Document Instance</dt>
+
+ <dd>
+ <p>An instance of an abstract data set as represented by a <em>Reduced XML
+ Infoset</em>.</p>
+ </dd>
+
+ <dt class="label">Abstract Document Type</dt>
+
+ <dd>
+ <p>A set of constraints that defines a class of <em>XML Information Sets</em>
+ <a href="#infoset">[XML InfoSet]</a>.</p>
+ </dd>
+
+ <dt class="label">Attribute Information Item</dt>
+
+ <dd>
+ <p>Each specified or defaulted attribute of an XML document corresponds with
+ an attribute information item as defined by <a href="#infoset">[XML
+ InfoSet]</a>, §2.3.</p>
+ </dd>
+
+ <dt class="label">Character Information Item</dt>
+
+ <dd>
+ <p>Each data character appearing in an XML document corresponds with a
+ character information item as defined by <a href="#infoset">[XML
+ InfoSet]</a>, §2.6.</p>
+ </dd>
+
+ <dt class="label">Computed Cell Size</dt>
+
+ <dd>
+ <p>The size (extent) of a cell computed by dividing the width of the <em>Root
+ Container Region</em> by the column count, i.e., the number of cells in the
+ horizontal axis, and by dividing the height of the <em>Root Container
+ Region</em> by the row count, i.e., the number of cells in the vertical axis,
+ where the column and row counts are determined by the
+ <code>ttp:cellResolution</code> parameter attribute.</p>
+ </dd>
+
+ <dt class="label">Content Processor</dt>
+
+ <dd>
+ <p>A processing system capable of importing (receiving) Timed Text Markup
+ Language content for the purpose of transforming, presenting, or otherwise
+ processing the content.</p>
+ </dd>
+
+ <dt class="label">Content Region</dt>
+
+ <dd>
+ <p>A logical region into which rendered content is placed when modeling or
+ performing presentation processing.</p>
+ </dd>
+
+ <dt class="label">Document Instance</dt>
+
+ <dd>
+ <p>A concrete realization of a Timed Text Markup Language document, where the
+ concrete form is specific to the context of reference. For example, a
+ sequence of bytes that represents an XML serialization of a Timed Text
+ document, an internal, parsed representation of such a Timed Text document,
+ etc.</p>
+ </dd>
+
+ <dt class="label">Document Interchange Context</dt>
+
+ <dd>
+ <p>The implied context or environment external to a <em>Content
+ Processor</em> in which document interchange occurs, and in which out-of-band
+ protocols or specifications may define certain behavioral defaults, such as
+ an implied profile.</p>
+ </dd>
+
+ <dt class="label">Document Processing Context</dt>
+
+ <dd>
+ <p>The implied context or environment internal to a <em>Content
+ Processor</em> in which document processing occurs, and in which out-of-band
+ protocols or specifications may define certain behavioral defaults, such as
+ the establishment or creation of a <em>Synthetic Document Syncbase</em>.</p>
+ </dd>
+
+ <dt class="label">Element Information Item</dt>
+
+ <dd>
+ <p>Each element appearing in an XML document corresponds with an element
+ information item as defined by <a href="#infoset">[XML InfoSet]</a>,
+ §2.2.</p>
+ </dd>
+
+ <dt class="label">Exchange Profile</dt>
+
+ <dd>
+ <p>A profile of content that serves a set of needs for content
+ interchange.</p>
+ </dd>
+
+ <dt class="label">Extension</dt>
+
+ <dd>
+ <p>A syntactic or semantic expression or capability that is defined and
+ labeled (using a extension designation) in another (public or private)
+ specification.</p>
+ </dd>
+
+ <dt class="label">Feature</dt>
+
+ <dd>
+ <p>A syntactic or semantic expression or capability that is defined and
+ labeled (using a feature designation) in this specification (or a future
+ revision of this specification).</p>
+ </dd>
+
+ <dt class="label">Presentation Processor</dt>
+
+ <dd>
+ <p>A <em>Content Processor</em> which purpose is to layout, format, and
+ render, i.e., to present, <em>Timed Text Markup Language</em> content by
+ applying the presentation semantics defined in this specification.</p>
+ </dd>
+
+ <dt class="label">Processor</dt>
+
+ <dd>
+ <p>See <em>Content Processor</em>.</p>
+ </dd>
+
+ <dt class="label">Profile Definition Document</dt>
+
+ <dd>
+ <p>A document that defines a specific collection of features and extensions
+ for which support is required or optional in a recipient content
+ processor.</p>
+ </dd>
+
+ <dt class="label">Region</dt>
+
+ <dd>
+ <p>A logical construct that models authorial intention regarding desired or
+ potential presentation processing, and which is represented as a rectangular
+ area of a presentation surface into which content is composed and rendered
+ during presentation processing.</p>
+ </dd>
+
+ <dt class="label">Reduced XML Infoset</dt>
+
+ <dd>
+ <p>An XML Information Set <a href="#infoset">[XML InfoSet]</a> that satisfies
+ the constraints specify by <a href="#reduced-infoset"><b>A Reduced XML
+ Infoset</b></a>.</p>
+ </dd>
+
+ <dt class="label">Related Media Object</dt>
+
+ <dd>
+ <p>A (possibly null) media object associated with or otherwise related to a
+ <em>Document Instance</em>. For example, an aggregate audio/video media
+ object for which a <em>Document Instance</em> provides caption or subtitle
+ information, and with which that <em>Document Instance</em> is
+ associated.</p>
+ </dd>
+
+ <dt class="label">Related Media Object Region</dt>
+
+ <dd>
+ <p>When a non-null <em>Related Media Object</em> exists, the region of this
+ media object, expressed in the coordinate system that applies to the
+ <em>Document Instance</em> that is associated with the related media
+ object.</p>
+ </dd>
+
+ <dt class="label">Root Container Region</dt>
+
+ <dd>
+ <p>A logical region that establishes a coordinate system into which
+ <em>Document Instance</em> content regions are placed and optionally
+ clipped.</p>
+ </dd>
+
+ <dt class="label">Root Temporal Extent</dt>
+
+ <dd>
+ <p>The temporal extent (interval) defined by the temporal beginning and
+ ending of a <em>Document Instance</em> in relationship with some external
+ application or presentation context.</p>
+ </dd>
+
+ <dt class="label">SMPTE Time Code</dt>
+
+ <dd>
+ <p>A time code whose format and semantics are established by <a href=
+ "#smpte12m">[SMPTE 12M]</a>, which may be embedded into or otherwise
+ associated with media content, such as a broadcast audio/video stream.</p>
+ </dd>
+
+ <dt class="label">Synthetic Document Syncbase</dt>
+
+ <dd>
+ <p>A document level <a href=
+ "http://www.w3.org/TR/2005/REC-SMIL2-20051213/smil-timing.html#Timing-Syncbases">
+ syncbase</a> <a href="#smil21">[SMIL 2.1]</a>, § 10.7.1, synthesized or
+ otherwise established by the <em>Document Processing Context</em> in
+ accordance with the <em>Related Media Object</em> or other processing
+ criteria.</p>
+ </dd>
+
+ <dt class="label">Synthetic SMPTE Document Syncbase</dt>
+
+ <dd>
+ <p>A <em>Synthetic Document Syncbase</em> constructed from <em>SMPTE Time
+ Code</em> values embedded in or associated with the <em>Related Media
+ Object</em> or otherwise determined by the <em>Document Processing
+ Context</em>.</p>
+ </dd>
+
+ <dt class="label">Timed Text</dt>
+
+ <dd>
+ <p>Textual information that is intrinsically or extrinsically associated with
+ timing information.</p>
+ </dd>
+
+ <dt class="label">Timed Text Markup Language</dt>
+
+ <dd>
+ <p>A content type that represents timed text media for the purpose of
+ interchange among authoring systems.</p>
+ </dd>
+
+ <dt class="label">Timed Text Authoring System</dt>
+
+ <dd>
+ <p>A content authoring system capable of importing and exporting Timed Text
+ Markup Language content.</p>
+ </dd>
+
+ <dt class="label">Transformation Processor</dt>
+
+ <dd>
+ <p>A <em>Content Processor</em> which purpose is to transform or otherwise
+ rewrite <em>Timed Text Markup Language</em> content to either <em>Timed Text
+ Markup Language</em> or to another (arbitrary) content format. An example of
+ the first is a processor that removes or rewrites TTML features so as to
+ conform to a profile of TTML. An example of the latter is a processor that
+ translates TTML into a completely different timed text format. Because this
+ specification does not otherwise define a target profile or format for
+ transformation processing, no further transformation semantics are defined by
+ this specification.</p>
+ </dd>
+
+ <dt class="label">Valid Abstract Document Instance</dt>
+
+ <dd>
+ <p>An <em>Abstract Document Instance</em> which has been assessed for
+ validity and found to be valid as defined by <a href="#doctypes"><b>4
+ Document Types</b></a>.</p>
+ </dd>
+ </dl>
+ </div>
+
+ <div class="div2">
+ <h3><a id="conventions" name="conventions"></a>2.3 Documentation Conventions</h3>
+
+ <p>Within normative prose in this specification, the words <em>may</em>,
+ <em>should</em>, and <em>must</em> are defined as follows:</p>
+
+ <dl class="conformance-keywords">
+ <dt class="label">may</dt>
+
+ <dd>
+ <p>Conforming documents and/or TTML processors are permitted to, but need not
+ behave as described.</p>
+ </dd>
+
+ <dt class="label">should</dt>
+
+ <dd>
+ <p>Conforming documents and/or TTML processors are strongly recommended to,
+ but need not behave as described.</p>
+ </dd>
+
+ <dt class="label">must</dt>
+
+ <dd>
+ <p>Conforming documents and/or TTML processors are required to behave as
+ described; otherwise, they are in error.</p>
+ </dd>
+ </dl>
+
+ <p>If normative specification language takes an imperative form, then it is to be
+ treated as if the term <span class="strong">must</span> applies. Furthermore, if
+ normative language takes a declarative form, and this language is governed by
+ <span class="strong">must</span>, then it is also to be treated as if the term
+ <span class="strong">must</span> applies.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>For example, the phrases "treat X as an error" and "consider X as an error"
+ are to be read as mandatory requirements in the context of use. Similarly, if
+ the specification prose is "X must apply", "X applies", or "X is mandatory",
+ and "X" is further defined as "X is Y and Z", then, by transitive closure, this
+ last declarative phrase is to be read as "Y is mandatory" and "Z is mandatory"
+ in the context of use.</p>
+ </div>
+
+ <p>All normative syntactic definitions of XML representations and other related
+ terms are depicted with a light yellow-orange background color and labeled as
+ "XML Representation" or "Syntax Representation", such as in the
+ following:</p><a id="elt-syntax-example" name="elt-syntax-example"></a>
+
+ <table class="syntax">
+ <caption>
+ XML Representation – Element Information Item: example
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<example
<span class="reqattr">count</span> = integer
size = (<em>large</em>|<em>medium</em>|<em>small</em>) : medium>
<em>Content:</em> (all | any*)
</example>
-</pre></div>
-</td></tr></tbody></table><p>In an XML representation, bold-face attribute names (e.g. <span class="strong">count</span> above) indicate a required attribute
-information item, and the rest are optional. Where an attribute
-information item has an enumerated type definition, the values are
-shown separated by vertical bars, as for <code>size</code> above; if
-there is a default value, it is shown following a colon. Where an
-attribute information item has a built-in simple type definition
-defined in <a href="#xsd-2">[XML Schema Part 2]</a>, a hyperlink to its definition
-therein is given.</p><p>The allowed content of the information item is shown as a grammar
-fragment, using the Kleene operators <code>?</code>, <code>*</code>
-and <code>+</code>. Each element name therein is a hyperlink to its
-own illustration.</p><p>The term linear white-space (LWSP) is to be interpreted as a non-empty sequence of
-SPACE (U+0020), TAB (U+0009), CARRIAGE RETURN (U+000D), or LINE FEED (U+000A),
-which corresponds to production [3] <code>S</code> as defined by <a href="#xml10">[XML 1.0]</a>.</p><p>All content of this specification that is not explicitly marked as
-non-normative is considered to be normative. If a section or appendix
-header contains the expression "Non-Normative", then the entirety
-of the section or appendix is considered non-normative.</p><p>All paragraphs marked as a <span class="strong">Note</span> are considered non-normative.</p><p>Example code fragments are depicted with a light blue-green
-background color and labeled as "Example Fragment", such as in
-the following:</p><a id="example-fragment-1"></a><table class="example"><caption>Example Fragment – Sample</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>In an XML representation, bold-face attribute names (e.g. <span class=
+ "strong">count</span> above) indicate a required attribute information item, and
+ the rest are optional. Where an attribute information item has an enumerated type
+ definition, the values are shown separated by vertical bars, as for
+ <code>size</code> above; if there is a default value, it is shown following a
+ colon. Where an attribute information item has a built-in simple type definition
+ defined in <a href="#xsd-2">[XML Schema Part 2]</a>, a hyperlink to its
+ definition therein is given.</p>
+
+ <p>The allowed content of the information item is shown as a grammar fragment,
+ using the Kleene operators <code>?</code>, <code>*</code> and <code>+</code>.
+ Each element name therein is a hyperlink to its own illustration.</p>
+
+ <p>The term linear white-space (LWSP) is to be interpreted as a non-empty
+ sequence of SPACE (U+0020), TAB (U+0009), CARRIAGE RETURN (U+000D), or LINE FEED
+ (U+000A), which corresponds to production [3] <code>S</code> as defined by
+ <a href="#xml10">[XML 1.0]</a>.</p>
+
+ <p>All content of this specification that is not explicitly marked as
+ non-normative is considered to be normative. If a section or appendix header
+ contains the expression "Non-Normative", then the entirety of the section or
+ appendix is considered non-normative.</p>
+
+ <p>All paragraphs marked as a <span class="strong">Note</span> are considered
+ non-normative.</p>
+
+ <p>Example code fragments are depicted with a light blue-green background color
+ and labeled as "Example Fragment", such as in the following:</p><a id=
+ "example-fragment-1" name="example-fragment-1"></a>
+
+ <table class="example">
+ <caption>
+ Example Fragment – Sample
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<tt xml:lang="" xmlns="http://www.w3.org/ns/ttml">
<head>
<metadata/>
@@ -758,240 +1759,660 @@
</head>
<body/>
</tt>
-</pre></div>
-</td></tr></tbody></table></div></div><div class="div1">
-<h2><a id="conformance"></a>3 Conformance</h2><p>This section specifies the general conformance requirements for
-TTML Content and processors.</p><div class="div2">
-<h3><a id="conformance-content"></a>3.1 Content Conformance</h3><p>A TTML <em>Document Instance</em> conforms to this specification if the following criteria are
-satisfied:</p><ol class="enumar"><li><p>When transporting a <em>Document Instance</em> in a <em>Document Interchange Context</em> in which a
-Media Type <a href="#media-types">[Media Types]</a> identifies the content type of the interchanged <em>Document Instance</em>, then the specified media type is
-<code>application/ttml+xml</code> in conformance with <a href="#xml-media">[XML Media Types]</a> § 7, with which an optional
-<code>profile</code> parameter may appear, the value of which
-conforms to
-a profile designator as
-defined by
-<a href="#vocabulary-profiles"><b>5.2 Profiles</b></a>.</p></li><li><p>The <em>Document Instance</em> is or can be represented as a Reduced XML
-Infoset as defined by <a href="#reduced-infoset"><b>A Reduced XML Infoset</b></a>.</p></li><li><p>The Reduced XML
-Infoset that corresponds to the <em>Document Instance</em> is or can
-be associated with one of the <em>Abstract Document Types</em> defined by
-<a href="#doctypes"><b>4 Document Types</b></a>.</p></li><li><p>The <em>Reduced XML Infoset</em> that corresponds to the <em>Document Instance</em> is a
-<em>Valid Abstract Document Instance</em> of the associated
-<em>Abstract Document Type</em>.</p></li><li><p>The <em>Reduced XML Infoset</em> satisfies all additional mandatory syntactic and
-semantic constraints defined by this specification. In addition, this Infoset
-should satisfy the web content accessibility guidelines specified by
-<a href="#wcag">[WCAG]</a>.</p></li></ol></div><div class="div2">
-<h3><a id="conformance-processor"></a>3.2 Processor Conformance</h3><div class="div3">
-<h4><a id="conformance-generic-processor"></a>3.2.1 Generic Processor Conformance</h4><p>A TTML <em>Content Processor</em> conforms to this specification if the following
-generic processor criteria are
-satisfied:</p><ol class="enumar"><li><p>The processor provides at least one mechanism for notionally
-instantiating a Reduced XML
-Infoset representation of a conformant <em>Document Instance</em>.</p></li><li><p>If a process does or can perform validation of a candidate
-<em>Document Instance</em>, then it provides at least one mechanism to
-implicitly or explicitly associate the
-<em>Reduced XML Infoset</em> representation
-of a conformant <em>Document Instance</em> with one of the
-<em>Abstract Document Types</em> defined by
-<a href="#doctypes"><b>4 Document Types</b></a>.</p></li><li><p>The processor does not <em>a priori</em> reject or abort the
-processing of a conformant <em>Document Instance</em>
-unless the processor does not support some required
-(mandatory) feature specified or implied by a TTML profile
-declared to apply to the <em>Document Instance</em>.</p></li><li><p>The processor supports all mandatory processing semantics defined by this specification.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>The phrase <em>mandatory semantics</em> refers to all explicit use of the conformance
-key phrases <span class="strong">must</span> and <span class="strong">must not</span> as well as any
-declarative statement that can be reasonably inferred from such key phrases. For example, these
-mandatory semantics include support for all features marked as mandatory in <a href="#feature-support"><b>D.2 Feature Support</b></a>.</p></div></li><li><p>If the processor supports some optional processing semantics defined by this specification,
-then it does so in a manner consistent with the defined semantics.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>The phrase <em>optional semantics</em> refers to all explicit use of the conformance
-key phrases <span class="strong">should</span>, <span class="strong">should not</span>,
-<span class="strong">may</span>, and <span class="strong">may not</span>,
-as well as any declarative statement that can be reasonably inferred from such key phrases. For example, these
-optional semantics include support for all features marked as optional in <a href="#feature-support"><b>D.2 Feature Support</b></a>.</p></div></li></ol></div><div class="div3">
-<h4><a id="conformance-transformation-processor"></a>3.2.2 Transformation Processor Conformance</h4><p>A TTML <em>Content Processor</em> is a conformant TTML <em>Transformation Processor</em> if
-the following criteria are satisfied:</p><ol class="enumar"><li><p>The processor satisfies all requirements specified by
-<a href="#conformance-generic-processor"><b>3.2.1 Generic Processor Conformance</b></a>.</p></li><li><p>The processor supports the DFXP Transformation profile as specified
-by <a href="#profile-dfxp-transformation"><b>F.1 DFXP Transformation Profile</b></a>.</p></li></ol></div><div class="div3">
-<h4><a id="conformance-presentation-processor"></a>3.2.3 Presentation Processor Conformance</h4><p>A TTML <em>Content Processor</em> is a conformant TTML <em>Presentation Processor</em> if
-the following criteria are satisfied:</p><ol class="enumar"><li><p>The processor satisfies all requirements specified by
-<a href="#conformance-generic-processor"><b>3.2.1 Generic Processor Conformance</b></a>.</p></li><li><p>The processor supports the DFXP Presentation profile as specified
-by <a href="#profile-dfxp-presentation"><b>F.2 DFXP Presentation Profile</b></a>.</p></li></ol></div></div><div class="div2">
-<h3><a id="claims"></a>3.3 Claims</h3><p>Any claim of compliance with respect to the conformance of a TTML <em>Document Instance</em> or
-<em>Content Processor</em> must make
-reference to an implementation compliance statement (ICS).</p><p>An implementation compliance statement must identify all mandatory
-and optional features of this specification that are satisfied by the
-document instance or the content processor implementation. In particular, the statement must
-identify the utilized or supported TTML vocabulary profile(s) as
-defined by <a href="#vocabulary-profiles"><b>5.2 Profiles</b></a>, and, if a subset or
-superset profile is used or supported, then what features are excluded
-or included in the subset or superset profile.</p><p>A <em>Document Instance</em> for which a compliance claim is made
-must specify
-either (1)
-a <code>ttp:profile</code> attribute on its root
-<code>tt</code>
-element
-as defined by <a href="#parameter-attribute-profile"><b>6.2.8 ttp:profile</b></a>
-or (2)
-a <code>ttp:profile</code> element as a child of the
-<code>head</code> element as defined by
-<a href="#parameter-vocabulary-profile"><b>6.1.1 ttp:profile</b></a>.</p></div></div><div class="div1">
-<h2><a id="doctypes"></a>4 Document Types</h2><p>This section defines the following TTML <em>Abstract Document Types</em>:</p><ul><li><p><a href="#ttml-content-doctype"><b>4.1 TTML Content</b></a></p></li></ul><p>Each <em>Abstract Document Type</em> consists of the following constraints:</p><ul><li><p>a non-empty collection of element types, where each element type consists of a name,
-a (possibly empty) collection of attributes, and a content specification</p></li><li><p>a non-empty collection of element types that may appear as the document element</p></li></ul><p>An <em>Abstract Document Instance</em> may be assessed in terms of validity,
-and is considered to be a <em>Valid Abstract Document Instance</em> if it
-satisfies the following condition: if after</p><ol class="enumar"><li><p>pruning all element information
-items whose names are not members of the collection of element types defined
-by the associated <em>Abstract Document Type</em>, then</p></li><li><p>pruning character
-information item children from any remaining element in case that all
-character children of the element denote XML whitespace characters and the element's type
-is defined as empty in the associated <em>Abstract Document Type</em>, and then</p></li><li><p>pruning all attribute
-information items having expanded names such that the namespace URI of the
-expanded names are not listed in <a href="#namespace-vocab-table"><b>Table 1 – Namespaces</b></a>,</p></li></ol><p>then the document element is one of the document
-element types permitted by the associated <em>Abstract Document Type</em>,
-the descendants of the document
-element satisfy their respective element type's content
-specifications, all required attributes are present, and the declared
-value of each attribute satisfies the type declared by the
-associated <em>Abstract Document Type</em>.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>While a conformant processor may not <em>a priori</em> reject a
-conformant <em>Document Instance</em>, a given <em>Document Instance</em> may be
-constrained by the author or authoring tool to satisfy a more
-restrictive definition of validity.</p></div><div class="div2">
-<h3><a id="ttml-content-doctype"></a>4.1 TTML Content</h3><p>TTML Content is an <em>Abstract Document Type</em> of a profile of the Timed Text Markup Language intended
-to be used for interchange among distribution systems. This document type
-is defined in terms of the
-element and attribute vocabulary
-specified in <a href="#vocabulary"><b>5 Vocabulary</b></a>.</p><p>This specification references two types of schemas that may be used to validate a superset/subset
-of conformant TTML Content <em>Document Instances</em>:</p><ul><li><p><a href="#ttml-schema-rnc"><b>B.1 Relax NG Compact (RNC) Schema</b></a></p></li><li><p><a href="#ttml-schema-xsd"><b>B.2 XML Schema Definition (XSD) Schema</b></a></p></li></ul><p>The (root) document element of a TTML Content <em>Document Instance</em> must be a
-<code>tt</code> element, as defined by <a href="#document-structure-vocabulary-tt"><b>7.1.1 tt</b></a>.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>The schemas referenced by this specification do not validate all syntactic constraints
-defined by this specification, and, as such, represent a superset of conformant
-TTML Content. In particular, performing validation with one of the above
-referenced schemas may result in a <em>false positive</em> indication of validity.
-For example, both the RNC and XSD schemas specify
-that a <code>tts:fontFamily</code> attribute must
-satisfy the <code>xs:string</code> XSD data type; however, this data type is a superset
-of the values permitted to be used with the <code>tts:fontFamily</code> attribute.</p><p>In addition, the RNC schema may produce a <em>false negative</em>
-indication of validity when using the <code>xml:id</code> attribute with an element in
-a foreign namespace, thus representing a subset of conformant TTML Content. This is
-due to a specific limitation in expressing wildcard patterns involving <code>xsd:ID</code>
-typed attributes in Relax NG schemas. Note that this specification defines the
-formal validity of a <em>Document Instance</em> to be based on an <em>Abstract Document Instance</em> from
-which all foreign namespace elements and attributes have been removed. Therefore, the
-exceptional reporting of this false negative does not impact the formal assessment
-of <em>Document Instance</em> validity.</p></div></div></div><div class="div1">
-<h2><a id="vocabulary"></a>5 Vocabulary</h2><p>This section defines the
-namespaces, profiles, and vocabulary (as an element and attribute
-catalog) of the Timed Text Markup Language (TTML) as follows:</p><ul><li><p><a href="#vocabulary-namespaces"><b>5.1 Namespaces</b></a></p></li><li><p><a href="#vocabulary-profiles"><b>5.2 Profiles</b></a></p></li><li><p><a href="#vocabulary-overview"><b>5.3 Catalog</b></a></p></li></ul><div class="div2">
-<h3><a id="vocabulary-namespaces"></a>5.1 Namespaces</h3><p>The Timed Text Markup Language (TTML) employs a number of
-XML Namespaces <a href="#xmlns10">[XML Namespaces 1.0]</a> for elements and certain
-global attributes. The following table specifies this set of namespaces
-and indicates the default prefix used within this specification and the
-normative URI that denotes each namespace.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>In a specific <em>Document Instance</em>, it is not required that the default
-prefixes shown below are used. Any prefix or namespace binding that satisfies the constraints
-of XML Namespaces <a href="#xmlns10">[XML Namespaces 1.0]</a> may be used that is associated with the specified namespace URI.</p></div><a id="namespace-vocab-table"></a><table class="common"><caption>Table 1 – Namespaces</caption><col width="30%" span="1"><col span="1"><col span="1"><tbody><tr><th>Name</th><th>Prefix</th><th>Value</th></tr><tr><td>TT</td><td><code>tt:</code></td><td><code>http://www.w3.org/ns/ttml</code></td></tr><tr><td>TT Parameter</td><td><code>ttp:</code></td><td><code>http://www.w3.org/ns/ttml#parameter</code></td></tr><tr><td>TT Style</td><td><code>tts:</code></td><td><code>http://www.w3.org/ns/ttml#styling</code></td></tr><tr><td>TT Metadata</td><td><code>ttm:</code></td><td><code>http://www.w3.org/ns/ttml#metadata</code></td></tr><tr><td>TT Profile</td><td><em>none</em></td><td><code>http://www.w3.org/ns/ttml/profile/</code></td></tr><tr><td>TT Feature</td><td><em>none</em></td><td><code>http://www.w3.org/ns/ttml/feature/</code></td></tr><tr><td>TT Extension</td><td><em>none</em></td><td><code>http://www.w3.org/ns/ttml/extension/</code></td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>If a reference to an element type is used in this specification and the name
-of the element type is not namespace qualified, then the TT Namespace applies.</p><p>For certain namespaces defined above, the default prefix
-is specified as <em>none</em> if no XML vocabulary is defined in
-the namespace by this specification (nor expected to be defined in a
-future version of this specification). In such cases, the use of the
-namespace URI is for purposes other than defining XML vocabulary,
-e.g., for designating profiles, features, extensions and for
-dereferencing standard profile definitions.</p></div><p>All TTML Namespaces are <a href="http://www.w3.org/2001/tag/doc/namespaceState#namespacedef"><em>mutable</em></a>
-<a href="#nsstate">[NSState]</a>; all undefined names in these namespaces are reserved for future
-standardization by the W3C.</p></div><div class="div2">
-<h3><a id="vocabulary-profiles"></a>5.2 Profiles</h3><p>The Timed Text Markup Language (TTML) employs a number of
-standard, predefined profiles of its
-vocabulary and associated semantics.
-The following table specifies this set of
-profiles, indicating
-a normative name
-and designator for each
-predefined profile,
-and where each of these profiles is formally elaborated in
-<a href="#profiles"><b>F Profiles</b></a> or in another TTWG specification.</p><a id="profile-vocab-table"></a><table class="common"><caption>Table 2 – Profiles</caption><col width="25%" span="1"><col span="1"><tbody><tr><th>Name</th><th>Designator</th></tr><tr><td>DFXP Transformation</td><td><code>http://www.w3.org/ns/ttml/profile/dfxp-transformation</code></td></tr><tr><td>DFXP Presentation</td><td><code>http://www.w3.org/ns/ttml/profile/dfxp-presentation</code></td></tr><tr><td>DFXP Full</td><td><code>http://www.w3.org/ns/ttml/profile/dfxp-full</code></td></tr><tr><td>SDP US</td><td><code>http://www.w3.org/ns/ttml/profile/sdp-us</code></td></tr></tbody></table><p></p><p>A profile designator must adhere to the
-<code>xsd:anyURI</code> data type defined by <a href="#xsd-2">[XML Schema Part 2]</a>,
-§3.2.17. If the profile designator is expressed as a relative URI,
-then it must be absolutized by using the TT Profile Namespace value as
-the base URI.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>For example, if a profile designator is expressed as
-<code>dfxp-presentation</code>, then the absolutized profile designator
-would be
-<code>http://www.w3.org/ns/ttml/profile/dfxp-presentation</code>.</p></div><p>All profile designators which have the TT Profile Namespace as a prefix but are otherwise not listed in
-<a href="#profile-vocab-table"><b>Table 2 – Profiles</b></a> are reserved for future standardization, and must not be appear in a conformant
-<em>Document Instance</em>. Nothwithstanding this constraint, a profile designator is not restricted to the set of designators enumerated
-in <a href="#profile-vocab-table"><b>Table 2 – Profiles</b></a>, but may be any URI that feasibly dereferences a TTML <em>Profile Definition Document</em>
-provided it does not use the TT Profile Namespace as a prefix.</p><p>The profile of TTML that must be supported by a
-TTML <em>Content Processor</em> in order to process a <em>Document Instance</em> is determined either (1) by specifying a
-<code>ttp:profile</code> attribute on the root <code>tt</code> element, as
-defined by <a href="#parameter-attribute-profile"><b>6.2.8 ttp:profile</b></a>, or (2) by
-including one or more <code>ttp:profile</code>
-elements in the <code>head</code> element, in
-accordance with <a href="#parameter-vocabulary-profile"><b>6.1.1 ttp:profile</b></a>.</p><p>If a <code>ttp:profile</code> element appears as a
-descendant of the <code>tt</code> element, then the <a href="#parameter-attribute-profile"><code>ttp:profile</code></a>
-attribute should not be specified on the <code>tt</code> element. If both
-a <code>ttp:profile</code> element and a <code>ttp:profile</code>
-attribute are present (in a given <em>Document Instance</em>), then the
-<code>ttp:profile</code> attribute must be ignored for the purpose of
-determining the declared profile requirements.</p><p>If more than one <code>ttp:profile</code> element appears in
-a <em>Document Instance</em>, then all specified profiles apply
-simultaneously. In such a case, if some feature or some extension is
-specified by one profile to be <code>used</code> (mandatory and enabled) and by
-another profile to be <code>required</code> (mandatory) or <code>optional</code> (voluntary),
-then that feature or extension must be considered to be <code>used</code>
-(mandatory and enabled); if some feature or some extension is
-specified by one profile to be merely <code>required</code> (mandatory) and by
-another profile to be <code>optional</code> (voluntary), then that feature or
-extension must be considered to be <code>required</code> (mandatory).</p><p>If neither
-<a href="#parameter-attribute-profile"><code>ttp:profile</code></a>
-attribute nor
-<a href="#parameter-vocabulary-profile"><code>ttp:profile</code></a>
-element is present in a <em>Document Instance</em>, and if the <em>Document
-Interchange Context</em> does not make an implicit or explicit
-reference to a pre-defined profile or does not specify a <em>Profile Definition
-Document</em> or another equivalent set of feature designations,
-then the DFXP Transformation profile applies.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>It is not a requirement on a conformant <em>Document Instance</em> that a profile be internally
-defined by use of a <code>ttp:profile</code> element or internally referenced by a
-<code>ttp:profile</code> attribute. More specifically, it is permitted that the <em>Document
-Interchange Context</em> determines the applicable profile through private
-agreement, out-of-band protocol, or common use (between sender and receiver) of a profile defined
-by an external specification.</p></div><div class="note"><p class="prefix"><b>Note:</b></p><p>It is intended that the <code>ttp:profile</code> attribute be used when
-the author wishes to reference one of the standard, predefined profiles of
-TTML Content, and does not wish to modify (by supersetting or subsetting)
-that profile. This attribute may also be used by an author to indicate the use
-of a non-standard profile, in which case the specified profile designator expresses
-a URI that denotes an externally defined <em>Profile Definition Document</em>.
-However, it is not required that a conformant TTML Content Processor be able
-to dereference such an externally specified profile definition.</p><p>In contrast, it is intended that the <code>ttp:profile</code> element be
-used when the author wishes to make use of a modified predefined profile or
-wishes to include in the <em>Document Instance</em> a non-standard profile definition
-not based upon one of the predefined profiles.</p><p>A predefined profile is supersetted by specifying some feature or extension to
-be <code>required</code> (mandatory) that was either not specified in the underlying, baseline
-profile or was specified as <code>optional</code> (voluntary) in the baseline profile.
-A predefined profile is subsetted by specifying some feature or extension to
-be <code>optional</code> (voluntary) that was specified as <code>required</code> (mandatory)
-in the underlying, baseline profile.</p><p>When a baseline profile is modified by subsetting, the resulting, derived profile
-is referred to as a <em>subtractive</em> profile; when modified by supersetting, the result
-is referred to as an <em>additive</em> profile.
-It is also possible to define a derived profile that is simultaneously subtractive
-and additive.</p></div><p>If a <em>Document Instance</em> makes use of a feature defined by
-<a href="#feature-designations"><b>D.1 Feature Designations</b></a> and if the intended use of the
-document requires the recognition and processing of that feature, then
-the document must include a <em>required feature</em> or
-a <em>used feature</em>
-specification in one of its declared or
-referenced profiles. If a <em>Document Instance</em> makes use
-of an extension designatable by <a href="#extension-designations"><b>E.1 Extension Designations</b></a> and if the intended use of the document
-requires the recognition and processing of that extension, then the
-document must include a <em>required extension</em> or
-a <em>used extension</em> specification
-in one of its declared or referenced
-profiles.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>A <em>required feature</em> or <em>used feature</em>
-specification is expressed directly (or indirectly by referring to a
-profile) by means of a <a href="#parameter-vocabulary-feature"><code>ttp:feature</code></a>
-element where the value of its <code>value</code> attribute is
-<code>required</code> or <code>use</code>,
-respectively. A <em>required extension</em> or <em>used
-extension</em> specification is expressed directly (or indirectly by
-referring to a profile) by means of a <a href="#parameter-vocabulary-extension"><code>ttp:extension</code></a>
-element where the value of its <code>value</code> attribute is
-<code>required</code> or <code>use</code>,
-respectively.</p></div><p>An example of an author defined
-additive, derived profile of the DFXP Presentation
-profile is shown
-below in <a href="#ttml-example-sub-profile"><b>Example Fragment – DFXP Additive Profile</b></a>.</p><a id="ttml-example-sub-profile"></a><table class="example"><caption>Example Fragment – DFXP Additive Profile</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </div>
+
+ <div class="div1">
+ <h2><a id="conformance" name="conformance"></a>3 Conformance</h2>
+
+ <p>This section specifies the general conformance requirements for TTML Content and
+ processors.</p>
+
+ <div class="div2">
+ <h3><a id="conformance-content" name="conformance-content"></a>3.1 Content
+ Conformance</h3>
+
+ <p>A TTML <em>Document Instance</em> conforms to this specification if the
+ following criteria are satisfied:</p>
+
+ <ol class="enumar">
+ <li>
+ <p>When transporting a <em>Document Instance</em> in a <em>Document
+ Interchange Context</em> in which a Media Type <a href="#media-types">[Media
+ Types]</a> identifies the content type of the interchanged <em>Document
+ Instance</em>, then the specified media type is
+ <code>application/ttml+xml</code> in conformance with <a href=
+ "#xml-media">[XML Media Types]</a> § 7, with which an optional
+ <code>profile</code> parameter may appear, the value of which conforms to a
+ profile designator as defined by <a href="#vocabulary-profiles"><b>5.2
+ Profiles</b></a>.</p>
+ </li>
+
+ <li>
+ <p>The <em>Document Instance</em> is or can be represented as a Reduced XML
+ Infoset as defined by <a href="#reduced-infoset"><b>A Reduced XML
+ Infoset</b></a>.</p>
+ </li>
+
+ <li>
+ <p>The Reduced XML Infoset that corresponds to the <em>Document Instance</em>
+ is or can be associated with one of the <em>Abstract Document Types</em>
+ defined by <a href="#doctypes"><b>4 Document Types</b></a>.</p>
+ </li>
+
+ <li>
+ <p>The <em>Reduced XML Infoset</em> that corresponds to the <em>Document
+ Instance</em> is a <em>Valid Abstract Document Instance</em> of the
+ associated <em>Abstract Document Type</em>.</p>
+ </li>
+
+ <li>
+ <p>The <em>Reduced XML Infoset</em> satisfies all additional mandatory
+ syntactic and semantic constraints defined by this specification. In
+ addition, this Infoset should satisfy the web content accessibility
+ guidelines specified by <a href="#wcag">[WCAG]</a>.</p>
+ </li>
+ </ol>
+ </div>
+
+ <div class="div2">
+ <h3><a id="conformance-processor" name="conformance-processor"></a>3.2 Processor
+ Conformance</h3>
+
+ <div class="div3">
+ <h4><a id="conformance-generic-processor" name=
+ "conformance-generic-processor"></a>3.2.1 Generic Processor Conformance</h4>
+
+ <p>A TTML <em>Content Processor</em> conforms to this specification if the
+ following generic processor criteria are satisfied:</p>
+
+ <ol class="enumar">
+ <li>
+ <p>The processor provides at least one mechanism for notionally
+ instantiating a Reduced XML Infoset representation of a conformant
+ <em>Document Instance</em>.</p>
+ </li>
+
+ <li>
+ <p>If a process does or can perform validation of a candidate <em>Document
+ Instance</em>, then it provides at least one mechanism to implicitly or
+ explicitly associate the <em>Reduced XML Infoset</em> representation of a
+ conformant <em>Document Instance</em> with one of the <em>Abstract Document
+ Types</em> defined by <a href="#doctypes"><b>4 Document Types</b></a>.</p>
+ </li>
+
+ <li>
+ <p>The processor does not <em>a priori</em> reject or abort the processing
+ of a conformant <em>Document Instance</em> unless the processor does not
+ support some required (mandatory) feature specified or implied by a TTML
+ profile declared to apply to the <em>Document Instance</em>.</p>
+ </li>
+
+ <li>
+ <p>The processor supports all mandatory processing semantics defined by
+ this specification.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The phrase <em>mandatory semantics</em> refers to all explicit use of
+ the conformance key phrases <span class="strong">must</span> and
+ <span class="strong">must not</span> as well as any declarative statement
+ that can be reasonably inferred from such key phrases. For example, these
+ mandatory semantics include support for all features marked as mandatory
+ in <a href="#feature-support"><b>D.2 Feature Support</b></a>.</p>
+ </div>
+ </li>
+
+ <li>
+ <p>If the processor supports some optional processing semantics defined by
+ this specification, then it does so in a manner consistent with the defined
+ semantics.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The phrase <em>optional semantics</em> refers to all explicit use of
+ the conformance key phrases <span class="strong">should</span>,
+ <span class="strong">should not</span>, <span class="strong">may</span>,
+ and <span class="strong">may not</span>, as well as any declarative
+ statement that can be reasonably inferred from such key phrases. For
+ example, these optional semantics include support for all features marked
+ as optional in <a href="#feature-support"><b>D.2 Feature
+ Support</b></a>.</p>
+ </div>
+ </li>
+ </ol>
+ </div>
+
+ <div class="div3">
+ <h4><a id="conformance-transformation-processor" name=
+ "conformance-transformation-processor"></a>3.2.2 Transformation Processor
+ Conformance</h4>
+
+ <p>A TTML <em>Content Processor</em> is a conformant TTML <em>Transformation
+ Processor</em> if the following criteria are satisfied:</p>
+
+ <ol class="enumar">
+ <li>
+ <p>The processor satisfies all requirements specified by <a href=
+ "#conformance-generic-processor"><b>3.2.1 Generic Processor
+ Conformance</b></a>.</p>
+ </li>
+
+ <li>
+ <p>The processor supports the DFXP Transformation profile as specified by
+ <a href="#profile-dfxp-transformation"><b>F.1 DFXP Transformation
+ Profile</b></a>.</p>
+ </li>
+ </ol>
+ </div>
+
+ <div class="div3">
+ <h4><a id="conformance-presentation-processor" name=
+ "conformance-presentation-processor"></a>3.2.3 Presentation Processor
+ Conformance</h4>
+
+ <p>A TTML <em>Content Processor</em> is a conformant TTML <em>Presentation
+ Processor</em> if the following criteria are satisfied:</p>
+
+ <ol class="enumar">
+ <li>
+ <p>The processor satisfies all requirements specified by <a href=
+ "#conformance-generic-processor"><b>3.2.1 Generic Processor
+ Conformance</b></a>.</p>
+ </li>
+
+ <li>
+ <p>The processor supports the DFXP Presentation profile as specified by
+ <a href="#profile-dfxp-presentation"><b>F.2 DFXP Presentation
+ Profile</b></a>.</p>
+ </li>
+ </ol>
+ </div>
+ </div>
+
+ <div class="div2">
+ <h3><a id="claims" name="claims"></a>3.3 Claims</h3>
+
+ <p>Any claim of compliance with respect to the conformance of a TTML <em>Document
+ Instance</em> or <em>Content Processor</em> must make reference to an
+ implementation compliance statement (ICS).</p>
+
+ <p>An implementation compliance statement must identify all mandatory and
+ optional features of this specification that are satisfied by the document
+ instance or the content processor implementation. In particular, the statement
+ must identify the utilized or supported TTML vocabulary profile(s) as defined by
+ <a href="#vocabulary-profiles"><b>5.2 Profiles</b></a>, and, if a subset or
+ superset profile is used or supported, then what features are excluded or
+ included in the subset or superset profile.</p>
+
+ <p>A <em>Document Instance</em> for which a compliance claim is made must specify
+ either (1) a <code>ttp:profile</code> attribute on its root <code>tt</code>
+ element as defined by <a href="#parameter-attribute-profile"><b>6.2.8
+ ttp:profile</b></a> or (2) a <code>ttp:profile</code> element as a child of the
+ <code>head</code> element as defined by <a href=
+ "#parameter-vocabulary-profile"><b>6.1.1 ttp:profile</b></a>.</p>
+ </div>
+ </div>
+
+ <div class="div1">
+ <h2><a id="doctypes" name="doctypes"></a>4 Document Types</h2>
+
+ <p>This section defines the following TTML <em>Abstract Document Types</em>:</p>
+
+ <ul>
+ <li>
+ <p><a href="#ttml-content-doctype"><b>4.1 TTML Content</b></a></p>
+ </li>
+ </ul>
+
+ <p>Each <em>Abstract Document Type</em> consists of the following constraints:</p>
+
+ <ul>
+ <li>
+ <p>a non-empty collection of element types, where each element type consists of
+ a name, a (possibly empty) collection of attributes, and a content
+ specification</p>
+ </li>
+
+ <li>
+ <p>a non-empty collection of element types that may appear as the document
+ element</p>
+ </li>
+ </ul>
+
+ <p>An <em>Abstract Document Instance</em> may be assessed in terms of validity, and
+ is considered to be a <em>Valid Abstract Document Instance</em> if it satisfies the
+ following condition: if after</p>
+
+ <ol class="enumar">
+ <li>
+ <p>pruning all element information items whose names are not members of the
+ collection of element types defined by the associated <em>Abstract Document
+ Type</em>, then</p>
+ </li>
+
+ <li>
+ <p>pruning character information item children from any remaining element in
+ case that all character children of the element denote XML whitespace
+ characters and the element's type is defined as empty in the associated
+ <em>Abstract Document Type</em>, and then</p>
+ </li>
+
+ <li>
+ <p>pruning all attribute information items having expanded names such that the
+ namespace URI of the expanded names are not listed in <a href=
+ "#namespace-vocab-table"><b>Table 1 – Namespaces</b></a>,</p>
+ </li>
+ </ol>
+
+ <p>then the document element is one of the document element types permitted by the
+ associated <em>Abstract Document Type</em>, the descendants of the document element
+ satisfy their respective element type's content specifications, all required
+ attributes are present, and the declared value of each attribute satisfies the type
+ declared by the associated <em>Abstract Document Type</em>.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>While a conformant processor may not <em>a priori</em> reject a conformant
+ <em>Document Instance</em>, a given <em>Document Instance</em> may be constrained
+ by the author or authoring tool to satisfy a more restrictive definition of
+ validity.</p>
+ </div>
+
+ <div class="div2">
+ <h3><a id="ttml-content-doctype" name="ttml-content-doctype"></a>4.1 TTML
+ Content</h3>
+
+ <p>TTML Content is an <em>Abstract Document Type</em> of a profile of the Timed
+ Text Markup Language intended to be used for interchange among distribution
+ systems. This document type is defined in terms of the element and attribute
+ vocabulary specified in <a href="#vocabulary"><b>5 Vocabulary</b></a>.</p>
+
+ <p>This specification references two types of schemas that may be used to
+ validate a superset/subset of conformant TTML Content <em>Document
+ Instances</em>:</p>
+
+ <ul>
+ <li>
+ <p><a href="#ttml-schema-rnc"><b>B.1 Relax NG Compact (RNC)
+ Schema</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#ttml-schema-xsd"><b>B.2 XML Schema Definition (XSD)
+ Schema</b></a></p>
+ </li>
+ </ul>
+
+ <p>The (root) document element of a TTML Content <em>Document Instance</em> must
+ be a <code>tt</code> element, as defined by <a href=
+ "#document-structure-vocabulary-tt"><b>7.1.1 tt</b></a>.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The schemas referenced by this specification do not validate all syntactic
+ constraints defined by this specification, and, as such, represent a superset
+ of conformant TTML Content. In particular, performing validation with one of
+ the above referenced schemas may result in a <em>false positive</em> indication
+ of validity. For example, both the RNC and XSD schemas specify that a
+ <code>tts:fontFamily</code> attribute must satisfy the <code>xs:string</code>
+ XSD data type; however, this data type is a superset of the values permitted to
+ be used with the <code>tts:fontFamily</code> attribute.</p>
+
+ <p>In addition, the RNC schema may produce a <em>false negative</em> indication
+ of validity when using the <code>xml:id</code> attribute with an element in a
+ foreign namespace, thus representing a subset of conformant TTML Content. This
+ is due to a specific limitation in expressing wildcard patterns involving
+ <code>xsd:ID</code> typed attributes in Relax NG schemas. Note that this
+ specification defines the formal validity of a <em>Document Instance</em> to be
+ based on an <em>Abstract Document Instance</em> from which all foreign
+ namespace elements and attributes have been removed. Therefore, the exceptional
+ reporting of this false negative does not impact the formal assessment of
+ <em>Document Instance</em> validity.</p>
+ </div>
+ </div>
+ </div>
+
+ <div class="div1">
+ <h2><a id="vocabulary" name="vocabulary"></a>5 Vocabulary</h2>
+
+ <p>This section defines the namespaces, profiles, and vocabulary (as an element and
+ attribute catalog) of the Timed Text Markup Language (TTML) as follows:</p>
+
+ <ul>
+ <li>
+ <p><a href="#vocabulary-namespaces"><b>5.1 Namespaces</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#vocabulary-profiles"><b>5.2 Profiles</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#vocabulary-overview"><b>5.3 Catalog</b></a></p>
+ </li>
+ </ul>
+
+ <div class="div2">
+ <h3><a id="vocabulary-namespaces" name="vocabulary-namespaces"></a>5.1
+ Namespaces</h3>
+
+ <p>The Timed Text Markup Language (TTML) employs a number of XML Namespaces
+ <a href="#xmlns10">[XML Namespaces 1.0]</a> for elements and certain global
+ attributes. The following table specifies this set of namespaces and indicates
+ the default prefix used within this specification and the normative URI that
+ denotes each namespace.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>In a specific <em>Document Instance</em>, it is not required that the
+ default prefixes shown below are used. Any prefix or namespace binding that
+ satisfies the constraints of XML Namespaces <a href="#xmlns10">[XML Namespaces
+ 1.0]</a> may be used that is associated with the specified namespace URI.</p>
+ </div><a id="namespace-vocab-table" name="namespace-vocab-table"></a>
+
+ <table class="common">
+ <caption>
+ Table 1 – Namespaces
+ </caption>
+ <col width="30%" span="1">
+ <col span="1">
+ <col span="1">
+
+ <tbody>
+ <tr>
+ <th>Name</th>
+
+ <th>Prefix</th>
+
+ <th>Value</th>
+ </tr>
+
+ <tr>
+ <td>TT</td>
+
+ <td><code>tt:</code></td>
+
+ <td><code>http://www.w3.org/ns/ttml</code></td>
+ </tr>
+
+ <tr>
+ <td>TT Parameter</td>
+
+ <td><code>ttp:</code></td>
+
+ <td><code>http://www.w3.org/ns/ttml#parameter</code></td>
+ </tr>
+
+ <tr>
+ <td>TT Style</td>
+
+ <td><code>tts:</code></td>
+
+ <td><code>http://www.w3.org/ns/ttml#styling</code></td>
+ </tr>
+
+ <tr>
+ <td>TT Metadata</td>
+
+ <td><code>ttm:</code></td>
+
+ <td><code>http://www.w3.org/ns/ttml#metadata</code></td>
+ </tr>
+
+ <tr>
+ <td>TT Profile</td>
+
+ <td><em>none</em></td>
+
+ <td><code>http://www.w3.org/ns/ttml/profile/</code></td>
+ </tr>
+
+ <tr>
+ <td>TT Feature</td>
+
+ <td><em>none</em></td>
+
+ <td><code>http://www.w3.org/ns/ttml/feature/</code></td>
+ </tr>
+
+ <tr>
+ <td>TT Extension</td>
+
+ <td><em>none</em></td>
+
+ <td><code>http://www.w3.org/ns/ttml/extension/</code></td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>If a reference to an element type is used in this specification and the name
+ of the element type is not namespace qualified, then the TT Namespace
+ applies.</p>
+
+ <p>For certain namespaces defined above, the default prefix is specified as
+ <em>none</em> if no XML vocabulary is defined in the namespace by this
+ specification (nor expected to be defined in a future version of this
+ specification). In such cases, the use of the namespace URI is for purposes
+ other than defining XML vocabulary, e.g., for designating profiles, features,
+ extensions and for dereferencing standard profile definitions.</p>
+ </div>
+
+ <p>All TTML Namespaces are <a href=
+ "http://www.w3.org/2001/tag/doc/namespaceState#namespacedef"><em>mutable</em></a>
+ <a href="#nsstate">[NSState]</a>; all undefined names in these namespaces are
+ reserved for future standardization by the W3C.</p>
+ </div>
+
+ <div class="div2">
+ <h3><a id="vocabulary-profiles" name="vocabulary-profiles"></a>5.2 Profiles</h3>
+
+ <p>The Timed Text Markup Language (TTML) employs a number of standard, predefined
+ profiles of its vocabulary and associated semantics. The following table
+ specifies this set of profiles, indicating a normative name and designator for
+ each predefined profile, and where each of these profiles is formally elaborated
+ in <a href="#profiles"><b>F Profiles</b></a> or in another TTWG
+ specification.</p><a id="profile-vocab-table" name="profile-vocab-table"></a>
+
+ <table class="common">
+ <caption>
+ Table 2 – Profiles
+ </caption>
+ <col width="25%" span="1">
+ <col span="1">
+
+ <tbody>
+ <tr>
+ <th>Name</th>
+
+ <th>Designator</th>
+ </tr>
+
+ <tr>
+ <td>DFXP Transformation</td>
+
+ <td><code>http://www.w3.org/ns/ttml/profile/dfxp-transformation</code></td>
+ </tr>
+
+ <tr>
+ <td>DFXP Presentation</td>
+
+ <td><code>http://www.w3.org/ns/ttml/profile/dfxp-presentation</code></td>
+ </tr>
+
+ <tr>
+ <td>DFXP Full</td>
+
+ <td><code>http://www.w3.org/ns/ttml/profile/dfxp-full</code></td>
+ </tr>
+
+ <tr>
+ <td>SDP US</td>
+
+ <td><code>http://www.w3.org/ns/ttml/profile/sdp-us</code></td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>A profile designator must adhere to the <code>xsd:anyURI</code> data type
+ defined by <a href="#xsd-2">[XML Schema Part 2]</a>, §3.2.17. If the profile
+ designator is expressed as a relative URI, then it must be absolutized by using
+ the TT Profile Namespace value as the base URI.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>For example, if a profile designator is expressed as
+ <code>dfxp-presentation</code>, then the absolutized profile designator would
+ be <code>http://www.w3.org/ns/ttml/profile/dfxp-presentation</code>.</p>
+ </div>
+
+ <p>All profile designators which have the TT Profile Namespace as a prefix but
+ are otherwise not listed in <a href="#profile-vocab-table"><b>Table 2 –
+ Profiles</b></a> are reserved for future standardization, and must not be appear
+ in a conformant <em>Document Instance</em>. Nothwithstanding this constraint, a
+ profile designator is not restricted to the set of designators enumerated in
+ <a href="#profile-vocab-table"><b>Table 2 – Profiles</b></a>, but may be any URI
+ that feasibly dereferences a TTML <em>Profile Definition Document</em> provided
+ it does not use the TT Profile Namespace as a prefix.</p>
+
+ <p>The profile of TTML that must be supported by a TTML <em>Content
+ Processor</em> in order to process a <em>Document Instance</em> is determined
+ either (1) by specifying a <code>ttp:profile</code> attribute on the root
+ <code>tt</code> element, as defined by <a href=
+ "#parameter-attribute-profile"><b>6.2.8 ttp:profile</b></a>, or (2) by including
+ one or more <code>ttp:profile</code> elements in the <code>head</code> element,
+ in accordance with <a href="#parameter-vocabulary-profile"><b>6.1.1
+ ttp:profile</b></a>.</p>
+
+ <p>If a <code>ttp:profile</code> element appears as a descendant of the
+ <code>tt</code> element, then the <a href=
+ "#parameter-attribute-profile"><code>ttp:profile</code></a> attribute should not
+ be specified on the <code>tt</code> element. If both a <code>ttp:profile</code>
+ element and a <code>ttp:profile</code> attribute are present (in a given
+ <em>Document Instance</em>), then the <code>ttp:profile</code> attribute must be
+ ignored for the purpose of determining the declared profile requirements.</p>
+
+ <p>If more than one <code>ttp:profile</code> element appears in a <em>Document
+ Instance</em>, then all specified profiles apply simultaneously. In such a case,
+ if some feature or some extension is specified by one profile to be
+ <code>used</code> (mandatory and enabled) and by another profile to be
+ <code>required</code> (mandatory) or <code>optional</code> (voluntary), then that
+ feature or extension must be considered to be <code>used</code> (mandatory and
+ enabled); if some feature or some extension is specified by one profile to be
+ merely <code>required</code> (mandatory) and by another profile to be
+ <code>optional</code> (voluntary), then that feature or extension must be
+ considered to be <code>required</code> (mandatory).</p>
+
+ <p>If neither <a href="#parameter-attribute-profile"><code>ttp:profile</code></a>
+ attribute nor <a href=
+ "#parameter-vocabulary-profile"><code>ttp:profile</code></a> element is present
+ in a <em>Document Instance</em>, and if the <em>Document Interchange Context</em>
+ does not make an implicit or explicit reference to a pre-defined profile or does
+ not specify a <em>Profile Definition Document</em> or another equivalent set of
+ feature designations, then the DFXP Transformation profile applies.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>It is not a requirement on a conformant <em>Document Instance</em> that a
+ profile be internally defined by use of a <code>ttp:profile</code> element or
+ internally referenced by a <code>ttp:profile</code> attribute. More
+ specifically, it is permitted that the <em>Document Interchange Context</em>
+ determines the applicable profile through private agreement, out-of-band
+ protocol, or common use (between sender and receiver) of a profile defined by
+ an external specification.</p>
+ </div>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>It is intended that the <code>ttp:profile</code> attribute be used when the
+ author wishes to reference one of the standard, predefined profiles of TTML
+ Content, and does not wish to modify (by supersetting or subsetting) that
+ profile. This attribute may also be used by an author to indicate the use of a
+ non-standard profile, in which case the specified profile designator expresses
+ a URI that denotes an externally defined <em>Profile Definition Document</em>.
+ However, it is not required that a conformant TTML Content Processor be able to
+ dereference such an externally specified profile definition.</p>
+
+ <p>In contrast, it is intended that the <code>ttp:profile</code> element be
+ used when the author wishes to make use of a modified predefined profile or
+ wishes to include in the <em>Document Instance</em> a non-standard profile
+ definition not based upon one of the predefined profiles.</p>
+
+ <p>A predefined profile is supersetted by specifying some feature or extension
+ to be <code>required</code> (mandatory) that was either not specified in the
+ underlying, baseline profile or was specified as <code>optional</code>
+ (voluntary) in the baseline profile. A predefined profile is subsetted by
+ specifying some feature or extension to be <code>optional</code> (voluntary)
+ that was specified as <code>required</code> (mandatory) in the underlying,
+ baseline profile.</p>
+
+ <p>When a baseline profile is modified by subsetting, the resulting, derived
+ profile is referred to as a <em>subtractive</em> profile; when modified by
+ supersetting, the result is referred to as an <em>additive</em> profile. It is
+ also possible to define a derived profile that is simultaneously subtractive
+ and additive.</p>
+ </div>
+
+ <p>If a <em>Document Instance</em> makes use of a feature defined by <a href=
+ "#feature-designations"><b>D.1 Feature Designations</b></a> and if the intended
+ use of the document requires the recognition and processing of that feature, then
+ the document must include a <em>required feature</em> or a <em>used feature</em>
+ specification in one of its declared or referenced profiles. If a <em>Document
+ Instance</em> makes use of an extension designatable by <a href=
+ "#extension-designations"><b>E.1 Extension Designations</b></a> and if the
+ intended use of the document requires the recognition and processing of that
+ extension, then the document must include a <em>required extension</em> or a
+ <em>used extension</em> specification in one of its declared or referenced
+ profiles.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>A <em>required feature</em> or <em>used feature</em> specification is
+ expressed directly (or indirectly by referring to a profile) by means of a
+ <a href="#parameter-vocabulary-feature"><code>ttp:feature</code></a> element
+ where the value of its <code>value</code> attribute is <code>required</code> or
+ <code>use</code>, respectively. A <em>required extension</em> or <em>used
+ extension</em> specification is expressed directly (or indirectly by referring
+ to a profile) by means of a <a href=
+ "#parameter-vocabulary-extension"><code>ttp:extension</code></a> element where
+ the value of its <code>value</code> attribute is <code>required</code> or
+ <code>use</code>, respectively.</p>
+ </div>
+
+ <p>An example of an author defined additive, derived profile of the DFXP
+ Presentation profile is shown below in <a href=
+ "#ttml-example-sub-profile"><b>Example Fragment – DFXP Additive
+ Profile</b></a>.</p><a id="ttml-example-sub-profile" name=
+ "ttml-example-sub-profile"></a>
+
+ <table class="example">
+ <caption>
+ Example Fragment – DFXP Additive Profile
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<tt xml:lang="" xmlns="http://www.w3.org/ns/ttml">
<head>
<profile use="dfxp-presentation" xmlns="http://www.w3.org/ns/ttml#parameter">
@@ -1002,1075 +2423,2482 @@
</head>
<body/>
</tt>
-</pre></div>
-</td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>In the above example, the baseline profile is declared to be
-the DFXP Presentation profile, which is then additively modified by making the
-<code>#fontStyle-italic</code> feature required (rather than
-optional as it is defined
-in <a href="#profile-dfxp-presentation"><b>F.2 DFXP Presentation Profile</b></a>). Note also the resetting of the
-default XMLNS binding on the <code>profile</code> element to the TT Parameter Namespace.</p></div></div><div class="div2">
-<h3><a id="vocabulary-overview"></a>5.3 Catalog</h3><p>The vocabulary of the Timed Text Markup Language (TTML) is
-defined in the following major catalogs (divisions of vocabulary):</p><ul><li><p><a href="#core-vocabulary-overview"><b>5.3.1 Core Catalog</b></a></p></li><li><p><a href="#extension-vocabulary-overview"><b>5.3.2 Extension Catalog</b></a></p></li></ul><p>The core catalog defines the baseline, core vocabulary of TTML,
-and, in particular, the vocabulary of TTML Content. The extension catalog
-serves as a placeholder for extensions to the core vocabulary defined
-by TTML.</p><div class="div3">
-<h4><a id="core-vocabulary-overview"></a>5.3.1 Core Catalog</h4><p>The core vocabulary catalog is intended to satisfy the needs of
-TTML while providing a baseline vocabulary for future profiles. This vocabulary
-is divided into distinct categories, specified in detail
-in the following sections:</p><ul><li><p><a href="#parameters"><b>6 Parameters</b></a></p></li><li><p><a href="#content"><b>7 Content</b></a></p></li><li><p><a href="#styling"><b>8 Styling</b></a></p></li><li><p><a href="#layout"><b>9 Layout</b></a></p></li><li><p><a href="#timing"><b>10 Timing</b></a></p></li><li><p><a href="#animation"><b>11 Animation</b></a></p></li><li><p><a href="#metadata"><b>12 Metadata</b></a></p></li></ul><p>The core element vocabulary specified for use with a <em>Document Instance</em> is enumerated in
-<a href="#element-vocab-table"><b>Table 3 – Element Vocabulary</b></a>.</p><a id="element-vocab-table"></a><table class="common"><caption>Table 3 – Element Vocabulary</caption><col width="25%" span="1"><col span="1"><tbody><tr><th>Module</th><th>Elements</th></tr><tr id="element-vocab-type-animation"><td>
-Animation
-</td><td>
-<a href="#animation-vocabulary-set">set</a>
-</td></tr><tr id="element-vocab-type-content"><td>
-Content
-</td><td>
-<a href="#document-structure-vocabulary-body">body</a>,
-<a href="#content-vocabulary-div">div</a>,
-<a href="#content-vocabulary-p">p</a>,
-<a href="#content-vocabulary-span">span</a>,
-<a href="#content-vocabulary-br">br</a>
-</td></tr><tr id="element-vocab-type-document"><td>
-Document
-</td><td>
-<a href="#document-structure-vocabulary-tt">tt</a>
-</td></tr><tr id="element-vocab-type-head"><td>
-Head
-</td><td>
-<a href="#document-structure-vocabulary-head">head</a>
-</td></tr><tr id="element-vocab-type-layout"><td>
-Layout
-</td><td>
-<a href="#layout-vocabulary-layout">layout</a>,
-<a href="#layout-vocabulary-region">region</a>
-</td></tr><tr id="element-vocab-type-metadata"><td>
-Metadata
-</td><td>
-<a href="#metadata-vocabulary-metadata">metadata</a>
-</td></tr><tr id="element-vocab-type-metadata-items"><td>
-Metadata Items
-</td><td>
-<a href="#metadata-vocabulary-actor">ttm:actor</a>,
-<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-name">ttm:name</a>,
-<a href="#metadata-vocabulary-title">ttm:title</a>
-</td></tr><tr id="element-vocab-type-parameter-items"><td>Parameter Items</td><td><a href="#parameter-vocabulary-profile">ttp:profile</a>,
-<a href="#parameter-vocabulary-features">ttp:features</a>,
-<a href="#parameter-vocabulary-feature">ttp:feature</a>,
-<a href="#parameter-vocabulary-extensions">ttp:extensions</a>,
-<a href="#parameter-vocabulary-extension">ttp:extension</a>
-</td></tr><tr id="element-vocab-type-styling"><td>
-Styling
-</td><td>
-<a href="#styling-vocabulary-styling">styling</a>,
-<a href="#styling-vocabulary-style">style</a>
-</td></tr></tbody></table><p></p><p>Element vocabulary groups that are used in defining content models
-for TTML element types are enumerated in <a href="#element-vocab-group-table"><b>Table 4 – Element Vocabulary Groups</b></a>.</p><a id="element-vocab-group-table"></a><table class="common"><caption>Table 4 – Element Vocabulary Groups</caption><col width="25%" span="1"><col span="1"><tbody><tr><th>Group</th><th>Elements</th></tr><tr><td>
-Animation.class
-</td><td>
-<a href="#animation-vocabulary-set">set</a>
-</td></tr><tr><td>
-Block.class
-</td><td>
-<a href="#content-vocabulary-div">div</a> |
-<a href="#content-vocabulary-p">p</a>
-</td></tr><tr><td>
-Inline.class
-</td><td>
-<a href="#content-vocabulary-span">span</a> |
-<a href="#content-vocabulary-span">br</a> |
-<code>#PCDATA</code>
-</td></tr><tr><td>
-Metadata.class
-</td><td>
-<a href="#metadata-vocabulary-metadata">metadata</a> |
-<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-title">ttm:title</a>
-</td></tr><tr><td>Parameters.class</td><td><a href="#parameter-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
-<a href="#attribute-vocab-table"><b>Table 5 – Attribute Vocabulary</b></a>.</p><a id="attribute-vocab-table"></a><table class="common"><caption>Table 5 – Attribute Vocabulary</caption><col width="25%" span="1"><col span="1"><tbody><tr><th>Module</th><th>Attributes</th></tr><tr><td>
-Core Attributes
-</td><td>
-<a href="#content-attribute-id">xml:id</a>,
-<a href="#content-attribute-lang">xml:lang</a>,
-<a href="#content-attribute-space">xml:space</a>
-</td></tr><tr><td>
-Layout
-</td><td>
-<a href="#layout-attribute-region">region</a>
-</td></tr><tr><td>
-Metadata Attributes
-</td><td>
-<a href="#metadata-attribute-agent">ttm:agent</a>,
-<a href="#metadata-attribute-role">ttm:role</a>
-</td></tr><tr><td>
-Parameter Attributes
-</td><td>
-<a href="#parameter-attribute-cellResolution">ttp:cellResolution</a>,
-<a href="#parameter-attribute-clockMode">ttp:clockMode</a>,
-<a href="#parameter-attribute-dropMode">ttp:dropMode</a>,
-<a href="#parameter-attribute-frameRate">ttp:frameRate</a>,
-<a href="#parameter-attribute-frameRateMultiplier">ttp:frameRateMultipler</a>,
-<a href="#parameter-attribute-markerMode">ttp:markerMode</a>,
-<a href="#parameter-attribute-pixelAspectRatio">ttp:pixelAspectRatio</a>,
-<a href="#parameter-attribute-profile">ttp:profile</a>,
-<a href="#parameter-attribute-subFrameRate">ttp:subFrameRate</a>,
-<a href="#parameter-attribute-tickRate">ttp:tickRate</a>,
-<a href="#parameter-attribute-timeBase">ttp:timeBase</a>
-</td></tr><tr><td>
-Styling
-</td><td>
-<a href="#style-attribute-style">style</a>
-</td></tr><tr><td>
-Styling Attributes
-</td><td>
-<a href="#style-attribute-backgroundColor">tts:backgroundColor</a>,
-<a href="#style-attribute-color">tts:color</a>,
-<a href="#style-attribute-direction">tts:direction</a>,
-<a href="#style-attribute-display">tts:display</a>,
-<a href="#style-attribute-displayAlign">tts:displayAlign</a>,
-<a href="#style-attribute-extent">tts:extent</a>,
-<a href="#style-attribute-fontFamily">tts:fontFamily</a>,
-<a href="#style-attribute-fontSize">tts:fontSize</a>,
-<a href="#style-attribute-fontStyle">tts:fontStyle</a>,
-<a href="#style-attribute-fontWeight">tts:fontWeight</a>,
-<a href="#style-attribute-lineHeight">tts:lineHeight</a>,
-<a href="#style-attribute-opacity">tts:opacity</a>,
-<a href="#style-attribute-origin">tts:origin</a>,
-<a href="#style-attribute-overflow">tts:overflow</a>,
-<a href="#style-attribute-padding">tts:padding</a>,
-<a href="#style-attribute-showBackground">tts:showBackground</a>,
-<a href="#style-attribute-textAlign">tts:textAlign</a>,
-<a href="#style-attribute-textDecoration">tts:textDecoration</a>,
-<a href="#style-attribute-textOutline">tts:textOutline</a>,
-<a href="#style-attribute-unicodeBidi">tts:unicodeBidi</a>,
-<a href="#style-attribute-visibility">tts:visibility</a>,
-<a href="#style-attribute-wrapOption">tts:wrapOption</a>,
-<a href="#style-attribute-writingMode">tts:writingMode</a>,
-<a href="#style-attribute-zIndex">tts:zIndex</a>
-</td></tr><tr><td>
-Timing Attributes
-</td><td>
-<a href="#timing-attribute-begin">begin</a>,
-<a href="#timing-attribute-dur">dur</a>,
-<a href="#timing-attribute-end">end</a>,
-<a href="#timing-attribute-timeContainer">timeContainer</a>
-</td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>Only those attributes defined as either (1) global, i.e., namespace qualified, or
-(2) shared element-specific, i.e., not namespace qualified but shared across multiple
-element types, are listed in <a href="#attribute-vocab-table"><b>Table 5 – Attribute Vocabulary</b></a> above.
-</p></div><div class="note"><p class="prefix"><b>Note:</b></p><p>All vocabulary defined by TTML consistently makes use of
-the so-called <em>lowerCamelCase</em> naming convention. In some cases, this results in the
-change of a name when the name was based upon another specification
-that used a different naming convention.</p></div></div><div class="div3">
-<h4><a id="extension-vocabulary-overview"></a>5.3.2 Extension Catalog</h4><p>The extension vocabulary catalog is intended for use by future
-profiles of TTML, and is not further defined
-by this version of this specification.</p><p>In addition to standardized extension vocabulary, a conforming
-<em>Document Instance</em> may contain arbitrary namespace qualified
-elements that reside in any namespace other than those namespaces
-defined for use with this specification. Furthermore, a conforming
-<em>Document Instance</em> may contain arbitrary namespace qualified
-attributes on TTML defined vocabulary where such attributes reside in
-any namespace other than those defined for use with this
-specification.</p></div></div></div><div class="div1">
-<h2><a id="parameters"></a>6 Parameters</h2><p>This section specifies the <em>parameters</em> matter of the
-core vocabulary catalog, where
-parameters are to be understood as information that is either (1)
-essential or (2) of significant importance for the purpose of
-interpreting the semantics of other types of information expressed by
-core vocabulary items or for establishing a <em>Document Processing Context</em> by means
-of which TTML Content can be related to an external environment.</p><div class="div2">
-<h3><a id="parameter-element-vocabulary"></a>6.1 Parameter Element Vocabulary</h3><p>The following elements, all defined in the TT Parameter
-Namespace, specify parametric information that applies to a <em>Document Instance</em>
-or <em>Content Processor</em>:</p><ul><li><p><a href="#parameter-vocabulary-profile"><b>6.1.1 ttp:profile</b></a></p></li><li><p><a href="#parameter-vocabulary-features"><b>6.1.2 ttp:features</b></a></p></li><li><p><a href="#parameter-vocabulary-feature"><b>6.1.3 ttp:feature</b></a></p></li><li><p><a href="#parameter-vocabulary-extensions"><b>6.1.4 ttp:extensions</b></a></p></li><li><p><a href="#parameter-vocabulary-extension"><b>6.1.5 ttp:extension</b></a></p></li></ul><div class="div3">
-<h4><a id="parameter-vocabulary-profile"></a>6.1.1 ttp:profile</h4><p>The <code>ttp:profile</code> element is used to specify a collection of
-used (mandatory and enabled), required (mandatory),
-and optional (voluntary) features and extensions that must or
-may be supported by a <em>Content Processor</em> in order to process a
-<em>Document Instance</em> that makes (or may make) use of such features and
-extensions.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>The difference between a <em>feature</em> and an
-<em>extension</em> is where it is defined and how it is labeled:
-if defined in this specification (or a future revision thereof) and
-labeled with a feature designation in <a href="#features"><b>D Features</b></a>, then
-it is considered to be a feature; if defined in another specification
-and labeled there with an extension designation, then it is considered
-to be an extension. In general, features are expected to be defined by
-the W3C standards process, while extensions are expected to be defined by
-third parties.</p></div><p>This specification defines two distinct uses of the <code>ttp:profile</code> element:</p><ul><li><p>as a child of the <code>head</code> element within a TTML <em>Document Instance</em>;</p></li><li><p>as the root element of a TTML <em>Profile Definition Document</em>
-instance;</p></li></ul><p>When a <code>ttp:profile</code> element appears within a TTML <em>Document Instance</em>,
-its purpose is to express authorial intentions about which
-features and extensions must or may be supported by a recipient
-content processor. In addition, the element indirectly expresses
-information about the set of features or extensions that are (or may
-expected to be) used by the <em>Document Instance</em>.</p><p>When a <code>ttp:profile</code> element is used by a TTML <em>Profile Definition Document</em> instance,
-it serves to publish a machine
-readable specification of a specific TTML profile, of which
-this specification defines three such <em>Profile Definition Documents</em> in
-<a href="#profiles"><b>F Profiles</b></a>.</p><p>The <code>ttp:profile</code> element accepts as its children zero or more
-elements in the <code>Metadata.class</code> element group, followed by
-zero or more <code>ttp:features</code> elements, followed by
-zero or more <code>ttp:extensions</code> elements.</p><a id="elt-syntax-parameter-profile"></a><table class="syntax"><caption>XML Representation – Element Information Item: ttp:profile</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>In the above example, the baseline profile is declared to be the DFXP
+ Presentation profile, which is then additively modified by making the
+ <code>#fontStyle-italic</code> feature required (rather than optional as it is
+ defined in <a href="#profile-dfxp-presentation"><b>F.2 DFXP Presentation
+ Profile</b></a>). Note also the resetting of the default XMLNS binding on the
+ <code>profile</code> element to the TT Parameter Namespace.</p>
+ </div>
+ </div>
+
+ <div class="div2">
+ <h3><a id="vocabulary-overview" name="vocabulary-overview"></a>5.3 Catalog</h3>
+
+ <p>The vocabulary of the Timed Text Markup Language (TTML) is defined in the
+ following major catalogs (divisions of vocabulary):</p>
+
+ <ul>
+ <li>
+ <p><a href="#core-vocabulary-overview"><b>5.3.1 Core Catalog</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#extension-vocabulary-overview"><b>5.3.2 Extension
+ Catalog</b></a></p>
+ </li>
+ </ul>
+
+ <p>The core catalog defines the baseline, core vocabulary of TTML, and, in
+ particular, the vocabulary of TTML Content. The extension catalog serves as a
+ placeholder for extensions to the core vocabulary defined by TTML.</p>
+
+ <div class="div3">
+ <h4><a id="core-vocabulary-overview" name="core-vocabulary-overview"></a>5.3.1
+ Core Catalog</h4>
+
+ <p>The core vocabulary catalog is intended to satisfy the needs of TTML while
+ providing a baseline vocabulary for future profiles. This vocabulary is divided
+ into distinct categories, specified in detail in the following sections:</p>
+
+ <ul>
+ <li>
+ <p><a href="#parameters"><b>6 Parameters</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#content"><b>7 Content</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#styling"><b>8 Styling</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#layout"><b>9 Layout</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#timing"><b>10 Timing</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#animation"><b>11 Animation</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#metadata"><b>12 Metadata</b></a></p>
+ </li>
+ </ul>
+
+ <p>The core element vocabulary specified for use with a <em>Document
+ Instance</em> is enumerated in <a href="#element-vocab-table"><b>Table 3 –
+ Element Vocabulary</b></a>.</p><a id="element-vocab-table" name=
+ "element-vocab-table"></a>
+
+ <table class="common">
+ <caption>
+ Table 3 – Element Vocabulary
+ </caption>
+ <col width="25%" span="1">
+ <col span="1">
+
+ <tbody>
+ <tr>
+ <th>Module</th>
+
+ <th>Elements</th>
+ </tr>
+
+ <tr id="element-vocab-type-animation">
+ <td>Animation</td>
+
+ <td><a href="#animation-vocabulary-set">set</a></td>
+ </tr>
+
+ <tr id="element-vocab-type-content">
+ <td>Content</td>
+
+ <td><a href="#document-structure-vocabulary-body">body</a>, <a href=
+ "#content-vocabulary-div">div</a>, <a href="#content-vocabulary-p">p</a>,
+ <a href="#content-vocabulary-span">span</a>, <a href=
+ "#content-vocabulary-br">br</a></td>
+ </tr>
+
+ <tr id="element-vocab-type-document">
+ <td>Document</td>
+
+ <td><a href="#document-structure-vocabulary-tt">tt</a></td>
+ </tr>
+
+ <tr id="element-vocab-type-head">
+ <td>Head</td>
+
+ <td><a href="#document-structure-vocabulary-head">head</a></td>
+ </tr>
+
+ <tr id="element-vocab-type-layout">
+ <td>Layout</td>
+
+ <td><a href="#layout-vocabulary-layout">layout</a>, <a href=
+ "#layout-vocabulary-region">region</a></td>
+ </tr>
+
+ <tr id="element-vocab-type-metadata">
+ <td>Metadata</td>
+
+ <td><a href="#metadata-vocabulary-metadata">metadata</a></td>
+ </tr>
+
+ <tr id="element-vocab-type-metadata-items">
+ <td>Metadata Items</td>
+
+ <td><a href="#metadata-vocabulary-actor">ttm:actor</a>, <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-name">ttm:name</a>, <a href=
+ "#metadata-vocabulary-title">ttm:title</a></td>
+ </tr>
+
+ <tr id="element-vocab-type-parameter-items">
+ <td>Parameter Items</td>
+
+ <td><a href="#parameter-vocabulary-profile">ttp:profile</a>, <a href=
+ "#parameter-vocabulary-features">ttp:features</a>, <a href=
+ "#parameter-vocabulary-feature">ttp:feature</a>, <a href=
+ "#parameter-vocabulary-extensions">ttp:extensions</a>, <a href=
+ "#parameter-vocabulary-extension">ttp:extension</a></td>
+ </tr>
+
+ <tr id="element-vocab-type-styling">
+ <td>Styling</td>
+
+ <td><a href="#styling-vocabulary-styling">styling</a>, <a href=
+ "#styling-vocabulary-style">style</a></td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>Element vocabulary groups that are used in defining content models for TTML
+ element types are enumerated in <a href="#element-vocab-group-table"><b>Table 4
+ – Element Vocabulary Groups</b></a>.</p><a id="element-vocab-group-table" name=
+ "element-vocab-group-table"></a>
+
+ <table class="common">
+ <caption>
+ Table 4 – Element Vocabulary Groups
+ </caption>
+ <col width="25%" span="1">
+ <col span="1">
+
+ <tbody>
+ <tr>
+ <th>Group</th>
+
+ <th>Elements</th>
+ </tr>
+
+ <tr>
+ <td>Animation.class</td>
+
+ <td><a href="#animation-vocabulary-set">set</a></td>
+ </tr>
+
+ <tr>
+ <td>Block.class</td>
+
+ <td><a href="#content-vocabulary-div">div</a> | <a href=
+ "#content-vocabulary-p">p</a></td>
+ </tr>
+
+ <tr>
+ <td>Inline.class</td>
+
+ <td><a href="#content-vocabulary-span">span</a> | <a href=
+ "#content-vocabulary-span">br</a> | <code>#PCDATA</code></td>
+ </tr>
+
+ <tr>
+ <td>Metadata.class</td>
+
+ <td><a href="#metadata-vocabulary-metadata">metadata</a> | <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-title">ttm:title</a></td>
+ </tr>
+
+ <tr>
+ <td>Parameters.class</td>
+
+ <td><a href="#parameter-vocabulary-profile">ttp:profile</a></td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>The attribute vocabulary specified for use with the core vocabulary catalog
+ is enumerated in <a href="#attribute-vocab-table"><b>Table 5 – Attribute
+ Vocabulary</b></a>.</p><a id="attribute-vocab-table" name=
+ "attribute-vocab-table"></a>
+
+ <table class="common">
+ <caption>
+ Table 5 – Attribute Vocabulary
+ </caption>
+ <col width="25%" span="1">
+ <col span="1">
+
+ <tbody>
+ <tr>
+ <th>Module</th>
+
+ <th>Attributes</th>
+ </tr>
+
+ <tr>
+ <td>Core Attributes</td>
+
+ <td><a href="#content-attribute-id">xml:id</a>, <a href=
+ "#content-attribute-lang">xml:lang</a>, <a href=
+ "#content-attribute-space">xml:space</a></td>
+ </tr>
+
+ <tr>
+ <td>Layout</td>
+
+ <td><a href="#layout-attribute-region">region</a></td>
+ </tr>
+
+ <tr>
+ <td>Metadata Attributes</td>
+
+ <td><a href="#metadata-attribute-agent">ttm:agent</a>, <a href=
+ "#metadata-attribute-role">ttm:role</a></td>
+ </tr>
+
+ <tr>
+ <td>Parameter Attributes</td>
+
+ <td><a href="#parameter-attribute-cellResolution">ttp:cellResolution</a>,
+ <a href="#parameter-attribute-clockMode">ttp:clockMode</a>, <a href=
+ "#parameter-attribute-dropMode">ttp:dropMode</a>, <a href=
+ "#parameter-attribute-frameRate">ttp:frameRate</a>, <a href=
+ "#parameter-attribute-frameRateMultiplier">ttp:frameRateMultipler</a>,
+ <a href="#parameter-attribute-markerMode">ttp:markerMode</a>, <a href=
+ "#parameter-attribute-pixelAspectRatio">ttp:pixelAspectRatio</a>,
+ <a href="#parameter-attribute-profile">ttp:profile</a>, <a href=
+ "#parameter-attribute-subFrameRate">ttp:subFrameRate</a>, <a href=
+ "#parameter-attribute-tickRate">ttp:tickRate</a>, <a href=
+ "#parameter-attribute-timeBase">ttp:timeBase</a></td>
+ </tr>
+
+ <tr>
+ <td>Styling</td>
+
+ <td><a href="#style-attribute-style">style</a></td>
+ </tr>
+
+ <tr>
+ <td>Styling Attributes</td>
+
+ <td><a href="#style-attribute-backgroundColor">tts:backgroundColor</a>,
+ <a href="#style-attribute-color">tts:color</a>, <a href=
+ "#style-attribute-direction">tts:direction</a>, <a href=
+ "#style-attribute-display">tts:display</a>, <a href=
+ "#style-attribute-displayAlign">tts:displayAlign</a>, <a href=
+ "#style-attribute-extent">tts:extent</a>, <a href=
+ "#style-attribute-fontFamily">tts:fontFamily</a>, <a href=
+ "#style-attribute-fontSize">tts:fontSize</a>, <a href=
+ "#style-attribute-fontStyle">tts:fontStyle</a>, <a href=
+ "#style-attribute-fontWeight">tts:fontWeight</a>, <a href=
+ "#style-attribute-lineHeight">tts:lineHeight</a>, <a href=
+ "#style-attribute-opacity">tts:opacity</a>, <a href=
+ "#style-attribute-origin">tts:origin</a>, <a href=
+ "#style-attribute-overflow">tts:overflow</a>, <a href=
+ "#style-attribute-padding">tts:padding</a>, <a href=
+ "#style-attribute-showBackground">tts:showBackground</a>, <a href=
+ "#style-attribute-textAlign">tts:textAlign</a>, <a href=
+ "#style-attribute-textDecoration">tts:textDecoration</a>, <a href=
+ "#style-attribute-textOutline">tts:textOutline</a>, <a href=
+ "#style-attribute-unicodeBidi">tts:unicodeBidi</a>, <a href=
+ "#style-attribute-visibility">tts:visibility</a>, <a href=
+ "#style-attribute-wrapOption">tts:wrapOption</a>, <a href=
+ "#style-attribute-writingMode">tts:writingMode</a>, <a href=
+ "#style-attribute-zIndex">tts:zIndex</a></td>
+ </tr>
+
+ <tr>
+ <td>Timing Attributes</td>
+
+ <td><a href="#timing-attribute-begin">begin</a>, <a href=
+ "#timing-attribute-dur">dur</a>, <a href="#timing-attribute-end">end</a>,
+ <a href="#timing-attribute-timeContainer">timeContainer</a></td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>Only those attributes defined as either (1) global, i.e., namespace
+ qualified, or (2) shared element-specific, i.e., not namespace qualified but
+ shared across multiple element types, are listed in <a href=
+ "#attribute-vocab-table"><b>Table 5 – Attribute Vocabulary</b></a> above.</p>
+ </div>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>All vocabulary defined by TTML consistently makes use of the so-called
+ <em>lowerCamelCase</em> naming convention. In some cases, this results in the
+ change of a name when the name was based upon another specification that used
+ a different naming convention.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="extension-vocabulary-overview" name=
+ "extension-vocabulary-overview"></a>5.3.2 Extension Catalog</h4>
+
+ <p>The extension vocabulary catalog is intended for use by future profiles of
+ TTML, and is not further defined by this version of this specification.</p>
+
+ <p>In addition to standardized extension vocabulary, a conforming <em>Document
+ Instance</em> may contain arbitrary namespace qualified elements that reside in
+ any namespace other than those namespaces defined for use with this
+ specification. Furthermore, a conforming <em>Document Instance</em> may contain
+ arbitrary namespace qualified attributes on TTML defined vocabulary where such
+ attributes reside in any namespace other than those defined for use with this
+ specification.</p>
+ </div>
+ </div>
+ </div>
+
+ <div class="div1">
+ <h2><a id="parameters" name="parameters"></a>6 Parameters</h2>
+
+ <p>This section specifies the <em>parameters</em> matter of the core vocabulary
+ catalog, where parameters are to be understood as information that is either (1)
+ essential or (2) of significant importance for the purpose of interpreting the
+ semantics of other types of information expressed by core vocabulary items or for
+ establishing a <em>Document Processing Context</em> by means of which TTML Content
+ can be related to an external environment.</p>
+
+ <div class="div2">
+ <h3><a id="parameter-element-vocabulary" name=
+ "parameter-element-vocabulary"></a>6.1 Parameter Element Vocabulary</h3>
+
+ <p>The following elements, all defined in the TT Parameter Namespace, specify
+ parametric information that applies to a <em>Document Instance</em> or
+ <em>Content Processor</em>:</p>
+
+ <ul>
+ <li>
+ <p><a href="#parameter-vocabulary-profile"><b>6.1.1 ttp:profile</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#parameter-vocabulary-features"><b>6.1.2 ttp:features</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#parameter-vocabulary-feature"><b>6.1.3 ttp:feature</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#parameter-vocabulary-extensions"><b>6.1.4
+ ttp:extensions</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#parameter-vocabulary-extension"><b>6.1.5
+ ttp:extension</b></a></p>
+ </li>
+ </ul>
+
+ <div class="div3">
+ <h4><a id="parameter-vocabulary-profile" name=
+ "parameter-vocabulary-profile"></a>6.1.1 ttp:profile</h4>
+
+ <p>The <code>ttp:profile</code> element is used to specify a collection of used
+ (mandatory and enabled), required (mandatory), and optional (voluntary)
+ features and extensions that must or may be supported by a <em>Content
+ Processor</em> in order to process a <em>Document Instance</em> that makes (or
+ may make) use of such features and extensions.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The difference between a <em>feature</em> and an <em>extension</em> is
+ where it is defined and how it is labeled: if defined in this specification
+ (or a future revision thereof) and labeled with a feature designation in
+ <a href="#features"><b>D Features</b></a>, then it is considered to be a
+ feature; if defined in another specification and labeled there with an
+ extension designation, then it is considered to be an extension. In general,
+ features are expected to be defined by the W3C standards process, while
+ extensions are expected to be defined by third parties.</p>
+ </div>
+
+ <p>This specification defines two distinct uses of the <code>ttp:profile</code>
+ element:</p>
+
+ <ul>
+ <li>
+ <p>as a child of the <code>head</code> element within a TTML <em>Document
+ Instance</em>;</p>
+ </li>
+
+ <li>
+ <p>as the root element of a TTML <em>Profile Definition Document</em>
+ instance;</p>
+ </li>
+ </ul>
+
+ <p>When a <code>ttp:profile</code> element appears within a TTML <em>Document
+ Instance</em>, its purpose is to express authorial intentions about which
+ features and extensions must or may be supported by a recipient content
+ processor. In addition, the element indirectly expresses information about the
+ set of features or extensions that are (or may expected to be) used by the
+ <em>Document Instance</em>.</p>
+
+ <p>When a <code>ttp:profile</code> element is used by a TTML <em>Profile
+ Definition Document</em> instance, it serves to publish a machine readable
+ specification of a specific TTML profile, of which this specification defines
+ three such <em>Profile Definition Documents</em> in <a href="#profiles"><b>F
+ Profiles</b></a>.</p>
+
+ <p>The <code>ttp:profile</code> element accepts as its children zero or more
+ elements in the <code>Metadata.class</code> element group, followed by zero or
+ more <code>ttp:features</code> elements, followed by zero or more
+ <code>ttp:extensions</code> elements.</p><a id="elt-syntax-parameter-profile"
+ name="elt-syntax-parameter-profile"></a>
+
+ <table class="syntax">
+ <caption>
+ XML Representation – Element Information Item: ttp:profile
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<ttp:profile
use = string
<a href="#content-attribute-id">xml:id</a> = ID
{<em>any attribute not in default or any TT namespace</em>}>
- <em>Content:</em> <a href="#element-vocab-group-table">Metadata.class</a>*, <a href="#parameter-vocabulary-features">ttp:features</a>*, <a href="#parameter-vocabulary-extensions">ttp:extensions</a>*
+ <em>Content:</em> <a href="#element-vocab-group-table">Metadata.class</a>*, <a href=
+"#parameter-vocabulary-features">ttp:features</a>*, <a href=
+"#parameter-vocabulary-extensions">ttp:extensions</a>*
</ttp:profile>
-</pre></div>
-</td></tr></tbody></table><p>If specified, the <code>use</code> attribute must adhere to the
-<code>xsd:anyURI</code> data type defined by <a href="#xsd-2">[XML Schema Part 2]</a>,
-§3.2.17, and, furthermore, must denote a profile designator in
-accordance with <a href="#vocabulary-profiles"><b>5.2 Profiles</b></a>. In this case,
-the profile designator must refer to (1) a standard, predefined
-<em>Profile Definition Document</em> as defined by <a href="#profiles"><b>F Profiles</b></a>,
-or (2) a feasibly dereferenceable resource representing a valid <em>Profile Definition
-Document</em> instance. In either case, the referenced profile serves as the
-baseline profile of the specifying <code>ttp:profile</code> element.</p><p>If the <code>use</code> attribute is not specified, then the baseline
-profile of the <code>ttp:profile</code> element must be considered to be
-the empty (null) profile, i.e., a profile definition containing no
-feature or extension specifications.</p><p>The collection of features and extensions of a profile are determined according
-to the following ordered rules:</p><ol class="enumar"><li><p>initialize the features and extensions of the profile to the empty
-set;</p></li><li><p>if a <code>use</code> attribute is present, then augment the profile
-with the set of features and extensions specified by the referenced
-baseline profile;</p></li><li><p>for each <code>ttp:feature</code> and <code>ttp:extension</code> element
-descendant of the <code>ttp:profile</code> element, using a post-order
-traversal, merge the specified feature or extension with the features
-and extensions of the profile, where merging a feature or extension
-entails replacing an existing feature or extension specification, if
-it already exists, or adding a new feature or extension specification,
-if it does not yet exist in the profile;</p></li></ol><p>A conformant TTML processor is not required to be able to
-dereference a <em>Profile Definition Document</em> that is not one of the
-standard, predefined profiles defined by <a href="#profiles"><b>F Profiles</b></a>. Furthermore,
-a conformant TTML processor may make use of a built-in, static
-form of each standard, predefined profile so as not to require
-dereferencing a network resource.</p><p>If a TTML processor is unable to dereference a non-standard
-<em>Profile Definition Document</em>, then it must not further process the
-document without the presence of an explicit override from an end-user
-or some implementation specific parameter traceable to an end-user or
-to a user or system configuration setting. If a TTML processor aborts
-processing of a <em>Document Instance</em> due to the inability to
-reference a non-standard <em>Profile Definition Document</em>, then some
-end-user notification should be given unless the end-user or system
-has disabled such a notification, or if the processor does not permit
-or entail the intervention of an end-user.</p><p>The <code>ttp:profile</code> element is illustrated by the following example.</p><a id="parameter-vocabulary-profile-example-1"></a><table class="example"><caption>Example Fragment – ttp:profile</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>If specified, the <code>use</code> attribute must adhere to the
+ <code>xsd:anyURI</code> data type defined by <a href="#xsd-2">[XML Schema Part
+ 2]</a>, §3.2.17, and, furthermore, must denote a profile designator in
+ accordance with <a href="#vocabulary-profiles"><b>5.2 Profiles</b></a>. In this
+ case, the profile designator must refer to (1) a standard, predefined
+ <em>Profile Definition Document</em> as defined by <a href="#profiles"><b>F
+ Profiles</b></a>, or (2) a feasibly dereferenceable resource representing a
+ valid <em>Profile Definition Document</em> instance. In either case, the
+ referenced profile serves as the baseline profile of the specifying
+ <code>ttp:profile</code> element.</p>
+
+ <p>If the <code>use</code> attribute is not specified, then the baseline
+ profile of the <code>ttp:profile</code> element must be considered to be the
+ empty (null) profile, i.e., a profile definition containing no feature or
+ extension specifications.</p>
+
+ <p>The collection of features and extensions of a profile are determined
+ according to the following ordered rules:</p>
+
+ <ol class="enumar">
+ <li>
+ <p>initialize the features and extensions of the profile to the empty
+ set;</p>
+ </li>
+
+ <li>
+ <p>if a <code>use</code> attribute is present, then augment the profile
+ with the set of features and extensions specified by the referenced
+ baseline profile;</p>
+ </li>
+
+ <li>
+ <p>for each <code>ttp:feature</code> and <code>ttp:extension</code> element
+ descendant of the <code>ttp:profile</code> element, using a post-order
+ traversal, merge the specified feature or extension with the features and
+ extensions of the profile, where merging a feature or extension entails
+ replacing an existing feature or extension specification, if it already
+ exists, or adding a new feature or extension specification, if it does not
+ yet exist in the profile;</p>
+ </li>
+ </ol>
+
+ <p>A conformant TTML processor is not required to be able to dereference a
+ <em>Profile Definition Document</em> that is not one of the standard,
+ predefined profiles defined by <a href="#profiles"><b>F Profiles</b></a>.
+ Furthermore, a conformant TTML processor may make use of a built-in, static
+ form of each standard, predefined profile so as not to require dereferencing a
+ network resource.</p>
+
+ <p>If a TTML processor is unable to dereference a non-standard <em>Profile
+ Definition Document</em>, then it must not further process the document without
+ the presence of an explicit override from an end-user or some implementation
+ specific parameter traceable to an end-user or to a user or system
+ configuration setting. If a TTML processor aborts processing of a <em>Document
+ Instance</em> due to the inability to reference a non-standard <em>Profile
+ Definition Document</em>, then some end-user notification should be given
+ unless the end-user or system has disabled such a notification, or if the
+ processor does not permit or entail the intervention of an end-user.</p>
+
+ <p>The <code>ttp:profile</code> element is illustrated by the following
+ example.</p><a id="parameter-vocabulary-profile-example-1" name=
+ "parameter-vocabulary-profile-example-1"></a>
+
+ <table class="example">
+ <caption>
+ Example Fragment – ttp:profile
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<ttp:profile use="dfxp-presentation">
<ttp:features xml:base="http://www.w3.org/ns/ttml/feature/">
<ttp:feature>#text-outline</ttp:feature>
</ttp:features>
</ttp:profile>
-</pre></div>
-</td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>In the above example, the DFXP presentation profile is used as the
-baseline profile. This baseline profile is then supersetted (thus
-creating an additive derived profile) by requiring support for
-<code>#text-outline</code> feature.</p></div></div><div class="div3">
-<h4><a id="parameter-vocabulary-features"></a>6.1.2 ttp:features</h4><p>The <code>ttp:features</code> element is a container element used to group
-infomation about feature support requirements.</p><p>The <code>ttp:features</code> element accepts as its children zero or more
-elements in the <code>Metadata.class</code> element group, followed by
-zero or more <code>ttp:feature</code> elements.</p><a id="elt-syntax-parameter-features"></a><table class="syntax"><caption>XML Representation – Element Information Item: ttp:features</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>In the above example, the DFXP presentation profile is used as the
+ baseline profile. This baseline profile is then supersetted (thus creating an
+ additive derived profile) by requiring support for <code>#text-outline</code>
+ feature.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="parameter-vocabulary-features" name=
+ "parameter-vocabulary-features"></a>6.1.2 ttp:features</h4>
+
+ <p>The <code>ttp:features</code> element is a container element used to group
+ infomation about feature support requirements.</p>
+
+ <p>The <code>ttp:features</code> element accepts as its children zero or more
+ elements in the <code>Metadata.class</code> element group, followed by zero or
+ more <code>ttp:feature</code> elements.</p><a id=
+ "elt-syntax-parameter-features" name="elt-syntax-parameter-features"></a>
+
+ <table class="syntax">
+ <caption>
+ XML Representation – Element Information Item: ttp:features
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<ttp:features
xml:base = string : <em>TT Feature Namespace</em>
<a href="#content-attribute-id">xml:id</a> = ID
{<em>any attribute not in default or any TT namespace</em>}>
- <em>Content:</em> <a href="#element-vocab-group-table">Metadata.class</a>*, <a href="#parameter-vocabulary-feature">ttp:feature</a>*
+ <em>Content:</em> <a href="#element-vocab-group-table">Metadata.class</a>*, <a href=
+"#parameter-vocabulary-feature">ttp:feature</a>*
</ttp:features>
-</pre></div>
-</td></tr></tbody></table><p>If specified, the <code>xml:base</code>
-attribute must (1) adhere to the
-<code>xsd:anyURI</code> data type defined by <a href="#xsd-2">[XML Schema Part 2]</a>,
-§3.2.17, (2) express an absolute URI that
-adheres to <a href="#xmlbase">[XML Base]</a> and,
-(3) express a feature namespace as defined by
-<a href="#feature-designations"><b>D.1 Feature Designations</b></a>. If not specified, the
-<code>xml:base</code> attribute's default
-value applies, which is the TT Feature Namespace.</p><p>The <code>xml:base</code> attribute is
-used to permit the abbreviation of feature designation URIs expressed
-by child <code>ttp:feature</code> elements.</p></div><div class="div3">
-<h4><a id="parameter-vocabulary-feature"></a>6.1.3 ttp:feature</h4><p>The <code>ttp:feature</code> element is used to specify
-infomation about support requirements for a particular feature.</p><p>The children of the <code>ttp:feature</code> element must express a non-empty
-sequence of character information items that adheres to the
-<code>xsd:anyURI</code> data type defined by <a href="#xsd-2">[XML Schema Part 2]</a>,
-§3.2.17.</p><a id="elt-syntax-parameter-feature"></a><table class="syntax"><caption>XML Representation – Element Information Item: ttp:feature</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>If specified, the <code>xml:base</code> attribute must (1) adhere to the
+ <code>xsd:anyURI</code> data type defined by <a href="#xsd-2">[XML Schema Part
+ 2]</a>, §3.2.17, (2) express an absolute URI that adheres to <a href=
+ "#xmlbase">[XML Base]</a> and, (3) express a feature namespace as defined by
+ <a href="#feature-designations"><b>D.1 Feature Designations</b></a>. If not
+ specified, the <code>xml:base</code> attribute's default value applies, which
+ is the TT Feature Namespace.</p>
+
+ <p>The <code>xml:base</code> attribute is used to permit the abbreviation of
+ feature designation URIs expressed by child <code>ttp:feature</code>
+ elements.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="parameter-vocabulary-feature" name=
+ "parameter-vocabulary-feature"></a>6.1.3 ttp:feature</h4>
+
+ <p>The <code>ttp:feature</code> element is used to specify infomation about
+ support requirements for a particular feature.</p>
+
+ <p>The children of the <code>ttp:feature</code> element must express a
+ non-empty sequence of character information items that adheres to the
+ <code>xsd:anyURI</code> data type defined by <a href="#xsd-2">[XML Schema Part
+ 2]</a>, §3.2.17.</p><a id="elt-syntax-parameter-feature" name=
+ "elt-syntax-parameter-feature"></a>
+
+ <table class="syntax">
+ <caption>
+ XML Representation – Element Information Item: ttp:feature
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<ttp:feature
value = (optional|required|use) : required
<a href="#content-attribute-id">xml:id</a> = ID
{<em>any attribute not in default or any TT namespace</em>}>
<em>Content:</em> #PCDATA
</ttp:feature>
-</pre></div>
-</td></tr></tbody></table><p>If the URI expressed by the content of the <code>ttp:feature</code>
-element is a relative URI, then, when combined with the
-feature namespace value expressed by the
-<code>xml:base</code> attribute of the
-nearest ancestor <code>ttp:features</code> element, it must express an
-absolute URI. In either case (original absolute URI or resulting
-absolutized URI), the URI expressed by the <code>ttp:feature</code>
-element must further adhere to the syntax of a feature designation as
-defined by <a href="#feature-designations"><b>D.1 Feature Designations</b></a>, and, furthermore,
-the specific designation that appears in this URI, i.e., the portion of the feature designation
-that starts with the fragment identifier separator '#', must
-be defined by this specification or some published version thereof (that
-has achieved REC status).</p><p>If the URI expressed by the content of the <code>ttp:feature</code> element
-is a relative URI, then an <code>xml:base</code> attribute should be
-specified on the nearest ancestor <code>ttp:features</code> element.</p><p>The <code>value</code> attribute specifies whether a conforming TTML
-processor must or may implement the designated feature in order to
-process the document. If the value of the <code>value</code> attribute
-is <code>optional</code>, then the processor need
-not implement or otherwise support the feature in order to process the
-document; if the value is <code>required</code>, then the processor
-must implement or otherwise support the feature, irrespective of
-whether the feature is enabled or disabled, in order to process
-the document; if the value is
-<code>use</code>, then the processor must both (1) implement or
-otherwise support the feature and (2) have enabled (activated) use of the
-feature.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>The default value of the <code>value</code> attribute is
-<code>required</code>, as indicated in the above element information
-item definition. Therefore, if a <code>value</code> attribute is not
-specified on a <code>ttp:feature</code> element, it is equivalent to
-specifying that support for the feature is required.</p></div><p>If the value of the <code>value</code> attribute is
-<code>required</code> or <code>use</code>
-and the TTML processor implementation does
-not support the feature, or if the <code>value</code> attribute is
-<code>use</code> and the TTML processor implementation supports but has disabled
-that feature, then it must not further process the document
-without the presence of an explicit override from an end-user or some
-implementation specific parameter traceable to an end-user or to a
-user or system configuration setting. If a TTML processor aborts
-processing of a <em>Document Instance</em> due to the specification of a
-required, but unsupported feature by this element, then some end-user
-notification should be given unless the end-user or system has
-disabled such a notification, or if the processor does not permit or
-entail the intervention of an end-user.</p><p>If the value of the <code>value</code> attribute is
-<code>optional</code>, and if the TTML processor implementation does
-not support the feature, then it may further process the document even
-in the case that some use of the feature is present in the document.
-In the case of actual use of a feature designated as optional, the
-default semantics associated with that feature apply; that is, the
-processor may behave as if the feature were not actually used or
-referenced by the document. Notwithstanding the above, the syntactic
-presence or reference to an optional feature by a document must not be
-considered to be a violation of document validity or a barrier to
-further processing if the syntactic expression is well-formed and
-valid.</p><p>If some defined (i.e., standardized) or otherwise well known feature is not specified by
-a <code>ttp:feature</code> element in a given profile, then it must be interpreted as if the feature were specified
-with the <code>value</code> attribute equal to <code>optional</code>.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>In particular, if some feature is not present in a profile definition, then
-it is not to be interpreted as meaning the use of that feature (in a <em>Document Instance</em>)
-is disallowed or otherwise prohibited.</p></div><p>The <code>ttp:feature</code> element is illustrated by the following example.</p><a id="parameter-vocabulary-feature-example-1"></a><table class="example"><caption>Example Fragment – ttp:feature</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>If the URI expressed by the content of the <code>ttp:feature</code> element
+ is a relative URI, then, when combined with the feature namespace value
+ expressed by the <code>xml:base</code> attribute of the nearest ancestor
+ <code>ttp:features</code> element, it must express an absolute URI. In either
+ case (original absolute URI or resulting absolutized URI), the URI expressed by
+ the <code>ttp:feature</code> element must further adhere to the syntax of a
+ feature designation as defined by <a href="#feature-designations"><b>D.1
+ Feature Designations</b></a>, and, furthermore, the specific designation that
+ appears in this URI, i.e., the portion of the feature designation that starts
+ with the fragment identifier separator '#', must be defined by this
+ specification or some published version thereof (that has achieved REC
+ status).</p>
+
+ <p>If the URI expressed by the content of the <code>ttp:feature</code> element
+ is a relative URI, then an <code>xml:base</code> attribute should be specified
+ on the nearest ancestor <code>ttp:features</code> element.</p>
+
+ <p>The <code>value</code> attribute specifies whether a conforming TTML
+ processor must or may implement the designated feature in order to process the
+ document. If the value of the <code>value</code> attribute is
+ <code>optional</code>, then the processor need not implement or otherwise
+ support the feature in order to process the document; if the value is
+ <code>required</code>, then the processor must implement or otherwise support
+ the feature, irrespective of whether the feature is enabled or disabled, in
+ order to process the document; if the value is <code>use</code>, then the
+ processor must both (1) implement or otherwise support the feature and (2) have
+ enabled (activated) use of the feature.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The default value of the <code>value</code> attribute is
+ <code>required</code>, as indicated in the above element information item
+ definition. Therefore, if a <code>value</code> attribute is not specified on
+ a <code>ttp:feature</code> element, it is equivalent to specifying that
+ support for the feature is required.</p>
+ </div>
+
+ <p>If the value of the <code>value</code> attribute is <code>required</code> or
+ <code>use</code> and the TTML processor implementation does not support the
+ feature, or if the <code>value</code> attribute is <code>use</code> and the
+ TTML processor implementation supports but has disabled that feature, then it
+ must not further process the document without the presence of an explicit
+ override from an end-user or some implementation specific parameter traceable
+ to an end-user or to a user or system configuration setting. If a TTML
+ processor aborts processing of a <em>Document Instance</em> due to the
+ specification of a required, but unsupported feature by this element, then some
+ end-user notification should be given unless the end-user or system has
+ disabled such a notification, or if the processor does not permit or entail the
+ intervention of an end-user.</p>
+
+ <p>If the value of the <code>value</code> attribute is <code>optional</code>,
+ and if the TTML processor implementation does not support the feature, then it
+ may further process the document even in the case that some use of the feature
+ is present in the document. In the case of actual use of a feature designated
+ as optional, the default semantics associated with that feature apply; that is,
+ the processor may behave as if the feature were not actually used or referenced
+ by the document. Notwithstanding the above, the syntactic presence or reference
+ to an optional feature by a document must not be considered to be a violation
+ of document validity or a barrier to further processing if the syntactic
+ expression is well-formed and valid.</p>
+
+ <p>If some defined (i.e., standardized) or otherwise well known feature is not
+ specified by a <code>ttp:feature</code> element in a given profile, then it
+ must be interpreted as if the feature were specified with the
+ <code>value</code> attribute equal to <code>optional</code>.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>In particular, if some feature is not present in a profile definition,
+ then it is not to be interpreted as meaning the use of that feature (in a
+ <em>Document Instance</em>) is disallowed or otherwise prohibited.</p>
+ </div>
+
+ <p>The <code>ttp:feature</code> element is illustrated by the following
+ example.</p><a id="parameter-vocabulary-feature-example-1" name=
+ "parameter-vocabulary-feature-example-1"></a>
+
+ <table class="example">
+ <caption>
+ Example Fragment – ttp:feature
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<ttp:profile use="http://www.w3.org/ns/ttml/profile/dfxp-presentation">
<ttp:features xml:base="http://www.w3.org/ns/ttml/feature/">
- <span class="strong"><ttp:feature value="required">#fontStyle-italic</ttp:feature></span>
- <span class="strong"><ttp:feature value="required">#textDecoration-under</ttp:feature></span>
+ <span class=
+"strong"><ttp:feature value="required">#fontStyle-italic</ttp:feature></span>
+ <span class=
+"strong"><ttp:feature value="required">#textDecoration-under</ttp:feature></span>
</ttp:features>
</ttp:profile>
-</pre></div>
-</td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>In the above example, the DFXP presentation profile is used as the
-baseline profile. This baseline profile is then modified by two
-<code>ttp:feature</code> elements in order to
-superset the baseline profile (since neither
-<code>#fontStyle-italic</code> nor <code>#textDecoration-under</code>
-are required by the DFXP presentation profile).</p><p>The effect of this example is to express authorial intentions that
-italic font style and text underlining must be
-supported.</p></div></div><div class="div3">
-<h4><a id="parameter-vocabulary-extensions"></a>6.1.4 ttp:extensions</h4><p>The <code>ttp:extensions</code> element is a container element used to group
-infomation about extension support requirements.</p><p>The <code>ttp:extensions</code> element accepts as its children zero or more
-elements in the <code>Metadata.class</code> element group, followed by
-zero or more <code>ttp:extension</code> elements.</p><a id="elt-syntax-parameter-extensions"></a><table class="syntax"><caption>XML Representation – Element Information Item: ttp:extensions</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>In the above example, the DFXP presentation profile is used as the
+ baseline profile. This baseline profile is then modified by two
+ <code>ttp:feature</code> elements in order to superset the baseline profile
+ (since neither <code>#fontStyle-italic</code> nor
+ <code>#textDecoration-under</code> are required by the DFXP presentation
+ profile).</p>
+
+ <p>The effect of this example is to express authorial intentions that italic
+ font style and text underlining must be supported.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="parameter-vocabulary-extensions" name=
+ "parameter-vocabulary-extensions"></a>6.1.4 ttp:extensions</h4>
+
+ <p>The <code>ttp:extensions</code> element is a container element used to group
+ infomation about extension support requirements.</p>
+
+ <p>The <code>ttp:extensions</code> element accepts as its children zero or more
+ elements in the <code>Metadata.class</code> element group, followed by zero or
+ more <code>ttp:extension</code> elements.</p><a id=
+ "elt-syntax-parameter-extensions" name="elt-syntax-parameter-extensions"></a>
+
+ <table class="syntax">
+ <caption>
+ XML Representation – Element Information Item: ttp:extensions
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<ttp:extensions
xml:base = string : <em>TT Extension Namespace</em>
<a href="#content-attribute-id">xml:id</a> = ID
{<em>any attribute not in default or any TT namespace</em>}>
- <em>Content:</em> <a href="#element-vocab-group-table">Metadata.class</a>*, <a href="#parameter-vocabulary-extension">ttp:extension</a>*
+ <em>Content:</em> <a href="#element-vocab-group-table">Metadata.class</a>*, <a href=
+"#parameter-vocabulary-extension">ttp:extension</a>*
</ttp:extensions>
-</pre></div>
-</td></tr></tbody></table><p>If specified, the <code>xml:base</code>
-attribute must (1) adhere to the
-<code>xsd:anyURI</code> data type defined by <a href="#xsd-2">[XML Schema Part 2]</a>,
-§3.2.17, (2) express an absolute URI that
-adheres to <a href="#xmlbase">[XML Base]</a> and,
-(3) express an extension namespace as defined by
-<a href="#extension-designations"><b>E.1 Extension Designations</b></a>. If not specified, the
-<code>xml:base</code> attribute's default
-value applies, which is the TT Extension Namespace.</p><p>The <code>xml:base</code> attribute is
-used to permit the abbreviation of feature designation URIs expressed
-by child <code>ttp:extension</code> elements.</p></div><div class="div3">
-<h4><a id="parameter-vocabulary-extension"></a>6.1.5 ttp:extension</h4><p>The <code>ttp:extension</code> element is used to specify
-infomation about support requirements for a particular extension.</p><p>The children of the <code>ttp:extension</code> element must express a non-empty
-sequence of character information items that adheres to the
-<code>xsd:anyURI</code> data type defined by <a href="#xsd-2">[XML Schema Part 2]</a>,
-§3.2.17.</p><a id="elt-syntax-parameter-extension"></a><table class="syntax"><caption>XML Representation – Element Information Item: ttp:extension</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>If specified, the <code>xml:base</code> attribute must (1) adhere to the
+ <code>xsd:anyURI</code> data type defined by <a href="#xsd-2">[XML Schema Part
+ 2]</a>, §3.2.17, (2) express an absolute URI that adheres to <a href=
+ "#xmlbase">[XML Base]</a> and, (3) express an extension namespace as defined by
+ <a href="#extension-designations"><b>E.1 Extension Designations</b></a>. If not
+ specified, the <code>xml:base</code> attribute's default value applies, which
+ is the TT Extension Namespace.</p>
+
+ <p>The <code>xml:base</code> attribute is used to permit the abbreviation of
+ feature designation URIs expressed by child <code>ttp:extension</code>
+ elements.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="parameter-vocabulary-extension" name=
+ "parameter-vocabulary-extension"></a>6.1.5 ttp:extension</h4>
+
+ <p>The <code>ttp:extension</code> element is used to specify infomation about
+ support requirements for a particular extension.</p>
+
+ <p>The children of the <code>ttp:extension</code> element must express a
+ non-empty sequence of character information items that adheres to the
+ <code>xsd:anyURI</code> data type defined by <a href="#xsd-2">[XML Schema Part
+ 2]</a>, §3.2.17.</p><a id="elt-syntax-parameter-extension" name=
+ "elt-syntax-parameter-extension"></a>
+
+ <table class="syntax">
+ <caption>
+ XML Representation – Element Information Item: ttp:extension
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<ttp:extension
value = (optional|required|use) : required
<a href="#content-attribute-id">xml:id</a> = ID
{<em>any attribute not in default or any TT namespace</em>}>
<em>Content:</em> #PCDATA
</ttp:extension>
-</pre></div>
-</td></tr></tbody></table><p>If the URI expressed by the content of the <code>ttp:extension</code>
-element is a relative URI, then, when combined with the
-extension namespace value expressed by the
-<code>xml:base</code> attribute of the
-nearest ancestor <code>ttp:extensions</code> element, it must express an
-absolute URI. In either case (original absolute URI or resulting
-absolutized URI), the URI expressed by the <code>ttp:extension</code>
-element must further adhere to the syntax of an extension designation
-as defined by <a href="#extension-designations"><b>E.1 Extension Designations</b></a>.</p><p>If the URI expressed by the content of the
-<code>ttp:feature</code> element is a relative URI, then an
-<code>xml:base</code> attribute should be specified on the nearest
-ancestor <code>ttp:extensions</code> element.</p><p>The <code>value</code> attribute specifies whether a conforming TTML
-processor must or may implement the designated extension in order to
-process the document. If the value of the <code>value</code> attribute
-is <code>optional</code>, then the processor need
-not implement or otherwise support the extension in order to process the
-document; if the value is <code>required</code>, then the processor
-must implement or otherwise support the extension in order to process
-the document; if the value is
-<code>use</code>, then the processor must both (1) implement or
-otherwise support the extension and (2) enable (activate) use of the
-extension.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>The default value of the <code>value</code> attribute is
-<code>required</code>, as indicated in the above element information
-item definition. Therefore, if a <code>value</code> attribute is not
-specified on a <code>ttp:extension</code> element, it is equivalent to
-specifying that support for the extension is required.</p></div><p>If the value of the <code>value</code> attribute is
-<code>required</code> or <code>use</code>
-and the TTML processor implementation does
-not support the extension, or if the <code>value</code> attribute is
-<code>use</code> and the TTML processor implementation supports but has disabled
-that extension, then it must not further process the document without the
-presence of an explicit override from an end-user or some
-implementation specific parameter traceable to an end-user or to a
-user or system configuration setting. If a TTML processor aborts
-processing of a <em>Document Instance</em> due to the specification of a
-required, but unsupported extension by this element, then some
-end-user notification should be given unless the end-user or system
-has disabled such a notification, or if the processor does not permit
-or entail the intervention of an end-user.</p><p>If the value of the <code>value</code> attribute is
-<code>optional</code>, and if the TTML processor implementation does
-not support the extension, then it may further process the document even
-in the case that some use of the extension is present in the document.
-In the case of actual use of an extension designated as optional, the
-default semantics associated with that extension apply; that is, the
-processor may behave as if the extension were not actually used or
-referenced by the document. Notwithstanding the above, the syntactic
-presence or reference to an optional extension by a document must not be
-considered to be a violation of document validity or a barrier to
-further processing if the syntactic expression is well-formed and
-valid.</p><p>If some well known extension is not specified by
-a <code>ttp:extension</code> element in a given profile, then it must be interpreted as if the extension were specified
-with the <code>value</code> attribute equal to <code>optional</code>.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>In particular, if some extension is not present in a profile definition, then
-it is not to be interpreted as meaning the use of that extension (in a <em>Document Instance</em>)
-is disallowed or otherwise prohibited.</p></div><p>The <code>ttp:extension</code> element is illustrated by the following example.</p><a id="parameter-vocabulary-extension-example-1"></a><table class="example"><caption>Example Fragment – ttp:extension</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>If the URI expressed by the content of the <code>ttp:extension</code>
+ element is a relative URI, then, when combined with the extension namespace
+ value expressed by the <code>xml:base</code> attribute of the nearest ancestor
+ <code>ttp:extensions</code> element, it must express an absolute URI. In either
+ case (original absolute URI or resulting absolutized URI), the URI expressed by
+ the <code>ttp:extension</code> element must further adhere to the syntax of an
+ extension designation as defined by <a href="#extension-designations"><b>E.1
+ Extension Designations</b></a>.</p>
+
+ <p>If the URI expressed by the content of the <code>ttp:feature</code> element
+ is a relative URI, then an <code>xml:base</code> attribute should be specified
+ on the nearest ancestor <code>ttp:extensions</code> element.</p>
+
+ <p>The <code>value</code> attribute specifies whether a conforming TTML
+ processor must or may implement the designated extension in order to process
+ the document. If the value of the <code>value</code> attribute is
+ <code>optional</code>, then the processor need not implement or otherwise
+ support the extension in order to process the document; if the value is
+ <code>required</code>, then the processor must implement or otherwise support
+ the extension in order to process the document; if the value is
+ <code>use</code>, then the processor must both (1) implement or otherwise
+ support the extension and (2) enable (activate) use of the extension.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The default value of the <code>value</code> attribute is
+ <code>required</code>, as indicated in the above element information item
+ definition. Therefore, if a <code>value</code> attribute is not specified on
+ a <code>ttp:extension</code> element, it is equivalent to specifying that
+ support for the extension is required.</p>
+ </div>
+
+ <p>If the value of the <code>value</code> attribute is <code>required</code> or
+ <code>use</code> and the TTML processor implementation does not support the
+ extension, or if the <code>value</code> attribute is <code>use</code> and the
+ TTML processor implementation supports but has disabled that extension, then it
+ must not further process the document without the presence of an explicit
+ override from an end-user or some implementation specific parameter traceable
+ to an end-user or to a user or system configuration setting. If a TTML
+ processor aborts processing of a <em>Document Instance</em> due to the
+ specification of a required, but unsupported extension by this element, then
+ some end-user notification should be given unless the end-user or system has
+ disabled such a notification, or if the processor does not permit or entail the
+ intervention of an end-user.</p>
+
+ <p>If the value of the <code>value</code> attribute is <code>optional</code>,
+ and if the TTML processor implementation does not support the extension, then
+ it may further process the document even in the case that some use of the
+ extension is present in the document. In the case of actual use of an extension
+ designated as optional, the default semantics associated with that extension
+ apply; that is, the processor may behave as if the extension were not actually
+ used or referenced by the document. Notwithstanding the above, the syntactic
+ presence or reference to an optional extension by a document must not be
+ considered to be a violation of document validity or a barrier to further
+ processing if the syntactic expression is well-formed and valid.</p>
+
+ <p>If some well known extension is not specified by a
+ <code>ttp:extension</code> element in a given profile, then it must be
+ interpreted as if the extension were specified with the <code>value</code>
+ attribute equal to <code>optional</code>.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>In particular, if some extension is not present in a profile definition,
+ then it is not to be interpreted as meaning the use of that extension (in a
+ <em>Document Instance</em>) is disallowed or otherwise prohibited.</p>
+ </div>
+
+ <p>The <code>ttp:extension</code> element is illustrated by the following
+ example.</p><a id="parameter-vocabulary-extension-example-1" name=
+ "parameter-vocabulary-extension-example-1"></a>
+
+ <table class="example">
+ <caption>
+ Example Fragment – ttp:extension
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<ttp:profile use="http://www.w3.org/ns/ttml/profile/dfxp-transformation">
<ttp:extensions xml:base="http://example.org/ttml/extension/">
- <span class="strong"><ttp:extension value="use">#prefilter-by-language</ttp:extension></span>
+ <span class=
+"strong"><ttp:extension value="use">#prefilter-by-language</ttp:extension></span>
</ttp:extensions>
</ttp:profile>
-</pre></div>
-</td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>In the above example, the DFXP transformation profile is used as
-the baseline profile. This baseline profile is then supersetted by
-specifying that support and use is required for a private extension
-defined in a third party namespace.</p><p>The effect of this example is to express authorial intentions that
-a recipient processor must support the DFXP transformation profile and
-must also support and enable an extension defined by a third party.</p></div></div></div><div class="div2">
-<h3><a id="parameter-attribute-vocabulary"></a>6.2 Parameter Attribute Vocabulary</h3><p>The following attributes are defined in the TT Parameter Namespace.</p><ul><li><p><a href="#parameter-attribute-cellResolution"><b>6.2.1 ttp:cellResolution</b></a></p></li><li><p><a href="#parameter-attribute-clockMode"><b>6.2.2 ttp:clockMode</b></a></p></li><li><p><a href="#parameter-attribute-dropMode"><b>6.2.3 ttp:dropMode</b></a></p></li><li><p><a href="#parameter-attribute-frameRate"><b>6.2.4 ttp:frameRate</b></a></p></li><li><p><a href="#parameter-attribute-frameRateMultiplier"><b>6.2.5 ttp:frameRateMultiplier</b></a></p></li><li><p><a href="#parameter-attribute-markerMode"><b>6.2.6 ttp:markerMode</b></a></p></li><li><p><a href="#parameter-attribute-pixelAspectRatio"><b>6.2.7 ttp:pixelAspectRatio</b></a></p></li><li><p><a href="#parameter-attribute-profile"><b>6.2.8 ttp:profile</b></a></p></li><li><p><a href="#parameter-attribute-subFrameRate"><b>6.2.9 ttp:subFrameRate</b></a></p></li><li><p><a href="#parameter-attribute-tickRate"><b>6.2.10 ttp:tickRate</b></a></p></li><li><p><a href="#parameter-attribute-timeBase"><b>6.2.11 ttp:timeBase</b></a></p></li></ul><p>Unless explicitly stated otherwise, linear white-space (LWSP) must
-appear between adjacent non-terminal components of a TT Parameter value
-unless some other delimiter is permitted and used.</p><div class="div3">
-<h4><a id="parameter-attribute-cellResolution"></a>6.2.1 ttp:cellResolution</h4><p>The <code>ttp:cellResolution</code> attribute may be used by an author
-to express the number of horizontal and vertical cells into which the <em>Root Container Region</em>
-area is divided for the purpose of expressing presentation semantics in terms of
-a uniform grid.</p><p>If specified, the value of this attribute must adhere to the following syntax:</p><a id="parameter-attribute-cellResolution-syntax"></a><table class="syntax"><caption>Syntax Representation – ttp:cellResolution</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>In the above example, the DFXP transformation profile is used as the
+ baseline profile. This baseline profile is then supersetted by specifying
+ that support and use is required for a private extension defined in a third
+ party namespace.</p>
+
+ <p>The effect of this example is to express authorial intentions that a
+ recipient processor must support the DFXP transformation profile and must
+ also support and enable an extension defined by a third party.</p>
+ </div>
+ </div>
+ </div>
+
+ <div class="div2">
+ <h3><a id="parameter-attribute-vocabulary" name=
+ "parameter-attribute-vocabulary"></a>6.2 Parameter Attribute Vocabulary</h3>
+
+ <p>The following attributes are defined in the TT Parameter Namespace.</p>
+
+ <ul>
+ <li>
+ <p><a href="#parameter-attribute-cellResolution"><b>6.2.1
+ ttp:cellResolution</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#parameter-attribute-clockMode"><b>6.2.2
+ ttp:clockMode</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#parameter-attribute-dropMode"><b>6.2.3 ttp:dropMode</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#parameter-attribute-frameRate"><b>6.2.4
+ ttp:frameRate</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#parameter-attribute-frameRateMultiplier"><b>6.2.5
+ ttp:frameRateMultiplier</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#parameter-attribute-markerMode"><b>6.2.6
+ ttp:markerMode</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#parameter-attribute-pixelAspectRatio"><b>6.2.7
+ ttp:pixelAspectRatio</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#parameter-attribute-profile"><b>6.2.8 ttp:profile</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#parameter-attribute-subFrameRate"><b>6.2.9
+ ttp:subFrameRate</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#parameter-attribute-tickRate"><b>6.2.10 ttp:tickRate</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#parameter-attribute-timeBase"><b>6.2.11 ttp:timeBase</b></a></p>
+ </li>
+ </ul>
+
+ <p>Unless explicitly stated otherwise, linear white-space (LWSP) must appear
+ between adjacent non-terminal components of a TT Parameter value unless some
+ other delimiter is permitted and used.</p>
+
+ <div class="div3">
+ <h4><a id="parameter-attribute-cellResolution" name=
+ "parameter-attribute-cellResolution"></a>6.2.1 ttp:cellResolution</h4>
+
+ <p>The <code>ttp:cellResolution</code> attribute may be used by an author to
+ express the number of horizontal and vertical cells into which the <em>Root
+ Container Region</em> area is divided for the purpose of expressing
+ presentation semantics in terms of a uniform grid.</p>
+
+ <p>If specified, the value of this attribute must adhere to the following
+ syntax:</p><a id="parameter-attribute-cellResolution-syntax" name=
+ "parameter-attribute-cellResolution-syntax"></a>
+
+ <table class="syntax">
+ <caption>
+ Syntax Representation – ttp:cellResolution
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
ttp:cellResolution
: columns rows // <em>columns</em> != 0; <em>rows</em> != 0
columns | rows
: <a href="#style-value-digit"><digit></a>+
-</pre></div>
-</td></tr></tbody></table><p>If not specified, the number of columns and rows must be considered
-to be 32 and 15, respectively. If specified, then columns or rows must not be zero (0).</p><div class="note"><p class="prefix"><b>Note:</b></p><p>The choice of values 32 and 15 are based on this being the
-maximum number of columns and rows defined by <a href="#cea608e">[CEA-608-E]</a>.</p></div><p>A <code>ttp:cellResolution</code> attribute is considered to be significant only
-when specified on the <code>tt</code> element.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>The use of a uniform grid is employed only for the purpose of
-measuring lengths and expressing coordinates. In particular, it is not
-assumed that the presentation of text or the alignment of individual
-glyph areas is
-coordinated with this grid. Such alignment is possible, but
-requires the use of a monospaced font and a font size whose EM square exactly
-matches the cell size.</p></div><p>Except where indicated otherwise, when a <a href="#style-value-length"><length></a> expressed in
-cells denotes a dimension parallel to the inline or block progression dimension,
-the cell's dimension in the inline or block progression dimension applies, respectively.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>For example, if padding (on all four edges) is specified as 0.1c, the cell resolution
-is 20 by 10, and the extent of the <em>Root Container Region</em> is 640 by 480, then, assuming top to bottom,
-left to right writing mode, the start and end padding will be (640 / 20) * 0.1 pixels and the
-before and after padding will be (480 / 10) * 0.1 pixels.</p></div></div><div class="div3">
-<h4><a id="parameter-attribute-clockMode"></a>6.2.2 ttp:clockMode</h4><p>The <code>ttp:clockMode</code> attribute is used to specify the
-interpretation of time expressions as real-time time coordinates when
-operating with time base of <code>clock</code> as defined by <a href="#parameter-attribute-timeBase"><b>6.2.11 ttp:timeBase</b></a>.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>See <a href="#timing-time-value-expressions"><b>10.3 Time Value Expressions</b></a> for the
-specification of time expression syntax and semantics.</p></div><p>If specified, the value of this attribute must adhere to the following syntax:</p><a id="parameter-attribute-clockMode-syntax"></a><table class="syntax"><caption>Syntax Representation – ttp:clockMode</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>If not specified, the number of columns and rows must be considered to be 32
+ and 15, respectively. If specified, then columns or rows must not be zero
+ (0).</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The choice of values 32 and 15 are based on this being the maximum number
+ of columns and rows defined by <a href="#cea608e">[CEA-608-E]</a>.</p>
+ </div>
+
+ <p>A <code>ttp:cellResolution</code> attribute is considered to be significant
+ only when specified on the <code>tt</code> element.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The use of a uniform grid is employed only for the purpose of measuring
+ lengths and expressing coordinates. In particular, it is not assumed that the
+ presentation of text or the alignment of individual glyph areas is
+ coordinated with this grid. Such alignment is possible, but requires the use
+ of a monospaced font and a font size whose EM square exactly matches the cell
+ size.</p>
+ </div>
+
+ <p>Except where indicated otherwise, when a <a href=
+ "#style-value-length"><length></a> expressed in cells denotes a dimension
+ parallel to the inline or block progression dimension, the cell's dimension in
+ the inline or block progression dimension applies, respectively.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>For example, if padding (on all four edges) is specified as 0.1c, the cell
+ resolution is 20 by 10, and the extent of the <em>Root Container Region</em>
+ is 640 by 480, then, assuming top to bottom, left to right writing mode, the
+ start and end padding will be (640 / 20) * 0.1 pixels and the before and
+ after padding will be (480 / 10) * 0.1 pixels.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="parameter-attribute-clockMode" name=
+ "parameter-attribute-clockMode"></a>6.2.2 ttp:clockMode</h4>
+
+ <p>The <code>ttp:clockMode</code> attribute is used to specify the
+ interpretation of time expressions as real-time time coordinates when operating
+ with time base of <code>clock</code> as defined by <a href=
+ "#parameter-attribute-timeBase"><b>6.2.11 ttp:timeBase</b></a>.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>See <a href="#timing-time-value-expressions"><b>10.3 Time Value
+ Expressions</b></a> for the specification of time expression syntax and
+ semantics.</p>
+ </div>
+
+ <p>If specified, the value of this attribute must adhere to the following
+ syntax:</p><a id="parameter-attribute-clockMode-syntax" name=
+ "parameter-attribute-clockMode-syntax"></a>
+
+ <table class="syntax">
+ <caption>
+ Syntax Representation – ttp:clockMode
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
ttp:clockMode
: "local"
| "gps"
| "utc"
-</pre></div>
-</td></tr></tbody></table><p>If the time base, defined by <a href="#parameter-attribute-timeBase"><b>6.2.11 ttp:timeBase</b></a>, is designated as
-<code>clock</code>, then this parameter applies as follows: if the
-parameter's value is <code>local</code>, then time expressions are
-interpreted as local wall-clock time coordinates;
-if <code>utc</code>, then time expressions are
-interpreted as UTC time coordinates
-<a href="#utc">[UTC]</a>;
-if <code>gps</code>, then time expressions are
-interpreted as GPS time coordinates
-<a href="#gps">[GPS]</a>.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>The primary difference between GPS time and UTC time is that GPS
-time is not adjusted for leap seconds, while UTC time is adjusted as
-follows: UTC = TAI (<em>Temp Atomique International</em>) + <em>leap seconds
-accumulated since 1972</em>. TAI is maintained by the <em>Bureau
-International des Poids et Mesures</em> (BIPM) in Sevres, France.
-The GPS system time is steered to a Master Clock (MC) at the US Naval
-Observatory which is kept within a close but unspecified
-tolerance of TAI.</p></div><p>If not specified, the value of this parameter must be considered
-to be <code>utc</code>.</p><p>A <code>ttp:clockMode</code> attribute is considered to be significant only
-when specified on the <code>tt</code> element.</p></div><div class="div3">
-<h4><a id="parameter-attribute-dropMode"></a>6.2.3 ttp:dropMode</h4><p>The <code>ttp:dropMode</code> attribute is used to specify
-constraints on the interpretation and use of frame counts
-that correspond with <a href="#smpte12m">[SMPTE 12M]</a> time coordinates when operating
-with time base of <code>smpte</code> as defined by
-<a href="#parameter-attribute-timeBase"><b>6.2.11 ttp:timeBase</b></a>.</p><p>If specified, the value of this attribute must adhere to the following syntax:</p><a id="parameter-attribute-dropMode-syntax"></a><table class="syntax"><caption>Syntax Representation – ttp:dropMode</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>If the time base, defined by <a href=
+ "#parameter-attribute-timeBase"><b>6.2.11 ttp:timeBase</b></a>, is designated
+ as <code>clock</code>, then this parameter applies as follows: if the
+ parameter's value is <code>local</code>, then time expressions are interpreted
+ as local wall-clock time coordinates; if <code>utc</code>, then time
+ expressions are interpreted as UTC time coordinates <a href="#utc">[UTC]</a>;
+ if <code>gps</code>, then time expressions are interpreted as GPS time
+ coordinates <a href="#gps">[GPS]</a>.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The primary difference between GPS time and UTC time is that GPS time is
+ not adjusted for leap seconds, while UTC time is adjusted as follows: UTC =
+ TAI (<em>Temp Atomique International</em>) + <em>leap seconds accumulated
+ since 1972</em>. TAI is maintained by the <em>Bureau International des Poids
+ et Mesures</em> (BIPM) in Sevres, France. The GPS system time is steered to a
+ Master Clock (MC) at the US Naval Observatory which is kept within a close
+ but unspecified tolerance of TAI.</p>
+ </div>
+
+ <p>If not specified, the value of this parameter must be considered to be
+ <code>utc</code>.</p>
+
+ <p>A <code>ttp:clockMode</code> attribute is considered to be significant only
+ when specified on the <code>tt</code> element.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="parameter-attribute-dropMode" name=
+ "parameter-attribute-dropMode"></a>6.2.3 ttp:dropMode</h4>
+
+ <p>The <code>ttp:dropMode</code> attribute is used to specify constraints on
+ the interpretation and use of frame counts that correspond with <a href=
+ "#smpte12m">[SMPTE 12M]</a> time coordinates when operating with time base of
+ <code>smpte</code> as defined by <a href=
+ "#parameter-attribute-timeBase"><b>6.2.11 ttp:timeBase</b></a>.</p>
+
+ <p>If specified, the value of this attribute must adhere to the following
+ syntax:</p><a id="parameter-attribute-dropMode-syntax" name=
+ "parameter-attribute-dropMode-syntax"></a>
+
+ <table class="syntax">
+ <caption>
+ Syntax Representation – ttp:dropMode
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
ttp:dropMode
: "dropNTSC"
| "dropPAL"
| "nonDrop"
-</pre></div>
-</td></tr></tbody></table><p>If the time base, defined by <a href="#parameter-attribute-timeBase"><b>6.2.11 ttp:timeBase</b></a>, is designated as
-<code>smpte</code>, then this parameter applies as follows: if the
-parameter's value is <code>nonDrop</code>, then, within any given
-second of a time expression, frames count from 0 to
-<em>N−1</em>, where <em>N</em> is the value specified by
-the <code>ttp:frameRate</code> parameter, but while ignoring any value
-specified by the <code>ttp:frameRateMultiplier</code> parameter.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>When operating in <code>nonDrop</code>
-mode, a second of a time expression may or may not be equal to a
-second of real time during normal (1x speed) forward playback. If the
-<code>ttp:frameRateMultiplier</code> parameter is specified and is not
-equal to 1:1, then a second of a time expression will either be
-shorter or longer than a second of elapsed play in real
-time.</p></div><p>If this parameter's value is <code>dropNTSC</code>, then, within any
-given second of a time expression except the second <code>00</code>,
-frames count from 0 to <em>N−1</em>, where <em>N</em> is
-the value specified by the <code>ttp:frameRate</code> parameter, but
-while ignoring any value specified by the
-<code>ttp:frameRateMultiplier</code> parameter. If the second of a time
-expression is <code>00</code> and the minute of the time expression is
-not <code>00</code>, <code>10</code>, <code>20</code>, <code>30</code>,
-<code>40</code>, or <code>50</code>, then frame codes <code>00</code>
-and <code>01</code> are dropped during that second; otherwise, these
-frame codes are not dropped.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>For example, when operating in <code>dropNTSC</code>
-mode with <code>ttp:frameRate</code> of <code>30</code>, a discontinuity
-in frame count occurs between consecutive frames as shown in the
-following sequence of time expressions: <code>01:08:59:28</code>,
-<code>01:08:59:29</code>, <code>01:09:00:02</code>,
-<code>01:09:00:03</code>.</p></div><p>If this parameter's value is <code>dropPAL</code>, then, within any
-given second of a time expression except the second <code>00</code>,
-frames count from 0 to <em>N−1</em>, where <em>N</em> is
-the value specified by the <code>ttp:frameRate</code> parameter, but
-while ignoring any value specified by the
-<code>ttp:frameRateMultiplier</code> parameter. If the second of a time
-expression is <code>00</code> and the minute of the time expression is
-even but not <code>00</code>, <code>20</code>, or <code>40</code>,
-then frame codes <code>00</code> through <code>03</code> are dropped
-during that second; otherwise, these frame codes are not dropped.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>For example, when operating in <code>dropPAL</code>
-mode with <code>ttp:frameRate</code> of <code>30</code>, a discontinuity
-in frame count occurs between consecutive frames as shown in the
-following sequence of time expressions: <code>01:09:59:28</code>,
-<code>01:09:59:29</code>, <code>01:10:00:04</code>,
-<code>01:10:00:05</code>.</p></div><div class="note"><p class="prefix"><b>Note:</b></p><p>The <code>dropPAL</code> mode is also known as the
-<em>M/PAL</em> or <em>PAL (M)</em> drop-frame
-code, which uses PAL modulation with the NTSC frame rate of ~29.97
-frames/second. The M/PAL system is used primarily in Brazil.</p></div><p>If not specified, then <code>nonDrop</code> must be assumed to apply.</p><p>A <code>ttp:dropMode</code> attribute is considered to be significant only
-when specified on the <code>tt</code> element.</p></div><div class="div3">
-<h4><a id="parameter-attribute-frameRate"></a>6.2.4 ttp:frameRate</h4><p>The <code>ttp:frameRate</code> attribute is used to specify the frame rate of a related
-media object or the intrinsic frame rate of a <em>Document Instance</em> in case it is intended
-to function as an independent media object.</p><p>If specified, the value of this attribute must adhere to the following syntax:</p><a id="parameter-attribute-frameRate-syntax"></a><table class="syntax"><caption>Syntax Representation – ttp:frameRate</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>If the time base, defined by <a href=
+ "#parameter-attribute-timeBase"><b>6.2.11 ttp:timeBase</b></a>, is designated
+ as <code>smpte</code>, then this parameter applies as follows: if the
+ parameter's value is <code>nonDrop</code>, then, within any given second of a
+ time expression, frames count from 0 to <em>N−1</em>, where <em>N</em> is the
+ value specified by the <code>ttp:frameRate</code> parameter, but while ignoring
+ any value specified by the <code>ttp:frameRateMultiplier</code> parameter.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>When operating in <code>nonDrop</code> mode, a second of a time expression
+ may or may not be equal to a second of real time during normal (1x speed)
+ forward playback. If the <code>ttp:frameRateMultiplier</code> parameter is
+ specified and is not equal to 1:1, then a second of a time expression will
+ either be shorter or longer than a second of elapsed play in real time.</p>
+ </div>
+
+ <p>If this parameter's value is <code>dropNTSC</code>, then, within any given
+ second of a time expression except the second <code>00</code>, frames count
+ from 0 to <em>N−1</em>, where <em>N</em> is the value specified by the
+ <code>ttp:frameRate</code> parameter, but while ignoring any value specified by
+ the <code>ttp:frameRateMultiplier</code> parameter. If the second of a time
+ expression is <code>00</code> and the minute of the time expression is not
+ <code>00</code>, <code>10</code>, <code>20</code>, <code>30</code>,
+ <code>40</code>, or <code>50</code>, then frame codes <code>00</code> and
+ <code>01</code> are dropped during that second; otherwise, these frame codes
+ are not dropped.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>For example, when operating in <code>dropNTSC</code> mode with
+ <code>ttp:frameRate</code> of <code>30</code>, a discontinuity in frame count
+ occurs between consecutive frames as shown in the following sequence of time
+ expressions: <code>01:08:59:28</code>, <code>01:08:59:29</code>,
+ <code>01:09:00:02</code>, <code>01:09:00:03</code>.</p>
+ </div>
+
+ <p>If this parameter's value is <code>dropPAL</code>, then, within any given
+ second of a time expression except the second <code>00</code>, frames count
+ from 0 to <em>N−1</em>, where <em>N</em> is the value specified by the
+ <code>ttp:frameRate</code> parameter, but while ignoring any value specified by
+ the <code>ttp:frameRateMultiplier</code> parameter. If the second of a time
+ expression is <code>00</code> and the minute of the time expression is even but
+ not <code>00</code>, <code>20</code>, or <code>40</code>, then frame codes
+ <code>00</code> through <code>03</code> are dropped during that second;
+ otherwise, these frame codes are not dropped.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>For example, when operating in <code>dropPAL</code> mode with
+ <code>ttp:frameRate</code> of <code>30</code>, a discontinuity in frame count
+ occurs between consecutive frames as shown in the following sequence of time
+ expressions: <code>01:09:59:28</code>, <code>01:09:59:29</code>,
+ <code>01:10:00:04</code>, <code>01:10:00:05</code>.</p>
+ </div>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The <code>dropPAL</code> mode is also known as the <em>M/PAL</em> or
+ <em>PAL (M)</em> drop-frame code, which uses PAL modulation with the NTSC
+ frame rate of ~29.97 frames/second. The M/PAL system is used primarily in
+ Brazil.</p>
+ </div>
+
+ <p>If not specified, then <code>nonDrop</code> must be assumed to apply.</p>
+
+ <p>A <code>ttp:dropMode</code> attribute is considered to be significant only
+ when specified on the <code>tt</code> element.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="parameter-attribute-frameRate" name=
+ "parameter-attribute-frameRate"></a>6.2.4 ttp:frameRate</h4>
+
+ <p>The <code>ttp:frameRate</code> attribute is used to specify the frame rate
+ of a related media object or the intrinsic frame rate of a <em>Document
+ Instance</em> in case it is intended to function as an independent media
+ object.</p>
+
+ <p>If specified, the value of this attribute must adhere to the following
+ syntax:</p><a id="parameter-attribute-frameRate-syntax" name=
+ "parameter-attribute-frameRate-syntax"></a>
+
+ <table class="syntax">
+ <caption>
+ Syntax Representation – ttp:frameRate
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
ttp:frameRate
- : <a href="#style-value-digit"><digit></a>+ // <em>value</em> > 0
-</pre></div>
-</td></tr></tbody></table><p>The frame rate that applies to a <em>Document Instance</em> is used to
-interpret time expressions that are expressed in <em>frames</em>
-as defined by <a href="#timing-value-timeExpression"><b>10.3.1 <timeExpression></b></a>.</p><p>If the <code>media</code> time base applies and the effective frame rate is
-integral, then a frame is interpreted as a division of a second of media
-time, such that if the frame rate is specified as <em>F</em>, then
-a second of media time is divided into <em>F</em> intervals of
-equal duration, where each interval is labeled as frame <em>f</em>,
-with <em>f</em> ∈ [0…<em>F−1</em>].</p><div class="note"><p class="prefix"><b>Note:</b></p><p>See <a href="#time-expression-semantics-media"><b>N.2 Media Time Base</b></a> for further details
-on the interpretation of time expressions for the <code>media</code> time base.</p></div><p>If not specified, the frame rate must be considered to be equal to some
-application defined frame rate, or if no application defined frame rate applies,
-then thirty (30) frames per second. If specified, then the frame rate must
-be greater than zero (0).</p><p>A <code>ttp:frameRate</code> attribute is considered to be significant only
-when specified on the <code>tt</code> element.</p></div><div class="div3">
-<h4><a id="parameter-attribute-frameRateMultiplier"></a>6.2.5 ttp:frameRateMultiplier</h4><p>The <code>ttp:frameRateMultiplier</code> attribute is used to
-specify a multiplier to be applied to the frame rate specified by a
-<code>ttp:frameRate</code> attribute in order to compute the effective
-frame rate.</p><p>If specified, the value of this attribute must adhere to the following syntax:</p><a id="parameter-attribute-frameRateMultiplier-syntax"></a><table class="syntax"><caption>Syntax Representation – ttp:frameRateMultiplier</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+ : <a href=
+"#style-value-digit"><digit></a>+ // <em>value</em> > 0
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>The frame rate that applies to a <em>Document Instance</em> is used to
+ interpret time expressions that are expressed in <em>frames</em> as defined by
+ <a href="#timing-value-timeExpression"><b>10.3.1
+ <timeExpression></b></a>.</p>
+
+ <p>If the <code>media</code> time base applies and the effective frame rate is
+ integral, then a frame is interpreted as a division of a second of media time,
+ such that if the frame rate is specified as <em>F</em>, then a second of media
+ time is divided into <em>F</em> intervals of equal duration, where each
+ interval is labeled as frame <em>f</em>, with <em>f</em> ∈
+ [0…<em>F−1</em>].</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>See <a href="#time-expression-semantics-media"><b>N.2 Media Time
+ Base</b></a> for further details on the interpretation of time expressions
+ for the <code>media</code> time base.</p>
+ </div>
+
+ <p>If not specified, the frame rate must be considered to be equal to some
+ application defined frame rate, or if no application defined frame rate
+ applies, then thirty (30) frames per second. If specified, then the frame rate
+ must be greater than zero (0).</p>
+
+ <p>A <code>ttp:frameRate</code> attribute is considered to be significant only
+ when specified on the <code>tt</code> element.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="parameter-attribute-frameRateMultiplier" name=
+ "parameter-attribute-frameRateMultiplier"></a>6.2.5
+ ttp:frameRateMultiplier</h4>
+
+ <p>The <code>ttp:frameRateMultiplier</code> attribute is used to specify a
+ multiplier to be applied to the frame rate specified by a
+ <code>ttp:frameRate</code> attribute in order to compute the effective frame
+ rate.</p>
+
+ <p>If specified, the value of this attribute must adhere to the following
+ syntax:</p><a id="parameter-attribute-frameRateMultiplier-syntax" name=
+ "parameter-attribute-frameRateMultiplier-syntax"></a>
+
+ <table class="syntax">
+ <caption>
+ Syntax Representation – ttp:frameRateMultiplier
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
ttp:frameRateMultiplier
: numerator denominator // <em>numerator</em> != 0; <em>denominator</em> != 0
numerator | denominator
: <a href="#style-value-digit"><digit></a>+
-</pre></div>
-</td></tr></tbody></table><p>A frame rate multiplier is used when the desired frame rate cannot
-be expressed as an integral number of frames per second.</p><p>If not specified, the frame rate multiplier must be considered to be equal to one (1:1).
-Both numerator and denominator must be non-zero.</p><p>A <code>ttp:frameRateMultiplier</code> attribute is considered to be significant only
-when specified on the <code>tt</code> element.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>The frame rate multiplier used for synchronizing with NTSC <a href="#smpte170m">[SMPTE 170M]</a>
-formatted video objects at 30 frames per second is nominally
-1000:1001. The nominal frame rate of NTSC video is defined as the chrominance
-sub-carrier frequency of 3,579,545.45…Hz (= 5.0MHz × 63/88) times the ratio 2/455 divided by
-the number of horizontal lines per frame of 525, which yields a frame
-rate of 29.970029970029… (= 30 × 1000/1001) frames per
-second. Other frame rate multipliers apply to different regions of
-usage and video format standards.</p></div><div class="note"><p class="prefix"><b>Note:</b></p><p>Except in the case of PAL/M, the frame rate multiplier used for synchronizing with PAL
-formatted video objects at 25 frames per second is nominally 1:1.</p></div></div><div class="div3">
-<h4><a id="parameter-attribute-markerMode"></a>6.2.6 ttp:markerMode</h4><p>The <code>ttp:markerMode</code> attribute is used to specify
-constraints on the interpretation and use of time expressions
-that correspond with <a href="#smpte12m">[SMPTE 12M]</a> time coordinates when operating
-with time base of <code>smpte</code> as defined by
-<a href="#parameter-attribute-timeBase"><b>6.2.11 ttp:timeBase</b></a>.</p><p>If specified, the value of this attribute must adhere to the following syntax:</p><a id="parameter-attribute-markerMode-syntax"></a><table class="syntax"><caption>Syntax Representation – ttp:markerMode</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>A frame rate multiplier is used when the desired frame rate cannot be
+ expressed as an integral number of frames per second.</p>
+
+ <p>If not specified, the frame rate multiplier must be considered to be equal
+ to one (1:1). Both numerator and denominator must be non-zero.</p>
+
+ <p>A <code>ttp:frameRateMultiplier</code> attribute is considered to be
+ significant only when specified on the <code>tt</code> element.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The frame rate multiplier used for synchronizing with NTSC <a href=
+ "#smpte170m">[SMPTE 170M]</a> formatted video objects at 30 frames per second
+ is nominally 1000:1001. The nominal frame rate of NTSC video is defined as
+ the chrominance sub-carrier frequency of 3,579,545.45…Hz (= 5.0MHz × 63/88)
+ times the ratio 2/455 divided by the number of horizontal lines per frame of
+ 525, which yields a frame rate of 29.970029970029… (= 30 × 1000/1001) frames
+ per second. Other frame rate multipliers apply to different regions of usage
+ and video format standards.</p>
+ </div>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>Except in the case of PAL/M, the frame rate multiplier used for
+ synchronizing with PAL formatted video objects at 25 frames per second is
+ nominally 1:1.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="parameter-attribute-markerMode" name=
+ "parameter-attribute-markerMode"></a>6.2.6 ttp:markerMode</h4>
+
+ <p>The <code>ttp:markerMode</code> attribute is used to specify constraints on
+ the interpretation and use of time expressions that correspond with <a href=
+ "#smpte12m">[SMPTE 12M]</a> time coordinates when operating with time base of
+ <code>smpte</code> as defined by <a href=
+ "#parameter-attribute-timeBase"><b>6.2.11 ttp:timeBase</b></a>.</p>
+
+ <p>If specified, the value of this attribute must adhere to the following
+ syntax:</p><a id="parameter-attribute-markerMode-syntax" name=
+ "parameter-attribute-markerMode-syntax"></a>
+
+ <table class="syntax">
+ <caption>
+ Syntax Representation – ttp:markerMode
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
ttp:markerMode
: "continuous"
| "discontinuous"
-</pre></div>
-</td></tr></tbody></table><p>If the time base, defined by <a href="#parameter-attribute-timeBase"><b>6.2.11 ttp:timeBase</b></a>, is designated as
-<code>smpte</code>, then this parameter applies as follows: if the
-parameter's value is <code>continuous</code>, then <a href="#smpte12m">[SMPTE 12M]</a> time coordinates
-may be assumed to be linear and either monotonically increasing or
-decreasing; however, if <code>discontinuous</code>, then any assumption
-must not be made regarding linearity or monotonicity of time coordinates.</p><p>If not specified, the value of this parameter must be considered
-to be <code>discontinuous</code>.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>The default value for this parameter was originally specified
-(in <a href="http://www.w3.org/TR/2010/REC-ttaf1-dfxp-20101118/">TTML 1.0 First Edition</a>)
-as <code>continuous</code>; however, further evaluation of the state of the industry indicates this
-choice was incorrect, and that the most common default is <code>discontinuous</code>.</p></div><div class="note"><p class="prefix"><b>Note:</b></p><p>Due to lack of industry consensus on the utility and interpretation of the
-<code>continuous</code> marker mode, authors are advised to avoid its use. Furthermore, the
-<code>ttp:markerMode</code> is being considered for deprecation in the next revision of this
-specification.</p></div><p>A <code>ttp:markerMode</code> attribute is considered to be significant only
-when specified on the <code>tt</code> element.</p><p>If a value of <code>continuous</code> applies, then time
-expressions may be converted to real time
-coordinates by taking into account the computed frame rate
-and drop mode as expressed by the <code>ttp:dropMode</code> parameter.
-In this case, the <em>Content Processor</em> must create and maintain a
-<em>Synthetic SMPTE Document Syncbase</em> within which these time
-expressions are interpreted as further described in
-<a href="#timing-time-intervals"><b>10.4 Time Intervals</b></a>.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>When operating with <code>smpte</code> time base and
-<code>continuous</code> marker mode, there is an implied time coordinate
-space, the <em>Synthetic SMPTE Document Syncbase</em>,
-defined by the monotonically increasing (or decreasing)
-<a href="#smpte12m">[SMPTE 12M]</a> time coordinates, while taking into account
-the computed frame rate and drop mode. All time expressions are interpreted
-in relationship to this time coordinate space based upon
-<em>SMPTE Time Code</em> synchronization events (markers),
-where the <em>Document Processing Context</em> emits these events with implied constraints
-regarding time coordinate monoticity and resynchronization in
-the presence of dropped frames.</p><p>Use of <code>continuous</code> marker mode with the <code>smpte</code>
-time base is different from using the <code>media</code> time base
-because (1) the semantics of the <code>ttp:dropMode</code> parameter
-apply to the former, but not the latter, and (2) <a href="#smpte12m">[SMPTE 12M]</a>
-time coordinates may be applied monotonically to media which has been
-subjected to dilation in time, constriction in time, or reversal in
-time.</p></div><p>If a value of <code>discontinuous</code> applies, then time
-expressions must not be converted to real time
-coordinates, arithmetical operators (addition, multiplication) are not
-defined on time expressions, and, consequently, any (well-formed)
-expression of a duration must be considered to be invalid.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>When operating with <code>smpte</code> time base and
-<code>discontinuous</code> marker mode, there is no effective time coordinate
-space; rather, all time expressions are interpreted as labeled
-synchronization events (markers), where the <em>Document Processing Context</em>
-emits these events, which, when they correspond with time
-expressions that denote the same label, cause a temporal interval to
-begin or end accordingly.</p><p>An additional side-effect of operating in <code>discontinuous</code>
-mode is that time expressions of children have no necessary
-relationship with time expressions of their temporal container; that
-is, temporal containers and children of these containers are
-temporally activated and inactivated independently based on the
-occurrence of a labeled synchronization (marker) event.</p></div><div class="note"><p class="prefix"><b>Note:</b></p><p>The notion of marker discontinuity as captured by this parameter
-is logically independent from the method used to count frames as
-expressed by the <code>ttp:dropMode</code> parameter. In particular,
-even if the <code>ttp:dropMode</code> parameter is specified as
-<code>dropNTSC</code> or <code>dropPAL</code>, the marker mode may be
-specified as <code>continuous</code>, even in the presence of frame count
-discontinuities induced by the frame counting method, unless there
-were some other non-linearity or discontinuity in marker labeling, for
-example, two consecutive frames labeled as <code>10:00:00:00</code>
-and <code>10:00:01:00</code>.
-</p></div></div><div class="div3">
-<h4><a id="parameter-attribute-pixelAspectRatio"></a>6.2.7 ttp:pixelAspectRatio</h4><p>The <code>ttp:pixelAspectRatio</code> attribute may be used by a content author
-to express the aspect ratio of non-square pixels in the production of content that
-makes use of pixel coordinates.</p><p>If specified, the value of this attribute must adhere to the following syntax:</p><a id="parameter-attribute-pixelAspectRatio-syntax"></a><table class="syntax"><caption>Syntax Representation – ttp:pixelAspectRatio</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>If the time base, defined by <a href=
+ "#parameter-attribute-timeBase"><b>6.2.11 ttp:timeBase</b></a>, is designated
+ as <code>smpte</code>, then this parameter applies as follows: if the
+ parameter's value is <code>continuous</code>, then <a href="#smpte12m">[SMPTE
+ 12M]</a> time coordinates may be assumed to be linear and either monotonically
+ increasing or decreasing; however, if <code>discontinuous</code>, then any
+ assumption must not be made regarding linearity or monotonicity of time
+ coordinates.</p>
+
+ <p>If not specified, the value of this parameter must be considered to be
+ <code>discontinuous</code>.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The default value for this parameter was originally specified (in <a href=
+ "http://www.w3.org/TR/2010/REC-ttaf1-dfxp-20101118/">TTML 1.0 First
+ Edition</a>) as <code>continuous</code>; however, further evaluation of the
+ state of the industry indicates this choice was incorrect, and that the most
+ common default is <code>discontinuous</code>.</p>
+ </div>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>Due to lack of industry consensus on the utility and interpretation of the
+ <code>continuous</code> marker mode, authors are advised to avoid its use.
+ Furthermore, the <code>ttp:markerMode</code> is being considered for
+ deprecation in the next revision of this specification.</p>
+ </div>
+
+ <p>A <code>ttp:markerMode</code> attribute is considered to be significant only
+ when specified on the <code>tt</code> element.</p>
+
+ <p>If a value of <code>continuous</code> applies, then time expressions may be
+ converted to real time coordinates by taking into account the computed frame
+ rate and drop mode as expressed by the <code>ttp:dropMode</code> parameter. In
+ this case, the <em>Content Processor</em> must create and maintain a
+ <em>Synthetic SMPTE Document Syncbase</em> within which these time expressions
+ are interpreted as further described in <a href=
+ "#timing-time-intervals"><b>10.4 Time Intervals</b></a>.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>When operating with <code>smpte</code> time base and
+ <code>continuous</code> marker mode, there is an implied time coordinate
+ space, the <em>Synthetic SMPTE Document Syncbase</em>, defined by the
+ monotonically increasing (or decreasing) <a href="#smpte12m">[SMPTE 12M]</a>
+ time coordinates, while taking into account the computed frame rate and drop
+ mode. All time expressions are interpreted in relationship to this time
+ coordinate space based upon <em>SMPTE Time Code</em> synchronization events
+ (markers), where the <em>Document Processing Context</em> emits these events
+ with implied constraints regarding time coordinate monoticity and
+ resynchronization in the presence of dropped frames.</p>
+
+ <p>Use of <code>continuous</code> marker mode with the <code>smpte</code>
+ time base is different from using the <code>media</code> time base because
+ (1) the semantics of the <code>ttp:dropMode</code> parameter apply to the
+ former, but not the latter, and (2) <a href="#smpte12m">[SMPTE 12M]</a> time
+ coordinates may be applied monotonically to media which has been subjected to
+ dilation in time, constriction in time, or reversal in time.</p>
+ </div>
+
+ <p>If a value of <code>discontinuous</code> applies, then time expressions must
+ not be converted to real time coordinates, arithmetical operators (addition,
+ multiplication) are not defined on time expressions, and, consequently, any
+ (well-formed) expression of a duration must be considered to be invalid.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>When operating with <code>smpte</code> time base and
+ <code>discontinuous</code> marker mode, there is no effective time coordinate
+ space; rather, all time expressions are interpreted as labeled
+ synchronization events (markers), where the <em>Document Processing
+ Context</em> emits these events, which, when they correspond with time
+ expressions that denote the same label, cause a temporal interval to begin or
+ end accordingly.</p>
+
+ <p>An additional side-effect of operating in <code>discontinuous</code> mode
+ is that time expressions of children have no necessary relationship with time
+ expressions of their temporal container; that is, temporal containers and
+ children of these containers are temporally activated and inactivated
+ independently based on the occurrence of a labeled synchronization (marker)
+ event.</p>
+ </div>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The notion of marker discontinuity as captured by this parameter is
+ logically independent from the method used to count frames as expressed by
+ the <code>ttp:dropMode</code> parameter. In particular, even if the
+ <code>ttp:dropMode</code> parameter is specified as <code>dropNTSC</code> or
+ <code>dropPAL</code>, the marker mode may be specified as
+ <code>continuous</code>, even in the presence of frame count discontinuities
+ induced by the frame counting method, unless there were some other
+ non-linearity or discontinuity in marker labeling, for example, two
+ consecutive frames labeled as <code>10:00:00:00</code> and
+ <code>10:00:01:00</code>.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="parameter-attribute-pixelAspectRatio" name=
+ "parameter-attribute-pixelAspectRatio"></a>6.2.7 ttp:pixelAspectRatio</h4>
+
+ <p>The <code>ttp:pixelAspectRatio</code> attribute may be used by a content
+ author to express the aspect ratio of non-square pixels in the production of
+ content that makes use of pixel coordinates.</p>
+
+ <p>If specified, the value of this attribute must adhere to the following
+ syntax:</p><a id="parameter-attribute-pixelAspectRatio-syntax" name=
+ "parameter-attribute-pixelAspectRatio-syntax"></a>
+
+ <table class="syntax">
+ <caption>
+ Syntax Representation – ttp:pixelAspectRatio
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
ttp:pixelAspectRatio
: width height // <em>width</em> != 0; <em>height</em> != 0
width | height
: <a href="#style-value-digit"><digit></a>+
-</pre></div>
-</td></tr></tbody></table><p>If not specified, then square pixels (i.e., aspect ratio 1:1) must be assumed to apply.
-If specified, then both width and height must be non-zero.</p><p>A <code>ttp:pixelAspectRatio</code> attribute is considered to be significant only
-when specified on the <code>tt</code> element.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>This parameter may be used by a content transcoder or translator in
-order to convert pixel measurements between different pixel aspect
-ratios while still maintaining authorial layout intentions.</p></div></div><div class="div3">
-<h4><a id="parameter-attribute-profile"></a>6.2.8 ttp:profile</h4><p>The <code>ttp:profile</code> attribute may be used by a content author
-to express the profile of the Timed Text Markup Language (TTML) used
-in a <em>Document Instance</em>.</p><p>If specified, the value of this attribute must adhere to the
-<code>xsd:anyURI</code> data type defined by <a href="#xsd-2">[XML Schema Part 2]</a>,
-§3.2.17, and, further, must specify a
-profile designator in accordance with
-<a href="#vocabulary-profiles"><b>5.2 Profiles</b></a>.</p><p>A <code>ttp:profile</code>
-attribute is considered to be significant only when specified on the
-<code>tt</code> element.</p></div><div class="div3">
-<h4><a id="parameter-attribute-subFrameRate"></a>6.2.9 ttp:subFrameRate</h4><p>The <code>ttp:subFrameRate</code> attribute is used to specify the sub-frame rate of a related
-media object or the intrinsic sub-frame rate of a <em>Document Instance</em> in case it is intended
-to function as an independent media object.</p><p>If specified, the value of this attribute must adhere to the following syntax:</p><a id="parameter-attribute-subFrameRate-syntax"></a><table class="syntax"><caption>Syntax Representation – ttp:subFrameRate</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>If not specified, then square pixels (i.e., aspect ratio 1:1) must be
+ assumed to apply. If specified, then both width and height must be
+ non-zero.</p>
+
+ <p>A <code>ttp:pixelAspectRatio</code> attribute is considered to be
+ significant only when specified on the <code>tt</code> element.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>This parameter may be used by a content transcoder or translator in order
+ to convert pixel measurements between different pixel aspect ratios while
+ still maintaining authorial layout intentions.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="parameter-attribute-profile" name=
+ "parameter-attribute-profile"></a>6.2.8 ttp:profile</h4>
+
+ <p>The <code>ttp:profile</code> attribute may be used by a content author to
+ express the profile of the Timed Text Markup Language (TTML) used in a
+ <em>Document Instance</em>.</p>
+
+ <p>If specified, the value of this attribute must adhere to the
+ <code>xsd:anyURI</code> data type defined by <a href="#xsd-2">[XML Schema Part
+ 2]</a>, §3.2.17, and, further, must specify a profile designator in accordance
+ with <a href="#vocabulary-profiles"><b>5.2 Profiles</b></a>.</p>
+
+ <p>A <code>ttp:profile</code> attribute is considered to be significant only
+ when specified on the <code>tt</code> element.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="parameter-attribute-subFrameRate" name=
+ "parameter-attribute-subFrameRate"></a>6.2.9 ttp:subFrameRate</h4>
+
+ <p>The <code>ttp:subFrameRate</code> attribute is used to specify the sub-frame
+ rate of a related media object or the intrinsic sub-frame rate of a
+ <em>Document Instance</em> in case it is intended to function as an independent
+ media object.</p>
+
+ <p>If specified, the value of this attribute must adhere to the following
+ syntax:</p><a id="parameter-attribute-subFrameRate-syntax" name=
+ "parameter-attribute-subFrameRate-syntax"></a>
+
+ <table class="syntax">
+ <caption>
+ Syntax Representation – ttp:subFrameRate
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
ttp:subFrameRate
- : <a href="#style-value-digit"><digit></a>+ // <em>value</em> > 0
-</pre></div>
-</td></tr></tbody></table><p>The sub-frame rate that applies to a <em>Document Instance</em> is used to
-interpret time expressions that are expressed in <em>sub-frames</em>
-as defined by <a href="#timing-value-timeExpression"><b>10.3.1 <timeExpression></b></a>.</p><p>If the <code>media</code> time base applies and the effective frame rate is
-integral, a sub-frame is interpreted as a division of a frame of media
-time, such that if the sub-frame rate is specified as <em>S</em>, then
-a frame of media time is divided into <em>S</em> intervals of
-equal duration, where each interval is labeled as sub-frame <em>s</em>,
-with <em>s</em> ∈ [0…<em>S−1</em>].</p><div class="note"><p class="prefix"><b>Note:</b></p><p>See <a href="#time-expression-semantics-media"><b>N.2 Media Time Base</b></a> for further details
-on the interpretation of time expressions for the <code>media</code> time base.</p></div><p>If not specified, the sub-frame rate must be considered to be
-equal to one (1). If specified, then the sub-frame rate must be greater than zero (0).</p><p>A <code>ttp:subFrameRate</code> attribute is considered to be significant only
-when specified on the <code>tt</code> element.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>The sub-frame is sometimes referred to as a <em>field</em> in
-the context of synchronization with an interlaced video media object.</p></div></div><div class="div3">
-<h4><a id="parameter-attribute-tickRate"></a>6.2.10 ttp:tickRate</h4><p>The <code>ttp:tickRate</code> attribute is used to specify the tick rate of a related
-media object or the intrinsic tick rate of content of a <em>Document Instance</em> in case it is intended
-to function as an independent media object.</p><p>If specified, the value of this attribute must adhere to the following syntax:</p><a id="parameter-attribute-tickRate-syntax"></a><table class="syntax"><caption>Syntax Representation – ttp:tickRate</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+ : <a href=
+"#style-value-digit"><digit></a>+ // <em>value</em> > 0
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>The sub-frame rate that applies to a <em>Document Instance</em> is used to
+ interpret time expressions that are expressed in <em>sub-frames</em> as defined
+ by <a href="#timing-value-timeExpression"><b>10.3.1
+ <timeExpression></b></a>.</p>
+
+ <p>If the <code>media</code> time base applies and the effective frame rate is
+ integral, a sub-frame is interpreted as a division of a frame of media time,
+ such that if the sub-frame rate is specified as <em>S</em>, then a frame of
+ media time is divided into <em>S</em> intervals of equal duration, where each
+ interval is labeled as sub-frame <em>s</em>, with <em>s</em> ∈
+ [0…<em>S−1</em>].</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>See <a href="#time-expression-semantics-media"><b>N.2 Media Time
+ Base</b></a> for further details on the interpretation of time expressions
+ for the <code>media</code> time base.</p>
+ </div>
+
+ <p>If not specified, the sub-frame rate must be considered to be equal to one
+ (1). If specified, then the sub-frame rate must be greater than zero (0).</p>
+
+ <p>A <code>ttp:subFrameRate</code> attribute is considered to be significant
+ only when specified on the <code>tt</code> element.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The sub-frame is sometimes referred to as a <em>field</em> in the context
+ of synchronization with an interlaced video media object.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="parameter-attribute-tickRate" name=
+ "parameter-attribute-tickRate"></a>6.2.10 ttp:tickRate</h4>
+
+ <p>The <code>ttp:tickRate</code> attribute is used to specify the tick rate of
+ a related media object or the intrinsic tick rate of content of a <em>Document
+ Instance</em> in case it is intended to function as an independent media
+ object.</p>
+
+ <p>If specified, the value of this attribute must adhere to the following
+ syntax:</p><a id="parameter-attribute-tickRate-syntax" name=
+ "parameter-attribute-tickRate-syntax"></a>
+
+ <table class="syntax">
+ <caption>
+ Syntax Representation – ttp:tickRate
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
ttp:tickRate
- : <a href="#style-value-digit"><digit></a>+ // <em>value</em> > 0
-</pre></div>
-</td></tr></tbody></table><p>The tick rate that applies to a <em>Document Instance</em> is used to
-interpret time expressions that are expressed in <em>ticks</em> by
-using the <code>t</code> metric as defined by <a href="#timing-value-timeExpression"><b>10.3.1 <timeExpression></b></a>.</p><p>If the <code>media</code> time base applies,
-a tick is interpreted as an integral division of a second of media
-time, such that if the tick rate is specified as <em>T</em>, then
-a second of media time is divided into <em>T</em> intervals of
-equal duration, where each interval is labeled as tick <em>t</em>,
-with <em>t</em> ∈ [0…<em>T−1</em>].</p><div class="note"><p class="prefix"><b>Note:</b></p><p>See <a href="#time-expression-semantics-media"><b>N.2 Media Time Base</b></a> for further details
-on the interpretation of time expressions for the <code>media</code> time base.</p></div><p>If not specified, then if a frame rate is specified, the tick rate
-must be considered to be the effective frame rate multiplied by the
-sub-frame rate (i.e., ticks are interpreted as sub-frames); or, if no
-frame rate is specified, the tick rate must be considered to be one (1)
-tick per second of media time. If specified, then the tick rate
-must not be zero (0).</p><div class="note"><p class="prefix"><b>Note:</b></p><p>There is no predefined relationship between ticks and frames or
-sub-frames. Ticks are an arbitrary division of seconds that permit
-use of fixed point arithmetic rather than fractional (and potentially
-inexact) expressions of seconds.</p></div><p>A <code>ttp:tickRate</code> attribute is considered to be significant only
-when specified on the <code>tt</code> element.</p></div><div class="div3">
-<h4><a id="parameter-attribute-timeBase"></a>6.2.11 ttp:timeBase</h4><p>The <code>ttp:timeBase</code> attribute is used to specify the
-temporal coordinate system by means of which time expressions are
-interpreted in a <em>Document Instance</em>.</p><p>If specified, the value of this attribute must adhere to the following syntax:</p><a id="parameter-attribute-timeBase-syntax"></a><table class="syntax"><caption>Syntax Representation – ttp:timeBase</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+ : <a href=
+"#style-value-digit"><digit></a>+ // <em>value</em> > 0
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>The tick rate that applies to a <em>Document Instance</em> is used to
+ interpret time expressions that are expressed in <em>ticks</em> by using the
+ <code>t</code> metric as defined by <a href=
+ "#timing-value-timeExpression"><b>10.3.1 <timeExpression></b></a>.</p>
+
+ <p>If the <code>media</code> time base applies, a tick is interpreted as an
+ integral division of a second of media time, such that if the tick rate is
+ specified as <em>T</em>, then a second of media time is divided into <em>T</em>
+ intervals of equal duration, where each interval is labeled as tick <em>t</em>,
+ with <em>t</em> ∈ [0…<em>T−1</em>].</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>See <a href="#time-expression-semantics-media"><b>N.2 Media Time
+ Base</b></a> for further details on the interpretation of time expressions
+ for the <code>media</code> time base.</p>
+ </div>
+
+ <p>If not specified, then if a frame rate is specified, the tick rate must be
+ considered to be the effective frame rate multiplied by the sub-frame rate
+ (i.e., ticks are interpreted as sub-frames); or, if no frame rate is specified,
+ the tick rate must be considered to be one (1) tick per second of media time.
+ If specified, then the tick rate must not be zero (0).</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>There is no predefined relationship between ticks and frames or
+ sub-frames. Ticks are an arbitrary division of seconds that permit use of
+ fixed point arithmetic rather than fractional (and potentially inexact)
+ expressions of seconds.</p>
+ </div>
+
+ <p>A <code>ttp:tickRate</code> attribute is considered to be significant only
+ when specified on the <code>tt</code> element.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="parameter-attribute-timeBase" name=
+ "parameter-attribute-timeBase"></a>6.2.11 ttp:timeBase</h4>
+
+ <p>The <code>ttp:timeBase</code> attribute is used to specify the temporal
+ coordinate system by means of which time expressions are interpreted in a
+ <em>Document Instance</em>.</p>
+
+ <p>If specified, the value of this attribute must adhere to the following
+ syntax:</p><a id="parameter-attribute-timeBase-syntax" name=
+ "parameter-attribute-timeBase-syntax"></a>
+
+ <table class="syntax">
+ <caption>
+ Syntax Representation – ttp:timeBase
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
ttp:timeBase
: "media"
| "smpte"
| "clock"
-</pre></div>
-</td></tr></tbody></table><p>If the time base is designated as <code>media</code>, then a time
-expression denotes a coordinate in some media object's time line,
-where the media object may be an external media object with which the
-content of a <em>Document Instance</em> is to be synchronized, or it may
-be the content of a <em>Document Instance</em> itself in a case where
-the timed text content is intended to establish an independent time
-line.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>When using a media time base, if that time base is paused or
-scaled positively or negatively, i.e., the media play rate is
-not unity, then it is expected that the
-presentation of associated Timed Text content will be similarly
-paused, accelerated, or decelerated, respectively. The means for
-controlling an external
-media time base is outside the scope of this specification.</p></div><p>If the time base is designated as <code>smpte</code>,
-then a time expression denotes a <a href="#smpte12m">[SMPTE 12M]</a> time
-coordinate with which the content of a <em>Document Instance</em> is to
-be synchronized. In this case, the value of the <code>ttp:markerMode</code>
-and <code>ttp:dropMode</code> parameters apply, as defined by <a href="#parameter-attribute-markerMode"><b>6.2.6 ttp:markerMode</b></a> and <a href="#parameter-attribute-dropMode"><b>6.2.3 ttp:dropMode</b></a>, respectively.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>When the time base is designated as <code>smpte</code>,
-every time expression denotes a media marker value akin to that
-defined by <a href="#smil21">[SMIL 2.1]</a>, § 10.4.1, except instead
-of using an opaque marker name, a structured <a href="#smpte12m">[SMPTE 12M]</a>
-time coordinate serves as the marker name.</p></div><p>If the time base is designated as <code>clock</code>, then the time
-expression denotes a coordinate in some real-world time line as
-established by some real-time clock, such as the local wall-clock time
-or UTC (Coordinated Universal Time) or GPS (Global Positioning System)
-time lines.</p><p>If not specified, the default time base must be considered to be
-<code>media</code>.</p><p>A <code>ttp:timeBase</code> attribute is considered to be significant only
-when specified on the <code>tt</code> element.</p><p>When operating with either <code>media</code> or <code>smpte</code>
-time bases, a diachronic presentation of a <em>Document Instance</em> may
-be subject to transformations of the controlling time line, such as
-temporal reversal, dilation (expansion), or constriction
-(compression); however, when operating with the <code>clock</code>
-time base, no transformations are permitted, and diachronic
-presentation proceeds on a linear, monotonically increasing time line
-based on the passage of real time.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>Due to there being only one time base parameter that applies to a
-given <em>Document Instance</em>, the interpretation of time expressions
-is uniform throughout the <em>Document Instance</em>.</p></div><div class="note"><p class="prefix"><b>Note:</b></p><p>See <a href="#time-expression-semantics"><b>N Time Expression Semantics</b></a> for further details
-on the interpretation of time expressions according to the designated time base.</p></div></div></div></div><div class="div1">
-<h2><a id="content"></a>7 Content</h2><p>This section specifies the <em>content</em> matter of the core
-vocabulary catalog.</p><div class="div2">
-<h3><a id="content-element-vocabulary"></a>7.1 Content Element Vocabulary</h3><p>The following elements specify the structure and principal content aspects of a
-<em>Document Instance</em>:</p><ul><li><p><a href="#document-structure-vocabulary-tt"><b>7.1.1 tt</b></a></p></li><li><p><a href="#document-structure-vocabulary-head"><b>7.1.2 head</b></a></p></li><li><p><a href="#document-structure-vocabulary-body"><b>7.1.3 body</b></a></p></li><li><p><a href="#content-vocabulary-div"><b>7.1.4 div</b></a></p></li><li><p><a href="#content-vocabulary-p"><b>7.1.5 p</b></a></p></li><li><p><a href="#content-vocabulary-span"><b>7.1.6 span</b></a></p></li><li><p><a href="#content-vocabulary-br"><b>7.1.7 br</b></a></p></li></ul><div class="div3">
-<h4><a id="document-structure-vocabulary-tt"></a>7.1.1 tt</h4><p>The <code>tt</code> element serves as the root document element of a <em>Document Instance</em>.</p><p>The <code>tt</code> element accepts as its children zero or one <code>head</code> element followed by
-zero or one <code>body</code> element.</p><a id="elt-syntax-tt"></a><table class="syntax"><caption>XML Representation – Element Information Item: tt</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>If the time base is designated as <code>media</code>, then a time expression
+ denotes a coordinate in some media object's time line, where the media object
+ may be an external media object with which the content of a <em>Document
+ Instance</em> is to be synchronized, or it may be the content of a <em>Document
+ Instance</em> itself in a case where the timed text content is intended to
+ establish an independent time line.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>When using a media time base, if that time base is paused or scaled
+ positively or negatively, i.e., the media play rate is not unity, then it is
+ expected that the presentation of associated Timed Text content will be
+ similarly paused, accelerated, or decelerated, respectively. The means for
+ controlling an external media time base is outside the scope of this
+ specification.</p>
+ </div>
+
+ <p>If the time base is designated as <code>smpte</code>, then a time expression
+ denotes a <a href="#smpte12m">[SMPTE 12M]</a> time coordinate with which the
+ content of a <em>Document Instance</em> is to be synchronized. In this case,
+ the value of the <code>ttp:markerMode</code> and <code>ttp:dropMode</code>
+ parameters apply, as defined by <a href=
+ "#parameter-attribute-markerMode"><b>6.2.6 ttp:markerMode</b></a> and <a href=
+ "#parameter-attribute-dropMode"><b>6.2.3 ttp:dropMode</b></a>,
+ respectively.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>When the time base is designated as <code>smpte</code>, every time
+ expression denotes a media marker value akin to that defined by <a href=
+ "#smil21">[SMIL 2.1]</a>, § 10.4.1, except instead of using an opaque marker
+ name, a structured <a href="#smpte12m">[SMPTE 12M]</a> time coordinate serves
+ as the marker name.</p>
+ </div>
+
+ <p>If the time base is designated as <code>clock</code>, then the time
+ expression denotes a coordinate in some real-world time line as established by
+ some real-time clock, such as the local wall-clock time or UTC (Coordinated
+ Universal Time) or GPS (Global Positioning System) time lines.</p>
+
+ <p>If not specified, the default time base must be considered to be
+ <code>media</code>.</p>
+
+ <p>A <code>ttp:timeBase</code> attribute is considered to be significant only
+ when specified on the <code>tt</code> element.</p>
+
+ <p>When operating with either <code>media</code> or <code>smpte</code> time
+ bases, a diachronic presentation of a <em>Document Instance</em> may be subject
+ to transformations of the controlling time line, such as temporal reversal,
+ dilation (expansion), or constriction (compression); however, when operating
+ with the <code>clock</code> time base, no transformations are permitted, and
+ diachronic presentation proceeds on a linear, monotonically increasing time
+ line based on the passage of real time.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>Due to there being only one time base parameter that applies to a given
+ <em>Document Instance</em>, the interpretation of time expressions is uniform
+ throughout the <em>Document Instance</em>.</p>
+ </div>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>See <a href="#time-expression-semantics"><b>N Time Expression
+ Semantics</b></a> for further details on the interpretation of time
+ expressions according to the designated time base.</p>
+ </div>
+ </div>
+ </div>
+ </div>
+
+ <div class="div1">
+ <h2><a id="content" name="content"></a>7 Content</h2>
+
+ <p>This section specifies the <em>content</em> matter of the core vocabulary
+ catalog.</p>
+
+ <div class="div2">
+ <h3><a id="content-element-vocabulary" name="content-element-vocabulary"></a>7.1
+ Content Element Vocabulary</h3>
+
+ <p>The following elements specify the structure and principal content aspects of
+ a <em>Document Instance</em>:</p>
+
+ <ul>
+ <li>
+ <p><a href="#document-structure-vocabulary-tt"><b>7.1.1 tt</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#document-structure-vocabulary-head"><b>7.1.2 head</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#document-structure-vocabulary-body"><b>7.1.3 body</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#content-vocabulary-div"><b>7.1.4 div</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#content-vocabulary-p"><b>7.1.5 p</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#content-vocabulary-span"><b>7.1.6 span</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#content-vocabulary-br"><b>7.1.7 br</b></a></p>
+ </li>
+ </ul>
+
+ <div class="div3">
+ <h4><a id="document-structure-vocabulary-tt" name=
+ "document-structure-vocabulary-tt"></a>7.1.1 tt</h4>
+
+ <p>The <code>tt</code> element serves as the root document element of a
+ <em>Document Instance</em>.</p>
+
+ <p>The <code>tt</code> element accepts as its children zero or one
+ <code>head</code> element followed by zero or one <code>body</code>
+ element.</p><a id="elt-syntax-tt" name="elt-syntax-tt"></a>
+
+ <table class="syntax">
+ <caption>
+ XML Representation – Element Information Item: tt
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<tt
<a href="#style-attribute-extent">tts:extent</a> = string
<a href="#content-attribute-id">xml:id</a> = ID
<a href="#content-attribute-lang"><span class="reqattr">xml:lang</span></a> = string
- <a href="#content-attribute-space">xml:space</a> = (<em>default</em>|<em>preserve</em>) : default
+ <a href=
+"#content-attribute-space">xml:space</a> = (<em>default</em>|<em>preserve</em>) : default
{<em>any attribute in TT Parameter namespace</em>}
{<em>any attribute not in default or any TT namespace</em>}>
- <em>Content:</em> <a href="#document-structure-vocabulary-head">head</a>?, <a href="#document-structure-vocabulary-body">body</a>?
+ <em>Content:</em> <a href="#document-structure-vocabulary-head">head</a>?, <a href=
+"#document-structure-vocabulary-body">body</a>?
</tt>
-</pre></div>
-</td></tr></tbody></table><p>The <em>Root Temporal Extent</em>, i.e., the time interval over which a <em>Document Instance</em> is active, has an implicit duration that is equal to the
-implicit duration of the <code>body</code> element of the document, if the <code>body</code> element is present, or zero, if the <code>body</code> element is absent.</p><p>If the <code>tts:extent</code> attribute is specified on the <code>tt</code>
-element, then it must adhere to <a href="#style-attribute-extent"><b>8.2.7 tts:extent</b></a>, in which case it
-specifies the spatial extent of the <em>Root Container Region</em> in
-which content regions are located and presented. If no <code>tts:extent</code>
-attribute is specified, then the spatial extent of the <em>Root Container Region</em> is
-considered to be determined by the <em>Document Processing Context</em>.
-The origin of the <em>Root Container Region</em> is determined by the <em>Document Processing Context</em>.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>In the absence of other requirements, and if a <em>Related Media Object</em> exists, then it is recommended
-that the <em>Document Processing Context</em> determine that:</p><ul><li><p>if no <code>tts:extent</code> is specified on the root <code>tt</code> element, the extent of the <em>Root Container Region</em> be
-established as equal to the extent of the <em>Related Media Object Region</em>; and</p></li><li><p>the origin of the <em>Root Container Region</em> be established so that this region is centered in the
-<em>Related Media Object Region</em>.</p></li></ul></div><div class="note"><p class="prefix"><b>Note:</b></p><p>If an author desires to signal the (storage or image) aspect ratio of the <em>Root Container Region</em>
-without specifying its resolution, then this may be accomplished by using metadata specified
-in an external namespace, such as <code>m708:aspectRatio</code> as defined in <a href="#smpte2052">[SMPTE 2052-11]</a>, §5.4.4.
-This would permit, for example, the interchange of information that reflects the
-the semantics of <a href="#cea708e">[CEA-708-E]</a> , §4.5 “Caption Service Metadata”, “ASPECT RATIO”.</p></div><p>An <code>xml:lang</code> attribute must be specified on the <code>tt</code> element.
-If the attribute value is empty, it signifies that there is no default language that applies
-to the text contained within the <em>Document Instance</em>.</p><p>If no <code>xml:space</code> attribute is specified upon the <code>tt</code> element, then it must
-be considered as if the attribute had been specified with a value of <code>default</code>.</p></div><div class="div3">
-<h4><a id="document-structure-vocabulary-head"></a>7.1.2 head</h4><p>The <code>head</code> element is a container element used to group
-header matter, including metadata,
-profile, styling, and layout information.</p><p>The <code>head</code> element accepts as its children zero or more
-elements in the <code>Metadata.class</code> element group,
-followed by zero or more elements in the
-<code>Parameters.class</code> element group,
-followed by zero or one <code>styling</code> element,
-followed by zero or one <code>layout</code> element.</p><p>Any metadata specified by children in the <code>Metadata.class</code>
-element group applies semantically to the <em>Document Instance</em> as a
-whole, and not just the <code>head</code> element.</p><p>Any parameters specified by children in the <code>Parameters.class</code>
-element group applies semantically to the <em>Document Instance</em> as a
-whole, and not just the <code>head</code> element.</p><p>A <code>styling</code> child element is used to specify style constructs
-that are referenced from other style constructs, by layout constructs, and by
-<a href="#element-vocab-type-content">Content</a> elements.</p><p>A <code>layout</code> child element is used to specify layout constructs that
-are referenced by <a href="#element-vocab-type-content">Content</a> elements.</p><a id="elt-syntax-head"></a><table class="syntax"><caption>XML Representation – Element Information Item: head</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>The <em>Root Temporal Extent</em>, i.e., the time interval over which a
+ <em>Document Instance</em> is active, has an implicit duration that is equal to
+ the implicit duration of the <code>body</code> element of the document, if the
+ <code>body</code> element is present, or zero, if the <code>body</code> element
+ is absent.</p>
+
+ <p>If the <code>tts:extent</code> attribute is specified on the <code>tt</code>
+ element, then it must adhere to <a href="#style-attribute-extent"><b>8.2.7
+ tts:extent</b></a>, in which case it specifies the spatial extent of the
+ <em>Root Container Region</em> in which content regions are located and
+ presented. If no <code>tts:extent</code> attribute is specified, then the
+ spatial extent of the <em>Root Container Region</em> is considered to be
+ determined by the <em>Document Processing Context</em>. The origin of the
+ <em>Root Container Region</em> is determined by the <em>Document Processing
+ Context</em>.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>In the absence of other requirements, and if a <em>Related Media
+ Object</em> exists, then it is recommended that the <em>Document Processing
+ Context</em> determine that:</p>
+
+ <ul>
+ <li>
+ <p>if no <code>tts:extent</code> is specified on the root <code>tt</code>
+ element, the extent of the <em>Root Container Region</em> be established
+ as equal to the extent of the <em>Related Media Object Region</em>;
+ and</p>
+ </li>
+
+ <li>
+ <p>the origin of the <em>Root Container Region</em> be established so
+ that this region is centered in the <em>Related Media Object
+ Region</em>.</p>
+ </li>
+ </ul>
+ </div>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>If an author desires to signal the (storage or image) aspect ratio of the
+ <em>Root Container Region</em> without specifying its resolution, then this
+ may be accomplished by using metadata specified in an external namespace,
+ such as <code>m708:aspectRatio</code> as defined in <a href=
+ "#smpte2052">[SMPTE 2052-11]</a>, §5.4.4. This would permit, for example, the
+ interchange of information that reflects the the semantics of <a href=
+ "#cea708e">[CEA-708-E]</a> , §4.5 “Caption Service Metadata”, “ASPECT
+ RATIO”.</p>
+ </div>
+
+ <p>An <code>xml:lang</code> attribute must be specified on the <code>tt</code>
+ element. If the attribute value is empty, it signifies that there is no default
+ language that applies to the text contained within the <em>Document
+ Instance</em>.</p>
+
+ <p>If no <code>xml:space</code> attribute is specified upon the <code>tt</code>
+ element, then it must be considered as if the attribute had been specified with
+ a value of <code>default</code>.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="document-structure-vocabulary-head" name=
+ "document-structure-vocabulary-head"></a>7.1.2 head</h4>
+
+ <p>The <code>head</code> element is a container element used to group header
+ matter, including metadata, profile, styling, and layout information.</p>
+
+ <p>The <code>head</code> element accepts as its children zero or more elements
+ in the <code>Metadata.class</code> element group, followed by zero or more
+ elements in the <code>Parameters.class</code> element group, followed by zero
+ or one <code>styling</code> element, followed by zero or one
+ <code>layout</code> element.</p>
+
+ <p>Any metadata specified by children in the <code>Metadata.class</code>
+ element group applies semantically to the <em>Document Instance</em> as a
+ whole, and not just the <code>head</code> element.</p>
+
+ <p>Any parameters specified by children in the <code>Parameters.class</code>
+ element group applies semantically to the <em>Document Instance</em> as a
+ whole, and not just the <code>head</code> element.</p>
+
+ <p>A <code>styling</code> child element is used to specify style constructs
+ that are referenced from other style constructs, by layout constructs, and by
+ <a href="#element-vocab-type-content">Content</a> elements.</p>
+
+ <p>A <code>layout</code> child element is used to specify layout constructs
+ that are referenced by <a href="#element-vocab-type-content">Content</a>
+ elements.</p><a id="elt-syntax-head" name="elt-syntax-head"></a>
+
+ <table class="syntax">
+ <caption>
+ XML Representation – Element Information Item: head
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<head
<a href="#content-attribute-id">xml:id</a> = ID
<a href="#content-attribute-lang">xml:lang</a> = string
<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> <a href="#element-vocab-group-table">Metadata.class</a>*, <a href="#element-vocab-group-table">Parameters.class</a>*, <a href="#styling-vocabulary-styling">styling</a>?, <a href="#layout-vocabulary-layout">layout</a>?
+ <em>Content:</em> <a href="#element-vocab-group-table">Metadata.class</a>*, <a href=
+"#element-vocab-group-table">Parameters.class</a>*, <a href=
+"#styling-vocabulary-styling">styling</a>?, <a href=
+"#layout-vocabulary-layout">layout</a>?
</head>
-</pre></div>
-</td></tr></tbody></table><p>To the extent that time semantics apply to the content of the
-<code>head</code> element, the implied time interval of this element is
-defined to be coterminous with the <em>Root Temporal Extent</em>.</p></div><div class="div3">
-<h4><a id="document-structure-vocabulary-body"></a>7.1.3 body</h4><p>The <code>body</code> element functions as a logical container and a temporal
-structuring element for a sequence of textual content units represented as
-logical divisions.</p><p>The <code>body</code> element accepts as its children zero or more
-elements in the <code>Metadata.class</code> element group,
-followed by zero or more
-elements in the <code>Animation.class</code> element group,
-followed by
-zero or more <code>div</code> elements.</p><p>Any metadata specified by children in the <code>Metadata.class</code>
-element group applies semantically to the <code>body</code> element and its descendants as a whole.</p><p>Any animation elements specified by children in the <code>Animation.class</code>
-element group apply semantically to the <code>body</code> element.</p><a id="elt-syntax-body"></a><table class="syntax"><caption>XML Representation – Element Information Item: body</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>To the extent that time semantics apply to the content of the
+ <code>head</code> element, the implied time interval of this element is defined
+ to be coterminous with the <em>Root Temporal Extent</em>.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="document-structure-vocabulary-body" name=
+ "document-structure-vocabulary-body"></a>7.1.3 body</h4>
+
+ <p>The <code>body</code> element functions as a logical container and a
+ temporal structuring element for a sequence of textual content units
+ represented as logical divisions.</p>
+
+ <p>The <code>body</code> element accepts as its children zero or more elements
+ in the <code>Metadata.class</code> element group, followed by zero or more
+ elements in the <code>Animation.class</code> element group, followed by zero or
+ more <code>div</code> elements.</p>
+
+ <p>Any metadata specified by children in the <code>Metadata.class</code>
+ element group applies semantically to the <code>body</code> element and its
+ descendants as a whole.</p>
+
+ <p>Any animation elements specified by children in the
+ <code>Animation.class</code> element group apply semantically to the
+ <code>body</code> element.</p><a id="elt-syntax-body" name=
+ "elt-syntax-body"></a>
+
+ <table class="syntax">
+ <caption>
+ XML Representation – Element Information Item: body
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<body
- <a href="#timing-attribute-begin">begin</a> = <a href="#timing-value-timeExpression"><timeExpression></a>
- <a href="#timing-attribute-dur">dur</a> = <a href="#timing-value-timeExpression"><timeExpression></a>
- <a href="#timing-attribute-end">end</a> = <a href="#timing-value-timeExpression"><timeExpression></a>
+ <a href="#timing-attribute-begin">begin</a> = <a href=
+"#timing-value-timeExpression"><timeExpression></a>
+ <a href="#timing-attribute-dur">dur</a> = <a href=
+"#timing-value-timeExpression"><timeExpression></a>
+ <a href="#timing-attribute-end">end</a> = <a href=
+"#timing-value-timeExpression"><timeExpression></a>
<a href="#layout-attribute-region">region</a> = IDREF
<a href="#style-attribute-style">style</a> = IDREFS
- <a href="#timing-attribute-timeContainer">timeContainer</a> = (<em>par</em>|<em>seq</em>)
+ <a href=
+"#timing-attribute-timeContainer">timeContainer</a> = (<em>par</em>|<em>seq</em>)
<a href="#content-attribute-id">xml:id</a> = ID
<a href="#content-attribute-lang">xml:lang</a> = string
<a href="#content-attribute-space">xml:space</a> = (<em>default</em>|<em>preserve</em>)
{<em>any attribute in TT Metadata namespace</em>}
{<em>any attribute in TT Style namespace</em>}
{<em>any attribute not in default or any TT namespace</em>}>
- <em>Content:</em> <a href="#element-vocab-group-table">Metadata.class</a>*, <a href="#element-vocab-group-table">Animation.class</a>*, <a href="#content-vocabulary-div">div</a>*
+ <em>Content:</em> <a href="#element-vocab-group-table">Metadata.class</a>*, <a href=
+"#element-vocab-group-table">Animation.class</a>*, <a href=
+"#content-vocabulary-div">div</a>*
</body>
-</pre></div>
-</td></tr></tbody></table><p>An author may specify a temporal interval for a <code>body</code> element using
-the <code>begin</code>, <code>dur</code>, and <code>end</code> attributes. If the begin point
-of this interval remains unspecified, then the begin point is interpreted as the beginning
-point of the <em>Root Temporal Extent</em>. Similarly, if the end point of this interval remains unspecified, then the
-end point is interpreted as the ending point of the <em>Root Temporal Extent</em>.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>A <em>Document Instance</em> referenced from a SMIL presentation
-is expected to follow the same timing rules as apply to other SMIL media
-objects.</p></div><p>If relative begin or end times are specified on the <code>body</code>
-element, then these times are resolved by reference to the beginning and
-ending time of the <em>Root Temporal Extent</em>.</p><p>If the <em>Root Temporal Extent</em> is shorter than the computed duration of the
-<code>body</code> element, then the active time interval of a <code>body</code> element is
-truncated to the active end point of the <em>Root Temporal Extent</em>.</p><p>An author may associate a set of style properties with a
-<code>body</code> element by means of either the <code>style</code>
-attribute or inline style attributes or a combination thereof.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>Style properties that are associated with a <code>body</code> element
-in a <em>Document Instance</em> are available for style inheritance by
-descendant <a href="#element-vocab-type-content">Content</a> elements such as <code>div</code>, <code>p</code>,
-<code>span</code>
-and <code>br</code>.</p></div><p>If no <code>timeContainer</code> attribute is specified on a
-<code>body</code> element, then it must be interpreted as having
-<em>parallel</em>
-time containment semantics.</p></div><div class="div3">
-<h4><a id="content-vocabulary-div"></a>7.1.4 div</h4><p>The <code>div</code> element functions as a logical container and a temporal
-structuring element for a sequence of textual content units represented as
-logical sub-divisions or paragraphs.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>When rendered on a continuous (non-paged) visual presentation medium,
-a <code>div</code> element is expected to generate
-one or more block
-areas
-that contain zero or more child block areas
-generated by the <code>div</code> element's
-descendant
-<code>p</code> elements.
-</p><p>If some
-block area generated by a <code>div</code> element does
-not contain any child areas, then it is not expected to be presented.</p></div><p>The <code>div</code> element accepts as its children zero or more
-elements in the <code>Metadata.class</code> element group,
-followed by zero or more
-elements in the <code>Animation.class</code> element group,
-followed by
-zero or more
-<code>div</code> or
-<code>p</code> elements.</p><p>Any metadata specified by children in the <code>Metadata.class</code>
-element group applies semantically to the <code>div</code> element and its descendants as a whole.</p><p>Any animation elements specified by children in the <code>Animation.class</code>
-element group apply semantically to the <code>div</code> element.</p><a id="elt-syntax-div"></a><table class="syntax"><caption>XML Representation – Element Information Item: div</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>An author may specify a temporal interval for a <code>body</code> element
+ using the <code>begin</code>, <code>dur</code>, and <code>end</code>
+ attributes. If the begin point of this interval remains unspecified, then the
+ begin point is interpreted as the beginning point of the <em>Root Temporal
+ Extent</em>. Similarly, if the end point of this interval remains unspecified,
+ then the end point is interpreted as the ending point of the <em>Root Temporal
+ Extent</em>.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>A <em>Document Instance</em> referenced from a SMIL presentation is
+ expected to follow the same timing rules as apply to other SMIL media
+ objects.</p>
+ </div>
+
+ <p>If relative begin or end times are specified on the <code>body</code>
+ element, then these times are resolved by reference to the beginning and ending
+ time of the <em>Root Temporal Extent</em>.</p>
+
+ <p>If the <em>Root Temporal Extent</em> is shorter than the computed duration
+ of the <code>body</code> element, then the active time interval of a
+ <code>body</code> element is truncated to the active end point of the <em>Root
+ Temporal Extent</em>.</p>
+
+ <p>An author may associate a set of style properties with a <code>body</code>
+ element by means of either the <code>style</code> attribute or inline style
+ attributes or a combination thereof.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>Style properties that are associated with a <code>body</code> element in a
+ <em>Document Instance</em> are available for style inheritance by descendant
+ <a href="#element-vocab-type-content">Content</a> elements such as
+ <code>div</code>, <code>p</code>, <code>span</code> and <code>br</code>.</p>
+ </div>
+
+ <p>If no <code>timeContainer</code> attribute is specified on a
+ <code>body</code> element, then it must be interpreted as having
+ <em>parallel</em> time containment semantics.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="content-vocabulary-div" name="content-vocabulary-div"></a>7.1.4
+ div</h4>
+
+ <p>The <code>div</code> element functions as a logical container and a temporal
+ structuring element for a sequence of textual content units represented as
+ logical sub-divisions or paragraphs.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>When rendered on a continuous (non-paged) visual presentation medium, a
+ <code>div</code> element is expected to generate one or more block areas that
+ contain zero or more child block areas generated by the <code>div</code>
+ element's descendant <code>p</code> elements.</p>
+
+ <p>If some block area generated by a <code>div</code> element does not
+ contain any child areas, then it is not expected to be presented.</p>
+ </div>
+
+ <p>The <code>div</code> element accepts as its children zero or more elements
+ in the <code>Metadata.class</code> element group, followed by zero or more
+ elements in the <code>Animation.class</code> element group, followed by zero or
+ more <code>div</code> or <code>p</code> elements.</p>
+
+ <p>Any metadata specified by children in the <code>Metadata.class</code>
+ element group applies semantically to the <code>div</code> element and its
+ descendants as a whole.</p>
+
+ <p>Any animation elements specified by children in the
+ <code>Animation.class</code> element group apply semantically to the
+ <code>div</code> element.</p><a id="elt-syntax-div" name="elt-syntax-div"></a>
+
+ <table class="syntax">
+ <caption>
+ XML Representation – Element Information Item: div
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<div
- <a href="#timing-attribute-begin">begin</a> = <a href="#timing-value-timeExpression"><timeExpression></a>
- <a href="#timing-attribute-dur">dur</a> = <a href="#timing-value-timeExpression"><timeExpression></a>
- <a href="#timing-attribute-end">end</a> = <a href="#timing-value-timeExpression"><timeExpression></a>
+ <a href="#timing-attribute-begin">begin</a> = <a href=
+"#timing-value-timeExpression"><timeExpression></a>
+ <a href="#timing-attribute-dur">dur</a> = <a href=
+"#timing-value-timeExpression"><timeExpression></a>
+ <a href="#timing-attribute-end">end</a> = <a href=
+"#timing-value-timeExpression"><timeExpression></a>
<a href="#layout-attribute-region">region</a> = IDREF
<a href="#style-attribute-style">style</a> = IDREFS
- <a href="#timing-attribute-timeContainer">timeContainer</a> = (<em>par</em>|<em>seq</em>)
+ <a href=
+"#timing-attribute-timeContainer">timeContainer</a> = (<em>par</em>|<em>seq</em>)
<a href="#content-attribute-id">xml:id</a> = ID
<a href="#content-attribute-lang">xml:lang</a> = string
<a href="#content-attribute-space">xml:space</a> = (<em>default</em>|<em>preserve</em>)
{<em>any attribute in TT Metadata namespace</em>}
{<em>any attribute in TT Style namespace</em>}
{<em>any attribute not in default or any TT namespace</em>}>
- <em>Content:</em> <a href="#element-vocab-group-table">Metadata.class</a>*, <a href="#element-vocab-group-table">Animation.class</a>*, <a href="#element-vocab-group-table">Block.class</a>*
+ <em>Content:</em> <a href="#element-vocab-group-table">Metadata.class</a>*, <a href=
+"#element-vocab-group-table">Animation.class</a>*, <a href=
+"#element-vocab-group-table">Block.class</a>*
</div>
-</pre></div>
-</td></tr></tbody></table><p>An author may associate a set of style properties with a <code>div</code> element by means of either
-the <code>style</code> attribute or inline style attributes or a combination thereof.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>Style properties that are associated
-with
-a <code>div</code> element in a <em>Document Instance</em>
-are available for style inheritance by descendant <a href="#element-vocab-type-content">Content</a> elements such as
-<code>div</code>,
-<code>p</code>,
-<code>span</code>, and
-<code>br</code>.</p></div><p>If no <code>timeContainer</code> attribute is specified on
-a <code>div</code> element, then it must be interpreted as having
-<em>parallel</em> time containment semantics.</p></div><div class="div3">
-<h4><a id="content-vocabulary-p"></a>7.1.5 p</h4><p>A <code>p</code> element represents a logical paragraph, serving as
-a transition between block level and inline level formatting semantics.</p><p>The <code>p</code> element accepts as its children zero or more
-elements in the <code>Metadata.class</code> element group,
-followed by zero or more
-elements in the <code>Animation.class</code> element group,
-followed by
-zero or more intermixed
-<code>span</code> elements,
-<code>br</code> elements,
-or text nodes interpreted as an anonymous spans.</p><p>Any metadata specified by children in the <code>Metadata.class</code>
-element group applies semantically to the <code>p</code> element and its descendants as a whole.</p><p>Any animation elements specified by children in the <code>Animation.class</code>
-element group apply semantically to the <code>p</code> element.</p><a id="elt-syntax-p"></a><table class="syntax"><caption>XML Representation – Element Information Item: p</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>An author may associate a set of style properties with a <code>div</code>
+ element by means of either the <code>style</code> attribute or inline style
+ attributes or a combination thereof.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>Style properties that are associated with a <code>div</code> element in a
+ <em>Document Instance</em> are available for style inheritance by descendant
+ <a href="#element-vocab-type-content">Content</a> elements such as
+ <code>div</code>, <code>p</code>, <code>span</code>, and <code>br</code>.</p>
+ </div>
+
+ <p>If no <code>timeContainer</code> attribute is specified on a
+ <code>div</code> element, then it must be interpreted as having
+ <em>parallel</em> time containment semantics.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="content-vocabulary-p" name="content-vocabulary-p"></a>7.1.5 p</h4>
+
+ <p>A <code>p</code> element represents a logical paragraph, serving as a
+ transition between block level and inline level formatting semantics.</p>
+
+ <p>The <code>p</code> element accepts as its children zero or more elements in
+ the <code>Metadata.class</code> element group, followed by zero or more
+ elements in the <code>Animation.class</code> element group, followed by zero or
+ more intermixed <code>span</code> elements, <code>br</code> elements, or text
+ nodes interpreted as an anonymous spans.</p>
+
+ <p>Any metadata specified by children in the <code>Metadata.class</code>
+ element group applies semantically to the <code>p</code> element and its
+ descendants as a whole.</p>
+
+ <p>Any animation elements specified by children in the
+ <code>Animation.class</code> element group apply semantically to the
+ <code>p</code> element.</p><a id="elt-syntax-p" name="elt-syntax-p"></a>
+
+ <table class="syntax">
+ <caption>
+ XML Representation – Element Information Item: p
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<p
- <a href="#timing-attribute-begin">begin</a> = <a href="#timing-value-timeExpression"><timeExpression></a>
- <a href="#timing-attribute-dur">dur</a> = <a href="#timing-value-timeExpression"><timeExpression></a>
- <a href="#timing-attribute-end">end</a> = <a href="#timing-value-timeExpression"><timeExpression></a>
+ <a href="#timing-attribute-begin">begin</a> = <a href=
+"#timing-value-timeExpression"><timeExpression></a>
+ <a href="#timing-attribute-dur">dur</a> = <a href=
+"#timing-value-timeExpression"><timeExpression></a>
+ <a href="#timing-attribute-end">end</a> = <a href=
+"#timing-value-timeExpression"><timeExpression></a>
<a href="#layout-attribute-region">region</a> = IDREF
<a href="#style-attribute-style">style</a> = IDREFS
- <a href="#timing-attribute-timeContainer">timeContainer</a> = (<em>par</em>|<em>seq</em>)
+ <a href=
+"#timing-attribute-timeContainer">timeContainer</a> = (<em>par</em>|<em>seq</em>)
<a href="#content-attribute-id">xml:id</a> = ID
<a href="#content-attribute-lang">xml:lang</a> = string
<a href="#content-attribute-space">xml:space</a> = (<em>default</em>|<em>preserve</em>)
{<em>any attribute in TT Metadata namespace</em>}
{<em>any attribute in TT Style namespace</em>}
{<em>any attribute not in default or any TT namespace</em>}>
- <em>Content:</em> <a href="#element-vocab-group-table">Metadata.class</a>*, <a href="#element-vocab-group-table">Animation.class</a>*, <a href="#element-vocab-group-table">Inline.class</a>*
+ <em>Content:</em> <a href="#element-vocab-group-table">Metadata.class</a>*, <a href=
+"#element-vocab-group-table">Animation.class</a>*, <a href=
+"#element-vocab-group-table">Inline.class</a>*
</p>
-</pre></div>
-</td></tr></tbody></table><p>An author may associate a set of style properties with a
-<code>p</code> element by means of either the <code>style</code>
-attribute or inline style attributes or a combination thereof.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>Style properties that are associated with a <code>p</code> element
-in a <em>Document Instance</em> are available for style inheritance by
-descendant <a href="#element-vocab-type-content">Content</a> elements such as <code>span</code> and
-<code>br</code>.</p></div><p>If no <code>timeContainer</code> attribute is specified on
-a <code>p</code> element, then it must be interpreted as having
-<em>parallel</em> time containment semantics.</p><p>If a sequence of children of a <code>p</code> element
-consists solely of character information items, then that sequence must
-be considered to be an <em>anonymous span</em> for the purpose of
-applying style properties that apply to <code>span</code> elements.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>The presentation semantics of TTML effectively
-implies that a <code>p</code> element constitutes a line break. In particular,
-it is associated with a block-stacking constraint both before the first
-generated line area and after the last generated line area. See
-<a href="#semantics-region-layout-step-2"><b>9.3.3 Synchronic Flow Processing</b></a> for further details.</p></div></div><div class="div3">
-<h4><a id="content-vocabulary-span"></a>7.1.6 span</h4><p>The <code>span</code> element functions as a logical container and a temporal
-structuring element for a sequence of textual content units having inline
-level formatting semantics.</p><p>When presented on a visual medium, a <code>span</code> element is intended to
-generate a sequence of inline areas, each containing one or more glyph areas.</p><p>The <code>span</code> element accepts as its children zero or more
-elements in the <code>Metadata.class</code> element group,
-followed by zero or more
-elements in the <code>Animation.class</code> element group,
-followed by
-zero or more intermixed
-<code>span</code> elements,
-<code>br</code> elements,
-or text nodes interpreted as anonymous spans.</p><p>Any metadata specified by children in the <code>Metadata.class</code>
-element group applies semantically to the <code>span</code> element and its descendants as a whole.</p><p>Any animation elements specified by children in the <code>Animation.class</code>
-element group apply semantically to the <code>span</code> element.</p><a id="elt-syntax-span"></a><table class="syntax"><caption>XML Representation – Element Information Item: span</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>An author may associate a set of style properties with a <code>p</code>
+ element by means of either the <code>style</code> attribute or inline style
+ attributes or a combination thereof.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>Style properties that are associated with a <code>p</code> element in a
+ <em>Document Instance</em> are available for style inheritance by descendant
+ <a href="#element-vocab-type-content">Content</a> elements such as
+ <code>span</code> and <code>br</code>.</p>
+ </div>
+
+ <p>If no <code>timeContainer</code> attribute is specified on a <code>p</code>
+ element, then it must be interpreted as having <em>parallel</em> time
+ containment semantics.</p>
+
+ <p>If a sequence of children of a <code>p</code> element consists solely of
+ character information items, then that sequence must be considered to be an
+ <em>anonymous span</em> for the purpose of applying style properties that apply
+ to <code>span</code> elements.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The presentation semantics of TTML effectively implies that a
+ <code>p</code> element constitutes a line break. In particular, it is
+ associated with a block-stacking constraint both before the first generated
+ line area and after the last generated line area. See <a href=
+ "#semantics-region-layout-step-2"><b>9.3.3 Synchronic Flow Processing</b></a>
+ for further details.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="content-vocabulary-span" name="content-vocabulary-span"></a>7.1.6
+ span</h4>
+
+ <p>The <code>span</code> element functions as a logical container and a
+ temporal structuring element for a sequence of textual content units having
+ inline level formatting semantics.</p>
+
+ <p>When presented on a visual medium, a <code>span</code> element is intended
+ to generate a sequence of inline areas, each containing one or more glyph
+ areas.</p>
+
+ <p>The <code>span</code> element accepts as its children zero or more elements
+ in the <code>Metadata.class</code> element group, followed by zero or more
+ elements in the <code>Animation.class</code> element group, followed by zero or
+ more intermixed <code>span</code> elements, <code>br</code> elements, or text
+ nodes interpreted as anonymous spans.</p>
+
+ <p>Any metadata specified by children in the <code>Metadata.class</code>
+ element group applies semantically to the <code>span</code> element and its
+ descendants as a whole.</p>
+
+ <p>Any animation elements specified by children in the
+ <code>Animation.class</code> element group apply semantically to the
+ <code>span</code> element.</p><a id="elt-syntax-span" name=
+ "elt-syntax-span"></a>
+
+ <table class="syntax">
+ <caption>
+ XML Representation – Element Information Item: span
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<span
- <a href="#timing-attribute-begin">begin</a> = <a href="#timing-value-timeExpression"><timeExpression></a>
- <a href="#timing-attribute-dur">dur</a> = <a href="#timing-value-timeExpression"><timeExpression></a>
- <a href="#timing-attribute-end">end</a> = <a href="#timing-value-timeExpression"><timeExpression></a>
+ <a href="#timing-attribute-begin">begin</a> = <a href=
+"#timing-value-timeExpression"><timeExpression></a>
+ <a href="#timing-attribute-dur">dur</a> = <a href=
+"#timing-value-timeExpression"><timeExpression></a>
+ <a href="#timing-attribute-end">end</a> = <a href=
+"#timing-value-timeExpression"><timeExpression></a>
<a href="#layout-attribute-region">region</a> = IDREF
<a href="#style-attribute-style">style</a> = IDREFS
- <a href="#timing-attribute-timeContainer">timeContainer</a> = (<em>par</em>|<em>seq</em>)
+ <a href=
+"#timing-attribute-timeContainer">timeContainer</a> = (<em>par</em>|<em>seq</em>)
<a href="#content-attribute-id">xml:id</a> = ID
<a href="#content-attribute-lang">xml:lang</a> = string
<a href="#content-attribute-space">xml:space</a> = (<em>default</em>|<em>preserve</em>)
{<em>any attribute in TT Metadata namespace</em>}
{<em>any attribute in TT Style namespace</em>}
{<em>any attribute not in default or any TT namespace</em>}>
- <em>Content:</em> <a href="#element-vocab-group-table">Metadata.class</a>*, <a href="#element-vocab-group-table">Animation.class</a>*, <a href="#element-vocab-group-table">Inline.class</a>*
+ <em>Content:</em> <a href="#element-vocab-group-table">Metadata.class</a>*, <a href=
+"#element-vocab-group-table">Animation.class</a>*, <a href=
+"#element-vocab-group-table">Inline.class</a>*
</span>
-</pre></div>
-</td></tr></tbody></table><p>An author may associate a set of style properties with a
-<code>span</code> element by means of either the <code>style</code>
-attribute or inline style attributes or a combination thereof.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>Style properties that are associated with a <code>span</code> element
-in a <em>Document Instance</em> are available for style inheritance by
-descendant <a href="#element-vocab-type-content">Content</a> elements such as <code>span</code> and
-<code>br</code>.</p></div><p>If no <code>timeContainer</code> attribute is specified on
-a <code>span</code> element, then it must be interpreted as having
-<em>parallel</em> time containment semantics.</p></div><div class="div3">
-<h4><a id="content-vocabulary-br"></a>7.1.7 br</h4><p>The <code>br</code> element denotes an explicit line break.</p><p>Any metadata specified by children in the <code>Metadata.class</code>
-element group applies semantically to the <code>br</code> element and its descendants as a whole.</p><p>Any animation elements specified by children in the <code>Animation.class</code>
-element group apply semantically to the <code>br</code> element.</p><a id="elt-syntax-br"></a><table class="syntax"><caption>XML Representation – Element Information Item: br</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>An author may associate a set of style properties with a <code>span</code>
+ element by means of either the <code>style</code> attribute or inline style
+ attributes or a combination thereof.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>Style properties that are associated with a <code>span</code> element in a
+ <em>Document Instance</em> are available for style inheritance by descendant
+ <a href="#element-vocab-type-content">Content</a> elements such as
+ <code>span</code> and <code>br</code>.</p>
+ </div>
+
+ <p>If no <code>timeContainer</code> attribute is specified on a
+ <code>span</code> element, then it must be interpreted as having
+ <em>parallel</em> time containment semantics.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="content-vocabulary-br" name="content-vocabulary-br"></a>7.1.7
+ br</h4>
+
+ <p>The <code>br</code> element denotes an explicit line break.</p>
+
+ <p>Any metadata specified by children in the <code>Metadata.class</code>
+ element group applies semantically to the <code>br</code> element and its
+ descendants as a whole.</p>
+
+ <p>Any animation elements specified by children in the
+ <code>Animation.class</code> element group apply semantically to the
+ <code>br</code> element.</p><a id="elt-syntax-br" name="elt-syntax-br"></a>
+
+ <table class="syntax">
+ <caption>
+ XML Representation – Element Information Item: br
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<br
<a href="#style-attribute-style">style</a> = IDREFS
<a href="#content-attribute-id">xml:id</a> = ID
@@ -2079,86 +4907,256 @@
{<em>any attribute in TT Metadata namespace</em>}
{<em>any attribute in TT Style namespace</em>}
{<em>any attribute not in default or any TT namespace</em>}>
- <em>Content:</em> <a href="#element-vocab-group-table">Metadata.class</a>*, <a href="#element-vocab-group-table">Animation.class</a>*
+ <em>Content:</em> <a href="#element-vocab-group-table">Metadata.class</a>*, <a href=
+"#element-vocab-group-table">Animation.class</a>*
</br>
-</pre></div>
-</td></tr></tbody></table><p>When presented on a visual medium, the presence of a <code>br</code> element must be
-interpreted as a forced line break.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>The visual presentation of a <code>br</code> element is
-intended to produce the same effect as the control character
-<code>CR</code> (U+000D)
-followed by the control code <code>LF</code> (U+000A) when presented on a teletype device.
-Therefore, two <code>br</code> elements in sequence will produce a
-different effect than a single <code>br</code> element.</p></div></div></div><div class="div2">
-<h3><a id="content-attribute-vocabulary"></a>7.2 Content Attribute Vocabulary</h3><p>This section defines the following common attributes used with many or all element types
-in the core vocabulary catalog:</p><ul><li><p><a href="#content-attribute-id"><b>7.2.1 xml:id</b></a></p></li><li><p><a href="#content-attribute-lang"><b>7.2.2 xml:lang</b></a></p></li><li><p><a href="#content-attribute-space"><b>7.2.3 xml:space</b></a></p></li></ul><div class="div3">
-<h4><a id="content-attribute-id"></a>7.2.1 xml:id</h4><p>The <code>xml:id</code> attribute is used as defined by
-<a href="#xmlid">[XML ID]</a>.</p><p>The <code>xml:id</code> attribute may be used with any element in the
-core vocabulary catalog.</p></div><div class="div3">
-<h4><a id="content-attribute-lang"></a>7.2.2 xml:lang</h4><p>The <code>xml:lang</code> attribute is used as defined by
-<a href="#xml10">[XML 1.0]</a>, §2.12, <em>Language Identification</em>.</p><p>The <code>xml:lang</code> attribute must be specified on the <code>tt</code>
-element and may be specified by an instance of any other element type
-in the core vocabulary catalog except parameter vocabulary.</p></div><div class="div3">
-<h4><a id="content-attribute-space"></a>7.2.3 xml:space</h4><p>The <code>xml:space</code> attribute is used as defined by
-<a href="#xml10">[XML 1.0]</a>, §2.10, <em>White Space Handling</em>.</p><p>The <code>xml:space</code> attribute may be used with any element in
-the core vocabulary catalog except parameter vocabulary.</p><p>The semantics of the value <code>default</code> are fixed to mean that
-when performing presentation processing of a <em>Document Instance</em> as
-described by <a href="#semantics-region-layout-step-2"><b>9.3.3 Synchronic Flow Processing</b></a>,
-processing must occur as
-if the following properties were specified on the affected
-elements of an equivalent intermediate XSL-FO document:</p><ul><li><p><code>suppress-at-line-break="auto"</code></p></li><li><p><code>linefeed-treatment="treat-as-space"</code></p></li><li><p><code>white-space-collapse="true"</code></p></li><li><p><code>white-space-treatment="ignore-if-surrounding-linefeed"</code></p></li></ul><p>Similarly, the semantics of the value <code>preserve</code> are fixed to mean that
-when performing presentation processing, processing must occur as
-if the following properties were specified on the affected
-elements of an equivalent intermediate XSL-FO document:
-</p><ul><li><p><code>suppress-at-line-break="retain"</code></p></li><li><p><code>linefeed-treatment="preserve"</code></p></li><li><p><code>white-space-collapse="false"</code></p></li><li><p><code>white-space-treatment="preserve"</code></p></li></ul><p>When performing other types of processing intended to eventually
-result in a visual presentation by means other than those described
-in this specification, the semantics of space collapsing and
-preservation as described above should be respected. For other types
-of processing, the treatment of the <code>xml:space</code> attribute
-is processor dependent, but should respect the semantics described
-above if possible.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>The semantics of the above four cited XSL-FO properties are defined by
-by <a href="#xsl11">[XSL 1.1]</a>, § 7.17.3, 7.16.7, 7.16.12, and 7.16.8, respectively.</p></div></div></div></div><div class="div1">
-<h2><a id="styling"></a>8 Styling</h2><p>This section specifies the <em>styling</em> matter of the core
-vocabulary catalog, where
-styling is to be understood as a separable layer of information that applies to
-content and that denotes authorial intentions about the presentation of
-that content.</p><p>Styling attributes are included in TTML to enable authorial intent of presentation
-to be included within a self-contained document. This section describes
-the semantics of style presentation in terms of a standard processing
-model. TTML Processors are not required to present <em>Document Instances</em> in any particular way;
-but an implementation of this model by a TTML Presentation Processor
-that provides externally observable results that are consistent with this model is
-likely to lead to a user experience that closely resembles the experience intended by
-the documents' authors.</p><p>The semantics of TTML style presentation are described in terms of the model
-in <a href="#xsl11">[XSL 1.1]</a>. The effects of the attributes in this section
-are intended to be compatible with the layout and formatting model of XSL; however, Presentation agents
-may use any technology to satisfy the authorial intent of the document. In particular
-since <a href="#css2">[CSS2]</a> is a subset of this model, a CSS processor may be used
-for the features that the models have in common.</p><p>No normative use of an
-<code><?xml-stylesheet ... ?></code> processing instruction is defined
-by this specification.</p><div class="div2">
-<h3><a id="styling-element-vocabulary"></a>8.1 Styling Element Vocabulary</h3><p>The following elements specify the structure and principal styling aspects of a
-<em>Document Instance</em>:</p><ul><li><p><a href="#styling-vocabulary-styling"><b>8.1.1 styling</b></a></p></li><li><p><a href="#styling-vocabulary-style"><b>8.1.2 style</b></a></p></li></ul><div class="div3">
-<h4><a id="styling-vocabulary-styling"></a>8.1.1 styling</h4><p>The <code>styling</code> element is a container element used to group
-styling matter, including metadata that applies to styling matter.</p><p>The <code>styling</code> element accepts as its children zero or more
-elements in the <code>Metadata.class</code> element group, followed by
-zero or more <code>style</code> elements.</p><a id="elt-syntax-styling"></a><table class="syntax"><caption>XML Representation – Element Information Item: styling</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>When presented on a visual medium, the presence of a <code>br</code> element
+ must be interpreted as a forced line break.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The visual presentation of a <code>br</code> element is intended to
+ produce the same effect as the control character <code>CR</code> (U+000D)
+ followed by the control code <code>LF</code> (U+000A) when presented on a
+ teletype device. Therefore, two <code>br</code> elements in sequence will
+ produce a different effect than a single <code>br</code> element.</p>
+ </div>
+ </div>
+ </div>
+
+ <div class="div2">
+ <h3><a id="content-attribute-vocabulary" name=
+ "content-attribute-vocabulary"></a>7.2 Content Attribute Vocabulary</h3>
+
+ <p>This section defines the following common attributes used with many or all
+ element types in the core vocabulary catalog:</p>
+
+ <ul>
+ <li>
+ <p><a href="#content-attribute-id"><b>7.2.1 xml:id</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#content-attribute-lang"><b>7.2.2 xml:lang</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#content-attribute-space"><b>7.2.3 xml:space</b></a></p>
+ </li>
+ </ul>
+
+ <div class="div3">
+ <h4><a id="content-attribute-id" name="content-attribute-id"></a>7.2.1
+ xml:id</h4>
+
+ <p>The <code>xml:id</code> attribute is used as defined by <a href=
+ "#xmlid">[XML ID]</a>.</p>
+
+ <p>The <code>xml:id</code> attribute may be used with any element in the core
+ vocabulary catalog.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="content-attribute-lang" name="content-attribute-lang"></a>7.2.2
+ xml:lang</h4>
+
+ <p>The <code>xml:lang</code> attribute is used as defined by <a href=
+ "#xml10">[XML 1.0]</a>, §2.12, <em>Language Identification</em>.</p>
+
+ <p>The <code>xml:lang</code> attribute must be specified on the <code>tt</code>
+ element and may be specified by an instance of any other element type in the
+ core vocabulary catalog except parameter vocabulary.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="content-attribute-space" name="content-attribute-space"></a>7.2.3
+ xml:space</h4>
+
+ <p>The <code>xml:space</code> attribute is used as defined by <a href=
+ "#xml10">[XML 1.0]</a>, §2.10, <em>White Space Handling</em>.</p>
+
+ <p>The <code>xml:space</code> attribute may be used with any element in the
+ core vocabulary catalog except parameter vocabulary.</p>
+
+ <p>The semantics of the value <code>default</code> are fixed to mean that when
+ performing presentation processing of a <em>Document Instance</em> as described
+ by <a href="#semantics-region-layout-step-2"><b>9.3.3 Synchronic Flow
+ Processing</b></a>, processing must occur as if the following properties were
+ specified on the affected elements of an equivalent intermediate XSL-FO
+ document:</p>
+
+ <ul>
+ <li>
+ <p><code>suppress-at-line-break="auto"</code></p>
+ </li>
+
+ <li>
+ <p><code>linefeed-treatment="treat-as-space"</code></p>
+ </li>
+
+ <li>
+ <p><code>white-space-collapse="true"</code></p>
+ </li>
+
+ <li>
+ <p><code>white-space-treatment="ignore-if-surrounding-linefeed"</code></p>
+ </li>
+ </ul>
+
+ <p>Similarly, the semantics of the value <code>preserve</code> are fixed to
+ mean that when performing presentation processing, processing must occur as if
+ the following properties were specified on the affected elements of an
+ equivalent intermediate XSL-FO document:</p>
+
+ <ul>
+ <li>
+ <p><code>suppress-at-line-break="retain"</code></p>
+ </li>
+
+ <li>
+ <p><code>linefeed-treatment="preserve"</code></p>
+ </li>
+
+ <li>
+ <p><code>white-space-collapse="false"</code></p>
+ </li>
+
+ <li>
+ <p><code>white-space-treatment="preserve"</code></p>
+ </li>
+ </ul>
+
+ <p>When performing other types of processing intended to eventually result in a
+ visual presentation by means other than those described in this specification,
+ the semantics of space collapsing and preservation as described above should be
+ respected. For other types of processing, the treatment of the
+ <code>xml:space</code> attribute is processor dependent, but should respect the
+ semantics described above if possible.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The semantics of the above four cited XSL-FO properties are defined by by
+ <a href="#xsl11">[XSL 1.1]</a>, § 7.17.3, 7.16.7, 7.16.12, and 7.16.8,
+ respectively.</p>
+ </div>
+ </div>
+ </div>
+ </div>
+
+ <div class="div1">
+ <h2><a id="styling" name="styling"></a>8 Styling</h2>
+
+ <p>This section specifies the <em>styling</em> matter of the core vocabulary
+ catalog, where styling is to be understood as a separable layer of information that
+ applies to content and that denotes authorial intentions about the presentation of
+ that content.</p>
+
+ <p>Styling attributes are included in TTML to enable authorial intent of
+ presentation to be included within a self-contained document. This section
+ describes the semantics of style presentation in terms of a standard processing
+ model. TTML Processors are not required to present <em>Document Instances</em> in
+ any particular way; but an implementation of this model by a TTML Presentation
+ Processor that provides externally observable results that are consistent with this
+ model is likely to lead to a user experience that closely resembles the experience
+ intended by the documents' authors.</p>
+
+ <p>The semantics of TTML style presentation are described in terms of the model in
+ <a href="#xsl11">[XSL 1.1]</a>. The effects of the attributes in this section are
+ intended to be compatible with the layout and formatting model of XSL; however,
+ Presentation agents may use any technology to satisfy the authorial intent of the
+ document. In particular since <a href="#css2">[CSS2]</a> is a subset of this model,
+ a CSS processor may be used for the features that the models have in common.</p>
+
+ <p>No normative use of an <code><?xml-stylesheet ... ?></code> processing
+ instruction is defined by this specification.</p>
+
+ <div class="div2">
+ <h3><a id="styling-element-vocabulary" name="styling-element-vocabulary"></a>8.1
+ Styling Element Vocabulary</h3>
+
+ <p>The following elements specify the structure and principal styling aspects of
+ a <em>Document Instance</em>:</p>
+
+ <ul>
+ <li>
+ <p><a href="#styling-vocabulary-styling"><b>8.1.1 styling</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#styling-vocabulary-style"><b>8.1.2 style</b></a></p>
+ </li>
+ </ul>
+
+ <div class="div3">
+ <h4><a id="styling-vocabulary-styling" name=
+ "styling-vocabulary-styling"></a>8.1.1 styling</h4>
+
+ <p>The <code>styling</code> element is a container element used to group
+ styling matter, including metadata that applies to styling matter.</p>
+
+ <p>The <code>styling</code> element accepts as its children zero or more
+ elements in the <code>Metadata.class</code> element group, followed by zero or
+ more <code>style</code> elements.</p><a id="elt-syntax-styling" name=
+ "elt-syntax-styling"></a>
+
+ <table class="syntax">
+ <caption>
+ XML Representation – Element Information Item: styling
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<styling
<a href="#content-attribute-id">xml:id</a> = ID
<a href="#content-attribute-lang">xml:lang</a> = string
<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> <a href="#element-vocab-group-table">Metadata.class</a>*, <a href="#styling-vocabulary-style">style</a>*
+ <em>Content:</em> <a href="#element-vocab-group-table">Metadata.class</a>*, <a href=
+"#styling-vocabulary-style">style</a>*
</styling>
-</pre></div>
-</td></tr></tbody></table><p>To the extent that time semantics apply to the content of the
-<code>styling</code> element, the implied time interval of this element is
-defined to be coterminous with the <em>Root Temporal Extent</em>.</p></div><div class="div3">
-<h4><a id="styling-vocabulary-style"></a>8.1.2 style</h4><p>The <code>style</code> element is used to define
-a set of style specifications expressed as a
-specified style set in accordance with
-<a href="#semantics-style-resolution-processing-sss"><b>8.4.4.2 Specified Style Set Processing</b></a>.</p><a id="elt-syntax-style"></a><table class="syntax"><caption>XML Representation – Element Information Item: style</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>To the extent that time semantics apply to the content of the
+ <code>styling</code> element, the implied time interval of this element is
+ defined to be coterminous with the <em>Root Temporal Extent</em>.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="styling-vocabulary-style" name="styling-vocabulary-style"></a>8.1.2
+ style</h4>
+
+ <p>The <code>style</code> element is used to define a set of style
+ specifications expressed as a specified style set in accordance with <a href=
+ "#semantics-style-resolution-processing-sss"><b>8.4.4.2 Specified Style Set
+ Processing</b></a>.</p><a id="elt-syntax-style" name="elt-syntax-style"></a>
+
+ <table class="syntax">
+ <caption>
+ XML Representation – Element Information Item: style
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<style
<a href="#style-attribute-style">style</a> = IDREFS
<a href="#content-attribute-id">xml:id</a> = ID
@@ -2168,63 +5166,334 @@
{<em>any attribute not in default or any TT namespace</em>}>
<em>Content:</em> EMPTY
</style>
-</pre></div>
-</td></tr></tbody></table><p>If a <code>style</code> element appears as a descendant of a
-<code>region</code> element, then the <code>style</code> element must be
-ignored for the purpose of computing referential styles as defined by
-<a href="#semantics-style-association-referential"><b>8.4.1.2 Referential Styling</b></a> and <a href="#semantics-style-association-chained-referential"><b>8.4.1.3 Chained Referential Styling</b></a>.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>That is to say, when referential styling is used by an element to
-refer to a <code>style</code> element, then the referenced <code>style</code>
-element must appear as a descendant of the <code>styling</code> element, and
-not in any other context.</p></div></div></div><div class="div2">
-<h3><a id="styling-attribute-vocabulary"></a>8.2 Styling Attribute Vocabulary</h3><p>This section defines the <a href="#style-attribute-style"><b>8.2.1 style</b></a> attribute used
-with both style definition elements as well as <a href="#element-vocab-type-content">Content</a> elements.</p><p>In addition, this section specifies the following attributes in the TT Style Namespace
-for use with style definition elements, certain layout elements, and <a href="#element-vocab-type-content">Content</a> elements
-that support inline style specifications:</p><ul><li><p><a href="#style-attribute-backgroundColor"><b>8.2.2 tts:backgroundColor</b></a></p></li><li><p><a href="#style-attribute-color"><b>8.2.3 tts:color</b></a></p></li><li><p><a href="#style-attribute-direction"><b>8.2.4 tts:direction</b></a></p></li><li><p><a href="#style-attribute-display"><b>8.2.5 tts:display</b></a></p></li><li><p><a href="#style-attribute-displayAlign"><b>8.2.6 tts:displayAlign</b></a></p></li><li><p><a href="#style-attribute-extent"><b>8.2.7 tts:extent</b></a></p></li><li><p><a href="#style-attribute-fontFamily"><b>8.2.8 tts:fontFamily</b></a></p></li><li><p><a href="#style-attribute-fontSize"><b>8.2.9 tts:fontSize</b></a></p></li><li><p><a href="#style-attribute-fontStyle"><b>8.2.10 tts:fontStyle</b></a></p></li><li><p><a href="#style-attribute-fontWeight"><b>8.2.11 tts:fontWeight</b></a></p></li><li><p><a href="#style-attribute-lineHeight"><b>8.2.12 tts:lineHeight</b></a></p></li><li><p><a href="#style-attribute-opacity"><b>8.2.13 tts:opacity</b></a></p></li><li><p><a href="#style-attribute-origin"><b>8.2.14 tts:origin</b></a></p></li><li><p><a href="#style-attribute-overflow"><b>8.2.15 tts:overflow</b></a></p></li><li><p><a href="#style-attribute-padding"><b>8.2.16 tts:padding</b></a></p></li><li><p><a href="#style-attribute-showBackground"><b>8.2.17 tts:showBackground</b></a></p></li><li><p><a href="#style-attribute-textAlign"><b>8.2.18 tts:textAlign</b></a></p></li><li><p><a href="#style-attribute-textDecoration"><b>8.2.19 tts:textDecoration</b></a></p></li><li><p><a href="#style-attribute-textOutline"><b>8.2.20 tts:textOutline</b></a></p></li><li><p><a href="#style-attribute-unicodeBidi"><b>8.2.21 tts:unicodeBidi</b></a></p></li><li><p><a href="#style-attribute-visibility"><b>8.2.22 tts:visibility</b></a></p></li><li><p><a href="#style-attribute-wrapOption"><b>8.2.23 tts:wrapOption</b></a></p></li><li><p><a href="#style-attribute-writingMode"><b>8.2.24 tts:writingMode</b></a></p></li><li><p><a href="#style-attribute-zIndex"><b>8.2.25 tts:zIndex</b></a></p></li></ul><p>Unless explicitly stated otherwise, linear white-space (LWSP) must
-appear between adjacent non-terminal components of a value of a TT
-Style or TT Style Extension
-Property value unless some other delimiter is permitted and used.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>This specification makes use of <em>lowerCamelCased</em> local
-names for style attributes that
-are based upon like-named properties defined by <a href="#xsl11">[XSL 1.1]</a>.
-This convention is likewise extended to token values of such
-properties.</p></div><div class="note"><p class="prefix"><b>Note:</b></p><p>A style property may be expressed as a specified attribute on any
-<a href="#element-vocab-type-content">Content</a> element type
-independently of whether the property applies to that
-element type. This capability permits the expression of an inheritable
-style property on ancestor elements to which the property
-does not apply.</p></div><div class="note"><p class="prefix"><b>Note:</b></p><p>Due to the general syntax of this specification (and the schemas it references) with respect
-to how style attributes are specified, particularly for the purpose of supporting inheritance,
-it is possible for an author to inadvertently specify a non-inheritable style attribute on
-an element that applies neither to that element or any of its descendants while still remaining
-conformant from a content validity perspective. Content authors may wish to make use of TTML
-content verification tools that detect and warn about such usage.</p></div><div class="div3">
-<h4><a id="style-attribute-style"></a>8.2.1 style</h4><p>The <code>style</code> attribute is used by referential style association
-to reference one or more <code>style</code> elements each of which define a style (property) set.</p><p>The <code>style</code> attribute may be specified by an instance of the following
-element types:</p><ul><li><p><a href="#document-structure-vocabulary-body"><code>body</code></a></p></li><li><p><a href="#content-vocabulary-div"><code>div</code></a></p></li><li><p><a href="#content-vocabulary-p"><code>p</code></a></p></li><li><p><a href="#layout-vocabulary-region"><code>region</code></a></p></li><li><p><a href="#content-vocabulary-span"><code>span</code></a></p></li><li><p><a href="#styling-vocabulary-style"><code>style</code></a></p></li></ul><p>If specified, the value of a <code>style</code> attribute must
-adhere to the <code>IDREFS</code> data type defined by <a href="#xsd-2">[XML Schema Part 2]</a>,
-§ 3.3.10, and, furthermore, each IDREF must reference a <code>style</code> element
-which has a <code>styling</code> element as an ancestor.</p><p>If the same IDREF, <em>ID<sub>1</sub></em>, appears more than one time in the value of a <code>style</code>
-attribute, then there should be an intervening IDREF, <em>ID<sub>2</sub></em>, where
-<em>ID<sub>2</sub></em> is not equal to <em>ID<sub>1</sub></em>.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>This constraint is intended to discourage the use of redundant referential styling while still
-allowing the same style to be referenced multiple times in order to potentially override prior
-referenced styles, e.g., when an intervening, distinct style is referenced in the IDREFS list.</p></div><div class="note"><p class="prefix"><b>Note:</b></p><p>See the specific element type definitions that permit use of the
-<code>style</code> attribute, as well as <a href="#semantics-style-association-referential"><b>8.4.1.2 Referential Styling</b></a> and <a href="#semantics-style-association-chained-referential"><b>8.4.1.3 Chained Referential Styling</b></a>, for
-further information on its semantics.</p></div></div><div class="div3">
-<h4><a id="style-attribute-backgroundColor"></a>8.2.2 tts:backgroundColor</h4><p>The <code>tts:backgroundColor</code> attribute is used to specify a style property that
-defines the background color of a region or an area generated by content flowed into a region.</p><p>This attribute may be specified by any
-element type
-that permits use of attributes in the TT Style Namespace; however, this attribute applies
-as a style property only to those element types indicated in the following table.</p><a id="style-property-details-backgroundColor"></a><table class="common"><col width="25%" span="1"><col span="1"><tbody><tr><td><em>Values:</em></td><td>
-<a href="#style-value-color"><color></a>
-</td></tr><tr><td><em>Initial:</em></td><td><code>transparent</code></td></tr><tr><td><em>Applies to:</em></td><td>
-<a href="#document-structure-vocabulary-body"><code>body</code></a>,
-<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>,
-<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,
-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>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>If a <code>style</code> element appears as a descendant of a
+ <code>region</code> element, then the <code>style</code> element must be
+ ignored for the purpose of computing referential styles as defined by <a href=
+ "#semantics-style-association-referential"><b>8.4.1.2 Referential
+ Styling</b></a> and <a href=
+ "#semantics-style-association-chained-referential"><b>8.4.1.3 Chained
+ Referential Styling</b></a>.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>That is to say, when referential styling is used by an element to refer to
+ a <code>style</code> element, then the referenced <code>style</code> element
+ must appear as a descendant of the <code>styling</code> element, and not in
+ any other context.</p>
+ </div>
+ </div>
+ </div>
+
+ <div class="div2">
+ <h3><a id="styling-attribute-vocabulary" name=
+ "styling-attribute-vocabulary"></a>8.2 Styling Attribute Vocabulary</h3>
+
+ <p>This section defines the <a href="#style-attribute-style"><b>8.2.1
+ style</b></a> attribute used with both style definition elements as well as
+ <a href="#element-vocab-type-content">Content</a> elements.</p>
+
+ <p>In addition, this section specifies the following attributes in the TT Style
+ Namespace for use with style definition elements, certain layout elements, and
+ <a href="#element-vocab-type-content">Content</a> elements that support inline
+ style specifications:</p>
+
+ <ul>
+ <li>
+ <p><a href="#style-attribute-backgroundColor"><b>8.2.2
+ tts:backgroundColor</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#style-attribute-color"><b>8.2.3 tts:color</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#style-attribute-direction"><b>8.2.4 tts:direction</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#style-attribute-display"><b>8.2.5 tts:display</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#style-attribute-displayAlign"><b>8.2.6
+ tts:displayAlign</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#style-attribute-extent"><b>8.2.7 tts:extent</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#style-attribute-fontFamily"><b>8.2.8 tts:fontFamily</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#style-attribute-fontSize"><b>8.2.9 tts:fontSize</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#style-attribute-fontStyle"><b>8.2.10 tts:fontStyle</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#style-attribute-fontWeight"><b>8.2.11 tts:fontWeight</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#style-attribute-lineHeight"><b>8.2.12 tts:lineHeight</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#style-attribute-opacity"><b>8.2.13 tts:opacity</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#style-attribute-origin"><b>8.2.14 tts:origin</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#style-attribute-overflow"><b>8.2.15 tts:overflow</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#style-attribute-padding"><b>8.2.16 tts:padding</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#style-attribute-showBackground"><b>8.2.17
+ tts:showBackground</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#style-attribute-textAlign"><b>8.2.18 tts:textAlign</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#style-attribute-textDecoration"><b>8.2.19
+ tts:textDecoration</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#style-attribute-textOutline"><b>8.2.20
+ tts:textOutline</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#style-attribute-unicodeBidi"><b>8.2.21
+ tts:unicodeBidi</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#style-attribute-visibility"><b>8.2.22 tts:visibility</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#style-attribute-wrapOption"><b>8.2.23 tts:wrapOption</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#style-attribute-writingMode"><b>8.2.24
+ tts:writingMode</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#style-attribute-zIndex"><b>8.2.25 tts:zIndex</b></a></p>
+ </li>
+ </ul>
+
+ <p>Unless explicitly stated otherwise, linear white-space (LWSP) must appear
+ between adjacent non-terminal components of a value of a TT Style or TT Style
+ Extension Property value unless some other delimiter is permitted and used.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>This specification makes use of <em>lowerCamelCased</em> local names for
+ style attributes that are based upon like-named properties defined by <a href=
+ "#xsl11">[XSL 1.1]</a>. This convention is likewise extended to token values of
+ such properties.</p>
+ </div>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>A style property may be expressed as a specified attribute on any <a href=
+ "#element-vocab-type-content">Content</a> element type independently of whether
+ the property applies to that element type. This capability permits the
+ expression of an inheritable style property on ancestor elements to which the
+ property does not apply.</p>
+ </div>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>Due to the general syntax of this specification (and the schemas it
+ references) with respect to how style attributes are specified, particularly
+ for the purpose of supporting inheritance, it is possible for an author to
+ inadvertently specify a non-inheritable style attribute on an element that
+ applies neither to that element or any of its descendants while still remaining
+ conformant from a content validity perspective. Content authors may wish to
+ make use of TTML content verification tools that detect and warn about such
+ usage.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="style-attribute-style" name="style-attribute-style"></a>8.2.1
+ style</h4>
+
+ <p>The <code>style</code> attribute is used by referential style association to
+ reference one or more <code>style</code> elements each of which define a style
+ (property) set.</p>
+
+ <p>The <code>style</code> attribute may be specified by an instance of the
+ following element types:</p>
+
+ <ul>
+ <li>
+ <p><a href="#document-structure-vocabulary-body"><code>body</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#content-vocabulary-div"><code>div</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#content-vocabulary-p"><code>p</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#layout-vocabulary-region"><code>region</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#content-vocabulary-span"><code>span</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#styling-vocabulary-style"><code>style</code></a></p>
+ </li>
+ </ul>
+
+ <p>If specified, the value of a <code>style</code> attribute must adhere to the
+ <code>IDREFS</code> data type defined by <a href="#xsd-2">[XML Schema Part
+ 2]</a>, § 3.3.10, and, furthermore, each IDREF must reference a
+ <code>style</code> element which has a <code>styling</code> element as an
+ ancestor.</p>
+
+ <p>If the same IDREF, <em>ID<sub>1</sub></em>, appears more than one time in
+ the value of a <code>style</code> attribute, then there should be an
+ intervening IDREF, <em>ID<sub>2</sub></em>, where <em>ID<sub>2</sub></em> is
+ not equal to <em>ID<sub>1</sub></em>.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>This constraint is intended to discourage the use of redundant referential
+ styling while still allowing the same style to be referenced multiple times
+ in order to potentially override prior referenced styles, e.g., when an
+ intervening, distinct style is referenced in the IDREFS list.</p>
+ </div>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>See the specific element type definitions that permit use of the
+ <code>style</code> attribute, as well as <a href=
+ "#semantics-style-association-referential"><b>8.4.1.2 Referential
+ Styling</b></a> and <a href=
+ "#semantics-style-association-chained-referential"><b>8.4.1.3 Chained
+ Referential Styling</b></a>, for further information on its semantics.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="style-attribute-backgroundColor" name=
+ "style-attribute-backgroundColor"></a>8.2.2 tts:backgroundColor</h4>
+
+ <p>The <code>tts:backgroundColor</code> attribute is used to specify a style
+ property that defines the background color of a region or an area generated by
+ content flowed into a region.</p>
+
+ <p>This attribute may be specified by any element type that permits use of
+ attributes in the TT Style Namespace; however, this attribute applies as a
+ style property only to those element types indicated in the following
+ table.</p><a id="style-property-details-backgroundColor" name=
+ "style-property-details-backgroundColor"></a>
+
+ <table class="common">
+ <col width="25%" span="1">
+ <col span="1">
+
+ <tbody>
+ <tr>
+ <td><em>Values:</em></td>
+
+ <td><a href="#style-value-color"><color></a></td>
+ </tr>
+
+ <tr>
+ <td><em>Initial:</em></td>
+
+ <td><code>transparent</code></td>
+ </tr>
+
+ <tr>
+ <td><em>Applies to:</em></td>
+
+ <td><a href="#document-structure-vocabulary-body"><code>body</code></a>,
+ <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>, <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, 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" name=
+ "style-attribute-backgroundColor-example-1"></a>
+
+ <table class="example">
+ <caption>
+ Example Fragment – Background Color
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<region xml:id="r1">
<style tts:extent="306px 114px"/>
<style <span class="strong">tts:backgroundColor="red"</span>/>
@@ -2233,29 +5502,123 @@
<style tts:padding="3px 40px"/>
</region>
...
-<p region="r1" <span class="strong">tts:backgroundColor="purple"</span> tts:textAlign="center">
+<p region="r1" <span class=
+"strong">tts:backgroundColor="purple"</span> tts:textAlign="center">
Twinkle, twinkle, little bat!<br/>
- How <span <span class="strong">tts:backgroundColor="green"</span>>I wonder</span> where you're at!
+ How <span <span class=
+"strong">tts:backgroundColor="green"</span>>I wonder</span> where you're at!
</p>
-</pre></div>
-</td></tr></tbody></table><p></p><a id="style-attribute-backgroundColor-example-1-images"></a><table class="example-images"><caption>Example Rendition – Background Color</caption><tbody><tr><td><img src="images/backgroundColor.png" alt="TTML backgroundColor style property"></td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>The semantics of the style property represented by this attribute are based upon
-that defined by <a href="#xsl11">[XSL 1.1]</a>, § 7.8.2.</p></div></div><div class="div3">
-<h4><a id="style-attribute-color"></a>8.2.3 tts:color</h4><p>The <code>tts:color</code> attribute is used to specify a style property that
-defines the foreground color of marks associated with an area generated by content flowed into a region.</p><p>This attribute may be specified by any
-element type
-that permits use of attributes in the TT Style Namespace; however, this attribute applies
-as a style property only to those element types indicated in the following table.</p><a id="style-property-details-color"></a><table class="common"><col width="25%" span="1"><col span="1"><tbody><tr><td><em>Values:</em></td><td>
-<a href="#style-value-color"><color></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,
-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
-end-user preference information, a conformant presentation processor
-should use an initial value that is highly contrastive to the
-background color of the <em>Root Container Region</em>.</p><p>The <code>tts:color</code> style is illustrated by the following example.</p><a id="style-attribute-color-example-1"></a><table class="example"><caption>Example Fragment – Color</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p><a id="style-attribute-backgroundColor-example-1-images" name=
+ "style-attribute-backgroundColor-example-1-images"></a></p>
+
+ <table class="example-images">
+ <caption>
+ Example Rendition – Background Color
+ </caption>
+
+ <tbody>
+ <tr>
+ <td><img src="images/backgroundColor.png" alt=
+ "TTML backgroundColor style property"></td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The semantics of the style property represented by this attribute are
+ based upon that defined by <a href="#xsl11">[XSL 1.1]</a>, § 7.8.2.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="style-attribute-color" name="style-attribute-color"></a>8.2.3
+ tts:color</h4>
+
+ <p>The <code>tts:color</code> attribute is used to specify a style property
+ that defines the foreground color of marks associated with an area generated by
+ content flowed into a region.</p>
+
+ <p>This attribute may be specified by any element type that permits use of
+ attributes in the TT Style Namespace; however, this attribute applies as a
+ style property only to those element types indicated in the following
+ table.</p><a id="style-property-details-color" name=
+ "style-property-details-color"></a>
+
+ <table class="common">
+ <col width="25%" span="1">
+ <col span="1">
+
+ <tbody>
+ <tr>
+ <td><em>Values:</em></td>
+
+ <td><a href="#style-value-color"><color></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, 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 end-user preference information, a
+ conformant presentation processor should use an initial value that is highly
+ contrastive to the background color of the <em>Root Container Region</em>.</p>
+
+ <p>The <code>tts:color</code> style is illustrated by the following
+ example.</p><a id="style-attribute-color-example-1" name=
+ "style-attribute-color-example-1"></a>
+
+ <table class="example">
+ <caption>
+ Example Fragment – Color
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<region xml:id="r1">
<style tts:backgroundColor="black"/>
<style <span class="strong">tts:color="white"</span>/>
@@ -2264,31 +5627,120 @@
</region>
...
<p region="r1">
- In spring, when woods are <span <span class="strong">tts:color="green"</span>>getting green</span>,<br/>
+ In spring, when woods are <span <span class=
+"strong">tts:color="green"</span>>getting green</span>,<br/>
I'll try and tell you what I mean.
</p>
-</pre></div>
-</td></tr></tbody></table><p></p><a id="style-attribute-color-example-1-images"></a><table class="example-images"><caption>Example Rendition – Color</caption><tbody><tr><td><img src="images/color.png" alt="TTML color style property"></td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>The semantics of the style property
-represented by this attribute are based upon that defined by <a href="#xsl11">[XSL 1.1]</a>,
-§ 7.18.1.</p></div></div><div class="div3">
-<h4><a id="style-attribute-direction"></a>8.2.4 tts:direction</h4><p>The <code>tts:direction</code> attribute is used to specify a style property that
-defines the directionality of an embedding or override according to
-the Unicode bidirectional algorithm.</p><p>This attribute may be specified by any
-element type
-that permits use of attributes in the TT Style Namespace; however, this attribute applies
-as a style property only to those element types indicated in the following table.</p><a id="style-property-details-direction"></a><table class="common"><col width="25%" span="1"><col span="1"><tbody><tr><td><em>Values:</em></td><td>
-<code>ltr</code> |
-<code>rtl</code>
-</td></tr><tr><td><em>Initial:</em></td><td>
-<code>ltr</code>
-</td></tr><tr><td><em>Applies to:</em></td><td>
-<a href="#content-vocabulary-p"><code>p</code></a>,
-<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,
-each character child of a <code>p</code> element is considered to be enclosed in an anonymous
-span.</p><p>If a computed value of the property associated with this attribute is not supported,
-then a presentation processor must use the value <code>ltr</code>.</p><p>The <code>tts:direction</code> style is illustrated by the following example.</p><a id="style-attribute-direction-example-1"></a><table class="example"><caption>Example Fragment – Direction</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p><a id="style-attribute-color-example-1-images" name=
+ "style-attribute-color-example-1-images"></a></p>
+
+ <table class="example-images">
+ <caption>
+ Example Rendition – Color
+ </caption>
+
+ <tbody>
+ <tr>
+ <td><img src="images/color.png" alt="TTML color style property"></td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The semantics of the style property represented by this attribute are
+ based upon that defined by <a href="#xsl11">[XSL 1.1]</a>, § 7.18.1.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="style-attribute-direction" name=
+ "style-attribute-direction"></a>8.2.4 tts:direction</h4>
+
+ <p>The <code>tts:direction</code> attribute is used to specify a style property
+ that defines the directionality of an embedding or override according to the
+ Unicode bidirectional algorithm.</p>
+
+ <p>This attribute may be specified by any element type that permits use of
+ attributes in the TT Style Namespace; however, this attribute applies as a
+ style property only to those element types indicated in the following
+ table.</p><a id="style-property-details-direction" name=
+ "style-property-details-direction"></a>
+
+ <table class="common">
+ <col width="25%" span="1">
+ <col span="1">
+
+ <tbody>
+ <tr>
+ <td><em>Values:</em></td>
+
+ <td><code>ltr</code> | <code>rtl</code></td>
+ </tr>
+
+ <tr>
+ <td><em>Initial:</em></td>
+
+ <td><code>ltr</code></td>
+ </tr>
+
+ <tr>
+ <td><em>Applies to:</em></td>
+
+ <td><a href="#content-vocabulary-p"><code>p</code></a>, <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, each
+ character child of a <code>p</code> element is considered to be enclosed in an
+ anonymous span.</p>
+
+ <p>If a computed value of the property associated with this attribute is not
+ supported, then a presentation processor must use the value
+ <code>ltr</code>.</p>
+
+ <p>The <code>tts:direction</code> style is illustrated by the following
+ example.</p><a id="style-attribute-direction-example-1" name=
+ "style-attribute-direction-example-1"></a>
+
+ <table class="example">
+ <caption>
+ Example Fragment – Direction
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<region xml:id="r1">
<style tts:extent="265px 84px"/>
<style tts:padding="5px"/>
@@ -2301,38 +5753,124 @@
<p region="r1">
Little birds are playing<br/>
Bagpipes on the shore,<br/>
- <span tts:unicodeBidi="bidiOverride" <span class="strong">tts:direction="rtl"</span>>where the tourists snore.</span>
+ <span tts:unicodeBidi="bidiOverride" <span class=
+"strong">tts:direction="rtl"</span>>where the tourists snore.</span>
</p>
-</pre></div>
-</td></tr></tbody></table><p></p><a id="style-attribute-direction-example-1-images"></a><table class="example-images"><caption>Example Rendition – Direction</caption><tbody><tr><td>
-<img src="images/direction.png" alt="TTML direction style property">
-</td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>The semantics of the style property
-represented by this attribute are based upon that defined by <a href="#xsl11">[XSL 1.1]</a>,
-§ 7.29.1.</p></div></div><div class="div3">
-<h4><a id="style-attribute-display"></a>8.2.5 tts:display</h4><p>The <code>tts:display</code> attribute is used to specify a style property that
-defines whether an element is a candidate for layout and composition
-in a region.</p><p>This attribute may be specified by any
-element type
-that permits use of attributes in the TT Style Namespace; however, this attribute applies
-as a style property only to those element types indicated in the following table.</p><a id="style-property-details-display"></a><table class="common"><col width="25%" span="1"><col span="1"><tbody><tr><td><em>Values:</em></td><td>
-<code>auto</code> |
-<code>none</code>
-</td></tr><tr><td><em>Initial:</em></td><td>
-<code>auto</code>
-</td></tr><tr><td><em>Applies to:</em></td><td>
-<a href="#document-structure-vocabulary-body"><code>body</code></a>,
-<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>,
-<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,
-each character child of a <code>p</code> element is considered to be enclosed in an anonymous
-span.</p><p>If the value of this attribute is <code>auto</code>,
-then the affected element is a candidate for region layout and
-presentation; however, if the value is <code>none</code>, then the
-affected element and its descendants must be considered ineligible for region
-layout and presentation.</p><p>The <code>tts:display</code> style is illustrated by the following example.</p><a id="style-attribute-display-example-1"></a><table class="example"><caption>Example Fragment – Display</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p><a id="style-attribute-direction-example-1-images" name=
+ "style-attribute-direction-example-1-images"></a></p>
+
+ <table class="example-images">
+ <caption>
+ Example Rendition – Direction
+ </caption>
+
+ <tbody>
+ <tr>
+ <td><img src="images/direction.png" alt=
+ "TTML direction style property"></td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The semantics of the style property represented by this attribute are
+ based upon that defined by <a href="#xsl11">[XSL 1.1]</a>, § 7.29.1.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="style-attribute-display" name="style-attribute-display"></a>8.2.5
+ tts:display</h4>
+
+ <p>The <code>tts:display</code> attribute is used to specify a style property
+ that defines whether an element is a candidate for layout and composition in a
+ region.</p>
+
+ <p>This attribute may be specified by any element type that permits use of
+ attributes in the TT Style Namespace; however, this attribute applies as a
+ style property only to those element types indicated in the following
+ table.</p><a id="style-property-details-display" name=
+ "style-property-details-display"></a>
+
+ <table class="common">
+ <col width="25%" span="1">
+ <col span="1">
+
+ <tbody>
+ <tr>
+ <td><em>Values:</em></td>
+
+ <td><code>auto</code> | <code>none</code></td>
+ </tr>
+
+ <tr>
+ <td><em>Initial:</em></td>
+
+ <td><code>auto</code></td>
+ </tr>
+
+ <tr>
+ <td><em>Applies to:</em></td>
+
+ <td><a href="#document-structure-vocabulary-body"><code>body</code></a>,
+ <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>, <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, each
+ character child of a <code>p</code> element is considered to be enclosed in an
+ anonymous span.</p>
+
+ <p>If the value of this attribute is <code>auto</code>, then the affected
+ element is a candidate for region layout and presentation; however, if the
+ value is <code>none</code>, then the affected element and its descendants must
+ be considered ineligible for region layout and presentation.</p>
+
+ <p>The <code>tts:display</code> style is illustrated by the following
+ example.</p><a id="style-attribute-display-example-1" name=
+ "style-attribute-display-example-1"></a>
+
+ <table class="example">
+ <caption>
+ Example Fragment – Display
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<region xml:id="r1">
<style tts:extent="369px 119px"
tts:backgroundColor="black"
@@ -2359,34 +5897,132 @@
]]]
</p>
</div>
-</pre></div>
-</td></tr></tbody></table><p></p><a id="style-attribute-display-example-1-images"></a><table class="example-images"><caption>Example Rendition – Display</caption><tbody><tr><td>
-<img src="images/display_0.png" alt="TTML display style property - [0,1)">
-</td></tr><tr><td>
-<img src="images/display_1.png" alt="TTML display style property - [1,2)">
-</td></tr><tr><td>
-<img src="images/display_2.png" alt="TTML display style property - [2,3)">
-</td></tr><tr><td>
-<img src="images/display_3.png" alt="TTML display style property - [3,4)">
-</td></tr><tr><td>
-<img src="images/display_4.png" alt="TTML display style property - [4,5)">
-</td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>The semantics of the style property
-represented by this attribute are based upon that defined by <a href="#css2">[CSS2]</a>, § 9.2.4.</p></div></div><div class="div3">
-<h4><a id="style-attribute-displayAlign"></a>8.2.6 tts:displayAlign</h4><p>The <code>tts:displayAlign</code> attribute is used to specify a style property that
-defines the alignment of block areas in the block progression direction.</p><p>This attribute may be specified by any
-element type
-that permits use of attributes in the TT Style Namespace; however, this attribute applies
-as a style property only to those element types indicated in the following table.</p><a id="style-property-details-displayAlign"></a><table class="common"><col width="25%" span="1"><col span="1"><tbody><tr><td><em>Values:</em></td><td>
-<code>before</code> |
-<code>center</code> |
-<code>after</code>
-</td></tr><tr><td><em>Initial:</em></td><td>
-<code>before</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 a computed value of the property associated with this attribute is not supported,
-then a presentation processor must use the value <code>before</code>.</p><p>The <code>tts:displayAlign</code> style is illustrated by the following example.</p><a id="style-attribute-displayAlign-example-1"></a><table class="example"><caption>Example Fragment – Display Align</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p><a id="style-attribute-display-example-1-images" name=
+ "style-attribute-display-example-1-images"></a></p>
+
+ <table class="example-images">
+ <caption>
+ Example Rendition – Display
+ </caption>
+
+ <tbody>
+ <tr>
+ <td><img src="images/display_0.png" alt=
+ "TTML display style property - [0,1)"></td>
+ </tr>
+
+ <tr>
+ <td><img src="images/display_1.png" alt=
+ "TTML display style property - [1,2)"></td>
+ </tr>
+
+ <tr>
+ <td><img src="images/display_2.png" alt=
+ "TTML display style property - [2,3)"></td>
+ </tr>
+
+ <tr>
+ <td><img src="images/display_3.png" alt=
+ "TTML display style property - [3,4)"></td>
+ </tr>
+
+ <tr>
+ <td><img src="images/display_4.png" alt=
+ "TTML display style property - [4,5)"></td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The semantics of the style property represented by this attribute are
+ based upon that defined by <a href="#css2">[CSS2]</a>, § 9.2.4.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="style-attribute-displayAlign" name=
+ "style-attribute-displayAlign"></a>8.2.6 tts:displayAlign</h4>
+
+ <p>The <code>tts:displayAlign</code> attribute is used to specify a style
+ property that defines the alignment of block areas in the block progression
+ direction.</p>
+
+ <p>This attribute may be specified by any element type that permits use of
+ attributes in the TT Style Namespace; however, this attribute applies as a
+ style property only to those element types indicated in the following
+ table.</p><a id="style-property-details-displayAlign" name=
+ "style-property-details-displayAlign"></a>
+
+ <table class="common">
+ <col width="25%" span="1">
+ <col span="1">
+
+ <tbody>
+ <tr>
+ <td><em>Values:</em></td>
+
+ <td><code>before</code> | <code>center</code> | <code>after</code></td>
+ </tr>
+
+ <tr>
+ <td><em>Initial:</em></td>
+
+ <td><code>before</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 a computed value of the property associated with this attribute is not
+ supported, then a presentation processor must use the value
+ <code>before</code>.</p>
+
+ <p>The <code>tts:displayAlign</code> style is illustrated by the following
+ example.</p><a id="style-attribute-displayAlign-example-1" name=
+ "style-attribute-displayAlign-example-1"></a>
+
+ <table class="example">
+ <caption>
+ Example Fragment – Display Align
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<region xml:id="r1">
<style tts:extent="128px 66px" tts:origin="0px 0px"
tts:backgroundColor="black" tts:color="white"/>
@@ -2418,35 +6054,146 @@
<p region="r3">The little fishes of the sea,</p>
<p region="r4">They sent an<br/> answer back to me.</p>
</div>
-</pre></div>
-</td></tr></tbody></table><p></p><a id="style-attribute-displayAlign-example-1-images"></a><table class="example-images"><caption>Example Rendition – Display Align</caption><tbody><tr><td><img src="images/displayAlign.png" alt="TTML displayAlign style property"></td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>The semantics of the style property
-represented by this attribute are based upon that defined by <a href="#xsl11">[XSL 1.1]</a>,
-§ 7.14.4.</p></div></div><div class="div3">
-<h4><a id="style-attribute-extent"></a>8.2.7 tts:extent</h4><p>The <code>tts:extent</code> attribute is used to specify the
-<em>width</em> and <em>height</em> of a region area
-(which may be the <em>Root Container Region</em>).</p><p>This attribute may be specified by any
-element type
-that permits use of attributes in the TT Style Namespace; however, this attribute applies
-as a style property only to those element types indicated in the following table.</p><a id="style-property-details-extent"></a><table class="common"><col width="25%" span="1"><col span="1"><tbody><tr><td><em>Values:</em></td><td>
-<code>auto</code> |
-<a href="#style-value-length"><length></a> <a href="#style-value-length"><length></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="#document-structure-vocabulary-tt"><code>tt</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 <em>Root Container Region</em></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"><length></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"><length></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
-of the style property must be considered to be the same as the extent of the <em>Root Container Region</em>.</p><p>The extent of the <em>Root Container Region</em> is determined either by a
-<code>tts:extent</code> specified on the <code>tt</code> element, if
-present, or as described by <a href="#document-structure-vocabulary-tt"><b>7.1.1 tt</b></a> if not present.
-If <code>tts:extent</code> is specified on the <code>tt</code> element, then
-the width and height must be expressed in terms of two <a href="#style-value-length"><length></a> specifications,
-and these specifications must be expressed as non-percentage, definite lengths using pixel units.</p><p>If a computed value of the property associated with this attribute is not supported,
-then a presentation processor must use the closest supported value.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>In this context, the phrase <em>closest supported value</em> means the value for which the Euclidean distance between
-the computed extent and the supported extent is minimized. If there are multiple closest supported values equally distant from
-the computed value, then the value most distant from [0,0], i.e., of greatest extent, is used.</p></div><p>The <code>tts:extent</code> style is illustrated by the following example.</p><a id="style-attribute-extent-example-1"></a><table class="example"><caption>Example Fragment – Extent</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p><a id="style-attribute-displayAlign-example-1-images" name=
+ "style-attribute-displayAlign-example-1-images"></a></p>
+
+ <table class="example-images">
+ <caption>
+ Example Rendition – Display Align
+ </caption>
+
+ <tbody>
+ <tr>
+ <td><img src="images/displayAlign.png" alt=
+ "TTML displayAlign style property"></td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The semantics of the style property represented by this attribute are
+ based upon that defined by <a href="#xsl11">[XSL 1.1]</a>, § 7.14.4.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="style-attribute-extent" name="style-attribute-extent"></a>8.2.7
+ tts:extent</h4>
+
+ <p>The <code>tts:extent</code> attribute is used to specify the <em>width</em>
+ and <em>height</em> of a region area (which may be the <em>Root Container
+ Region</em>).</p>
+
+ <p>This attribute may be specified by any element type that permits use of
+ attributes in the TT Style Namespace; however, this attribute applies as a
+ style property only to those element types indicated in the following
+ table.</p><a id="style-property-details-extent" name=
+ "style-property-details-extent"></a>
+
+ <table class="common">
+ <col width="25%" span="1">
+ <col span="1">
+
+ <tbody>
+ <tr>
+ <td><em>Values:</em></td>
+
+ <td><code>auto</code> | <a href="#style-value-length"><length></a>
+ <a href="#style-value-length"><length></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="#document-structure-vocabulary-tt"><code>tt</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 <em>Root Container Region</em></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"><length></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"><length></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
+ of the style property must be considered to be the same as the extent of the
+ <em>Root Container Region</em>.</p>
+
+ <p>The extent of the <em>Root Container Region</em> is determined either by a
+ <code>tts:extent</code> specified on the <code>tt</code> element, if present,
+ or as described by <a href="#document-structure-vocabulary-tt"><b>7.1.1
+ tt</b></a> if not present. If <code>tts:extent</code> is specified on the
+ <code>tt</code> element, then the width and height must be expressed in terms
+ of two <a href="#style-value-length"><length></a> specifications, and
+ these specifications must be expressed as non-percentage, definite lengths
+ using pixel units.</p>
+
+ <p>If a computed value of the property associated with this attribute is not
+ supported, then a presentation processor must use the closest supported
+ value.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>In this context, the phrase <em>closest supported value</em> means the
+ value for which the Euclidean distance between the computed extent and the
+ supported extent is minimized. If there are multiple closest supported values
+ equally distant from the computed value, then the value most distant from
+ [0,0], i.e., of greatest extent, is used.</p>
+ </div>
+
+ <p>The <code>tts:extent</code> style is illustrated by the following
+ example.</p><a id="style-attribute-extent-example-1" name=
+ "style-attribute-extent-example-1"></a>
+
+ <table class="example">
+ <caption>
+ Example Fragment – Extent
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<region xml:id="r1">
<style <span class="strong">tts:extent="330px 122px"</span>/>
<style tts:backgroundColor="black"/>
@@ -2461,28 +6208,122 @@
"You have baked me too brown,<br/>
I must sugar my hair."
</p>
-</pre></div>
-</td></tr></tbody></table><p></p><a id="style-attribute-extent-example-1-images"></a><table class="example-images"><caption>Example Rendition – Extent</caption><tbody><tr><td><img src="images/extent.png" alt="TTML extent style property"></td></tr></tbody></table></div><div class="div3">
-<h4><a id="style-attribute-fontFamily"></a>8.2.8 tts:fontFamily</h4><p>The <code>tts:fontFamily</code> attribute is used to specify a style property that
-defines the font family from which glyphs are selected for glyph areas generated
-by content flowed into a region.</p><p>This attribute may be specified by any
-element type
-that permits use of attributes in the TT Style Namespace; however, this attribute applies
-as a style property only to those element types indicated in the following table.</p><a id="style-property-details-fontFamily"></a><table class="common"><col width="25%" span="1"><col span="1"><tbody><tr><td><em>Values:</em></td><td>
-(<a href="#style-value-familyName"><familyName></a> | <a href="#style-value-genericFamilyName"><genericFamilyName></a>)
-(<code>","</code>
- (<a href="#style-value-familyName"><familyName></a> | <a href="#style-value-genericFamilyName"><genericFamilyName></a>))*
-</td></tr><tr><td><em>Initial:</em></td><td><code>default</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>N/A</td></tr><tr><td><em>Animatable:</em></td><td>discrete</td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>The initial value, <code>default</code>, is a generic font family name, and is
-further described in <a href="#style-value-genericFamilyName"><b>8.3.6 <genericFamilyName></b></a> below.</p></div><p>For the purpose of determining applicability of this style property,
-each character child of a <code>p</code> element is considered to be enclosed in an anonymous
-span.</p><p>If a computed value of the property associated with this attribute is not supported, then a
-presentation processor must attempt to map the computed font family
-to a supported font family that has similar typographic
-characteristics, or, in the absence of such a mapping, it must
-use the value <code>default</code>.</p><p>The <code>tts:fontFamily</code> style is illustrated by the following example.</p><a id="style-attribute-fontFamily-example-1"></a><table class="example"><caption>Example Fragment – Font Family</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p><a id="style-attribute-extent-example-1-images" name=
+ "style-attribute-extent-example-1-images"></a></p>
+
+ <table class="example-images">
+ <caption>
+ Example Rendition – Extent
+ </caption>
+
+ <tbody>
+ <tr>
+ <td><img src="images/extent.png" alt="TTML extent style property"></td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+
+ <div class="div3">
+ <h4><a id="style-attribute-fontFamily" name=
+ "style-attribute-fontFamily"></a>8.2.8 tts:fontFamily</h4>
+
+ <p>The <code>tts:fontFamily</code> attribute is used to specify a style
+ property that defines the font family from which glyphs are selected for glyph
+ areas generated by content flowed into a region.</p>
+
+ <p>This attribute may be specified by any element type that permits use of
+ attributes in the TT Style Namespace; however, this attribute applies as a
+ style property only to those element types indicated in the following
+ table.</p><a id="style-property-details-fontFamily" name=
+ "style-property-details-fontFamily"></a>
+
+ <table class="common">
+ <col width="25%" span="1">
+ <col span="1">
+
+ <tbody>
+ <tr>
+ <td><em>Values:</em></td>
+
+ <td>(<a href="#style-value-familyName"><familyName></a> | <a href=
+ "#style-value-genericFamilyName"><genericFamilyName></a>)
+ (<code>","</code> (<a href=
+ "#style-value-familyName"><familyName></a> | <a href=
+ "#style-value-genericFamilyName"><genericFamilyName></a>))*</td>
+ </tr>
+
+ <tr>
+ <td><em>Initial:</em></td>
+
+ <td><code>default</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>N/A</td>
+ </tr>
+
+ <tr>
+ <td><em>Animatable:</em></td>
+
+ <td>discrete</td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The initial value, <code>default</code>, is a generic font family name,
+ and is further described in <a href="#style-value-genericFamilyName"><b>8.3.6
+ <genericFamilyName></b></a> below.</p>
+ </div>
+
+ <p>For the purpose of determining applicability of this style property, each
+ character child of a <code>p</code> element is considered to be enclosed in an
+ anonymous span.</p>
+
+ <p>If a computed value of the property associated with this attribute is not
+ supported, then a presentation processor must attempt to map the computed font
+ family to a supported font family that has similar typographic characteristics,
+ or, in the absence of such a mapping, it must use the value
+ <code>default</code>.</p>
+
+ <p>The <code>tts:fontFamily</code> style is illustrated by the following
+ example.</p><a id="style-attribute-fontFamily-example-1" name=
+ "style-attribute-fontFamily-example-1"></a>
+
+ <table class="example">
+ <caption>
+ Example Fragment – Font Family
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<region xml:id="r1">
<style tts:extent="474px 146px"/>
<style tts:backgroundColor="black"/>
@@ -2497,7 +6338,8 @@
"The time has come," the Walrus said,<br/>
"to talk of many things:
</p>
- <p tts:textAlign="end" <span class="strong">tts:fontFamily="monospaceSerif"</span>>
+ <p tts:textAlign="end" <span class=
+"strong">tts:fontFamily="monospaceSerif"</span>>
Of shoes, and ships, and sealing wax,<br/>
Of cabbages and kings,
</p>
@@ -2506,41 +6348,172 @@
and whether pigs have wings."
</p>
</div>
-</pre></div>
-</td></tr></tbody></table><p></p><a id="style-attribute-fontFamily-example-1-images"></a><table class="example-images"><caption>Example Rendition – Font Family</caption><tbody><tr><td><img src="images/fontFamily.png" alt="TTML fontFamily style property"></td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>The semantics of the style property
-represented by this attribute are based upon that defined by <a href="#xsl11">[XSL 1.1]</a>,
-§ 7.9.2.</p></div></div><div class="div3">
-<h4><a id="style-attribute-fontSize"></a>8.2.9 tts:fontSize</h4><p>The <code>tts:fontSize</code> attribute is used to specify a style property
-that defines the font size for glyphs that are selected for glyph areas
-generated by content flowed into a region.</p><p>This attribute may be specified by any element type
-that permits use of attributes in the TT Style Namespace; however, this attribute applies
-as a style property only to those element types indicated in the following table.</p><a id="style-property-details-fontSize"></a><table class="common"><col width="25%" span="1"><col span="1"><tbody><tr><td><em>Values:</em></td><td>
-<a href="#style-value-length"><length></a> <a href="#style-value-length"><length></a>?
-</td></tr><tr><td><em>Initial:</em></td><td><code>1c</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>if not <a href="#content-vocabulary-span"><code>region</code></a> element,
-then relative to parent element's font size; otherwise, relative to the
-<em>Computed Cell Size</em></td></tr><tr><td><em>Animatable:</em></td><td>discrete</td></tr></tbody></table><p>If a single <a href="#style-value-length"><length></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"><length></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
-with cell based units in order to denote fonts that are two rows in height and
-one column in width.</p></div><div class="note"><p class="prefix"><b>Note:</b></p><p>A glyph's EM square is conventionally defined as the EM square of the font that contains the glyph. That is,
-glyphs do not have an EM square that is distinct from their font's EM square.</p></div><p>If horizontal and vertical sizes are expressed independently, then the
-units of the <a href="#style-value-length"><length></a> values must be the same.</p><p>The <a href="#style-value-length"><length></a> value(s) used to express font size must be non-negative.</p><p>For the purpose of determining applicability of this style property,
-each character child of a <code>p</code> element is considered to be enclosed in an anonymous
-span.</p><p>If a computed value of the property associated with this attribute is not supported,
-then a presentation processor must use the closest supported value.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>In this context, the phrase <em>closest supported value</em> means the value for which the Euclidean distance between
-the computed font size and the supported font size is minimized. If there are multiple closest supported values equally distant from
-the computed value, then the value most distant from 0 (single length specification) or [0,0] (two length specifications) is used,
-i.e., the largest font size, is used.</p></div><div class="note"><p class="prefix"><b>Note:</b></p><p>The expression <code>1c</code> means one cell, where <code>'c'</code> expresses
-the <em>cell</em> length unit as defined by <a href="#style-value-length"><b>8.3.9 <length></b></a>.
-When a single <length> is expressed using cell units, then it refers to the height of
-the <em>Computed Cell Size</em>.
-When two <length> values are expressed using cell units, then the first refers to the width of
-the <em>Computed Cell Size</em>, and the second refers to the height of the
-<em>Computed Cell Size</em>.</p></div><p>The <code>tts:fontSize</code> style is illustrated by the following example.</p><a id="style-attribute-fontSize-example-1"></a><table class="example"><caption>Example Fragment – Font Size</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p><a id="style-attribute-fontFamily-example-1-images" name=
+ "style-attribute-fontFamily-example-1-images"></a></p>
+
+ <table class="example-images">
+ <caption>
+ Example Rendition – Font Family
+ </caption>
+
+ <tbody>
+ <tr>
+ <td><img src="images/fontFamily.png" alt=
+ "TTML fontFamily style property"></td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The semantics of the style property represented by this attribute are
+ based upon that defined by <a href="#xsl11">[XSL 1.1]</a>, § 7.9.2.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="style-attribute-fontSize" name="style-attribute-fontSize"></a>8.2.9
+ tts:fontSize</h4>
+
+ <p>The <code>tts:fontSize</code> attribute is used to specify a style property
+ that defines the font size for glyphs that are selected for glyph areas
+ generated by content flowed into a region.</p>
+
+ <p>This attribute may be specified by any element type that permits use of
+ attributes in the TT Style Namespace; however, this attribute applies as a
+ style property only to those element types indicated in the following
+ table.</p><a id="style-property-details-fontSize" name=
+ "style-property-details-fontSize"></a>
+
+ <table class="common">
+ <col width="25%" span="1">
+ <col span="1">
+
+ <tbody>
+ <tr>
+ <td><em>Values:</em></td>
+
+ <td><a href="#style-value-length"><length></a> <a href=
+ "#style-value-length"><length></a>?</td>
+ </tr>
+
+ <tr>
+ <td><em>Initial:</em></td>
+
+ <td><code>1c</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>if not <a href="#content-vocabulary-span"><code>region</code></a>
+ element, then relative to parent element's font size; otherwise, relative
+ to the <em>Computed Cell Size</em></td>
+ </tr>
+
+ <tr>
+ <td><em>Animatable:</em></td>
+
+ <td>discrete</td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>If a single <a href="#style-value-length"><length></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"><length></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 with cell based units in order to denote fonts that are two rows in
+ height and one column in width.</p>
+ </div>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>A glyph's EM square is conventionally defined as the EM square of the font
+ that contains the glyph. That is, glyphs do not have an EM square that is
+ distinct from their font's EM square.</p>
+ </div>
+
+ <p>If horizontal and vertical sizes are expressed independently, then the units
+ of the <a href="#style-value-length"><length></a> values must be the
+ same.</p>
+
+ <p>The <a href="#style-value-length"><length></a> value(s) used to
+ express font size must be non-negative.</p>
+
+ <p>For the purpose of determining applicability of this style property, each
+ character child of a <code>p</code> element is considered to be enclosed in an
+ anonymous span.</p>
+
+ <p>If a computed value of the property associated with this attribute is not
+ supported, then a presentation processor must use the closest supported
+ value.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>In this context, the phrase <em>closest supported value</em> means the
+ value for which the Euclidean distance between the computed font size and the
+ supported font size is minimized. If there are multiple closest supported
+ values equally distant from the computed value, then the value most distant
+ from 0 (single length specification) or [0,0] (two length specifications) is
+ used, i.e., the largest font size, is used.</p>
+ </div>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The expression <code>1c</code> means one cell, where <code>'c'</code>
+ expresses the <em>cell</em> length unit as defined by <a href=
+ "#style-value-length"><b>8.3.9 <length></b></a>. When a single
+ <length> is expressed using cell units, then it refers to the height of
+ the <em>Computed Cell Size</em>. When two <length> values are expressed
+ using cell units, then the first refers to the width of the <em>Computed Cell
+ Size</em>, and the second refers to the height of the <em>Computed Cell
+ Size</em>.</p>
+ </div>
+
+ <p>The <code>tts:fontSize</code> style is illustrated by the following
+ example.</p><a id="style-attribute-fontSize-example-1" name=
+ "style-attribute-fontSize-example-1"></a>
+
+ <table class="example">
+ <caption>
+ Example Fragment – Font Size
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<region xml:id="r1">
<style tts:extent="299px 97px"/>
<style tts:backgroundColor="black"/>
@@ -2555,33 +6528,126 @@
Then fill up the glasses<br/>
with treacle and ink,<br/>
Or anything else<br/>
- that is <span <span class="strong">tts:fontSize="24px"</span>>pleasant</span> to drink.
+ that is <span <span class=
+"strong">tts:fontSize="24px"</span>>pleasant</span> to drink.
</p>
-</pre></div>
-</td></tr></tbody></table><p></p><a id="style-attribute-fontSize-example-1-images"></a><table class="example-images"><caption>Example Rendition – Font Size</caption><tbody><tr><td><img src="images/fontSize.png" alt="TTML fontSize style property"></td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>The semantics of the style property
-represented by this attribute are based upon that defined by <a href="#xsl11">[XSL 1.1]</a>,
-§ 7.9.4. The addition of a second length component to permit specifying font
-width and height independently is an extension introduced by TTML.</p></div></div><div class="div3">
-<h4><a id="style-attribute-fontStyle"></a>8.2.10 tts:fontStyle</h4><p>The <code>tts:fontStyle</code> attribute is used to specify a style property that
-defines the font style to apply to glyphs that are selected for glyph areas generated
-by content flowed into a region, where the mapping from font
-style value to specific font face or style parameterization is not determined
-by this specification.</p><p>This attribute may be specified by any
-element type
-that permits use of attributes in the TT Style Namespace; however, this attribute applies
-as a style property only to those element types indicated in the following table.</p><a id="style-property-details-fontStyle"></a><table class="common"><col width="25%" span="1"><col span="1"><tbody><tr><td><em>Values:</em></td><td>
-<code>normal</code> |
-<code>italic</code> |
-<code>oblique</code>
-</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-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,
-each character child of a <code>p</code> element is considered to be enclosed in an anonymous
-span.</p><p>Use of the value <code>oblique</code>
-denotes a shear transformation (at an unspecified
-angle) in the inline progression dimension.</p><p>If a computed value of the property associated with this attribute is not supported,
-then a presentation processor must use the value <code>normal</code>.</p><p>The <code>tts:fontStyle</code> style is illustrated by the following example.</p><a id="style-attribute-fontStyle-example-1"></a><table class="example"><caption>Example Fragment – Font Style</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p><a id="style-attribute-fontSize-example-1-images" name=
+ "style-attribute-fontSize-example-1-images"></a></p>
+
+ <table class="example-images">
+ <caption>
+ Example Rendition – Font Size
+ </caption>
+
+ <tbody>
+ <tr>
+ <td><img src="images/fontSize.png" alt=
+ "TTML fontSize style property"></td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The semantics of the style property represented by this attribute are
+ based upon that defined by <a href="#xsl11">[XSL 1.1]</a>, § 7.9.4. The
+ addition of a second length component to permit specifying font width and
+ height independently is an extension introduced by TTML.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="style-attribute-fontStyle" name=
+ "style-attribute-fontStyle"></a>8.2.10 tts:fontStyle</h4>
+
+ <p>The <code>tts:fontStyle</code> attribute is used to specify a style property
+ that defines the font style to apply to glyphs that are selected for glyph
+ areas generated by content flowed into a region, where the mapping from font
+ style value to specific font face or style parameterization is not determined
+ by this specification.</p>
+
+ <p>This attribute may be specified by any element type that permits use of
+ attributes in the TT Style Namespace; however, this attribute applies as a
+ style property only to those element types indicated in the following
+ table.</p><a id="style-property-details-fontStyle" name=
+ "style-property-details-fontStyle"></a>
+
+ <table class="common">
+ <col width="25%" span="1">
+ <col span="1">
+
+ <tbody>
+ <tr>
+ <td><em>Values:</em></td>
+
+ <td><code>normal</code> | <code>italic</code> | <code>oblique</code></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-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, each
+ character child of a <code>p</code> element is considered to be enclosed in an
+ anonymous span.</p>
+
+ <p>Use of the value <code>oblique</code> denotes a shear transformation (at an
+ unspecified angle) in the inline progression dimension.</p>
+
+ <p>If a computed value of the property associated with this attribute is not
+ supported, then a presentation processor must use the value
+ <code>normal</code>.</p>
+
+ <p>The <code>tts:fontStyle</code> style is illustrated by the following
+ example.</p><a id="style-attribute-fontStyle-example-1" name=
+ "style-attribute-fontStyle-example-1"></a>
+
+ <table class="example">
+ <caption>
+ Example Fragment – Font Style
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<region xml:id="r1">
<style tts:extent="331px 84px"/>
<style tts:backgroundColor="black"/>
@@ -2593,29 +6659,121 @@
...
<p region="r1">
In autumn, when the leaves are brown,<br/>
- Take pen and ink, and <span <span class="strong">tts:fontStyle="italic"</span>>write it down.</span>
+ Take pen and ink, and <span <span class=
+"strong">tts:fontStyle="italic"</span>>write it down.</span>
</p>
-</pre></div>
-</td></tr></tbody></table><p></p><a id="style-attribute-fontStyle-example-1-images"></a><table class="example-images"><caption>Example Rendition – Font Style</caption><tbody><tr><td><img src="images/fontStyle.png" alt="TTML fontStyle style property"></td></tr></tbody></table><p></p><div class="note"><p class="prefix"><b>Note:</b></p><p>The semantics of the style property
-represented by this attribute are based upon that defined by <a href="#xsl11">[XSL 1.1]</a>,
-§ 7.9.7.</p></div></div><div class="div3">
-<h4><a id="style-attribute-fontWeight"></a>8.2.11 tts:fontWeight</h4><p>The <code>tts:fontWeight</code> attribute is used to specify a style property
-that defines the font weight to apply to glyphs that are selected for glyph
-areas generated by content flowed into a region, where the mapping from font
-weight value to specific font face or weight parameterization is not determined
-by this specification.</p><p>This attribute may be specified by any
-element type
-that permits use of attributes in the TT Style Namespace; however, this attribute applies
-as a style property only to those element types indicated in the following table.</p><a id="style-property-details-fontWeight"></a><table class="common"><col width="25%" span="1"><col span="1"><tbody><tr><td><em>Values:</em></td><td>
-<code>normal</code> |
-<code>bold</code>
-</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-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,
-each character child of a <code>p</code> element is considered to be enclosed in an anonymous
-span.</p><p>If a computed value of the property associated with this attribute is not supported,
-then a presentation processor must use the value <code>normal</code>.</p><p>The <code>tts:fontWeight</code> style is illustrated by the following example.</p><a id="style-attribute-fontWeight-example-1"></a><table class="example"><caption>Example Fragment – Font Weight</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p><a id="style-attribute-fontStyle-example-1-images" name=
+ "style-attribute-fontStyle-example-1-images"></a></p>
+
+ <table class="example-images">
+ <caption>
+ Example Rendition – Font Style
+ </caption>
+
+ <tbody>
+ <tr>
+ <td><img src="images/fontStyle.png" alt=
+ "TTML fontStyle style property"></td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The semantics of the style property represented by this attribute are
+ based upon that defined by <a href="#xsl11">[XSL 1.1]</a>, § 7.9.7.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="style-attribute-fontWeight" name=
+ "style-attribute-fontWeight"></a>8.2.11 tts:fontWeight</h4>
+
+ <p>The <code>tts:fontWeight</code> attribute is used to specify a style
+ property that defines the font weight to apply to glyphs that are selected for
+ glyph areas generated by content flowed into a region, where the mapping from
+ font weight value to specific font face or weight parameterization is not
+ determined by this specification.</p>
+
+ <p>This attribute may be specified by any element type that permits use of
+ attributes in the TT Style Namespace; however, this attribute applies as a
+ style property only to those element types indicated in the following
+ table.</p><a id="style-property-details-fontWeight" name=
+ "style-property-details-fontWeight"></a>
+
+ <table class="common">
+ <col width="25%" span="1">
+ <col span="1">
+
+ <tbody>
+ <tr>
+ <td><em>Values:</em></td>
+
+ <td><code>normal</code> | <code>bold</code></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-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, each
+ character child of a <code>p</code> element is considered to be enclosed in an
+ anonymous span.</p>
+
+ <p>If a computed value of the property associated with this attribute is not
+ supported, then a presentation processor must use the value
+ <code>normal</code>.</p>
+
+ <p>The <code>tts:fontWeight</code> style is illustrated by the following
+ example.</p><a id="style-attribute-fontWeight-example-1" name=
+ "style-attribute-fontWeight-example-1"></a>
+
+ <table class="example">
+ <caption>
+ Example Fragment – Font Weight
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<region xml:id="r1">
<style tts:extent="376px 95px"/>
<style tts:backgroundColor="black"/>
@@ -2627,36 +6785,149 @@
...
<p region="r1">
They told me you had been to her,<br/>
- <span <span class="strong">tts:fontWeight="bold"</span>>and mentioned me to him:</span><br/>
+ <span <span class=
+"strong">tts:fontWeight="bold"</span>>and mentioned me to him:</span><br/>
She gave me a good character<br/>
- <span <span class="strong">tts:fontWeight="bold"</span>>but said I could not swim.</span>
+ <span <span class=
+"strong">tts:fontWeight="bold"</span>>but said I could not swim.</span>
</p>
-</pre></div>
-</td></tr></tbody></table><p></p><a id="style-attribute-fontWeight-example-1-images"></a><table class="example-images"><caption>Example Rendition – Font Weight</caption><tbody><tr><td><img src="images/fontWeight.png" alt="TTML fontWeight style property"></td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>The semantics of the style property
-represented by this attribute are based upon that defined by <a href="#xsl11">[XSL 1.1]</a>,
-§ 7.9.9.</p></div></div><div class="div3">
-<h4><a id="style-attribute-lineHeight"></a>8.2.12 tts:lineHeight</h4><p>The <code>tts:lineHeight</code> attribute is used to specify a style property that
-defines the inter-baseline separation between line areas generated by content flowed into a region.</p><p>This attribute may be specified by any
-element type
-that permits use of attributes in the TT Style Namespace; however, this attribute applies
-as a style property only to those element types indicated in the following table.</p><a id="style-property-details-lineHeight"></a><table class="common"><col width="25%" span="1"><col span="1"><tbody><tr><td><em>Values:</em></td><td>
-<code>normal</code> |
-<a href="#style-value-length"><length></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
-computed value of the style property must be considered to be no less than the
-size of the largest font size that applies to the element and its
-descendant elements in the intermediate synchronic document as determined by
-<a href="#semantics-region-layout-step-1"><b>9.3.2 Intermediate Synchronic Document Construction</b></a>.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>It is recommended that presentation processors use a computed line height that is
-125% of the size of the largest applicable font size when the value <code>normal</code>
-is specified. The choice of 125% allows use of a font size of <code>0.8c</code> in order
-to obtain a line height of <code>1c</code>.</p></div><p>If specified as a <a href="#style-value-length"><length></a>, then the length must
-be non-negative.</p><p>If a computed value of the property associated with this attribute is not supported,
-then a presentation processor must use the closest supported value.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>In this context, the phrase <em>closest supported value</em> means the value for which the Euclidean distance between
-the computed line height and the supported line height is minimized. If there are multiple closest supported values equally distant from
-the computed value, then the value most distant from 0, i.e., the largest line height, is used.</p></div><p>The <code>tts:lineHeight</code> style is illustrated by the following example.</p><a id="style-attribute-lineHeight-example-1"></a><table class="example"><caption>Example Fragment – Line Height</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p><a id="style-attribute-fontWeight-example-1-images" name=
+ "style-attribute-fontWeight-example-1-images"></a></p>
+
+ <table class="example-images">
+ <caption>
+ Example Rendition – Font Weight
+ </caption>
+
+ <tbody>
+ <tr>
+ <td><img src="images/fontWeight.png" alt=
+ "TTML fontWeight style property"></td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The semantics of the style property represented by this attribute are
+ based upon that defined by <a href="#xsl11">[XSL 1.1]</a>, § 7.9.9.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="style-attribute-lineHeight" name=
+ "style-attribute-lineHeight"></a>8.2.12 tts:lineHeight</h4>
+
+ <p>The <code>tts:lineHeight</code> attribute is used to specify a style
+ property that defines the inter-baseline separation between line areas
+ generated by content flowed into a region.</p>
+
+ <p>This attribute may be specified by any element type that permits use of
+ attributes in the TT Style Namespace; however, this attribute applies as a
+ style property only to those element types indicated in the following
+ table.</p><a id="style-property-details-lineHeight" name=
+ "style-property-details-lineHeight"></a>
+
+ <table class="common">
+ <col width="25%" span="1">
+ <col span="1">
+
+ <tbody>
+ <tr>
+ <td><em>Values:</em></td>
+
+ <td><code>normal</code> | <a href=
+ "#style-value-length"><length></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 computed
+ value of the style property must be considered to be no less than the size of
+ the largest font size that applies to the element and its descendant elements
+ in the intermediate synchronic document as determined by <a href=
+ "#semantics-region-layout-step-1"><b>9.3.2 Intermediate Synchronic Document
+ Construction</b></a>.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>It is recommended that presentation processors use a computed line height
+ that is 125% of the size of the largest applicable font size when the value
+ <code>normal</code> is specified. The choice of 125% allows use of a font
+ size of <code>0.8c</code> in order to obtain a line height of
+ <code>1c</code>.</p>
+ </div>
+
+ <p>If specified as a <a href="#style-value-length"><length></a>, then the
+ length must be non-negative.</p>
+
+ <p>If a computed value of the property associated with this attribute is not
+ supported, then a presentation processor must use the closest supported
+ value.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>In this context, the phrase <em>closest supported value</em> means the
+ value for which the Euclidean distance between the computed line height and
+ the supported line height is minimized. If there are multiple closest
+ supported values equally distant from the computed value, then the value most
+ distant from 0, i.e., the largest line height, is used.</p>
+ </div>
+
+ <p>The <code>tts:lineHeight</code> style is illustrated by the following
+ example.</p><a id="style-attribute-lineHeight-example-1" name=
+ "style-attribute-lineHeight-example-1"></a>
+
+ <table class="example">
+ <caption>
+ Example Fragment – Line Height
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<region xml:id="r1">
<style tts:extent="255px 190px"/>
<style tts:backgroundColor="black"/>
@@ -2676,28 +6947,117 @@
"At length I realise," he said,<br/>
"The bitterness of Life.
"</p>
-</pre></div>
-</td></tr></tbody></table><p></p><a id="style-attribute-lineHeight-example-1-images"></a><table class="example-images"><caption>Example Rendition – Line Height</caption><tbody><tr><td><img src="images/lineHeight.png" alt="TTML lineHeight style property"></td></tr></tbody></table><p></p><div class="note"><p class="prefix"><b>Note:</b></p><p>The semantics of the style property
-represented by this attribute are based upon that defined by <a href="#xsl11">[XSL 1.1]</a>,
-§ 7.16.4. Furthermore, it is the intention of this specification that the
-allocation rectangle of a line be consistent with the <span class="strong">per-inline-height-rectangle</span>
-as defined by <a href="#xsl11">[XSL 1.1]</a>, § 4.5, i.e., that a CSS-style line box stacking strategy be used.
-</p></div></div><div class="div3">
-<h4><a id="style-attribute-opacity"></a>8.2.13 tts:opacity</h4><p>The <code>tts:opacity</code> attribute is used to specify a style property that
-defines the opacity (or conversely, the transparency)
-of marks associated with a region.</p><p>When presented onto a visual medium, the opacity of the region is applied uniformly and on a linear scale
-to all marks produced by content targeted to the
-region.</p><p>This attribute may be specified by any
-element type
-that permits use of attributes in the TT Style Namespace; however, this attribute applies
-as a style property only to those element types indicated in the following table.</p><a id="style-property-details-opacity"></a><table class="common"><col width="25%" span="1"><col span="1"><tbody><tr><td><em>Values:</em></td><td>
-<a href="#style-value-alpha"><alpha></a>
-</td></tr><tr><td><em>Initial:</em></td><td>
-<code>1.0</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>The <code>tts:opacity</code> style is illustrated by the following example.</p><a id="style-attribute-opacity-example-1"></a><table class="example"><caption>Example Fragment – Opacity</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p><a id="style-attribute-lineHeight-example-1-images" name=
+ "style-attribute-lineHeight-example-1-images"></a></p>
+
+ <table class="example-images">
+ <caption>
+ Example Rendition – Line Height
+ </caption>
+
+ <tbody>
+ <tr>
+ <td><img src="images/lineHeight.png" alt=
+ "TTML lineHeight style property"></td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The semantics of the style property represented by this attribute are
+ based upon that defined by <a href="#xsl11">[XSL 1.1]</a>, § 7.16.4.
+ Furthermore, it is the intention of this specification that the allocation
+ rectangle of a line be consistent with the <span class=
+ "strong">per-inline-height-rectangle</span> as defined by <a href=
+ "#xsl11">[XSL 1.1]</a>, § 4.5, i.e., that a CSS-style line box stacking
+ strategy be used.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="style-attribute-opacity" name="style-attribute-opacity"></a>8.2.13
+ tts:opacity</h4>
+
+ <p>The <code>tts:opacity</code> attribute is used to specify a style property
+ that defines the opacity (or conversely, the transparency) of marks associated
+ with a region.</p>
+
+ <p>When presented onto a visual medium, the opacity of the region is applied
+ uniformly and on a linear scale to all marks produced by content targeted to
+ the region.</p>
+
+ <p>This attribute may be specified by any element type that permits use of
+ attributes in the TT Style Namespace; however, this attribute applies as a
+ style property only to those element types indicated in the following
+ table.</p><a id="style-property-details-opacity" name=
+ "style-property-details-opacity"></a>
+
+ <table class="common">
+ <col width="25%" span="1">
+ <col span="1">
+
+ <tbody>
+ <tr>
+ <td><em>Values:</em></td>
+
+ <td><a href="#style-value-alpha"><alpha></a></td>
+ </tr>
+
+ <tr>
+ <td><em>Initial:</em></td>
+
+ <td><code>1.0</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>The <code>tts:opacity</code> style is illustrated by the following
+ example.</p><a id="style-attribute-opacity-example-1" name=
+ "style-attribute-opacity-example-1"></a>
+
+ <table class="example">
+ <caption>
+ Example Fragment – Opacity
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<region xml:id="r1" dur="5s">
<set begin="0s" dur="1s" <span class="strong">tts:opacity="1.00"</span>/>
<set begin="1s" dur="1s" <span class="strong">tts:opacity="0.75"</span>/>
@@ -2714,38 +7074,153 @@
<p region="r1">
The sun was shining on the sea
</p>
-</pre></div>
-</td></tr></tbody></table><p></p><a id="style-attribute-opacity-example-1-images"></a><table class="example-images"><caption>Example Rendition – Opacity</caption><tbody><tr><td>
-<img src="images/opacity_0.png" alt="TTML opacity style property - [0,1)">
-</td></tr><tr><td>
-<img src="images/opacity_1.png" alt="TTML opacity style property - [1,2)">
-</td></tr><tr><td>
-<img src="images/opacity_2.png" alt="TTML opacity style property - [2,3)">
-</td></tr><tr><td>
-<img src="images/opacity_3.png" alt="TTML opacity style property - [3,4)">
-</td></tr><tr><td>
-<img src="images/opacity_4.png" alt="TTML opacity style property - [4,5)">
-</td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>The semantics of the style property
-represented by this attribute are based upon that defined by <a href="#css3-color">[CSS3 Color]</a>,
-§ 3.2.</p></div></div><div class="div3">
-<h4><a id="style-attribute-origin"></a>8.2.14 tts:origin</h4><p>The <code>tts:origin</code> attribute is used to specify the
-<em>x</em> and <em>y</em> coordinates of the origin of a
-region area with respect to the origin of the <em>Root Container Region</em>.</p><p>This attribute may be specified by any
-element type
-that permits use of attributes in the TT Style Namespace; however, this attribute applies
-as a style property only to those element types indicated in the following table.</p><a id="style-property-details-origin"></a><table class="common"><col width="25%" span="1"><col span="1"><tbody><tr><td><em>Values:</em></td><td>
-<code>auto</code> |
-<a href="#style-value-length"><length></a> <a href="#style-value-length"><length></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>relative to width and height of <em>Root Container Region</em></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"><length></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 <em>Root Container Region</em>.</p><p>If a computed value of the property associated with this attribute is not supported,
-then a presentation processor must use the closest supported value.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>In this context, the phrase <em>closest supported value</em> means the value for which the Euclidean distance between
-the computed origin and the supported origin is minimized. If there are multiple closest supported values equally distant from
-the computed value, then the value least distant from [0,0], i.e., closest to the coordinate space origin, is used.</p></div><p>The <code>tts:origin</code> style is illustrated by the following example.</p><a id="style-attribute-origin-example-1"></a><table class="example"><caption>Example Fragment – Origin</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p><a id="style-attribute-opacity-example-1-images" name=
+ "style-attribute-opacity-example-1-images"></a></p>
+
+ <table class="example-images">
+ <caption>
+ Example Rendition – Opacity
+ </caption>
+
+ <tbody>
+ <tr>
+ <td><img src="images/opacity_0.png" alt=
+ "TTML opacity style property - [0,1)"></td>
+ </tr>
+
+ <tr>
+ <td><img src="images/opacity_1.png" alt=
+ "TTML opacity style property - [1,2)"></td>
+ </tr>
+
+ <tr>
+ <td><img src="images/opacity_2.png" alt=
+ "TTML opacity style property - [2,3)"></td>
+ </tr>
+
+ <tr>
+ <td><img src="images/opacity_3.png" alt=
+ "TTML opacity style property - [3,4)"></td>
+ </tr>
+
+ <tr>
+ <td><img src="images/opacity_4.png" alt=
+ "TTML opacity style property - [4,5)"></td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The semantics of the style property represented by this attribute are
+ based upon that defined by <a href="#css3-color">[CSS3 Color]</a>, § 3.2.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="style-attribute-origin" name="style-attribute-origin"></a>8.2.14
+ tts:origin</h4>
+
+ <p>The <code>tts:origin</code> attribute is used to specify the <em>x</em> and
+ <em>y</em> coordinates of the origin of a region area with respect to the
+ origin of the <em>Root Container Region</em>.</p>
+
+ <p>This attribute may be specified by any element type that permits use of
+ attributes in the TT Style Namespace; however, this attribute applies as a
+ style property only to those element types indicated in the following
+ table.</p><a id="style-property-details-origin" name=
+ "style-property-details-origin"></a>
+
+ <table class="common">
+ <col width="25%" span="1">
+ <col span="1">
+
+ <tbody>
+ <tr>
+ <td><em>Values:</em></td>
+
+ <td><code>auto</code> | <a href="#style-value-length"><length></a>
+ <a href="#style-value-length"><length></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>relative to width and height of <em>Root Container Region</em></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"><length></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
+ <em>Root Container Region</em>.</p>
+
+ <p>If a computed value of the property associated with this attribute is not
+ supported, then a presentation processor must use the closest supported
+ value.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>In this context, the phrase <em>closest supported value</em> means the
+ value for which the Euclidean distance between the computed origin and the
+ supported origin is minimized. If there are multiple closest supported values
+ equally distant from the computed value, then the value least distant from
+ [0,0], i.e., closest to the coordinate space origin, is used.</p>
+ </div>
+
+ <p>The <code>tts:origin</code> style is illustrated by the following
+ example.</p><a id="style-attribute-origin-example-1" name=
+ "style-attribute-origin-example-1"></a>
+
+ <table class="example">
+ <caption>
+ Example Fragment – Origin
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<region xml:id="r1">
<style <span class="strong">tts:origin="40px 40px"</span>/>
<style tts:extent="308px 92px"/>
@@ -2760,31 +7235,121 @@
"To swallow wines all foam and froth!<br/>
To simper at a table-cloth!"
</p>
-</pre></div>
-</td></tr></tbody></table><p></p><a id="style-attribute-origin-example-1-images"></a><table class="example-images"><caption>Example Rendition – Origin</caption><tbody><tr><td><img src="images/origin.png" alt="TTML origin style property"></td></tr></tbody></table></div><div class="div3">
-<h4><a id="style-attribute-overflow"></a>8.2.15 tts:overflow</h4><p>The <code>tts:overflow</code> attribute is used to specify a style property that
-defines whether a region area is clipped or not if the descendant areas of the region overflow
-its extent.</p><p>This attribute may be specified by any
-element type
-that permits use of attributes in the TT Style Namespace; however, this attribute applies
-as a style property only to those element types indicated in the following table.</p><a id="style-property-details-overflow"></a><table class="common"><col width="25%" span="1"><col span="1"><tbody><tr><td><em>Values:</em></td><td>
-<code>visible</code> |
-<code>hidden</code>
-</td></tr><tr><td><em>Initial:</em></td><td><code>hidden</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 the value of this attribute is <code>visible</code>, then content should
-not be clipped outside of the affected region, and region composition and layout
-must be performed as if the region's width and height were
-unconstrained,
-but with
-a well-defined origin. If the value is <code>hidden</code>, then content should
-be clipped outside of the affected region.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>Unless a manual line break element <code>br</code> is used by the content author,
-a paragraph of a given region will generate no more than one line area in that
-region if the value of the <code>tts:overflow</code> style that applies to the
-region is <code>visible</code> and if the applicable <code>tts:wrapOption</code>
-style is <code>noWrap</code>.</p></div><p>If a computed value of the property associated with this attribute is not supported,
-then a presentation processor must use the value <code>hidden</code>.</p><p>The <code>tts:overflow</code> style is illustrated by the following example.</p><a id="style-attribute-overflow-example-1"></a><table class="example"><caption>Example Fragment – Overflow</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p><a id="style-attribute-origin-example-1-images" name=
+ "style-attribute-origin-example-1-images"></a></p>
+
+ <table class="example-images">
+ <caption>
+ Example Rendition – Origin
+ </caption>
+
+ <tbody>
+ <tr>
+ <td><img src="images/origin.png" alt="TTML origin style property"></td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+
+ <div class="div3">
+ <h4><a id="style-attribute-overflow" name="style-attribute-overflow"></a>8.2.15
+ tts:overflow</h4>
+
+ <p>The <code>tts:overflow</code> attribute is used to specify a style property
+ that defines whether a region area is clipped or not if the descendant areas of
+ the region overflow its extent.</p>
+
+ <p>This attribute may be specified by any element type that permits use of
+ attributes in the TT Style Namespace; however, this attribute applies as a
+ style property only to those element types indicated in the following
+ table.</p><a id="style-property-details-overflow" name=
+ "style-property-details-overflow"></a>
+
+ <table class="common">
+ <col width="25%" span="1">
+ <col span="1">
+
+ <tbody>
+ <tr>
+ <td><em>Values:</em></td>
+
+ <td><code>visible</code> | <code>hidden</code></td>
+ </tr>
+
+ <tr>
+ <td><em>Initial:</em></td>
+
+ <td><code>hidden</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 the value of this attribute is <code>visible</code>, then content should
+ not be clipped outside of the affected region, and region composition and
+ layout must be performed as if the region's width and height were
+ unconstrained, but with a well-defined origin. If the value is
+ <code>hidden</code>, then content should be clipped outside of the affected
+ region.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>Unless a manual line break element <code>br</code> is used by the content
+ author, a paragraph of a given region will generate no more than one line
+ area in that region if the value of the <code>tts:overflow</code> style that
+ applies to the region is <code>visible</code> and if the applicable
+ <code>tts:wrapOption</code> style is <code>noWrap</code>.</p>
+ </div>
+
+ <p>If a computed value of the property associated with this attribute is not
+ supported, then a presentation processor must use the value
+ <code>hidden</code>.</p>
+
+ <p>The <code>tts:overflow</code> style is illustrated by the following
+ example.</p><a id="style-attribute-overflow-example-1" name=
+ "style-attribute-overflow-example-1"></a>
+
+ <table class="example">
+ <caption>
+ Example Fragment – Overflow
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<region xml:id="r1">
<style tts:extent="232px 40px"/>
<style tts:origin="0px 0px"/>
@@ -2818,37 +7383,154 @@
For some of us are out of breath,<br/>
And all of us are fat!"
</p>
-</pre></div>
-</td></tr></tbody></table><p></p><a id="style-attribute-overflow-example-1-images"></a><table class="example-images"><caption>Example Rendition – Overflow</caption><tbody><tr><td><img src="images/overflow.png" alt="TTML overflow style property"></td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>In the above example, the <code>tts:noWrap</code> is set to
-<code>noWrap</code> to prevent automatic line wrapping (breaking);
-if this were not specified, then overflow would occur in the block
-progression direction as opposed to the inline progression direction.</p></div><div class="note"><p class="prefix"><b>Note:</b></p><p>The semantics of the style property
-represented by this attribute are based upon that defined by <a href="#xsl11">[XSL 1.1]</a>,
-§ 7.21.2.</p></div></div><div class="div3">
-<h4><a id="style-attribute-padding"></a>8.2.16 tts:padding</h4><p>The <code>tts:padding</code> attribute is used to specify padding (or inset)
-space on all sides of a region area.</p><p>This attribute may be specified by any
-element type
-that permits use of attributes in the TT Style Namespace; however, this attribute applies
-as a style property only to those element types indicated in the following table.</p><a id="style-property-details-padding"></a><table class="common"><col width="25%" span="1"><col span="1"><tbody><tr><td><em>Values:</em></td><td>
-<a href="#style-value-length"><length></a> |
-<a href="#style-value-length"><length></a> <a href="#style-value-length"><length></a> |
-<a href="#style-value-length"><length></a> <a href="#style-value-length"><length></a> <a href="#style-value-length"><length></a> |
-<a href="#style-value-length"><length></a> <a href="#style-value-length"><length></a> <a href="#style-value-length"><length></a> <a href="#style-value-length"><length></a>
-</td></tr><tr><td><em>Initial:</em></td><td><code>0px</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>relative to width and height of 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"><length></a> specification,
-then that length applies to all edges of the affected areas. If the value
-consists of two <a href="#style-value-length"><length></a> specifications, then the first applies to the
-before and after edges, and the second applies to the start and end edges.
-If three <a href="#style-value-length"><length></a> specifications are provided, then the first applies to the
-before edge, the second applies to the start and end edges, and the third applies
-to the after edge.
-If four <a href="#style-value-length"><length></a> specifications are provided, then they apply to before, end,
-after, and start edges, respectively.</p><p>The <a href="#style-value-length"><length></a> value(s) used to express padding must be non-negative.</p><p>If a computed value of the property associated with this attribute is not supported,
-then a presentation processor must use the closest supported value.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>In this context, the phrase <em>closest supported value</em> means the value for which the Euclidean distance between
-the computed padding and the supported padding is minimized. If there are multiple closest supported values equally distant from
-the computed value, then the value most distant from 0, i.e., the greatest padding, is used.</p></div><p>The <code>tts:padding</code> style is illustrated by the following example.</p><a id="style-attribute-padding-example-1"></a><table class="example"><caption>Example Fragment – Padding</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p><a id="style-attribute-overflow-example-1-images" name=
+ "style-attribute-overflow-example-1-images"></a></p>
+
+ <table class="example-images">
+ <caption>
+ Example Rendition – Overflow
+ </caption>
+
+ <tbody>
+ <tr>
+ <td><img src="images/overflow.png" alt=
+ "TTML overflow style property"></td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>In the above example, the <code>tts:noWrap</code> is set to
+ <code>noWrap</code> to prevent automatic line wrapping (breaking); if this
+ were not specified, then overflow would occur in the block progression
+ direction as opposed to the inline progression direction.</p>
+ </div>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The semantics of the style property represented by this attribute are
+ based upon that defined by <a href="#xsl11">[XSL 1.1]</a>, § 7.21.2.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="style-attribute-padding" name="style-attribute-padding"></a>8.2.16
+ tts:padding</h4>
+
+ <p>The <code>tts:padding</code> attribute is used to specify padding (or inset)
+ space on all sides of a region area.</p>
+
+ <p>This attribute may be specified by any element type that permits use of
+ attributes in the TT Style Namespace; however, this attribute applies as a
+ style property only to those element types indicated in the following
+ table.</p><a id="style-property-details-padding" name=
+ "style-property-details-padding"></a>
+
+ <table class="common">
+ <col width="25%" span="1">
+ <col span="1">
+
+ <tbody>
+ <tr>
+ <td><em>Values:</em></td>
+
+ <td><a href="#style-value-length"><length></a> | <a href=
+ "#style-value-length"><length></a> <a href=
+ "#style-value-length"><length></a> | <a href=
+ "#style-value-length"><length></a> <a href=
+ "#style-value-length"><length></a> <a href=
+ "#style-value-length"><length></a> | <a href=
+ "#style-value-length"><length></a> <a href=
+ "#style-value-length"><length></a> <a href=
+ "#style-value-length"><length></a> <a href=
+ "#style-value-length"><length></a></td>
+ </tr>
+
+ <tr>
+ <td><em>Initial:</em></td>
+
+ <td><code>0px</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>relative to width and height of 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"><length></a> specification, then that length
+ applies to all edges of the affected areas. If the value consists of two
+ <a href="#style-value-length"><length></a> specifications, then the first
+ applies to the before and after edges, and the second applies to the start and
+ end edges. If three <a href="#style-value-length"><length></a>
+ specifications are provided, then the first applies to the before edge, the
+ second applies to the start and end edges, and the third applies to the after
+ edge. If four <a href="#style-value-length"><length></a> specifications
+ are provided, then they apply to before, end, after, and start edges,
+ respectively.</p>
+
+ <p>The <a href="#style-value-length"><length></a> value(s) used to
+ express padding must be non-negative.</p>
+
+ <p>If a computed value of the property associated with this attribute is not
+ supported, then a presentation processor must use the closest supported
+ value.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>In this context, the phrase <em>closest supported value</em> means the
+ value for which the Euclidean distance between the computed padding and the
+ supported padding is minimized. If there are multiple closest supported
+ values equally distant from the computed value, then the value most distant
+ from 0, i.e., the greatest padding, is used.</p>
+ </div>
+
+ <p>The <code>tts:padding</code> style is illustrated by the following
+ example.</p><a id="style-attribute-padding-example-1" name=
+ "style-attribute-padding-example-1"></a>
+
+ <table class="example">
+ <caption>
+ Example Fragment – Padding
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<region xml:id="r1">
<style tts:extent="446px 104px"/>
<style tts:backgroundColor="black"/>
@@ -2864,32 +7546,121 @@
Just the place for a Snark! I have said it thrice:<br/>
What I tell you three times is true.
</p>
-</pre></div>
-</td></tr></tbody></table><p>When rendering an area to which padding applies, the background color that
-applies to the area is rendered into the padded portion of the area.</p><a id="style-attribute-padding-example-1-images"></a><table class="example-images"><caption>Example Rendition – Padding</caption><tbody><tr><td>
-<img src="images/padding.png" alt="TTML padding style property">
-</td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>The semantics of the style property
-represented by this attribute are based upon that defined by <a href="#xsl11">[XSL 1.1]</a>,
-§ 7.31.15, except that individual shorthand values map to writing
-mode relative padding values as defined by <a href="#xsl11">[XSL 1.1]</a>,
-§ 7.8.31, 7.8.32, 7.8.33, and 7.8.34.</p></div></div><div class="div3">
-<h4><a id="style-attribute-showBackground"></a>8.2.17 tts:showBackground</h4><p>The <code>tts:showBackground</code> attribute is used to specify
-constraints on when the background color of a region is intended to be
-presented.</p><p>This attribute may be specified by any
-element type
-that permits use of attributes in the TT Style Namespace; however, this attribute applies
-as a style property only to those element types indicated in the following table.</p><a id="style-property-details-showBackground"></a><table class="common"><col width="25%" span="1"><col span="1"><tbody><tr><td><em>Values:</em></td><td>
-<code>always</code> |
-<code>whenActive</code>
-</td></tr><tr><td><em>Initial:</em></td><td><code>always</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 the value of this attribute is <code>always</code>, then the
-background color of a region is always rendered when performing presentation
-processing on a visual medium; if the value is <code>whenActive</code>,
-then the background color of a region is rendered only when some
-content is flowed into the region.</p><p>If a computed value of the property associated with this attribute is not supported,
-then a presentation processor must use the value <code>always</code>.</p><p>The <code>tts:showBackground</code> style is illustrated by the following example.</p><a id="style-attribute-showBackground-example-1"></a><table class="example"><caption>Example Fragment – Show Background</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>When rendering an area to which padding applies, the background color that
+ applies to the area is rendered into the padded portion of the area.</p><a id=
+ "style-attribute-padding-example-1-images" name=
+ "style-attribute-padding-example-1-images"></a>
+
+ <table class="example-images">
+ <caption>
+ Example Rendition – Padding
+ </caption>
+
+ <tbody>
+ <tr>
+ <td><img src="images/padding.png" alt="TTML padding style property"></td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The semantics of the style property represented by this attribute are
+ based upon that defined by <a href="#xsl11">[XSL 1.1]</a>, § 7.31.15, except
+ that individual shorthand values map to writing mode relative padding values
+ as defined by <a href="#xsl11">[XSL 1.1]</a>, § 7.8.31, 7.8.32, 7.8.33, and
+ 7.8.34.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="style-attribute-showBackground" name=
+ "style-attribute-showBackground"></a>8.2.17 tts:showBackground</h4>
+
+ <p>The <code>tts:showBackground</code> attribute is used to specify constraints
+ on when the background color of a region is intended to be presented.</p>
+
+ <p>This attribute may be specified by any element type that permits use of
+ attributes in the TT Style Namespace; however, this attribute applies as a
+ style property only to those element types indicated in the following
+ table.</p><a id="style-property-details-showBackground" name=
+ "style-property-details-showBackground"></a>
+
+ <table class="common">
+ <col width="25%" span="1">
+ <col span="1">
+
+ <tbody>
+ <tr>
+ <td><em>Values:</em></td>
+
+ <td><code>always</code> | <code>whenActive</code></td>
+ </tr>
+
+ <tr>
+ <td><em>Initial:</em></td>
+
+ <td><code>always</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 the value of this attribute is <code>always</code>, then the background
+ color of a region is always rendered when performing presentation processing on
+ a visual medium; if the value is <code>whenActive</code>, then the background
+ color of a region is rendered only when some content is flowed into the
+ region.</p>
+
+ <p>If a computed value of the property associated with this attribute is not
+ supported, then a presentation processor must use the value
+ <code>always</code>.</p>
+
+ <p>The <code>tts:showBackground</code> style is illustrated by the following
+ example.</p><a id="style-attribute-showBackground-example-1" name=
+ "style-attribute-showBackground-example-1"></a>
+
+ <table class="example">
+ <caption>
+ Example Fragment – Show Background
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<region xml:id="r1">
<style tts:origin="0px 0px"/>
<style tts:extent="265px 100px"/>
@@ -2908,26 +7679,97 @@
<style tts:textAlign="end"/>
<style <span class="strong">tts:showBackground="whenActive"</span>/>
</region>
-</pre></div>
-</td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>The semantics of the style property
-represented by this attribute are based upon that defined by <a href="#smil21">[SMIL 2.1]</a>,
-§ 5.3.3.</p></div></div><div class="div3">
-<h4><a id="style-attribute-textAlign"></a>8.2.18 tts:textAlign</h4><p>The <code>tts:textAlign</code> attribute is used to specify a style property that
-defines how inline areas are aligned within a containing block area in the inline progression
-direction.</p><p>This attribute may be specified by any
-element type
-that permits use of attributes in the TT Style Namespace; however, this attribute applies
-as a style property only to those element types indicated in the following table.</p><a id="style-property-details-textAlign"></a><table class="common"><col width="25%" span="1"><col span="1"><tbody><tr><td><em>Values:</em></td><td>
-<code>left</code> |
-<code>center</code> |
-<code>right</code> |
-<code>start</code> |
-<code>end</code>
-</td></tr><tr><td><em>Initial:</em></td><td><code>start</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>N/A</td></tr><tr><td><em>Animatable:</em></td><td>discrete</td></tr></tbody></table><p>If a computed value of the property associated with this attribute is not supported,
-then a presentation processor must use the value <code>start</code>.</p><p>The <code>tts:textAlign</code> style is illustrated by the following example.</p><a id="style-attribute-textAlign-example-1"></a><table class="example"><caption>Example Fragment – Text Align</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The semantics of the style property represented by this attribute are
+ based upon that defined by <a href="#smil21">[SMIL 2.1]</a>, § 5.3.3.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="style-attribute-textAlign" name=
+ "style-attribute-textAlign"></a>8.2.18 tts:textAlign</h4>
+
+ <p>The <code>tts:textAlign</code> attribute is used to specify a style property
+ that defines how inline areas are aligned within a containing block area in the
+ inline progression direction.</p>
+
+ <p>This attribute may be specified by any element type that permits use of
+ attributes in the TT Style Namespace; however, this attribute applies as a
+ style property only to those element types indicated in the following
+ table.</p><a id="style-property-details-textAlign" name=
+ "style-property-details-textAlign"></a>
+
+ <table class="common">
+ <col width="25%" span="1">
+ <col span="1">
+
+ <tbody>
+ <tr>
+ <td><em>Values:</em></td>
+
+ <td><code>left</code> | <code>center</code> | <code>right</code> |
+ <code>start</code> | <code>end</code></td>
+ </tr>
+
+ <tr>
+ <td><em>Initial:</em></td>
+
+ <td><code>start</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>N/A</td>
+ </tr>
+
+ <tr>
+ <td><em>Animatable:</em></td>
+
+ <td>discrete</td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>If a computed value of the property associated with this attribute is not
+ supported, then a presentation processor must use the value
+ <code>start</code>.</p>
+
+ <p>The <code>tts:textAlign</code> style is illustrated by the following
+ example.</p><a id="style-attribute-textAlign-example-1" name=
+ "style-attribute-textAlign-example-1"></a>
+
+ <table class="example">
+ <caption>
+ Example Fragment – Text Align
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<region xml:id="r1">
<style tts:extent="355px 43px"/>
<style tts:origin="0px 0px"/>
@@ -2951,35 +7793,129 @@
Beware the Jubjub bird, and shun<br/>
The frumious Bandersnatch!
</p>
-</pre></div>
-</td></tr></tbody></table><p></p><a id="style-attribute-textAlign-example-1-images"></a><table class="example-images"><caption>Example Rendition – Text Align</caption><tbody><tr><td><img src="images/textAlign.png" alt="TTML textAlign style property"></td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>The semantics of the style property
-represented by this attribute are based upon that defined by <a href="#xsl11">[XSL 1.1]</a>,
-§ 7.16.9.</p></div></div><div class="div3">
-<h4><a id="style-attribute-textDecoration"></a>8.2.19 tts:textDecoration</h4><p>The <code>tts:textDecoration</code> attribute is used to specify a style property that
-defines a text decoration effect to apply to glyph areas or other inline
-areas that are generated by content flowed into a region.</p><p>This attribute may be specified by any
-element type
-that permits use of attributes in the TT Style Namespace; however, this attribute applies
-as a style property only to those element types indicated in the following table.</p><a id="style-property-details-textDecoration"></a><table class="common"><col width="25%" span="1"><col span="1"><tbody><tr><td><em>Values:</em></td><td>
-<code>none</code> |
-[ [
-<code>underline</code> |
-<code>noUnderline</code>
-] || [
-<code>lineThrough</code> |
-<code>noLineThrough</code>
-] || [
-<code>overline</code> |
-<code>noOverline</code>
-] ]
-</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>N/A</td></tr><tr><td><em>Animatable:</em></td><td>discrete</td></tr></tbody></table><p>For the purpose of determining applicability of this
-style property, each character child of a <code>p</code> element is
-considered to be enclosed in an anonymous span.</p><p>If a computed value of the property associated with this attribute is not supported,
-then a presentation processor must use the value <code>none</code>.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>The syntax used above in defining the value of this property is based on the
-value component syntax defined in <a href="#css2">[CSS2]</a>, § 1.4.2.1. In essence,
-one or more of the values separated by <code>||</code> may appear in the property
-value in any order, such as <code>"noUnderline overline lineThrough"</code>.</p></div><p>The <code>tts:textDecoration</code> style is illustrated by the following example.</p><a id="style-attribute-textDecoration-example-1"></a><table class="example"><caption>Example Fragment – Text Decoration</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p><a id="style-attribute-textAlign-example-1-images" name=
+ "style-attribute-textAlign-example-1-images"></a></p>
+
+ <table class="example-images">
+ <caption>
+ Example Rendition – Text Align
+ </caption>
+
+ <tbody>
+ <tr>
+ <td><img src="images/textAlign.png" alt=
+ "TTML textAlign style property"></td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The semantics of the style property represented by this attribute are
+ based upon that defined by <a href="#xsl11">[XSL 1.1]</a>, § 7.16.9.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="style-attribute-textDecoration" name=
+ "style-attribute-textDecoration"></a>8.2.19 tts:textDecoration</h4>
+
+ <p>The <code>tts:textDecoration</code> attribute is used to specify a style
+ property that defines a text decoration effect to apply to glyph areas or other
+ inline areas that are generated by content flowed into a region.</p>
+
+ <p>This attribute may be specified by any element type that permits use of
+ attributes in the TT Style Namespace; however, this attribute applies as a
+ style property only to those element types indicated in the following
+ table.</p><a id="style-property-details-textDecoration" name=
+ "style-property-details-textDecoration"></a>
+
+ <table class="common">
+ <col width="25%" span="1">
+ <col span="1">
+
+ <tbody>
+ <tr>
+ <td><em>Values:</em></td>
+
+ <td><code>none</code> | [ [ <code>underline</code> |
+ <code>noUnderline</code> ] || [ <code>lineThrough</code> |
+ <code>noLineThrough</code> ] || [ <code>overline</code> |
+ <code>noOverline</code> ] ]</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>N/A</td>
+ </tr>
+
+ <tr>
+ <td><em>Animatable:</em></td>
+
+ <td>discrete</td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>For the purpose of determining applicability of this style property, each
+ character child of a <code>p</code> element is considered to be enclosed in an
+ anonymous span.</p>
+
+ <p>If a computed value of the property associated with this attribute is not
+ supported, then a presentation processor must use the value
+ <code>none</code>.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The syntax used above in defining the value of this property is based on
+ the value component syntax defined in <a href="#css2">[CSS2]</a>, § 1.4.2.1.
+ In essence, one or more of the values separated by <code>||</code> may appear
+ in the property value in any order, such as <code>"noUnderline overline
+ lineThrough"</code>.</p>
+ </div>
+
+ <p>The <code>tts:textDecoration</code> style is illustrated by the following
+ example.</p><a id="style-attribute-textDecoration-example-1" name=
+ "style-attribute-textDecoration-example-1"></a>
+
+ <table class="example">
+ <caption>
+ Example Fragment – Text Decoration
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<region xml:id="r1">
<style tts:extent="385px 82px"/>
<style tts:origin="0px 0px"/>
@@ -2990,49 +7926,154 @@
</region>
...
<p region="r1">
- The sea was wet<span <span class="strong">tts:textDecoration="noUnderline"</span>> as </span>wet
+ The sea was wet<span <span class=
+"strong">tts:textDecoration="noUnderline"</span>> as </span>wet
<span <span class="strong">tts:textDecoration="noUnderline"</span>>
could be,<br/>
The sand was dry as dry.<br/>
- <span <span class="strong">tts:textDecoration="lineThrough"</span>>There weren't any</span>
- You <span <span class="strong">tts:textDecoration="lineThrough"</span>>couldn't</span>
+ <span <span class=
+"strong">tts:textDecoration="lineThrough"</span>>There weren't any</span>
+ You <span <span class=
+"strong">tts:textDecoration="lineThrough"</span>>couldn't</span>
could not see a cloud<br/>
Because no cloud was in the sky.
</span>
</p>
-</pre></div>
-</td></tr></tbody></table><p></p><a id="style-attribute-textDecoration-example-1-images"></a><table class="example-images"><caption>Example Rendition – Text Decoration</caption><tbody><tr><td><img src="images/textDecoration.png" alt="TTML textDecoration style property"></td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>The semantics of the style property
-represented by this attribute are based upon that defined by <a href="#xsl11">[XSL 1.1]</a>,
-§ 7.17.4.</p></div></div><div class="div3">
-<h4><a id="style-attribute-textOutline"></a>8.2.20 tts:textOutline</h4><p>The <code>tts:textOutline</code> attribute is used to specify a style property that
-defines a text outline effect to apply to glyphs that are selected for glyph areas generated
-by content flowed into a region.</p><p>This attribute may be specified by any
-element type
-that permits use of attributes in the TT Style Namespace; however, this attribute applies
-as a style property only to those element types indicated in the following table.</p><a id="style-property-details-textOutline"></a><table class="common"><col width="25%" span="1"><col span="1"><tbody><tr><td><em>Values:</em></td><td>
-<code>none</code> |
-<a href="#style-value-color"><color></a>?
-<a href="#style-value-length"><length></a>
-<a href="#style-value-length"><length></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,
-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"><color></a> term
-followed by one or two <a href="#style-value-length"><length></a> terms. If a <em>color</em> term is
-present, then it denotes the outline color; if no <em>color</em> term is
-present, the computed value of the <code>tts:color</code> applies. The first
-<em>length</em> term denotes the outline thickness and the second length
-term, if present, indicates the blur radius.</p><p>The <a href="#style-value-length"><length></a> value(s) used to express thickness and blur radius must be non-negative.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>When a <a href="#style-value-length"><length></a> expressed in
-cells is used in a <code>tts:textOutline</code> value,
-the cell's dimension in the block progression dimension applies.
-For example, if text outline thickness is specified as 0.1c, the cell resolution
-is 20 by 10, and the extent of the <em>Root Container Region</em> is 640 by 480, then the
-outline thickness will be a nominal 480 / 10 * 0.1 pixels, i.e., 4.8px,
-without taking into account rasterization effects.</p></div><p>If a computed value of the property associated with this attribute is not supported,
-then a presentation processor must use the value <code>none</code>.</p><p>The <code>tts:textOutline</code> style is illustrated by the following
-example.</p><a id="style-attribute-textOutline-example-1"></a><table class="example"><caption>Example Fragment – Text Outline</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p><a id="style-attribute-textDecoration-example-1-images" name=
+ "style-attribute-textDecoration-example-1-images"></a></p>
+
+ <table class="example-images">
+ <caption>
+ Example Rendition – Text Decoration
+ </caption>
+
+ <tbody>
+ <tr>
+ <td><img src="images/textDecoration.png" alt=
+ "TTML textDecoration style property"></td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The semantics of the style property represented by this attribute are
+ based upon that defined by <a href="#xsl11">[XSL 1.1]</a>, § 7.17.4.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="style-attribute-textOutline" name=
+ "style-attribute-textOutline"></a>8.2.20 tts:textOutline</h4>
+
+ <p>The <code>tts:textOutline</code> attribute is used to specify a style
+ property that defines a text outline effect to apply to glyphs that are
+ selected for glyph areas generated by content flowed into a region.</p>
+
+ <p>This attribute may be specified by any element type that permits use of
+ attributes in the TT Style Namespace; however, this attribute applies as a
+ style property only to those element types indicated in the following
+ table.</p><a id="style-property-details-textOutline" name=
+ "style-property-details-textOutline"></a>
+
+ <table class="common">
+ <col width="25%" span="1">
+ <col span="1">
+
+ <tbody>
+ <tr>
+ <td><em>Values:</em></td>
+
+ <td><code>none</code> | <a href="#style-value-color"><color></a>?
+ <a href="#style-value-length"><length></a> <a href=
+ "#style-value-length"><length></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, 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"><color></a> term followed by one or two <a href=
+ "#style-value-length"><length></a> terms. If a <em>color</em> term is
+ present, then it denotes the outline color; if no <em>color</em> term is
+ present, the computed value of the <code>tts:color</code> applies. The first
+ <em>length</em> term denotes the outline thickness and the second length term,
+ if present, indicates the blur radius.</p>
+
+ <p>The <a href="#style-value-length"><length></a> value(s) used to
+ express thickness and blur radius must be non-negative.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>When a <a href="#style-value-length"><length></a> expressed in cells
+ is used in a <code>tts:textOutline</code> value, the cell's dimension in the
+ block progression dimension applies. For example, if text outline thickness
+ is specified as 0.1c, the cell resolution is 20 by 10, and the extent of the
+ <em>Root Container Region</em> is 640 by 480, then the outline thickness will
+ be a nominal 480 / 10 * 0.1 pixels, i.e., 4.8px, without taking into account
+ rasterization effects.</p>
+ </div>
+
+ <p>If a computed value of the property associated with this attribute is not
+ supported, then a presentation processor must use the value
+ <code>none</code>.</p>
+
+ <p>The <code>tts:textOutline</code> style is illustrated by the following
+ example.</p><a id="style-attribute-textOutline-example-1" name=
+ "style-attribute-textOutline-example-1"></a>
+
+ <table class="example">
+ <caption>
+ Example Fragment – Text Outline
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<region xml:id="r1">
<style tts:backgroundColor="transparent"/>
<style tts:color="yellow"/>
@@ -3051,27 +8092,111 @@
And welcomes little fishes in,<br/>
With gently smiling jaws!
</p>
-</pre></div>
-</td></tr></tbody></table><p></p><a id="style-attribute-textOutline-example-1-images"></a><table class="example-images"><caption>Example Rendition – Text Outline</caption><tbody><tr><td><img src="images/textOutline.png" alt="backgroundColor style property"></td></tr></tbody></table></div><div class="div3">
-<h4><a id="style-attribute-unicodeBidi"></a>8.2.21 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
-element type
-that permits use of attributes in the TT Style Namespace; however, this attribute applies
-as a style property only to those element types indicated in the following table.</p><a id="style-property-details-unicodeBidi"></a><table class="common"><col width="25%" span="1"><col span="1"><tbody><tr><td><em>Values:</em></td><td>
-<code>normal</code> |
-<code>embed</code> |
-<code>bidiOverride</code>
-</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>,
-<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,
-each character child of a <code>p</code> element is considered to be enclosed in an anonymous
-span.</p><p>If a computed value of the property associated with this attribute is not supported,
-then a presentation processor must use the value <code>normal</code>.</p><p>The <code>tts:unicodeBidi</code> style is illustrated by the following example.</p><a id="style-attribute-unicodeBidi-example-1"></a><table class="example"><caption>Example Fragment – Unicode Bidirectionality</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p><a id="style-attribute-textOutline-example-1-images" name=
+ "style-attribute-textOutline-example-1-images"></a></p>
+
+ <table class="example-images">
+ <caption>
+ Example Rendition – Text Outline
+ </caption>
+
+ <tbody>
+ <tr>
+ <td><img src="images/textOutline.png" alt=
+ "backgroundColor style property"></td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+
+ <div class="div3">
+ <h4><a id="style-attribute-unicodeBidi" name=
+ "style-attribute-unicodeBidi"></a>8.2.21 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 element type that permits use of
+ attributes in the TT Style Namespace; however, this attribute applies as a
+ style property only to those element types indicated in the following
+ table.</p><a id="style-property-details-unicodeBidi" name=
+ "style-property-details-unicodeBidi"></a>
+
+ <table class="common">
+ <col width="25%" span="1">
+ <col span="1">
+
+ <tbody>
+ <tr>
+ <td><em>Values:</em></td>
+
+ <td><code>normal</code> | <code>embed</code> |
+ <code>bidiOverride</code></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>, <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, each
+ character child of a <code>p</code> element is considered to be enclosed in an
+ anonymous span.</p>
+
+ <p>If a computed value of the property associated with this attribute is not
+ supported, then a presentation processor must use the value
+ <code>normal</code>.</p>
+
+ <p>The <code>tts:unicodeBidi</code> style is illustrated by the following
+ example.</p><a id="style-attribute-unicodeBidi-example-1" name=
+ "style-attribute-unicodeBidi-example-1"></a>
+
+ <table class="example">
+ <caption>
+ Example Fragment – Unicode Bidirectionality
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<region xml:id="r1">
<style tts:extent="265px 84px"/>
<style tts:padding="5px"/>
@@ -3084,36 +8209,127 @@
<p region="r1">
Little birds are playing<br/>
Bagpipes on the shore,<br/>
- <span <span class="strong">tts:unicodeBidi="bidiOverride"</span> tts:direction="rtl">where the tourists snore.</span>
+ <span <span class=
+"strong">tts:unicodeBidi="bidiOverride"</span> tts:direction="rtl">where the tourists snore.</span>
</p>
-</pre></div>
-</td></tr></tbody></table><p></p><a id="style-attribute-unicodeBidi-example-1-images"></a><table class="example-images"><caption>Example Rendition – Unicode Bidirectionality</caption><tbody><tr><td>
-<img src="images/unicodeBidi.png" alt="TTML unicodeBidi style property">
-</td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>The semantics of the style property
-represented by this attribute are based upon that defined by <a href="#xsl11">[XSL 1.1]</a>,
-§ 7.29.6.</p></div></div><div class="div3">
-<h4><a id="style-attribute-visibility"></a>8.2.22 tts:visibility</h4><p>The <code>tts:visibility</code> attribute is used to specify a style property that
-defines whether generated areas are visible or not when rendered on a visual
-presentation medium.</p><p>This attribute may be specified by any
-element type
-that permits use of attributes in the TT Style Namespace; however, this attribute applies
-as a style property only to those element types indicated in the following table.</p><a id="style-property-details-visibility"></a><table class="common"><col width="25%" span="1"><col span="1"><tbody><tr><td><em>Values:</em></td><td>
-<code>visible</code> |
-<code>hidden</code>
-</td></tr><tr><td><em>Initial:</em></td><td>
-<code>visible</code>
-</td></tr><tr><td><em>Applies to:</em></td><td>
-<a href="#document-structure-vocabulary-body"><code>body</code></a>,
-<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>,
-<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,
-each character child of a <code>p</code> element is considered to be enclosed in an anonymous
-span.</p><p>The <code>tts:visibility</code> style has no affect on content layout or
-composition, but merely determines whether composed content is visible or not.</p><p>If a computed value of the property associated with this attribute is not supported,
-then a presentation processor must use the value <code>visible</code>.</p><p>The <code>tts:visibility</code> style is illustrated by the following example.</p><a id="style-attribute-visibility-example-1"></a><table class="example"><caption>Example Fragment – Visibility</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p><a id="style-attribute-unicodeBidi-example-1-images" name=
+ "style-attribute-unicodeBidi-example-1-images"></a></p>
+
+ <table class="example-images">
+ <caption>
+ Example Rendition – Unicode Bidirectionality
+ </caption>
+
+ <tbody>
+ <tr>
+ <td><img src="images/unicodeBidi.png" alt=
+ "TTML unicodeBidi style property"></td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The semantics of the style property represented by this attribute are
+ based upon that defined by <a href="#xsl11">[XSL 1.1]</a>, § 7.29.6.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="style-attribute-visibility" name=
+ "style-attribute-visibility"></a>8.2.22 tts:visibility</h4>
+
+ <p>The <code>tts:visibility</code> attribute is used to specify a style
+ property that defines whether generated areas are visible or not when rendered
+ on a visual presentation medium.</p>
+
+ <p>This attribute may be specified by any element type that permits use of
+ attributes in the TT Style Namespace; however, this attribute applies as a
+ style property only to those element types indicated in the following
+ table.</p><a id="style-property-details-visibility" name=
+ "style-property-details-visibility"></a>
+
+ <table class="common">
+ <col width="25%" span="1">
+ <col span="1">
+
+ <tbody>
+ <tr>
+ <td><em>Values:</em></td>
+
+ <td><code>visible</code> | <code>hidden</code></td>
+ </tr>
+
+ <tr>
+ <td><em>Initial:</em></td>
+
+ <td><code>visible</code></td>
+ </tr>
+
+ <tr>
+ <td><em>Applies to:</em></td>
+
+ <td><a href="#document-structure-vocabulary-body"><code>body</code></a>,
+ <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>, <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, each
+ character child of a <code>p</code> element is considered to be enclosed in an
+ anonymous span.</p>
+
+ <p>The <code>tts:visibility</code> style has no affect on content layout or
+ composition, but merely determines whether composed content is visible or
+ not.</p>
+
+ <p>If a computed value of the property associated with this attribute is not
+ supported, then a presentation processor must use the value
+ <code>visible</code>.</p>
+
+ <p>The <code>tts:visibility</code> style is illustrated by the following
+ example.</p><a id="style-attribute-visibility-example-1" name=
+ "style-attribute-visibility-example-1"></a>
+
+ <table class="example">
+ <caption>
+ Example Fragment – Visibility
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<region xml:id="r1">
<style tts:extent="398px 121px"/>
<style tts:backgroundColor="black"/>
@@ -3135,33 +8351,131 @@
curiouser!
</span>
</p>
-</pre></div>
-</td></tr></tbody></table><p></p><a id="style-attribute-visibility-example-1-images"></a><table class="example-images"><caption>Example Rendition – Visibility</caption><tbody><tr><td>
-<img src="images/visibility_0.png" alt="TTML visibility style property - [0,1)">
-</td></tr><tr><td>
-<img src="images/visibility_1.png" alt="TTML visibility style property - [1,2)">
-</td></tr><tr><td>
-<img src="images/visibility_2.png" alt="TTML visibility style property - [2,3)">
-</td></tr><tr><td>
-<img src="images/visibility_3.png" alt="TTML visibility style property - [3,4)">
-</td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>The semantics of the style property
-represented by this attribute are based upon that defined by <a href="#xsl11">[XSL 1.1]</a>,
-§ 7.30.17.</p></div></div><div class="div3">
-<h4><a id="style-attribute-wrapOption"></a>8.2.23 tts:wrapOption</h4><p>The <code>tts:wrapOption</code> attribute is used to specify a style property that
-defines whether or not automatic line wrapping (breaking) applies within the context of
-the affected element.</p><p>This attribute may be specified by any
-element type
-that permits use of attributes in the TT Style Namespace; however, this attribute applies
-as a style property only to those element types indicated in the following table.</p><a id="style-property-details-wrapOption"></a><table class="common"><col width="25%" span="1"><col span="1"><tbody><tr><td><em>Values:</em></td><td>
-<code>wrap</code> |
-<code>noWrap</code>
-</td></tr><tr><td><em>Initial:</em></td><td><code>wrap</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>N/A</td></tr><tr><td><em>Animatable:</em></td><td>discrete</td></tr></tbody></table><p>For the purpose of determining applicability of this style property,
-each character child of a <code>p</code> element is considered to be enclosed in an anonymous
-span.</p><p>If a computed value of the property associated with this attribute is not supported,
-then a presentation processor must use the value <code>wrap</code>.</p><p>The <code>tts:wrapOption</code> style is illustrated by the following example.</p><a id="style-attribute-wrapOption-example-1"></a><table class="example"><caption>Example Fragment – Wrap Option</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p><a id="style-attribute-visibility-example-1-images" name=
+ "style-attribute-visibility-example-1-images"></a></p>
+
+ <table class="example-images">
+ <caption>
+ Example Rendition – Visibility
+ </caption>
+
+ <tbody>
+ <tr>
+ <td><img src="images/visibility_0.png" alt=
+ "TTML visibility style property - [0,1)"></td>
+ </tr>
+
+ <tr>
+ <td><img src="images/visibility_1.png" alt=
+ "TTML visibility style property - [1,2)"></td>
+ </tr>
+
+ <tr>
+ <td><img src="images/visibility_2.png" alt=
+ "TTML visibility style property - [2,3)"></td>
+ </tr>
+
+ <tr>
+ <td><img src="images/visibility_3.png" alt=
+ "TTML visibility style property - [3,4)"></td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The semantics of the style property represented by this attribute are
+ based upon that defined by <a href="#xsl11">[XSL 1.1]</a>, § 7.30.17.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="style-attribute-wrapOption" name=
+ "style-attribute-wrapOption"></a>8.2.23 tts:wrapOption</h4>
+
+ <p>The <code>tts:wrapOption</code> attribute is used to specify a style
+ property that defines whether or not automatic line wrapping (breaking) applies
+ within the context of the affected element.</p>
+
+ <p>This attribute may be specified by any element type that permits use of
+ attributes in the TT Style Namespace; however, this attribute applies as a
+ style property only to those element types indicated in the following
+ table.</p><a id="style-property-details-wrapOption" name=
+ "style-property-details-wrapOption"></a>
+
+ <table class="common">
+ <col width="25%" span="1">
+ <col span="1">
+
+ <tbody>
+ <tr>
+ <td><em>Values:</em></td>
+
+ <td><code>wrap</code> | <code>noWrap</code></td>
+ </tr>
+
+ <tr>
+ <td><em>Initial:</em></td>
+
+ <td><code>wrap</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>N/A</td>
+ </tr>
+
+ <tr>
+ <td><em>Animatable:</em></td>
+
+ <td>discrete</td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>For the purpose of determining applicability of this style property, each
+ character child of a <code>p</code> element is considered to be enclosed in an
+ anonymous span.</p>
+
+ <p>If a computed value of the property associated with this attribute is not
+ supported, then a presentation processor must use the value
+ <code>wrap</code>.</p>
+
+ <p>The <code>tts:wrapOption</code> style is illustrated by the following
+ example.</p><a id="style-attribute-wrapOption-example-1" name=
+ "style-attribute-wrapOption-example-1"></a>
+
+ <table class="example">
+ <caption>
+ Example Fragment – Wrap Option
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<region xml:id="r1">
<style tts:extent="192px 117px"/>
<style tts:backgroundColor="black"/>
@@ -3177,28 +8491,114 @@
I saw an aged aged man,<br/>
A-sitting on a gate.
</p>
-</pre></div>
-</td></tr></tbody></table><p></p><a id="style-attribute-wrapOption-example-1-images"></a><table class="example-images"><caption>Example Rendition – Wrap Option</caption><tbody><tr><td><img src="images/wrapOption.png" alt="TTML wrapOption style property"></td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>The semantics of the style property
-represented by this attribute are based upon that defined by <a href="#xsl11">[XSL 1.1]</a>,
-§ 7.16.13.</p></div></div><div class="div3">
-<h4><a id="style-attribute-writingMode"></a>8.2.24 tts:writingMode</h4><p>The <code>tts:writingMode</code> attribute is used to specify a style property that
-defines the block and inline progression directions to be used for the purpose of
-stacking block and inline areas within a region area.</p><p>This attribute may be specified by any
-element type
-that permits use of attributes in the TT Style Namespace; however, this attribute applies
-as a style property only to those element types indicated in the following table.</p><a id="style-property-details-writingMode"></a><table class="common"><col width="25%" span="1"><col span="1"><tbody><tr><td><em>Values:</em></td><td>
-<code>lrtb</code> |
-<code>rltb</code> |
-<code>tbrl</code> |
-<code>tblr</code> |
-<code>lr</code> |
-<code>rl</code> |
-<code>tb</code>
-</td></tr><tr><td><em>Initial:</em></td><td><code>lrtb</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 a computed value of the property associated with this attribute is not supported,
-then a presentation processor must use the value <code>lrtb</code>.</p><p>The <code>tts:writingMode</code> style is illustrated by the following example.</p><a id="style-attribute-writingMode-example-1"></a><table class="example"><caption>Example Fragment – Writing Mode</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p><a id="style-attribute-wrapOption-example-1-images" name=
+ "style-attribute-wrapOption-example-1-images"></a></p>
+
+ <table class="example-images">
+ <caption>
+ Example Rendition – Wrap Option
+ </caption>
+
+ <tbody>
+ <tr>
+ <td><img src="images/wrapOption.png" alt=
+ "TTML wrapOption style property"></td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The semantics of the style property represented by this attribute are
+ based upon that defined by <a href="#xsl11">[XSL 1.1]</a>, § 7.16.13.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="style-attribute-writingMode" name=
+ "style-attribute-writingMode"></a>8.2.24 tts:writingMode</h4>
+
+ <p>The <code>tts:writingMode</code> attribute is used to specify a style
+ property that defines the block and inline progression directions to be used
+ for the purpose of stacking block and inline areas within a region area.</p>
+
+ <p>This attribute may be specified by any element type that permits use of
+ attributes in the TT Style Namespace; however, this attribute applies as a
+ style property only to those element types indicated in the following
+ table.</p><a id="style-property-details-writingMode" name=
+ "style-property-details-writingMode"></a>
+
+ <table class="common">
+ <col width="25%" span="1">
+ <col span="1">
+
+ <tbody>
+ <tr>
+ <td><em>Values:</em></td>
+
+ <td><code>lrtb</code> | <code>rltb</code> | <code>tbrl</code> |
+ <code>tblr</code> | <code>lr</code> | <code>rl</code> |
+ <code>tb</code></td>
+ </tr>
+
+ <tr>
+ <td><em>Initial:</em></td>
+
+ <td><code>lrtb</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 a computed value of the property associated with this attribute is not
+ supported, then a presentation processor must use the value
+ <code>lrtb</code>.</p>
+
+ <p>The <code>tts:writingMode</code> style is illustrated by the following
+ example.</p><a id="style-attribute-writingMode-example-1" name=
+ "style-attribute-writingMode-example-1"></a>
+
+ <table class="example">
+ <caption>
+ Example Fragment – Writing Mode
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<region xml:id="r1">
<style tts:extent="50px 570px"/>
<style tts:origin="0px 0px"/>
@@ -3223,34 +8623,144 @@
<p region="r2" tts:direction="rtl" tts:unicodeBidi="bidiOverride">
I sometimes search the grassy knolls for the wheels of Hansom-cabs.
</p>
-</pre></div>
-</td></tr></tbody></table><p></p><a id="style-attribute-writingMode-example-1-images"></a><table class="example-images"><caption>Example Rendition – Writing Mode</caption><tbody><tr><td><img src="images/writingMode.png" alt="TTML writingMode style property"></td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>In the second paragraph in the above example that targets region
-<code>r2</code>, the <code>tts:unicodeBidi</code> and
-<code>tts:direction</code> properties are set to
-<code>bidiOverride</code> and <code>rtl</code>, respectively, in order
-to override the normally left-to-right directionality of characters in
-the Latin script.</p></div><div class="note"><p class="prefix"><b>Note:</b></p><p>The semantics of the style property
-represented by this attribute are based upon that defined by <a href="#xsl11">[XSL 1.1]</a>,
-§ 7.29.7.</p></div></div><div class="div3">
-<h4><a id="style-attribute-zIndex"></a>8.2.25 tts:zIndex</h4><p>The <code>tts:zIndex</code> attribute is used to specify a style property that
-defines the front-to-back ordering of region areas in the case that they overlap.</p><p>This attribute may be specified by any
-element type
-that permits use of attributes in the TT Style Namespace; however, this attribute applies
-as a style property only to those element types indicated in the following table.</p><a id="style-property-details-zIndex"></a><table class="common"><col width="25%" span="1"><col span="1"><tbody><tr><td><em>Values:</em></td><td>
-<code>auto</code> |
-<a href="#style-value-integer"><integer></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
-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 <em>Document Instance</em>.</p><p>The semantics of the value <code>auto</code> are those defined by
-<a href="#xsl11">[XSL 1.1]</a>, § 7.30.18, where the <code>tt</code> element
-is considered to establish the root stacking context.</p><p>If a computed value of the property associated with this attribute is not supported,
-then a presentation processor must use the closest supported value.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>In this context, the phrase <em>closest supported value</em> means the value for which the Euclidean distance between
-the computed z-index and the supported z-index is minimized. If there are multiple closest supported values equally distant from
-the computed value, then the value least distant from 0, i.e., closest to the base stack level of the current stacking context, is used.</p></div><p>The <code>tts:zIndex</code> style is illustrated by the following example.</p><a id="style-attribute-zIndex-example-1"></a><table class="example"><caption>Example Fragment – Z Index</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p><a id="style-attribute-writingMode-example-1-images" name=
+ "style-attribute-writingMode-example-1-images"></a></p>
+
+ <table class="example-images">
+ <caption>
+ Example Rendition – Writing Mode
+ </caption>
+
+ <tbody>
+ <tr>
+ <td><img src="images/writingMode.png" alt=
+ "TTML writingMode style property"></td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>In the second paragraph in the above example that targets region
+ <code>r2</code>, the <code>tts:unicodeBidi</code> and
+ <code>tts:direction</code> properties are set to <code>bidiOverride</code>
+ and <code>rtl</code>, respectively, in order to override the normally
+ left-to-right directionality of characters in the Latin script.</p>
+ </div>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The semantics of the style property represented by this attribute are
+ based upon that defined by <a href="#xsl11">[XSL 1.1]</a>, § 7.29.7.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="style-attribute-zIndex" name="style-attribute-zIndex"></a>8.2.25
+ tts:zIndex</h4>
+
+ <p>The <code>tts:zIndex</code> attribute is used to specify a style property
+ that defines the front-to-back ordering of region areas in the case that they
+ overlap.</p>
+
+ <p>This attribute may be specified by any element type that permits use of
+ attributes in the TT Style Namespace; however, this attribute applies as a
+ style property only to those element types indicated in the following
+ table.</p><a id="style-property-details-zIndex" name=
+ "style-property-details-zIndex"></a>
+
+ <table class="common">
+ <col width="25%" span="1">
+ <col span="1">
+
+ <tbody>
+ <tr>
+ <td><em>Values:</em></td>
+
+ <td><code>auto</code> | <a href=
+ "#style-value-integer"><integer></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 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 <em>Document
+ Instance</em>.</p>
+
+ <p>The semantics of the value <code>auto</code> are those defined by <a href=
+ "#xsl11">[XSL 1.1]</a>, § 7.30.18, where the <code>tt</code> element is
+ considered to establish the root stacking context.</p>
+
+ <p>If a computed value of the property associated with this attribute is not
+ supported, then a presentation processor must use the closest supported
+ value.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>In this context, the phrase <em>closest supported value</em> means the
+ value for which the Euclidean distance between the computed z-index and the
+ supported z-index is minimized. If there are multiple closest supported
+ values equally distant from the computed value, then the value least distant
+ from 0, i.e., closest to the base stack level of the current stacking
+ context, is used.</p>
+ </div>
+
+ <p>The <code>tts:zIndex</code> style is illustrated by the following
+ example.</p><a id="style-attribute-zIndex-example-1" name=
+ "style-attribute-zIndex-example-1"></a>
+
+ <table class="example">
+ <caption>
+ Example Fragment – Z Index
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<region xml:id="r1">
<style tts:origin="0px 0px"/>
<style tts:extent="400px 100px"/>
@@ -3303,37 +8813,157 @@
with a growl,<br/>
And concluded the banquet by...
</p>
-</pre></div>
-</td></tr></tbody></table><p></p><p></p><a id="style-attribute-zIndex-example-1-images"></a><table class="example-images"><caption>Example Rendition – Z Index</caption><tbody><tr><td><img src="images/zIndex.png" alt="TTML zIndex style property"></td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>The semantics of the style property
-represented by this attribute are based upon that defined by <a href="#xsl11">[XSL 1.1]</a>,
-§ 7.30.18.</p></div></div></div><div class="div2">
-<h3><a id="styling-style-value-expressions"></a>8.3 Style Value Expressions</h3><p>Style property values include the use of the following expressions:</p><ul><li><p><a href="#style-value-alpha"><b>8.3.1 <alpha></b></a></p></li><li><p><a href="#style-value-color"><b>8.3.2 <color></b></a></p></li><li><p><a href="#style-value-digit"><b>8.3.3 <digit></b></a></p></li><li><p><a href="#style-value-familyName"><b>8.3.5 <familyName></b></a></p></li><li><p><a href="#style-value-genericFamilyName"><b>8.3.6 <genericFamilyName></b></a></p></li><li><p><a href="#style-value-hexDigit"><b>8.3.7 <hexDigit></b></a></p></li><li><p><a href="#style-value-integer"><b>8.3.8 <integer></b></a></p></li><li><p><a href="#style-value-length"><b>8.3.9 <length></b></a></p></li><li><p><a href="#style-value-namedColor"><b>8.3.10 <namedColor></b></a></p></li></ul><p>In the syntax representations defined in this section, no
-linear whitespace (LWSP) is implied or permitted between tokens
-unless explicitly specified.</p><div class="div3">
-<h4><a id="style-value-alpha"></a>8.3.1 <alpha></h4><p>An <alpha> expression is used to express an opacity value,
-where 0 means fully transparent and 1 means fully opaque.</p><a id="alpha-style-expression-syntax"></a><table class="syntax"><caption>Syntax Representation – <alpha></caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p><a id="style-attribute-zIndex-example-1-images" name=
+ "style-attribute-zIndex-example-1-images"></a></p>
+
+ <table class="example-images">
+ <caption>
+ Example Rendition – Z Index
+ </caption>
+
+ <tbody>
+ <tr>
+ <td><img src="images/zIndex.png" alt="TTML zIndex style property"></td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The semantics of the style property represented by this attribute are
+ based upon that defined by <a href="#xsl11">[XSL 1.1]</a>, § 7.30.18.</p>
+ </div>
+ </div>
+ </div>
+
+ <div class="div2">
+ <h3><a id="styling-style-value-expressions" name=
+ "styling-style-value-expressions"></a>8.3 Style Value Expressions</h3>
+
+ <p>Style property values include the use of the following expressions:</p>
+
+ <ul>
+ <li>
+ <p><a href="#style-value-alpha"><b>8.3.1 <alpha></b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#style-value-color"><b>8.3.2 <color></b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#style-value-digit"><b>8.3.3 <digit></b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#style-value-familyName"><b>8.3.5 <familyName></b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#style-value-genericFamilyName"><b>8.3.6
+ <genericFamilyName></b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#style-value-hexDigit"><b>8.3.7 <hexDigit></b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#style-value-integer"><b>8.3.8 <integer></b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#style-value-length"><b>8.3.9 <length></b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#style-value-namedColor"><b>8.3.10 <namedColor></b></a></p>
+ </li>
+ </ul>
+
+ <p>In the syntax representations defined in this section, no linear whitespace
+ (LWSP) is implied or permitted between tokens unless explicitly specified.</p>
+
+ <div class="div3">
+ <h4><a id="style-value-alpha" name="style-value-alpha"></a>8.3.1
+ <alpha></h4>
+
+ <p>An <alpha> expression is used to express an opacity value, where 0
+ means fully transparent and 1 means fully opaque.</p><a id=
+ "alpha-style-expression-syntax" name="alpha-style-expression-syntax"></a>
+
+ <table class="syntax">
+ <caption>
+ Syntax Representation – <alpha>
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<alpha>
: <em>float</em>
-</pre></div>
-</td></tr></tbody></table><p>In the above syntax representation, the syntactic element
-<em><code>float</code></em> must adhere to the lexical
-representation defined by <a href="#xsd-2">[XML Schema Part 2]</a> §
-3.2.4.1. If the value represented is less than 0.0,
-then it must be interpreted as equal to 0.0; similarly, if the value
-represented is greater than 1.0, then it must be interpreted as
-1.0. The value NaN must be interpreted as 0.0.</p><p>A specified value for <alpha> should not be <code>NaN</code>,
-less than 0, or greater than 1.</p><p>If a presentation processor does not support a specific,
-valid opacity value, then it must interpret it as being equal to the
-closest supported value.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>In this context, the phrase <em>closest supported value</em> means the value for which the Euclidean distance between
-the computed opacity and the supported opacity is minimized. If there are multiple closest supported values equally distant from
-the computed value, then the value most distant from 0, i.e., the greatest opacity, is used.</p></div></div><div class="div3">
-<h4><a id="style-value-color"></a>8.3.2 <color></h4><p>A <color> expression is used to specify a named color, exact RGB color triple,
-or exact RGBA color tuple, where the alpha component, if expressed,
-is maximum (255) at 100% opacity
-and minimum (0) at 0% opacity, and where the applicable color space is
-defined by <a href="#srgb">[SRGB]</a>.</p><a id="color-style-expression-syntax"></a><table class="syntax"><caption>Syntax Representation – <color></caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>In the above syntax representation, the syntactic element
+ <em><code>float</code></em> must adhere to the lexical representation defined
+ by <a href="#xsd-2">[XML Schema Part 2]</a> § 3.2.4.1. If the value
+ represented is less than 0.0, then it must be interpreted as equal to 0.0;
+ similarly, if the value represented is greater than 1.0, then it must be
+ interpreted as 1.0. The value NaN must be interpreted as 0.0.</p>
+
+ <p>A specified value for <alpha> should not be <code>NaN</code>, less
+ than 0, or greater than 1.</p>
+
+ <p>If a presentation processor does not support a specific, valid opacity
+ value, then it must interpret it as being equal to the closest supported
+ value.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>In this context, the phrase <em>closest supported value</em> means the
+ value for which the Euclidean distance between the computed opacity and the
+ supported opacity is minimized. If there are multiple closest supported
+ values equally distant from the computed value, then the value most distant
+ from 0, i.e., the greatest opacity, is used.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="style-value-color" name="style-value-color"></a>8.3.2
+ <color></h4>
+
+ <p>A <color> expression is used to specify a named color, exact RGB color
+ triple, or exact RGBA color tuple, where the alpha component, if expressed, is
+ maximum (255) at 100% opacity and minimum (0) at 0% opacity, and where the
+ applicable color space is defined by <a href="#srgb">[SRGB]</a>.</p><a id=
+ "color-style-expression-syntax" name="color-style-expression-syntax"></a>
+
+ <table class="syntax">
+ <caption>
+ Syntax Representation – <color>
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<color>
: "#" rrggbb
| "#" rrggbbaa
@@ -3355,32 +8985,109 @@
non-negative-integer
: <a href="#style-value-digit"><digit></a>+
-</pre></div>
-</td></tr></tbody></table><p>When expressing RGB component values, these values are considered
-to <span class="strong">not</span> be premultiplied by alpha.</p><p>For the purpose of performing presentation processing such that
-non-opaque or non-transparent alpha or opacity values apply, then the
-semantics of compositing functions are defined with respect to the use of
-the <a href="#srgb">[SRGB]</a> color space for both inputs and outputs of
-the composition function.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>The use of <a href="#srgb">[SRGB]</a> for the stated semantics of
-composition is not meant to prevent an actual processor from using some
-other color space either for internal or external purposes. For
-example, a presentation processor may ultimately convert the SRGB values
-used here to the YUV color space for rendition on a television device.</p></div><p>If a presentation processor does not support a specific,
-valid color or alpha value, then it must interpret it as being equal
-to the closest supported value.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>In this context, the phrase <em>closest supported value</em> means the value for which the Euclidean distance between
-the computed color or alpha and the supported color or alpha in the RGB color space is minimized. If there are multiple closest supported values equally distant from
-the computed value, then the value least distant from opaque black <code>rgb(0,0,0,255)</code>, i.e., the closest to opaque black, is used.</p></div></div><div class="div3">
-<h4><a id="style-value-digit"></a>8.3.3 <digit></h4><p>A <digit> is used to express integers and other types of numbers or tokens.</p><a id="digit-style-expression-syntax"></a><table class="syntax"><caption>Syntax Representation – <digit></caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>When expressing RGB component values, these values are considered to
+ <span class="strong">not</span> be premultiplied by alpha.</p>
+
+ <p>For the purpose of performing presentation processing such that non-opaque
+ or non-transparent alpha or opacity values apply, then the semantics of
+ compositing functions are defined with respect to the use of the <a href=
+ "#srgb">[SRGB]</a> color space for both inputs and outputs of the composition
+ function.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The use of <a href="#srgb">[SRGB]</a> for the stated semantics of
+ composition is not meant to prevent an actual processor from using some other
+ color space either for internal or external purposes. For example, a
+ presentation processor may ultimately convert the SRGB values used here to
+ the YUV color space for rendition on a television device.</p>
+ </div>
+
+ <p>If a presentation processor does not support a specific, valid color or
+ alpha value, then it must interpret it as being equal to the closest supported
+ value.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>In this context, the phrase <em>closest supported value</em> means the
+ value for which the Euclidean distance between the computed color or alpha
+ and the supported color or alpha in the RGB color space is minimized. If
+ there are multiple closest supported values equally distant from the computed
+ value, then the value least distant from opaque black
+ <code>rgb(0,0,0,255)</code>, i.e., the closest to opaque black, is used.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="style-value-digit" name="style-value-digit"></a>8.3.3
+ <digit></h4>
+
+ <p>A <digit> is used to express integers and other types of numbers or
+ tokens.</p><a id="digit-style-expression-syntax" name=
+ "digit-style-expression-syntax"></a>
+
+ <table class="syntax">
+ <caption>
+ Syntax Representation – <digit>
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<digit>
: "0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9"
-</pre></div>
-</td></tr></tbody></table></div><div class="div3">
-<h4><a id="style-value-duration"></a>8.3.4 <duration></h4><p><em>This section is non-normative.</em></p><div class="note"><p class="prefix"><b>Note:</b></p><p>The information from this section has been removed due to lack of any normative
-use within this specification. This section is retained in its empty form
-in order to prevent section renumbering.</p></div></div><div class="div3">
-<h4><a id="style-value-familyName"></a>8.3.5 <familyName></h4><p>A <familyName> expression specifies a font family name.</p><a id="familyName-style-expression-syntax"></a><table class="syntax"><caption>Syntax Representation – <familyName></caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+
+ <div class="div3">
+ <h4><a id="style-value-duration" name="style-value-duration"></a>8.3.4
+ <duration></h4>
+
+ <p><em>This section is non-normative.</em></p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The information from this section has been removed due to lack of any
+ normative use within this specification. This section is retained in its
+ empty form in order to prevent section renumbering.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="style-value-familyName" name="style-value-familyName"></a>8.3.5
+ <familyName></h4>
+
+ <p>A <familyName> expression specifies a font family name.</p><a id=
+ "familyName-style-expression-syntax" name=
+ "familyName-style-expression-syntax"></a>
+
+ <table class="syntax">
+ <caption>
+ Syntax Representation – <familyName>
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<familyName>
: unquoted-string
| quoted-string
@@ -3419,36 +9126,125 @@
single-quoted-string
: "'" ( [^'\\] | escape )+ "'"
-</pre></div>
-
-</td></tr></tbody></table><p>In addition to adhering to the syntax rules specified above, the following semantic rules apply:</p><ul><li><p>the semantic value of a <familyName> expression is the semantic value of its <code>unquoted-string</code> or <code>quoted-string</code>
-non-terminal, according to whichever applies;</p></li><li><p>the semantic value of an <code>unquoted-string</code> non-terminal is a pair <code><</code><em>quoted</em>, <em>content</em><code>></code>,
-where <em>quoted</em> is a boolean <code>false</code>, and
-where <em>content</em> is the result of appending the value of each <code>identifier</code>
-non-terminal, in lexical order, where the value of each identifier is preceded by a single SPACE (U+0020) character if it is not the first
-identifier;</p></li><li><p>the semantic value of a <code>quoted-string</code> non-terminal is a pair <code><</code><em>quoted</em>, <em>content</em><code>></code>,
-where <em>quoted</em> is a boolean <code>true</code>, and
-where <em>content</em> is the unquoted content of the quoted string, i.e., the sequence of characters between the delimiting quotes.</p></li><li><p>the semantic value of an <code>escape</code> non-terminal is the value of the escaped <code>char</code>;</p></li><li><p>a <familyName> that takes the form of an <code>unquoted-string</code> that contains an <code>identifier</code> that
-starts with two <code>-</code> HYPHEN-MINUS (U+002D) characters must be considered to be invalid;</p></li><li><p>a <familyName> that takes the form of an <code>unquoted-string</code> that contains a single <code>identifier</code> that
-matches (by case sensitive comparison) a <genericFamilyName> must be interpreted as that <genericFamilyName>;</p></li><li><p>a <familyName> that takes the form of a <code>quoted-string</code> whose content (unquoted value)
-matches (by case sensitive comparison) a <genericFamilyName> must not be interpreted as that <genericFamilyName>, but as
-the actual name of a non-generic font family.</p></li></ul><div class="note"><p class="prefix"><b>Note:</b></p><p>The syntactic element <em><code>char</code></em> is to be interpreted according
-to the <code>Char</code> production defined by <a href="#xml10">[XML 1.0]</a> §2.2.</p></div><div class="note"><p class="prefix"><b>Note:</b></p><p>The <code>{unicode}</code> escape mechanism defined by <a href="#css2">[CSS2]</a> §4.1.1
-is not supported by this syntax; rather, authors are expected to either (1) directly encode the character
-using the document encoding or (2) use an XML character reference according to
-<a href="#xml10">[XML 1.0]</a> §4.1. When a syntactically significant character needs to be used
-without its normal syntactic interpretation, it may be be escaped using the backslash
-(reverse solidus) <code>escape</code> non-terminal specified above.</p><p>When using the backslash (reverse solidus) <code>escape</code> non-terminal, the above syntax does
-not place any restriction on what character may be escaped, e.g., <code>\\[\n\r\f0-9a-f]</code> are
-permitted. If one of these latter escapes appears in a <familyName> expression, then it will
-need to be converted to a <code>{unicode}</code> escape if it is to be used with a standard XSL-FO
-or CSS parser. In particular, a backslash followed by a newline is ignored by CSS, while it is not
-ignored by the above syntax. Such an unignored escaped newline would need to be represented using
-an equivalent <code>{unicode}</code> escape, such as <code>\a</code>, to order to express in CSS.</p></div></div><div class="div3">
-<h4><a id="style-value-genericFamilyName"></a>8.3.6 <genericFamilyName></h4><p>A <genericFamilyName> expression specifies a font family using a general
-token that indicates a class of font families.</p><p>The resolution of a generic family name to a concrete font instance is considered to
-be implementation dependent, both in the case of content authoring and content interpretation.</p><a id="genericFamilyName-style-expression-syntax"></a><table class="syntax"><caption>Syntax Representation – <genericFamilyName></caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre> <!-- " -->
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>In addition to adhering to the syntax rules specified above, the following
+ semantic rules apply:</p>
+
+ <ul>
+ <li>
+ <p>the semantic value of a <familyName> expression is the semantic
+ value of its <code>unquoted-string</code> or <code>quoted-string</code>
+ non-terminal, according to whichever applies;</p>
+ </li>
+
+ <li>
+ <p>the semantic value of an <code>unquoted-string</code> non-terminal is a
+ pair <code><</code><em>quoted</em>, <em>content</em><code>></code>,
+ where <em>quoted</em> is a boolean <code>false</code>, and where
+ <em>content</em> is the result of appending the value of each
+ <code>identifier</code> non-terminal, in lexical order, where the value of
+ each identifier is preceded by a single SPACE (U+0020) character if it is
+ not the first identifier;</p>
+ </li>
+
+ <li>
+ <p>the semantic value of a <code>quoted-string</code> non-terminal is a
+ pair <code><</code><em>quoted</em>, <em>content</em><code>></code>,
+ where <em>quoted</em> is a boolean <code>true</code>, and where
+ <em>content</em> is the unquoted content of the quoted string, i.e., the
+ sequence of characters between the delimiting quotes.</p>
+ </li>
+
+ <li>
+ <p>the semantic value of an <code>escape</code> non-terminal is the value
+ of the escaped <code>char</code>;</p>
+ </li>
+
+ <li>
+ <p>a <familyName> that takes the form of an
+ <code>unquoted-string</code> that contains an <code>identifier</code> that
+ starts with two <code>-</code> HYPHEN-MINUS (U+002D) characters must be
+ considered to be invalid;</p>
+ </li>
+
+ <li>
+ <p>a <familyName> that takes the form of an
+ <code>unquoted-string</code> that contains a single <code>identifier</code>
+ that matches (by case sensitive comparison) a <genericFamilyName>
+ must be interpreted as that <genericFamilyName>;</p>
+ </li>
+
+ <li>
+ <p>a <familyName> that takes the form of a <code>quoted-string</code>
+ whose content (unquoted value) matches (by case sensitive comparison) a
+ <genericFamilyName> must not be interpreted as that
+ <genericFamilyName>, but as the actual name of a non-generic font
+ family.</p>
+ </li>
+ </ul>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The syntactic element <em><code>char</code></em> is to be interpreted
+ according to the <code>Char</code> production defined by <a href=
+ "#xml10">[XML 1.0]</a> §2.2.</p>
+ </div>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The <code>{unicode}</code> escape mechanism defined by <a href=
+ "#css2">[CSS2]</a> §4.1.1 is not supported by this syntax; rather,
+ authors are expected to either (1) directly encode the character using the
+ document encoding or (2) use an XML character reference according to <a href=
+ "#xml10">[XML 1.0]</a> §4.1. When a syntactically significant character
+ needs to be used without its normal syntactic interpretation, it may be be
+ escaped using the backslash (reverse solidus) <code>escape</code>
+ non-terminal specified above.</p>
+
+ <p>When using the backslash (reverse solidus) <code>escape</code>
+ non-terminal, the above syntax does not place any restriction on what
+ character may be escaped, e.g., <code>\\[\n\r\f0-9a-f]</code> are permitted.
+ If one of these latter escapes appears in a <familyName> expression,
+ then it will need to be converted to a <code>{unicode}</code> escape if it is
+ to be used with a standard XSL-FO or CSS parser. In particular, a backslash
+ followed by a newline is ignored by CSS, while it is not ignored by the above
+ syntax. Such an unignored escaped newline would need to be represented using
+ an equivalent <code>{unicode}</code> escape, such as <code>\a</code>, to
+ order to express in CSS.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="style-value-genericFamilyName" name=
+ "style-value-genericFamilyName"></a>8.3.6 <genericFamilyName></h4>
+
+ <p>A <genericFamilyName> expression specifies a font family using a
+ general token that indicates a class of font families.</p>
+
+ <p>The resolution of a generic family name to a concrete font instance is
+ considered to be implementation dependent, both in the case of content
+ authoring and content interpretation.</p><a id=
+ "genericFamilyName-style-expression-syntax" name=
+ "genericFamilyName-style-expression-syntax"></a>
+
+ <table class="syntax">
+ <caption>
+ Syntax Representation – <genericFamilyName>
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<genericFamilyName>
: "default"
| "monospace"
@@ -3458,36 +9254,111 @@
| "monospaceSerif"
| "proportionalSansSerif"
| "proportionalSerif"
-</pre></div>
-</td></tr></tbody></table><p>The mapping between a generic (font) family name and an actual font is not
-determined by this specification; however, the
-distinction of monospace versus proportional and serif versus sans-serif
-should be maintained if possible when performing presentation.</p><p>If a generic (font) family name of <code>monospace</code> is specified,
-then it may be interpreted as equivalent to either <code>monospaceSansSerif</code>
-or <code>monospaceSerif</code>. The generic family names <code>sansSerif</code>
-and <code>serif</code> are to be interpreted as equivalent to <code>proportionalSansSerif</code>
-and <code>proportionalSerif</code>, respectively.</p><p>If the generic family name <code>default</code> is specified (or implied by
-an initial value), then its typographic characteristics are considered to be implementation
-dependent; however, it is recommended that this default font family be mapped to
-an monospaced, sans-serif font.</p></div><div class="div3">
-<h4><a id="style-value-hexDigit"></a>8.3.7 <hexDigit></h4><p>A <hexDigit> is used to express integers and other types of numbers or tokens
-that employ base 16 arithmetic.</p><p>For the purpose of parsing, a distinction must not be made between lower and upper case.</p><a id="hexDigit-style-expression-syntax"></a><table class="syntax"><caption>Syntax Representation – <hexDigit></caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>The mapping between a generic (font) family name and an actual font is not
+ determined by this specification; however, the distinction of monospace versus
+ proportional and serif versus sans-serif should be maintained if possible when
+ performing presentation.</p>
+
+ <p>If a generic (font) family name of <code>monospace</code> is specified, then
+ it may be interpreted as equivalent to either <code>monospaceSansSerif</code>
+ or <code>monospaceSerif</code>. The generic family names <code>sansSerif</code>
+ and <code>serif</code> are to be interpreted as equivalent to
+ <code>proportionalSansSerif</code> and <code>proportionalSerif</code>,
+ respectively.</p>
+
+ <p>If the generic family name <code>default</code> is specified (or implied by
+ an initial value), then its typographic characteristics are considered to be
+ implementation dependent; however, it is recommended that this default font
+ family be mapped to an monospaced, sans-serif font.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="style-value-hexDigit" name="style-value-hexDigit"></a>8.3.7
+ <hexDigit></h4>
+
+ <p>A <hexDigit> is used to express integers and other types of numbers or
+ tokens that employ base 16 arithmetic.</p>
+
+ <p>For the purpose of parsing, a distinction must not be made between lower and
+ upper case.</p><a id="hexDigit-style-expression-syntax" name=
+ "hexDigit-style-expression-syntax"></a>
+
+ <table class="syntax">
+ <caption>
+ Syntax Representation – <hexDigit>
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<hexDigit>
: <a href="#style-value-digit"><digit></a>
| "a" | "b" | "c" | "d" | "e" | "f"
| "A" | "B" | "C" | "D" | "E" | "F"
-</pre></div>
-</td></tr></tbody></table></div><div class="div3">
-<h4><a id="style-value-integer"></a>8.3.8 <integer></h4><p>An <integer> expression is used to express an arbitrary, signed integral value.</p><a id="integer-style-expression-syntax"></a><table class="syntax"><caption>Syntax Representation – <integer></caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+
+ <div class="div3">
+ <h4><a id="style-value-integer" name="style-value-integer"></a>8.3.8
+ <integer></h4>
+
+ <p>An <integer> expression is used to express an arbitrary, signed
+ integral value.</p><a id="integer-style-expression-syntax" name=
+ "integer-style-expression-syntax"></a>
+
+ <table class="syntax">
+ <caption>
+ Syntax Representation – <integer>
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<integer>
: ( "+" | "-" )? <a href="#style-value-digit"><digit></a>+
-</pre></div>
-</td></tr></tbody></table></div><div class="div3">
-<h4><a id="style-value-length"></a>8.3.9 <length></h4><p>A <length> expression is used to express either a coordinate component of point
-in a cartesian space or a distance between two points in a cartesian space.</p><a id="length-style-expression-syntax"></a><table class="syntax"><caption>Syntax Representation – <length></caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+
+ <div class="div3">
+ <h4><a id="style-value-length" name="style-value-length"></a>8.3.9
+ <length></h4>
+
+ <p>A <length> expression is used to express either a coordinate component
+ of point in a cartesian space or a distance between two points in a cartesian
+ space.</p><a id="length-style-expression-syntax" name=
+ "length-style-expression-syntax"></a>
+
+ <table class="syntax">
+ <caption>
+ Syntax Representation – <length>
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<length>
: scalar
| percentage
@@ -3512,29 +9383,63 @@
: <a href="#style-value-digit"><digit></a>+
non-negative-real
- : <a href="#style-value-digit"><digit></a>* "." <a href="#style-value-digit"><digit></a>+
+ : <a href="#style-value-digit"><digit></a>* "." <a href=
+"#style-value-digit"><digit></a>+
units
: "px"
| "em"
| "c" // abbreviation of "cell"
-</pre></div>
-</td></tr></tbody></table><p>It is an error to omit the units component of a scalar length
-value.</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><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
-identical to that defined by <a href="#xsl11">[XSL 1.1]</a>, § 5.9.13;
-however, when specified relative to a font whose size is expressed as
-two length measures of non-equal lengths, then one <code>em</code> is
-equal to the inline progression dimension of the anamorphically
-scaled font when used to specify lengths in the inline progression
-direction and equal to the block progression dimension of the scaled
-font when used to specify lengths in the block progression direction.</p><p>The semantics of the unit of measure <code>c</code> (cell) are
-defined by the parameter <a href="#parameter-attribute-cellResolution"><b>6.2.1 ttp:cellResolution</b></a>.</p></div><div class="div3">
-<h4><a id="style-value-namedColor"></a>8.3.10 <namedColor></h4><p>A <namedColor> is used to express an RGBA color with a convenient name, and where the applicable color space is
-defined by <a href="#srgb">[SRGB]</a>.</p><p>For the purpose of parsing, a distinction must not be made between lower and upper case.</p><a id="namedColor-style-expression-syntax"></a><table class="syntax"><caption>Syntax Representation – <namedColor></caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>It is an error to omit the units component of a scalar length value.</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>
+
+ <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 identical to that defined by <a href=
+ "#xsl11">[XSL 1.1]</a>, § 5.9.13; however, when specified relative to a font
+ whose size is expressed as two length measures of non-equal lengths, then one
+ <code>em</code> is equal to the inline progression dimension of the
+ anamorphically scaled font when used to specify lengths in the inline
+ progression direction and equal to the block progression dimension of the
+ scaled font when used to specify lengths in the block progression
+ direction.</p>
+
+ <p>The semantics of the unit of measure <code>c</code> (cell) are defined by
+ the parameter <a href="#parameter-attribute-cellResolution"><b>6.2.1
+ ttp:cellResolution</b></a>.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="style-value-namedColor" name="style-value-namedColor"></a>8.3.10
+ <namedColor></h4>
+
+ <p>A <namedColor> is used to express an RGBA color with a convenient
+ name, and where the applicable color space is defined by <a href=
+ "#srgb">[SRGB]</a>.</p>
+
+ <p>For the purpose of parsing, a distinction must not be made between lower and
+ upper case.</p><a id="namedColor-style-expression-syntax" name=
+ "namedColor-style-expression-syntax"></a>
+
+ <table class="syntax">
+ <caption>
+ Syntax Representation – <namedColor>
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<namedColor>
: "transparent" // #00000000
| "black" // #000000ff
@@ -3555,209 +9460,716 @@
| "teal" // #008080ff
| "aqua" // #00ffffff
| "cyan" // #00ffffff (= aqua)
-</pre></div>
-</td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>Except for <code>transparent</code>, the set of named colors specified above constitutes a proper
-subset of the set of named colors specified by <a href="#svg11">[SVG 1.1]</a>, § 4.2.</p></div></div><div class="div3">
-<h4><a id="style-value-quotedString"></a>8.3.11 <quotedString></h4><p><em>This section is non-normative.</em></p><div class="note"><p class="prefix"><b>Note:</b></p><p>The information from this section has been incorporated into
-<a href="#style-value-familyName"><b>8.3.5 <familyName></b></a>. This section is retained in its empty form
-in order to prevent section renumbering.</p></div></div><div class="div3">
-<h4><a id="style-value-string"></a>8.3.12 <string></h4><p><em>This section is non-normative.</em></p><div class="note"><p class="prefix"><b>Note:</b></p><p>The information from this section has been incorporated into
-<a href="#style-value-familyName"><b>8.3.5 <familyName></b></a>. This section is retained in its empty form
-in order to prevent section renumbering.</p></div></div></div><div class="div2">
-<h3><a id="semantics-style-resolution"></a>8.4 Style Resolution</h3><p>This section defines the semantics of style resolution in terms of
-a standard processing model as follows:</p><ul><li><p><a href="#semantics-style-association"><b>8.4.1 Style Association</b></a></p></li><li><p><a href="#semantics-style-inheritance"><b>8.4.2 Style Inheritance</b></a></p></li><li><p><a href="#semantics-style-resolution-value-categories"><b>8.4.3 Style Resolution Value Categories</b></a></p></li><li><p><a href="#semantics-style-resolution-processing"><b>8.4.4 Style Resolution Processing</b></a></p></li></ul><p>Any implementation of this model is permitted provided that the
-externally observable results are consistent with the results produced
-by this model.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>The semantics of style resolution employed here are based upon
-<a href="#xsl11">[XSL 1.1]</a>, § 5.</p></div><div class="div3">
-<h4><a id="semantics-style-association"></a>8.4.1 Style Association</h4><p>Style association is a sub-process of <a href="#semantics-style-resolution-processing"><b>8.4.4 Style Resolution Processing</b></a> used to determine the
-specified style set of each content and
-layout element.</p><p>Style matter may be associated with content
- and layout matter in a number of ways:</p><ul><li><p><a href="#semantics-style-association-inline">inline styling</a></p></li><li><p><a href="#semantics-style-association-referential">referential styling</a></p></li><li><p><a href="#semantics-style-association-chained-referential">chained referential styling</a></p></li></ul><p>In addition to the above, style matter may be associated with layout matter using:</p><ul><li><p><a href="#semantics-style-association-nested">nested styling</a></p></li></ul><div class="div4">
-<h5><a id="semantics-style-association-inline"></a>8.4.1.1 Inline Styling</h5><p>Style properties may be expressed in an inline manner by direct
-specification of an attribute from the TT Style Namespace on the
-affected element. When expressed in this manner, the association of
-style information is referred to as <em>inline styling</em>.</p><p>Style properties associated by inline styling are afforded a higher priority than all other
-forms of style association.</p><a id="style-association-example-1"></a><table class="example"><caption>Example – Inline Styling</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
-<p <span class="strong">tts:color="white"</span>>White 1 <span <span class="strong">tts:color="yellow"</span>>Yellow</span> White 2</p>
-</pre></div>
-</td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>In the above example, the two text fragments <code>"White 1 "</code> and
-<code>" White 2"</code>, which are interpreted as anonymous spans, are not
-associated with a color style property; rather, they inherit their color style
-from their parent <code>p</code> element as described in <a href="#semantics-style-inheritance-content"><b>8.4.2.1 Content Style Inheritance</b></a> below. </p></div></div><div class="div4">
-<h5><a id="semantics-style-association-referential"></a>8.4.1.2 Referential Styling</h5><p>Style properties may be expressed in an out-of-line manner and referenced by the
-affected element using the <code>style</code> attribute. When expressed in this manner,
-the association of style information is referred to as <em>referential styling</em>.</p><p>If a <code>style</code> attribute specifies multiple references, then those references are
-evaluated in the specified order, and that order applies to resolution of the value of a
-style property in the case that it is specified along multiple reference paths.</p><p>The use of referential styling is restricted to making
-reference to <code>style</code> element descendants of a <code>styling</code>
-element. It is considered an error to reference a <code>style</code>
-element that is a descendant of a <code>layout</code> element.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>The use of referential styling encourages the reuse of style specifications while
-sacrificing locality of reference.</p></div><div class="note"><p class="prefix"><b>Note:</b></p><p>A single <a href="#element-vocab-type-content">Content</a> element may be associated with style properties by a hybrid mixture of
-inline and referential styling, in which case inline styling is given priority as described above
-by <a href="#semantics-style-association-inline"><b>8.4.1.1 Inline Styling</b></a>.</p></div><a id="style-association-example-2"></a><table class="example"><caption>Example – Referential Styling</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>Except for <code>transparent</code>, the set of named colors specified
+ above constitutes a proper subset of the set of named colors specified by
+ <a href="#svg11">[SVG 1.1]</a>, § 4.2.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="style-value-quotedString" name="style-value-quotedString"></a>8.3.11
+ <quotedString></h4>
+
+ <p><em>This section is non-normative.</em></p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The information from this section has been incorporated into <a href=
+ "#style-value-familyName"><b>8.3.5 <familyName></b></a>. This section
+ is retained in its empty form in order to prevent section renumbering.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="style-value-string" name="style-value-string"></a>8.3.12
+ <string></h4>
+
+ <p><em>This section is non-normative.</em></p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The information from this section has been incorporated into <a href=
+ "#style-value-familyName"><b>8.3.5 <familyName></b></a>. This section
+ is retained in its empty form in order to prevent section renumbering.</p>
+ </div>
+ </div>
+ </div>
+
+ <div class="div2">
+ <h3><a id="semantics-style-resolution" name="semantics-style-resolution"></a>8.4
+ Style Resolution</h3>
+
+ <p>This section defines the semantics of style resolution in terms of a standard
+ processing model as follows:</p>
+
+ <ul>
+ <li>
+ <p><a href="#semantics-style-association"><b>8.4.1 Style
+ Association</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#semantics-style-inheritance"><b>8.4.2 Style
+ Inheritance</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#semantics-style-resolution-value-categories"><b>8.4.3 Style
+ Resolution Value Categories</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#semantics-style-resolution-processing"><b>8.4.4 Style Resolution
+ Processing</b></a></p>
+ </li>
+ </ul>
+
+ <p>Any implementation of this model is permitted provided that the externally
+ observable results are consistent with the results produced by this model.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The semantics of style resolution employed here are based upon <a href=
+ "#xsl11">[XSL 1.1]</a>, § 5.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="semantics-style-association" name=
+ "semantics-style-association"></a>8.4.1 Style Association</h4>
+
+ <p>Style association is a sub-process of <a href=
+ "#semantics-style-resolution-processing"><b>8.4.4 Style Resolution
+ Processing</b></a> used to determine the specified style set of each content
+ and layout element.</p>
+
+ <p>Style matter may be associated with content and layout matter in a number of
+ ways:</p>
+
+ <ul>
+ <li>
+ <p><a href="#semantics-style-association-inline">inline styling</a></p>
+ </li>
+
+ <li>
+ <p><a href="#semantics-style-association-referential">referential
+ styling</a></p>
+ </li>
+
+ <li>
+ <p><a href="#semantics-style-association-chained-referential">chained
+ referential styling</a></p>
+ </li>
+ </ul>
+
+ <p>In addition to the above, style matter may be associated with layout matter
+ using:</p>
+
+ <ul>
+ <li>
+ <p><a href="#semantics-style-association-nested">nested styling</a></p>
+ </li>
+ </ul>
+
+ <div class="div4">
+ <h5><a id="semantics-style-association-inline" name=
+ "semantics-style-association-inline"></a>8.4.1.1 Inline Styling</h5>
+
+ <p>Style properties may be expressed in an inline manner by direct
+ specification of an attribute from the TT Style Namespace on the affected
+ element. When expressed in this manner, the association of style information
+ is referred to as <em>inline styling</em>.</p>
+
+ <p>Style properties associated by inline styling are afforded a higher
+ priority than all other forms of style association.</p><a id=
+ "style-association-example-1" name="style-association-example-1"></a>
+
+ <table class="example">
+ <caption>
+ Example – Inline Styling
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
+<p <span class="strong">tts:color="white"</span>>White 1 <span <span class=
+"strong">tts:color="yellow"</span>>Yellow</span> White 2</p>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>In the above example, the two text fragments <code>"White 1 "</code> and
+ <code>" White 2"</code>, which are interpreted as anonymous spans, are not
+ associated with a color style property; rather, they inherit their color
+ style from their parent <code>p</code> element as described in <a href=
+ "#semantics-style-inheritance-content"><b>8.4.2.1 Content Style
+ Inheritance</b></a> below.</p>
+ </div>
+ </div>
+
+ <div class="div4">
+ <h5><a id="semantics-style-association-referential" name=
+ "semantics-style-association-referential"></a>8.4.1.2 Referential
+ Styling</h5>
+
+ <p>Style properties may be expressed in an out-of-line manner and referenced
+ by the affected element using the <code>style</code> attribute. When
+ expressed in this manner, the association of style information is referred to
+ as <em>referential styling</em>.</p>
+
+ <p>If a <code>style</code> attribute specifies multiple references, then
+ those references are evaluated in the specified order, and that order applies
+ to resolution of the value of a style property in the case that it is
+ specified along multiple reference paths.</p>
+
+ <p>The use of referential styling is restricted to making reference to
+ <code>style</code> element descendants of a <code>styling</code> element. It
+ is considered an error to reference a <code>style</code> element that is a
+ descendant of a <code>layout</code> element.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The use of referential styling encourages the reuse of style
+ specifications while sacrificing locality of reference.</p>
+ </div>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>A single <a href="#element-vocab-type-content">Content</a> element may
+ be associated with style properties by a hybrid mixture of inline and
+ referential styling, in which case inline styling is given priority as
+ described above by <a href="#semantics-style-association-inline"><b>8.4.1.1
+ Inline Styling</b></a>.</p>
+ </div><a id="style-association-example-2" name=
+ "style-association-example-2"></a>
+
+ <table class="example">
+ <caption>
+ Example – Referential Styling
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<style <span class="strong">xml:id="s1"</span> tts:color="white"/>
<style <span class="strong">xml:id="s2"</span> tts:color="yellow"/>
...
-<p <span class="strong">style="s1"</span>>White 1 <span <span class="strong">style="s2"</span>>Yellow</span> White 2</p>
-</pre></div>
-</td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>In the above example, the two text fragments <code>"White 1 "</code> and
-<code>" White 2"</code>, which are interpreted as anonymous spans, are not
-associated with a color style property; rather, they inherit their color style
-from their parent <code>p</code> element as described in <a href="#semantics-style-inheritance-content"><b>8.4.2.1 Content Style Inheritance</b></a> below.</p></div></div><div class="div4">
-<h5><a id="semantics-style-association-chained-referential"></a>8.4.1.3 Chained Referential Styling</h5><p>Style properties may be expressed in an out-of-line manner and may themselves reference
-other out-of-line style properties, thus creating a chain of references starting at the
-affected element. When expressed in this manner, the association of style information
-is referred to as <em>chained referential styling</em>.</p><p>If the same style property is specified in more than one referenced
-style set, then the last referenced style set applies, where the order of application starts from
-the affected element and proceeds to referenced style sets, and, in turn, to subsequent referenced style sets.</p><p>A loop in a sequence of chained style references must be considered an error.</p><p>The use of referential styling is restricted to making
-reference to <code>style</code> element descendants of a <code>styling</code>
-element. It is considered an error to reference a <code>style</code>
-element that is a descendant of a <code>layout</code> element.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>The use of chained referential styling encourages the grouping of style specifications
-into general and specific sets, which further aids in style specification reuse.</p></div><div class="note"><p class="prefix"><b>Note:</b></p><p>A single <a href="#element-vocab-type-content">Content</a> element may be associated with style properties by a hybrid mixture of
-inline, referential styling, and chained referential styling, in which case inline styling is
-given priority as described above by <a href="#semantics-style-association-inline"><b>8.4.1.1 Inline Styling</b></a>.</p></div><a id="style-association-example-3"></a><table class="example"><caption>Example – Chained Referential Styling</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
-<style <span class="strong">xml:id="s1"</span> tts:color="white" tts:fontFamily="monospaceSerif"/>
-<style <span class="strong">xml:id="s2"</span> <span class="strong">style="s1"</span> tts:color="yellow"/>
+<p <span class="strong">style="s1"</span>>White 1 <span <span class=
+"strong">style="s2"</span>>Yellow</span> White 2</p>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>In the above example, the two text fragments <code>"White 1 "</code> and
+ <code>" White 2"</code>, which are interpreted as anonymous spans, are not
+ associated with a color style property; rather, they inherit their color
+ style from their parent <code>p</code> element as described in <a href=
+ "#semantics-style-inheritance-content"><b>8.4.2.1 Content Style
+ Inheritance</b></a> below.</p>
+ </div>
+ </div>
+
+ <div class="div4">
+ <h5><a id="semantics-style-association-chained-referential" name=
+ "semantics-style-association-chained-referential"></a>8.4.1.3 Chained
+ Referential Styling</h5>
+
+ <p>Style properties may be expressed in an out-of-line manner and may
+ themselves reference other out-of-line style properties, thus creating a
+ chain of references starting at the affected element. When expressed in this
+ manner, the association of style information is referred to as <em>chained
+ referential styling</em>.</p>
+
+ <p>If the same style property is specified in more than one referenced style
+ set, then the last referenced style set applies, where the order of
+ application starts from the affected element and proceeds to referenced style
+ sets, and, in turn, to subsequent referenced style sets.</p>
+
+ <p>A loop in a sequence of chained style references must be considered an
+ error.</p>
+
+ <p>The use of referential styling is restricted to making reference to
+ <code>style</code> element descendants of a <code>styling</code> element. It
+ is considered an error to reference a <code>style</code> element that is a
+ descendant of a <code>layout</code> element.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The use of chained referential styling encourages the grouping of style
+ specifications into general and specific sets, which further aids in style
+ specification reuse.</p>
+ </div>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>A single <a href="#element-vocab-type-content">Content</a> element may
+ be associated with style properties by a hybrid mixture of inline,
+ referential styling, and chained referential styling, in which case inline
+ styling is given priority as described above by <a href=
+ "#semantics-style-association-inline"><b>8.4.1.1 Inline
+ Styling</b></a>.</p>
+ </div><a id="style-association-example-3" name=
+ "style-association-example-3"></a>
+
+ <table class="example">
+ <caption>
+ Example – Chained Referential Styling
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
+<style <span class=
+"strong">xml:id="s1"</span> tts:color="white" tts:fontFamily="monospaceSerif"/>
+<style <span class="strong">xml:id="s2"</span> <span class=
+"strong">style="s1"</span> tts:color="yellow"/>
...
<p <span class="strong">style="s1"</span>>White Monospace</p>
<p <span class="strong">style="s2"</span>>Yellow Monospace</p>
-</pre></div>
-</td></tr></tbody></table></div><div class="div4">
-<h5><a id="semantics-style-association-nested"></a>8.4.1.4 Nested Styling</h5><p>Style properties may be expressed in a nested manner by direct specification of one or
-more <code>style</code> element children of the affected element.
-When expressed in this manner, the association of style information
-is referred to as <em>nested styling</em>.</p><p>Style properties associated by nested styling are afforded a lower priority than inline
-styling but with higher priority than referential styling.</p><a id="style-association-example-4"></a><table class="example"><caption>Example – Nested Styling</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+
+ <div class="div4">
+ <h5><a id="semantics-style-association-nested" name=
+ "semantics-style-association-nested"></a>8.4.1.4 Nested Styling</h5>
+
+ <p>Style properties may be expressed in a nested manner by direct
+ specification of one or more <code>style</code> element children of the
+ affected element. When expressed in this manner, the association of style
+ information is referred to as <em>nested styling</em>.</p>
+
+ <p>Style properties associated by nested styling are afforded a lower
+ priority than inline styling but with higher priority than referential
+ styling.</p><a id="style-association-example-4" name=
+ "style-association-example-4"></a>
+
+ <table class="example">
+ <caption>
+ Example – Nested Styling
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<region xml:id="r1">
<span class="strong"><style tts:extent="128px 66px"/></span>
<span class="strong"><style tts:origin="0px 0px"/></span>
<span class="strong"><style tts:displayAlign="center"/></span>
</region>
-</pre></div>
-</td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>In this version of this specification, nested styling applies only
-to the <code>region</code> element.</p></div></div></div><div class="div3">
-<h4><a id="semantics-style-inheritance"></a>8.4.2 Style Inheritance</h4><p>Style inheritance is a sub-process of <a href="#semantics-style-resolution-processing"><b>8.4.4 Style Resolution Processing</b></a> used to determine the
-specified style set of each content and
-layout element.</p><p>Styles are further propagated to content matter
-using:
-</p><ul><li><p><a href="#semantics-style-inheritance-content">content style inheritance</a></p></li><li><p><a href="#semantics-style-inheritance-content">region style inheritance</a></p></li></ul><p>For the purpose of determining inherited styles, the element hierarchy of
-an intermediate synchronic document form of a <em>Document Instance</em> must be used, where
-such intermediate forms are defined by <a href="#semantics-region-layout-step-1"><b>9.3.2 Intermediate Synchronic Document Construction</b></a>.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>The intermediate synchronic document form is utilized rather than
-the original form in order to facilitate region inheritance
-processing.</p></div><div class="div4">
-<h5><a id="semantics-style-inheritance-content"></a>8.4.2.1 Content Style Inheritance</h5><p>Style properties are inherited from ancestor <a href="#element-vocab-type-content">Content</a> elements
-within an intermediate synchronic document
-if a style property is not associated with a <a href="#element-vocab-type-content">Content</a> element (or
-an anonymous span) and the style property is designated as
-inheritable.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>The <code>tt</code> element is not a <a href="#element-vocab-type-content">Content</a> element;
-consequently, the <code>body</code> element is the outermost element from which content style inheritance occurs.</p></div><p>If a style property is determined to require inheritance, then the inherited value must
-be the value of the same named style property in the computed
-style set of the
-element's immediate ancestor element
-within the applicable intermediate synchronic document.</p><a id="style-inheritance-example-2"></a><table class="example"><caption>Example – Content Style Inheritance</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>In this version of this specification, nested styling applies only to
+ the <code>region</code> element.</p>
+ </div>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="semantics-style-inheritance" name=
+ "semantics-style-inheritance"></a>8.4.2 Style Inheritance</h4>
+
+ <p>Style inheritance is a sub-process of <a href=
+ "#semantics-style-resolution-processing"><b>8.4.4 Style Resolution
+ Processing</b></a> used to determine the specified style set of each content
+ and layout element.</p>
+
+ <p>Styles are further propagated to content matter using:</p>
+
+ <ul>
+ <li>
+ <p><a href="#semantics-style-inheritance-content">content style
+ inheritance</a></p>
+ </li>
+
+ <li>
+ <p><a href="#semantics-style-inheritance-content">region style
+ inheritance</a></p>
+ </li>
+ </ul>
+
+ <p>For the purpose of determining inherited styles, the element hierarchy of an
+ intermediate synchronic document form of a <em>Document Instance</em> must be
+ used, where such intermediate forms are defined by <a href=
+ "#semantics-region-layout-step-1"><b>9.3.2 Intermediate Synchronic Document
+ Construction</b></a>.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The intermediate synchronic document form is utilized rather than the
+ original form in order to facilitate region inheritance processing.</p>
+ </div>
+
+ <div class="div4">
+ <h5><a id="semantics-style-inheritance-content" name=
+ "semantics-style-inheritance-content"></a>8.4.2.1 Content Style
+ Inheritance</h5>
+
+ <p>Style properties are inherited from ancestor <a href=
+ "#element-vocab-type-content">Content</a> elements within an intermediate
+ synchronic document if a style property is not associated with a <a href=
+ "#element-vocab-type-content">Content</a> element (or an anonymous span) and
+ the style property is designated as inheritable.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The <code>tt</code> element is not a <a href=
+ "#element-vocab-type-content">Content</a> element; consequently, the
+ <code>body</code> element is the outermost element from which content style
+ inheritance occurs.</p>
+ </div>
+
+ <p>If a style property is determined to require inheritance, then the
+ inherited value must be the value of the same named style property in the
+ computed style set of the element's immediate ancestor element within the
+ applicable intermediate synchronic document.</p><a id=
+ "style-inheritance-example-2" name="style-inheritance-example-2"></a>
+
+ <table class="example">
+ <caption>
+ Example – Content Style Inheritance
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<p <span class="strong">tts:fontFamily="monospaceSansSerif"</span>>
<span tts:color="yellow">Yellow Monospace</span>
</p>
-</pre></div>
-</td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>In the above example, the <code>span</code> element that encloses the character items
-<code>Yellow Monospace</code> is not associated with a <code>tts:fontFamily</code> style
-property and this property is inheritable; therefore, the value of the
-<code>tts:fontFamily</code> style
-is inherited from the computed style
-set of the ancestor <code>p</code> element,
-and is added to the
-specified
-style
-set of the <code>span</code> element.</p></div></div><div class="div4">
-<h5><a id="semantics-style-inheritance-region"></a>8.4.2.2 Region Style Inheritance</h5><p>Style properties are inherited from a region element in the following case:</p><ol class="enumar"><li><p>if a style property <em>P</em> is not associated with
-a <a href="#element-vocab-type-content">Content</a> element
-or an anonymous span <em>E</em> and the style
-property is designated as inheritable, and</p></li><li><p>if that
-style property <em>P</em> is in the computed style
-set of region
-<em>R</em>,
-and</p></li><li><p>if that element <em>E</em> is flowed into (presented within) region
-<em>R</em>.</p></li></ol><a id="style-inheritance-example-3"></a><table class="example"><caption>Example – Region Style Inheritance</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>In the above example, the <code>span</code> element that encloses the
+ character items <code>Yellow Monospace</code> is not associated with a
+ <code>tts:fontFamily</code> style property and this property is
+ inheritable; therefore, the value of the <code>tts:fontFamily</code> style
+ is inherited from the computed style set of the ancestor <code>p</code>
+ element, and is added to the specified style set of the <code>span</code>
+ element.</p>
+ </div>
+ </div>
+
+ <div class="div4">
+ <h5><a id="semantics-style-inheritance-region" name=
+ "semantics-style-inheritance-region"></a>8.4.2.2 Region Style
+ Inheritance</h5>
+
+ <p>Style properties are inherited from a region element in the following
+ case:</p>
+
+ <ol class="enumar">
+ <li>
+ <p>if a style property <em>P</em> is not associated with a <a href=
+ "#element-vocab-type-content">Content</a> element or an anonymous span
+ <em>E</em> and the style property is designated as inheritable, and</p>
+ </li>
+
+ <li>
+ <p>if that style property <em>P</em> is in the computed style set of
+ region <em>R</em>, and</p>
+ </li>
+
+ <li>
+ <p>if that element <em>E</em> is flowed into (presented within) region
+ <em>R</em>.</p>
+ </li>
+ </ol><a id="style-inheritance-example-3" name=
+ "style-inheritance-example-3"></a>
+
+ <table class="example">
+ <caption>
+ Example – Region Style Inheritance
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<region <span class="strong">xml:id="r1"</span>>
- <style tts:color="yellow"/>
- <style tts:fontFamily="monospaceSerif"/>
+ <style tts:color="yellow"/>
+ <style tts:fontFamily="monospaceSerif"/>
</region>
...
<p <span class="strong">region="r1"</span>>Yellow Monospace</p>
-</pre></div>
-</td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>In the above example, the anonymous span that encloses the character
-items <code>Yellow Monospace</code> effectively inherits the <code>tts:color</code>
-and <code>tts:fontFamily</code> styles specified on the <code>region</code>
-element into which the <code>p</code> element is flowed (presented).</p></div></div></div><div class="div3">
-<h4><a id="semantics-style-resolution-value-categories"></a>8.4.3 Style Resolution Value Categories</h4><p>During style resolution, layout, and presentation processing,
-three categories of style property values are distinguished as
-follows:</p><ul><li><p><a href="#semantics-style-resolved-value-category-specified">specified values</a></p></li><li><p><a href="#semantics-style-resolved-value-category-computed">computed values</a></p></li><li><p><a href="#semantics-style-resolved-value-category-actual">actual values</a></p></li></ul><div class="div4">
-<h5><a id="semantics-style-resolved-value-category-specified"></a>8.4.3.1 Specified Values</h5><p>Values of style properties that are associated with or inherited
-by an element or anonymous span are referred to as <em>specified values</em>. The
-set of all specified style properties of a given element is referred to
-as the <em>specified style set</em> of that element.</p></div><div class="div4">
-<h5><a id="semantics-style-resolved-value-category-computed"></a>8.4.3.2 Computed Values</h5><p>When style properties are specified using relative value expressions,
-such as a named color, a relative unit (e.g., cell), or a percentage, then
-they need to be further resolved into absolute units, such as an RGB triple,
-pixels, etc.</p><p>During the style resolution process, all specified style values are
-reinterpreted (or recalculated) in absolute terms, and then recorded as
-<em>computed values</em>. The
-set of all computed style properties of a given element is referred to
-as the <em>computed style set</em> of that element.</p><p>When a style value is inherited, either explicitly or implicitly, it
-is the computed value of the style that is inherited from an ancestor
-element. This is required since the resolution of certain relative units,
-such as percentage, require evaluating the expression in the immediate
-(local) context of reference, and not in a distant (remote) context of
-reference where the related (resolving) expression is not available.</p></div><div class="div4">
-<h5><a id="semantics-style-resolved-value-category-actual"></a>8.4.3.3 Actual Values</h5><p>During the actual presentation process, other transformations occur
-that map some value expressions to concrete, physical values. For example,
-the colors of computed style values are further subjected to closest color
-approximation and gamma correction
-during the display process. In addition, length value expressions that use
-pixels in computed style values are considered to express logical rather than
-physical (device) pixels. Consequently, these logical pixels are subject to
-being further transformed or mapped to physical (device) pixels during
-presentation.</p><p>The final values that result from the logical to device mapping
-process are referred to as <em>actual values</em>. The set of all
-actual style properties of a given element is referred to as the
-<em>actual style set</em> of that element.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>More than one set of actual values may be produced during the
-process of presentation. For example, a TTML presentation processor
-device may output an RGBA component video signal which is then
-further transformed by an NTSC or PAL television to produce a final
-image. In this case, both color and dimensions may further be modified
-prior to presentation.</p></div><div class="note"><p class="prefix"><b>Note:</b></p><p>In general, a TTML presentation processor will not have access
-to actual style set values; as a consequence, no further use or reference
-to actual values is made below when formally describing the style
-resolution process.</p></div></div></div><div class="div3">
-<h4><a id="semantics-style-resolution-processing"></a>8.4.4 Style Resolution Processing</h4><p>The process of style resolution is defined herein as the procedure
-(and results thereof) for resolving (determining) the computed values
-of all style properties that apply to content and layout elements:</p><ul><li><p><a href="#semantics-style-resolution-processing-definitions"><b>8.4.4.1 Conceptual Definitions</b></a></p></li><li><p><a href="#semantics-style-resolution-processing-sss"><b>8.4.4.2 Specified Style Set Processing</b></a></p></li><li><p><a href="#semantics-style-resolution-processing-css"><b>8.4.4.3 Computed Style Set Processing</b></a></p></li><li><p><a href="#semantics-style-resolution-process-overall"><b>8.4.4.4 Style Resolution Process</b></a></p></li></ul><p>The process described here forms an integral sub-process of
-<a href="#semantics-region-layout"><b>9.3 Region Layout and Presentation</b></a>.</p><div class="div4">
-<h5><a id="semantics-style-resolution-processing-definitions"></a>8.4.4.1 Conceptual Definitions</h5><p>For the purpose of interpreting the style resolution processing
-model specified below, the following conceptual definitions apply:</p><dl><dt class="label">[style property]</dt><dd><p>a style property, <em>P</em>, is considered to consist of a
-tuple <code>[name, value]</code>, where the name of the
-property is a tuple <code>[namespace value,
-unqualified name]</code> and the value of the property is a
-tuple <code>[category, type, value expression]</code></p><a id="conceptual-definition-example-style-property"></a><table class="example"><caption>Example – conceptual style property</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>In the above example, the anonymous span that encloses the character
+ items <code>Yellow Monospace</code> effectively inherits the
+ <code>tts:color</code> and <code>tts:fontFamily</code> styles specified on
+ the <code>region</code> element into which the <code>p</code> element is
+ flowed (presented).</p>
+ </div>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="semantics-style-resolution-value-categories" name=
+ "semantics-style-resolution-value-categories"></a>8.4.3 Style Resolution Value
+ Categories</h4>
+
+ <p>During style resolution, layout, and presentation processing, three
+ categories of style property values are distinguished as follows:</p>
+
+ <ul>
+ <li>
+ <p><a href="#semantics-style-resolved-value-category-specified">specified
+ values</a></p>
+ </li>
+
+ <li>
+ <p><a href="#semantics-style-resolved-value-category-computed">computed
+ values</a></p>
+ </li>
+
+ <li>
+ <p><a href="#semantics-style-resolved-value-category-actual">actual
+ values</a></p>
+ </li>
+ </ul>
+
+ <div class="div4">
+ <h5><a id="semantics-style-resolved-value-category-specified" name=
+ "semantics-style-resolved-value-category-specified"></a>8.4.3.1 Specified
+ Values</h5>
+
+ <p>Values of style properties that are associated with or inherited by an
+ element or anonymous span are referred to as <em>specified values</em>. The
+ set of all specified style properties of a given element is referred to as
+ the <em>specified style set</em> of that element.</p>
+ </div>
+
+ <div class="div4">
+ <h5><a id="semantics-style-resolved-value-category-computed" name=
+ "semantics-style-resolved-value-category-computed"></a>8.4.3.2 Computed
+ Values</h5>
+
+ <p>When style properties are specified using relative value expressions, such
+ as a named color, a relative unit (e.g., cell), or a percentage, then they
+ need to be further resolved into absolute units, such as an RGB triple,
+ pixels, etc.</p>
+
+ <p>During the style resolution process, all specified style values are
+ reinterpreted (or recalculated) in absolute terms, and then recorded as
+ <em>computed values</em>. The set of all computed style properties of a given
+ element is referred to as the <em>computed style set</em> of that
+ element.</p>
+
+ <p>When a style value is inherited, either explicitly or implicitly, it is
+ the computed value of the style that is inherited from an ancestor element.
+ This is required since the resolution of certain relative units, such as
+ percentage, require evaluating the expression in the immediate (local)
+ context of reference, and not in a distant (remote) context of reference
+ where the related (resolving) expression is not available.</p>
+ </div>
+
+ <div class="div4">
+ <h5><a id="semantics-style-resolved-value-category-actual" name=
+ "semantics-style-resolved-value-category-actual"></a>8.4.3.3 Actual
+ Values</h5>
+
+ <p>During the actual presentation process, other transformations occur that
+ map some value expressions to concrete, physical values. For example, the
+ colors of computed style values are further subjected to closest color
+ approximation and gamma correction during the display process. In addition,
+ length value expressions that use pixels in computed style values are
+ considered to express logical rather than physical (device) pixels.
+ Consequently, these logical pixels are subject to being further transformed
+ or mapped to physical (device) pixels during presentation.</p>
+
+ <p>The final values that result from the logical to device mapping process
+ are referred to as <em>actual values</em>. The set of all actual style
+ properties of a given element is referred to as the <em>actual style set</em>
+ of that element.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>More than one set of actual values may be produced during the process of
+ presentation. For example, a TTML presentation processor device may output
+ an RGBA component video signal which is then further transformed by an NTSC
+ or PAL television to produce a final image. In this case, both color and
+ dimensions may further be modified prior to presentation.</p>
+ </div>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>In general, a TTML presentation processor will not have access to actual
+ style set values; as a consequence, no further use or reference to actual
+ values is made below when formally describing the style resolution
+ process.</p>
+ </div>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="semantics-style-resolution-processing" name=
+ "semantics-style-resolution-processing"></a>8.4.4 Style Resolution
+ Processing</h4>
+
+ <p>The process of style resolution is defined herein as the procedure (and
+ results thereof) for resolving (determining) the computed values of all style
+ properties that apply to content and layout elements:</p>
+
+ <ul>
+ <li>
+ <p><a href="#semantics-style-resolution-processing-definitions"><b>8.4.4.1
+ Conceptual Definitions</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#semantics-style-resolution-processing-sss"><b>8.4.4.2
+ Specified Style Set Processing</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#semantics-style-resolution-processing-css"><b>8.4.4.3 Computed
+ Style Set Processing</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#semantics-style-resolution-process-overall"><b>8.4.4.4 Style
+ Resolution Process</b></a></p>
+ </li>
+ </ul>
+
+ <p>The process described here forms an integral sub-process of <a href=
+ "#semantics-region-layout"><b>9.3 Region Layout and Presentation</b></a>.</p>
+
+ <div class="div4">
+ <h5><a id="semantics-style-resolution-processing-definitions" name=
+ "semantics-style-resolution-processing-definitions"></a>8.4.4.1 Conceptual
+ Definitions</h5>
+
+ <p>For the purpose of interpreting the style resolution processing model
+ specified below, the following conceptual definitions apply:</p>
+
+ <dl>
+ <dt class="label">[style property]</dt>
+
+ <dd>
+ <p>a style property, <em>P</em>, is considered to consist of a tuple
+ <code>[name, value]</code>, where the name of the property is a tuple
+ <code>[namespace value, unqualified name]</code> and the value of the
+ property is a tuple <code>[category, type, value
+ expression]</code></p><a id=
+ "conceptual-definition-example-style-property" name=
+ "conceptual-definition-example-style-property"></a>
+
+ <table class="example">
+ <caption>
+ Example – conceptual style property
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
[
["http://www.w3.org/ns/ttml#styling", "color"],
["specified", <em>color</em>, "red"]
]
-</pre></div>
-</td></tr></tbody></table><p></p></dd><dt class="label">[style (property) set]</dt><dd><p>a style (property) set consists of an unordered collection of style
-properties, where no two style properties within the set have an
-identical name, where by "identical name" is meant equality of
-namespace value of name tuple and unqualified name of name tuple;</p><p>in a specified style (property) set, the category of each style
-property is "specified"; a specified style (property) set of an
-element <em>E</em> is referred to as <em>SSS(E)</em>;</p><a id="conceptual-definition-example-specified-style-set"></a><table class="example"><caption>Example – conceptual (specified) style (property) set</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </dd>
+
+ <dt class="label">[style (property) set]</dt>
+
+ <dd>
+ <p>a style (property) set consists of an unordered collection of style
+ properties, where no two style properties within the set have an
+ identical name, where by "identical name" is meant equality of namespace
+ value of name tuple and unqualified name of name tuple;</p>
+
+ <p>in a specified style (property) set, the category of each style
+ property is "specified"; a specified style (property) set of an element
+ <em>E</em> is referred to as <em>SSS(E)</em>;</p><a id=
+ "conceptual-definition-example-specified-style-set" name=
+ "conceptual-definition-example-specified-style-set"></a>
+
+ <table class="example">
+ <caption>
+ Example – conceptual (specified) style (property) set
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
{
[
["http://www.w3.org/ns/ttml#styling", "backgroundColor"],
@@ -3776,11 +10188,29 @@
["specified", <em>length</em>, "117%" ]
]
}
-</pre></div>
-</td></tr></tbody></table><p>in a computed style (property) set, the category of each style
-property is either "specified" or "computed"; a computed style (property) set of an element
-<em>E</em> is referred to as <em>CSS(E)</em>;</p><a id="conceptual-definition-example-computed-style-set"></a><table class="example"><caption>Example – conceptual (computed) style (property) set</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>in a computed style (property) set, the category of each style
+ property is either "specified" or "computed"; a computed style (property)
+ set of an element <em>E</em> is referred to as <em>CSS(E)</em>;</p><a id=
+ "conceptual-definition-example-computed-style-set" name=
+ "conceptual-definition-example-computed-style-set"></a>
+
+ <table class="example">
+ <caption>
+ Example – conceptual (computed) style (property) set
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
{
[
["http://www.w3.org/ns/ttml#styling", "backgroundColor"],
@@ -3799,223 +10229,571 @@
["computed", <em>length</em>, "28px" ]
]
}
-</pre></div>
-</td></tr></tbody></table><p></p></dd><dt class="label">[style (property) merging]</dt><dd><p>a style property <em>P<sub>new</sub></em> is merged into a
-style (property) set, <em>SS</em>, as follows: if a style property
-<em>P<sub>old</sub></em> is already present in <em>SS</em>
-where the name of <em>P<sub>new</sub></em> is identical to the
-name of <em>P<sub>old</sub></em>, then replace
-<em>P<sub>old</sub></em> in <em>SS</em> with
-<em>P<sub>new</sub></em>; otherwise, add
-<em>P<sub>new</sub></em> to <em>SS</em>;</p></dd><dt class="label">[style (property) set merging]</dt><dd><p>a style (property) set <em>SS<sub>new</sub></em> is merged into
-an existing style (property) set <em>SS<sub>old</sub></em> as
-follows: for each style property <em>P<sub>new</sub></em> in
-<em>SS<sub>new</sub></em>, merge <em>P<sub>new</sub></em> into
-<em>SS<sub>old</sub></em>;</p></dd></dl></div><div class="div4">
-<h5><a id="semantics-style-resolution-processing-sss"></a>8.4.4.2 Specified Style Set Processing</h5><p>The specified style set <em>SSS</em> of an element or
-anonymous span <em>E</em>,
-<em>SSS(E)</em>, is determined according to the following ordered
-rules:</p><ol class="enumar"><li><p><span class="strong">[initialization]</span> initialize
-the specified style set <em>SSS</em> of <em>E</em> to the
-empty set;</p></li><li><p><span class="strong">[referential and chained referential
-styling]</span> for each <code>style</code> element <em>S<sub>REF</sub></em>
-referenced by a <code>style</code> attribute specified on
-<em>E</em>, and in the order specified in the <code>style</code>
-attribute, then, if <em>S<sub>REF</sub></em> is a descendant
-of a <code>styling</code> element,
-merge the specified style set of
-<em>S<sub>REF</sub></em>, <em>SSS(S<sub>REF</sub>)</em>, into
-the specified style set of <em>E</em>,
-<em>SSS(E)</em>;</p></li><li><p><span class="strong">[nested styling]</span> for each
-nested <code>style</code> element child <em>S<sub>NEST</sub></em> of
-<em>E</em>, and in the specified order of child elements, merge
-the specified style set of <em>S<sub>NEST</sub></em>,
-<em>SSS(S<sub>NEST</sub>)</em>, into the specified style set of
-<em>E</em>, <em>SSS(E)</em>;</p></li><li><p><span class="strong">[inline styling]</span> for each
-style property <em>P</em> expressed as a specified styling
-attribute of <em>E</em>,
-merge <em>P</em> into the specified style
-set of <em>E</em>, <em>SSS(E)</em>;</p></li><li><p><span class="strong">[animation styling]</span> for each
-style property <em>P</em> expressed as a specified styling
-attribute of an immediate animation (<code>set</code>) element child of element <em>E</em>,
-merge <em>P</em> into the specified style
-set of <em>E</em>, <em>SSS(E)</em>;</p></li><li><p><span class="strong">[implicit inheritance]</span> if the
-element type of <em>E</em> is not the styling element type
-<code>style</code>, then for each inheritable style property
-<em>P<sub>INH</sub></em> in the set of style properties defined
-above in <a href="#styling-attribute-vocabulary"><b>8.2 Styling Attribute Vocabulary</b></a>, perform the
-following ordered sub-steps:</p><ol class="enumla"><li><p>if <em>P<sub>INH</sub></em> is present in the specified
-style set of <em>E</em>, <em>SSS(E)</em>, then continue to the
-next inheritable style property;</p></li><li><p>if the element type of <em>E</em> is the layout element
-type <code>region</code>, then set <em>P′</em> to the initial value of
-property <em>P</em>, where the initial value of a property is
-determined according to the specific property definition found above
-in <a href="#styling-attribute-vocabulary"><b>8.2 Styling Attribute Vocabulary</b></a>;</p></li><li><p>if the element type of <em>E</em> is a <a href="#element-vocab-type-content">Content</a> element
-type or anonymous span, then set <em>P′</em> to the result of
-looking up the value of <em>P</em> in the computed style set of
-the immediate ancestor element of <em>E</em>, i.e.,
-<em>CSS(PARENT(E))</em>;</p></li><li><p>if the value of <em>P′</em> is not undefined, then merge
-<em>P′</em> into the specified style set of <em>E</em>,
-<em>SSS(E)</em>.</p></li></ol></li></ol></div><div class="div4">
-<h5><a id="semantics-style-resolution-processing-css"></a>8.4.4.3 Computed Style Set Processing</h5><p>The computed style set <em>CSS</em> of an element or
-anonymous span <em>E</em>,
-<em>CSS(E)</em>, is determined according to the following ordered
-rules:</p><ol class="enumar"><li><p><span class="strong">[resolve specified styles]</span>
-determine (obtain) the specified style set <em>SSS</em> of
-<em>E</em>, namely, <em>SSS(E)</em>, in accordance with
-<a href="#semantics-style-resolution-processing-sss"><b>8.4.4.2 Specified Style Set Processing</b></a>;</p></li><li><p><span class="strong">[initialization]</span>
-initialize <em>CSS(E)</em> to a (deep) copy of
-<em>SSS(E)</em>;</p></li><li><p><span class="strong">[filter]</span> if
-<em>E</em> is a <code>style</code> element, then return
-<em>CSS(E)</em> as the resulting computed style set without
-further resolution; otherwise, continue with the next rule;</p></li><li><p><span class="strong">[relative value resolution]</span> for each
-style property <em>P</em> in <em>CSS(E)</em>, where the value
-type of <em>P</em> is relative, perform the following ordered
-sub-steps:</p><ol class="enumla"><li><p>replace the relative value of <em>P</em> with an
-equivalent, non-relative (computed) value;</p></li><li><p>set the category of <em>P</em> to "computed";</p></li></ol></li></ol><div class="note"><p class="prefix"><b>Note:</b></p><p>As a result of the filtering rule above, the computed style set of
-a <code>style</code> element includes only specified values, in which case
-relative value expressions remain relative; consequently, the
-resolution of relative value expressions (that may be assigned by
-means of referential style association) always takes place in the
-context of a layout or <a href="#element-vocab-type-content">Content</a> element which has a presentation
-context, and not in the non-presentation, declaration context
-of a referentiable <code>style</code> element.</p></div></div><div class="div4">
-<h5><a id="semantics-style-resolution-process-overall"></a>8.4.4.4 Style Resolution Process</h5><p>The top-level style resolution process is defined as follows: using
-a preorder traversal of each element and anonymous span,
-<em>E</em>, of an intermediate synchronic document,
-<em>DOC<sub>inter</sub></em>, perform the following ordered
-sub-steps:</p><ol class="enumar"><li><p><span class="strong">[filter]</span> if the element type
-of <em>E</em> is not the styling element type <code>style</code>, is
-not the layout element type <code>region</code>, and is not one of the
-<a href="#element-vocab-type-content">Content</a> element types <code>body</code>, <code>div</code>, <code>p</code>,
-<code>span</code>, <code>br</code>, or anonymous span, then continue to the
-next element in the preorder traversal;</p></li><li><p> <span class="strong">[resolve computed styles]</span>
-determine (obtain) the computed style set <em>CSS</em> of
-<em>E</em>, namely, <em>CSS(E)</em>, in accordance with
-<a href="#semantics-style-resolution-processing-css"><b>8.4.4.3 Computed Style Set Processing</b></a>.</p></li></ol></div></div></div></div><div class="div1">
-<h2><a id="layout"></a>9 Layout</h2><p>This section specifies the <em>layout</em> matter of the core
-vocabulary catalog, where
-layout is to be understood as a separable layer of information that applies to
-content and that denotes authorial intentions about the presentation of
-that content.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>The two layers of layout and style matter are considered to be independently
-separable. Layout matter specifies one or more spaces or areas into
-which content is intended to be presented, while style matter specifies the manner in
-which presentation occurs within the layout.</p><p>In certain cases, a content author may choose to embed (inline) style matter directly
-into layout or content matter. In such cases, an alternative
-exists – use of referential styling –
-in which the style
-matter is not embedded (inlined).</p></div><div class="div2">
-<h3><a id="layout-element-vocabulary"></a>9.1 Layout Element Vocabulary</h3><p>The following elements specify the structure and principal layout aspects of a
-<em>Document Instance</em>:</p><ul><li><p><a href="#layout-vocabulary-layout"><b>9.1.1 layout</b></a></p></li><li><p><a href="#layout-vocabulary-region"><b>9.1.2 region</b></a></p></li></ul><div class="div3">
-<h4><a id="layout-vocabulary-layout"></a>9.1.1 layout</h4><p>The <code>layout</code> element is a container element used to group
-layout matter, including metadata that applies to layout matter.</p><p>The <code>layout</code> element accepts as its children zero or more
-elements in the <code>Metadata.class</code> element group, followed by
-zero or more <code>region</code> elements.</p><a id="elt-syntax-layout"></a><table class="syntax"><caption>XML Representation – Element Information Item: layout</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </dd>
+
+ <dt class="label">[style (property) merging]</dt>
+
+ <dd>
+ <p>a style property <em>P<sub>new</sub></em> is merged into a style
+ (property) set, <em>SS</em>, as follows: if a style property
+ <em>P<sub>old</sub></em> is already present in <em>SS</em> where the name
+ of <em>P<sub>new</sub></em> is identical to the name of
+ <em>P<sub>old</sub></em>, then replace <em>P<sub>old</sub></em> in
+ <em>SS</em> with <em>P<sub>new</sub></em>; otherwise, add
+ <em>P<sub>new</sub></em> to <em>SS</em>;</p>
+ </dd>
+
+ <dt class="label">[style (property) set merging]</dt>
+
+ <dd>
+ <p>a style (property) set <em>SS<sub>new</sub></em> is merged into an
+ existing style (property) set <em>SS<sub>old</sub></em> as follows: for
+ each style property <em>P<sub>new</sub></em> in
+ <em>SS<sub>new</sub></em>, merge <em>P<sub>new</sub></em> into
+ <em>SS<sub>old</sub></em>;</p>
+ </dd>
+ </dl>
+ </div>
+
+ <div class="div4">
+ <h5><a id="semantics-style-resolution-processing-sss" name=
+ "semantics-style-resolution-processing-sss"></a>8.4.4.2 Specified Style Set
+ Processing</h5>
+
+ <p>The specified style set <em>SSS</em> of an element or anonymous span
+ <em>E</em>, <em>SSS(E)</em>, is determined according to the following ordered
+ rules:</p>
+
+ <ol class="enumar">
+ <li>
+ <p><span class="strong">[initialization]</span> initialize the specified
+ style set <em>SSS</em> of <em>E</em> to the empty set;</p>
+ </li>
+
+ <li>
+ <p><span class="strong">[referential and chained referential
+ styling]</span> for each <code>style</code> element
+ <em>S<sub>REF</sub></em> referenced by a <code>style</code> attribute
+ specified on <em>E</em>, and in the order specified in the
+ <code>style</code> attribute, then, if <em>S<sub>REF</sub></em> is a
+ descendant of a <code>styling</code> element, merge the specified style
+ set of <em>S<sub>REF</sub></em>, <em>SSS(S<sub>REF</sub>)</em>, into the
+ specified style set of <em>E</em>, <em>SSS(E)</em>;</p>
+ </li>
+
+ <li>
+ <p><span class="strong">[nested styling]</span> for each nested
+ <code>style</code> element child <em>S<sub>NEST</sub></em> of <em>E</em>,
+ and in the specified order of child elements, merge the specified style
+ set of <em>S<sub>NEST</sub></em>, <em>SSS(S<sub>NEST</sub>)</em>, into
+ the specified style set of <em>E</em>, <em>SSS(E)</em>;</p>
+ </li>
+
+ <li>
+ <p><span class="strong">[inline styling]</span> for each style property
+ <em>P</em> expressed as a specified styling attribute of <em>E</em>,
+ merge <em>P</em> into the specified style set of <em>E</em>,
+ <em>SSS(E)</em>;</p>
+ </li>
+
+ <li>
+ <p><span class="strong">[animation styling]</span> for each style
+ property <em>P</em> expressed as a specified styling attribute of an
+ immediate animation (<code>set</code>) element child of element
+ <em>E</em>, merge <em>P</em> into the specified style set of <em>E</em>,
+ <em>SSS(E)</em>;</p>
+ </li>
+
+ <li>
+ <p><span class="strong">[implicit inheritance]</span> if the element type
+ of <em>E</em> is not the styling element type <code>style</code>, then
+ for each inheritable style property <em>P<sub>INH</sub></em> in the set
+ of style properties defined above in <a href=
+ "#styling-attribute-vocabulary"><b>8.2 Styling Attribute
+ Vocabulary</b></a>, perform the following ordered sub-steps:</p>
+
+ <ol class="enumla">
+ <li>
+ <p>if <em>P<sub>INH</sub></em> is present in the specified style set
+ of <em>E</em>, <em>SSS(E)</em>, then continue to the next inheritable
+ style property;</p>
+ </li>
+
+ <li>
+ <p>if the element type of <em>E</em> is the layout element type
+ <code>region</code>, then set <em>P′</em> to the initial value of
+ property <em>P</em>, where the initial value of a property is
+ determined according to the specific property definition found above
+ in <a href="#styling-attribute-vocabulary"><b>8.2 Styling Attribute
+ Vocabulary</b></a>;</p>
+ </li>
+
+ <li>
+ <p>if the element type of <em>E</em> is a <a href=
+ "#element-vocab-type-content">Content</a> element type or anonymous
+ span, then set <em>P′</em> to the result of looking up the value of
+ <em>P</em> in the computed style set of the immediate ancestor
+ element of <em>E</em>, i.e., <em>CSS(PARENT(E))</em>;</p>
+ </li>
+
+ <li>
+ <p>if the value of <em>P′</em> is not undefined, then merge
+ <em>P′</em> into the specified style set of <em>E</em>,
+ <em>SSS(E)</em>.</p>
+ </li>
+ </ol>
+ </li>
+ </ol>
+ </div>
+
+ <div class="div4">
+ <h5><a id="semantics-style-resolution-processing-css" name=
+ "semantics-style-resolution-processing-css"></a>8.4.4.3 Computed Style Set
+ Processing</h5>
+
+ <p>The computed style set <em>CSS</em> of an element or anonymous span
+ <em>E</em>, <em>CSS(E)</em>, is determined according to the following ordered
+ rules:</p>
+
+ <ol class="enumar">
+ <li>
+ <p><span class="strong">[resolve specified styles]</span> determine
+ (obtain) the specified style set <em>SSS</em> of <em>E</em>, namely,
+ <em>SSS(E)</em>, in accordance with <a href=
+ "#semantics-style-resolution-processing-sss"><b>8.4.4.2 Specified Style
+ Set Processing</b></a>;</p>
+ </li>
+
+ <li>
+ <p><span class="strong">[initialization]</span> initialize
+ <em>CSS(E)</em> to a (deep) copy of <em>SSS(E)</em>;</p>
+ </li>
+
+ <li>
+ <p><span class="strong">[filter]</span> if <em>E</em> is a
+ <code>style</code> element, then return <em>CSS(E)</em> as the resulting
+ computed style set without further resolution; otherwise, continue with
+ the next rule;</p>
+ </li>
+
+ <li>
+ <p><span class="strong">[relative value resolution]</span> for each style
+ property <em>P</em> in <em>CSS(E)</em>, where the value type of
+ <em>P</em> is relative, perform the following ordered sub-steps:</p>
+
+ <ol class="enumla">
+ <li>
+ <p>replace the relative value of <em>P</em> with an equivalent,
+ non-relative (computed) value;</p>
+ </li>
+
+ <li>
+ <p>set the category of <em>P</em> to "computed";</p>
+ </li>
+ </ol>
+ </li>
+ </ol>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>As a result of the filtering rule above, the computed style set of a
+ <code>style</code> element includes only specified values, in which case
+ relative value expressions remain relative; consequently, the resolution of
+ relative value expressions (that may be assigned by means of referential
+ style association) always takes place in the context of a layout or
+ <a href="#element-vocab-type-content">Content</a> element which has a
+ presentation context, and not in the non-presentation, declaration context
+ of a referentiable <code>style</code> element.</p>
+ </div>
+ </div>
+
+ <div class="div4">
+ <h5><a id="semantics-style-resolution-process-overall" name=
+ "semantics-style-resolution-process-overall"></a>8.4.4.4 Style Resolution
+ Process</h5>
+
+ <p>The top-level style resolution process is defined as follows: using a
+ preorder traversal of each element and anonymous span, <em>E</em>, of an
+ intermediate synchronic document, <em>DOC<sub>inter</sub></em>, perform the
+ following ordered sub-steps:</p>
+
+ <ol class="enumar">
+ <li>
+ <p><span class="strong">[filter]</span> if the element type of <em>E</em>
+ is not the styling element type <code>style</code>, is not the layout
+ element type <code>region</code>, and is not one of the <a href=
+ "#element-vocab-type-content">Content</a> element types
+ <code>body</code>, <code>div</code>, <code>p</code>, <code>span</code>,
+ <code>br</code>, or anonymous span, then continue to the next element in
+ the preorder traversal;</p>
+ </li>
+
+ <li>
+ <p><span class="strong">[resolve computed styles]</span> determine
+ (obtain) the computed style set <em>CSS</em> of <em>E</em>, namely,
+ <em>CSS(E)</em>, in accordance with <a href=
+ "#semantics-style-resolution-processing-css"><b>8.4.4.3 Computed Style
+ Set Processing</b></a>.</p>
+ </li>
+ </ol>
+ </div>
+ </div>
+ </div>
+ </div>
+
+ <div class="div1">
+ <h2><a id="layout" name="layout"></a>9 Layout</h2>
+
+ <p>This section specifies the <em>layout</em> matter of the core vocabulary
+ catalog, where layout is to be understood as a separable layer of information that
+ applies to content and that denotes authorial intentions about the presentation of
+ that content.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The two layers of layout and style matter are considered to be independently
+ separable. Layout matter specifies one or more spaces or areas into which content
+ is intended to be presented, while style matter specifies the manner in which
+ presentation occurs within the layout.</p>
+
+ <p>In certain cases, a content author may choose to embed (inline) style matter
+ directly into layout or content matter. In such cases, an alternative exists –
+ use of referential styling – in which the style matter is not embedded
+ (inlined).</p>
+ </div>
+
+ <div class="div2">
+ <h3><a id="layout-element-vocabulary" name="layout-element-vocabulary"></a>9.1
+ Layout Element Vocabulary</h3>
+
+ <p>The following elements specify the structure and principal layout aspects of a
+ <em>Document Instance</em>:</p>
+
+ <ul>
+ <li>
+ <p><a href="#layout-vocabulary-layout"><b>9.1.1 layout</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#layout-vocabulary-region"><b>9.1.2 region</b></a></p>
+ </li>
+ </ul>
+
+ <div class="div3">
+ <h4><a id="layout-vocabulary-layout" name="layout-vocabulary-layout"></a>9.1.1
+ layout</h4>
+
+ <p>The <code>layout</code> element is a container element used to group layout
+ matter, including metadata that applies to layout matter.</p>
+
+ <p>The <code>layout</code> element accepts as its children zero or more
+ elements in the <code>Metadata.class</code> element group, followed by zero or
+ more <code>region</code> elements.</p><a id="elt-syntax-layout" name=
+ "elt-syntax-layout"></a>
+
+ <table class="syntax">
+ <caption>
+ XML Representation – Element Information Item: layout
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<layout
<a href="#content-attribute-id">xml:id</a> = ID
<a href="#content-attribute-lang">xml:lang</a> = string
<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> <a href="#element-vocab-group-table">Metadata.class</a>*, <a href="#layout-vocabulary-region">region</a>*
+ <em>Content:</em> <a href="#element-vocab-group-table">Metadata.class</a>*, <a href=
+"#layout-vocabulary-region">region</a>*
</layout>
-</pre></div>
-</td></tr></tbody></table><p>To the extent that time semantics apply to the content of the
-<code>layout</code> element, the implied time interval of this element is
-defined to be coterminous with the <em>Root Temporal Extent</em>.</p></div><div class="div3">
-<h4><a id="layout-vocabulary-region"></a>9.1.2 region</h4><p>The <code>region</code> element is used to define a rectangular space or area into which content is
-to be flowed for the purpose of presentation.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>The rectangular area of a region is explicitly not constrained to be contained within the <em>Root Container
-Region</em>. In particular, the origin components of a region may be negative, and the extent (width and
-height) components of a region may be greater than the width and height of the <em>Root Contatiner Region</em>.
-Whether a presentation processor clips such a region to the <em>Root Contatiner Region</em> is implementation
-dependent, and not prescribed by this specification.</p></div><p>In addition, and in accordance with
-<a href="#semantics-style-inheritance-region"><b>8.4.2.2 Region Style Inheritance</b></a>,
-the <code>region</code> element may be used to specify inheritable style properties to be
-inherited by content that is flowed into it.</p><p>The <code>region</code> element accepts as its children zero or more
-elements in the <code>Metadata.class</code> element group,
-followed by zero or more
-elements in the <code>Animation.class</code> element group,
-followed by
-zero or more <code>style</code> elements.</p><p>Any metadata specified by children in the <code>Metadata.class</code>
-element group applies semantically to the <code>region</code> element and its descendants as a whole.
-Any animation elements specified by children in the <code>Animation.class</code>
-element group apply semantically to the <code>region</code> element.
-Any <code>style</code> child element must be considered a local style
-definition that applies only to the containing <code>region</code>
-element, i.e., does not apply for resolving referential styling (but does apply for region
-style inheritance).</p><a id="elt-syntax-region"></a><table class="syntax"><caption>XML Representation – Element Information Item: region</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>To the extent that time semantics apply to the content of the
+ <code>layout</code> element, the implied time interval of this element is
+ defined to be coterminous with the <em>Root Temporal Extent</em>.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="layout-vocabulary-region" name="layout-vocabulary-region"></a>9.1.2
+ region</h4>
+
+ <p>The <code>region</code> element is used to define a rectangular space or
+ area into which content is to be flowed for the purpose of presentation.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The rectangular area of a region is explicitly not constrained to be
+ contained within the <em>Root Container Region</em>. In particular, the
+ origin components of a region may be negative, and the extent (width and
+ height) components of a region may be greater than the width and height of
+ the <em>Root Contatiner Region</em>. Whether a presentation processor clips
+ such a region to the <em>Root Contatiner Region</em> is implementation
+ dependent, and not prescribed by this specification.</p>
+ </div>
+
+ <p>In addition, and in accordance with <a href=
+ "#semantics-style-inheritance-region"><b>8.4.2.2 Region Style
+ Inheritance</b></a>, the <code>region</code> element may be used to specify
+ inheritable style properties to be inherited by content that is flowed into
+ it.</p>
+
+ <p>The <code>region</code> element accepts as its children zero or more
+ elements in the <code>Metadata.class</code> element group, followed by zero or
+ more elements in the <code>Animation.class</code> element group, followed by
+ zero or more <code>style</code> elements.</p>
+
+ <p>Any metadata specified by children in the <code>Metadata.class</code>
+ element group applies semantically to the <code>region</code> element and its
+ descendants as a whole. Any animation elements specified by children in the
+ <code>Animation.class</code> element group apply semantically to the
+ <code>region</code> element. Any <code>style</code> child element must be
+ considered a local style definition that applies only to the containing
+ <code>region</code> element, i.e., does not apply for resolving referential
+ styling (but does apply for region style inheritance).</p><a id=
+ "elt-syntax-region" name="elt-syntax-region"></a>
+
+ <table class="syntax">
+ <caption>
+ XML Representation – Element Information Item: region
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<region
- <a href="#timing-attribute-begin">begin</a> = <a href="#timing-value-timeExpression"><timeExpression></a>
- <a href="#timing-attribute-dur">dur</a> = <a href="#timing-value-timeExpression"><timeExpression></a>
- <a href="#timing-attribute-end">end</a> = <a href="#timing-value-timeExpression"><timeExpression></a>
+ <a href="#timing-attribute-begin">begin</a> = <a href=
+"#timing-value-timeExpression"><timeExpression></a>
+ <a href="#timing-attribute-dur">dur</a> = <a href=
+"#timing-value-timeExpression"><timeExpression></a>
+ <a href="#timing-attribute-end">end</a> = <a href=
+"#timing-value-timeExpression"><timeExpression></a>
<a href="#style-attribute-style">style</a> = IDREFS
- <a href="#timing-attribute-timeContainer">timeContainer</a> = (<em>par</em>|<em>seq</em>)
+ <a href=
+"#timing-attribute-timeContainer">timeContainer</a> = (<em>par</em>|<em>seq</em>)
<a href="#metadata-attribute-role">ttm:role</a> = string
<a href="#content-attribute-id">xml:id</a> = ID
<a href="#content-attribute-lang">xml:lang</a> = string
<a href="#content-attribute-space">xml:space</a> = (<em>default</em>|<em>preserve</em>)
{<em>any attribute in TT Style namespace</em>}
{<em>any attribute not in default or any TT namespace</em>}>
- <em>Content:</em> <a href="#element-vocab-group-table">Metadata.class</a>*, <a href="#element-vocab-group-table">Animation.class</a>*, <a href="#styling-vocabulary-style">style</a>*
+ <em>Content:</em> <a href="#element-vocab-group-table">Metadata.class</a>*, <a href=
+"#element-vocab-group-table">Animation.class</a>*, <a href=
+"#styling-vocabulary-style">style</a>*
</region>
-</pre></div>
-</td></tr></tbody></table><p>If <code>begin</code> and (or) <code>end</code> attributes are specified on a
-<code>region</code> element, then they specify the beginning and (or) ending points
-of a time interval during which the region is eligible for activation and with
-respect to which animation child elements of the region are timed.
-If specified, these begin and end points are relative to the time
-interval of the nearest ancestor element associated with a time
-interval, irregardless of whether that interval is explicit or implied.</p><p>The nearest ancestor element of a <code>region</code> element that is associated
-with a time interval is the <code>layout</code> element.</p><p>If a <code>dur</code> attribute is specified on the <code>region</code> element, then it
-specifies the simple duration of the region.</p><p>For the purpose of determining the semantics of presentation processing, a
-region that is temporally inactive must not produce any visible marks when
-presented on a visual medium.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>A <code>region</code> element may be associated with a time interval for two
-purposes: (1) in order to temporally bound the presentation of the region and
-its content, and (2) to provide a temporal context in which animations of region
-styles may be effected.</p><p>For example, an author may wish to specify a region that is otherwise empty, but
-may have a visible background color to be presented starting at some time and
-continuing over the region's duration. The simple duration of the region serves
-additionally to scope the presentation effects of content that is targeted to the
-region. An author may also wish to move a region within the <em>Root Container Region</em>
-or change a region's background color by means of animation effects. In
-both of these cases, it is necessary to posit an active time interval for a
-region.</p></div><p>If no <code>timeContainer</code> attribute is specified on
-a <code>region</code> element, then it must be interpreted as having
-<em>parallel</em> time containment semantics.</p><p>If a <a href="#metadata-attribute-role"><code>ttm:role</code></a> attribute is
-specified on a <code>region</code> element, then it must adhere to the
-value syntax defined by <a href="#metadata-attribute-role-syntax"><b>Syntax Representation – ttm:role</b></a>, and where the roles identified
-by this attribute express the semantic roles of the region
-independently from the semantic roles of any content targeted to
-(associated with) the region.</p></div></div><div class="div2">
-<h3><a id="layout-attribute-vocabulary"></a>9.2 Layout Attribute Vocabulary</h3><p>This section defines the <a href="#layout-attribute-region"><b>9.2.1 region</b></a> attribute used with <a href="#element-vocab-type-content">Content</a> elements.</p><div class="div3">
-<h4><a id="layout-attribute-region"></a>9.2.1 region</h4><p>The <code>region</code> attribute is used to reference a <code>region</code>
-element which defines a space or area into which a <a href="#element-vocab-type-content">Content</a> element is intended to be flowed.</p><p>If specified, the value of a <code>region</code> attribute must
-adhere to the <code>IDREF</code> data type defined by <a href="#xsd-2">[XML Schema Part 2]</a>,
-§ 3.3.9, and, furthermore, this IDREF must reference a <code>region</code> element
-which has a <code>layout</code> element as an ancestor.</p><p>The <code>region</code> attribute may be specified by an instance of the following
-element types:</p><ul><li><p><a href="#document-structure-vocabulary-body"><code>body</code></a></p></li><li><p><a href="#content-vocabulary-div"><code>div</code></a></p></li><li><p><a href="#content-vocabulary-p"><code>p</code></a></p></li><li><p><a href="#content-vocabulary-span"><code>span</code></a></p></li></ul><div class="note"><p class="prefix"><b>Note:</b></p><p>See <a href="#semantics-region-layout"><b>9.3 Region Layout and Presentation</b></a> below for further information on content
-flow in a region.</p></div></div></div><div class="div2">
-<h3><a id="semantics-region-layout"></a>9.3 Region Layout and Presentation</h3><p>This section defines the semantics of region layout and
-presentation in terms of a standard processing model as
-follows:</p><ul><li><p><a href="#semantics-default-region"><b>9.3.1 Default Region</b></a></p></li><li><p><a href="#semantics-region-layout-step-1"><b>9.3.2 Intermediate Synchronic Document Construction</b></a></p></li><li><p><a href="#semantics-region-layout-step-2"><b>9.3.3 Synchronic Flow Processing</b></a></p></li><li><p><a href="#semantics-region-layout-example"><b>9.3.4 Elaborated Example (Informative)</b></a></p></li></ul><p>Any
-implementation is permitted provided that the externally observable
-results are consistent with the results produced by this model.
-</p><div class="div3">
-<h4><a id="semantics-default-region"></a>9.3.1 Default Region</h4><p>If a <em>Document Instance</em> does not specify a
-<a href="#layout-vocabulary-region"><code>region</code></a> element,
-then a <em>default region</em> is implied with the following characteristics:</p><ul><li><p>the identity of the default region is considered to be anonymous;</p></li><li><p>the extent of the default region is the same as the extent of the <em>Root Container Region</em>;</p></li><li><p>the temporal interval of the default region is the same as the interval defined by the <em>Root Temporal Extent</em>;</p></li></ul><p>Furthermore, if no <a href="#layout-vocabulary-region"><code>region</code></a> element is
-specified, then the <a href="#layout-attribute-region"><code>region</code></a> attribute must
-not be specified on any <a href="#element-vocab-type-content">Content</a> element in the <em>Document Instance</em>.</p><p>If a default region is implied for a given <em>Document Instance</em>, then
-the <a href="#document-structure-vocabulary-body"><code>body</code></a> element
-is implicitly targeted to (associated with) the default region.</p><p>When implying a default region, the <em>Document Instance</em> is to be
-treated as if a <a href="#layout-vocabulary-region"><code>region</code></a> element and its
-parent <a href="#layout-vocabulary-layout"><code>layout</code></a>
-element were specified in a <a href="#document-structure-vocabulary-head"><code>head</code></a>
-element, and a matching <a href="#layout-attribute-region"><code>region</code></a> attribute were
-specified on the <a href="#document-structure-vocabulary-body"><code>body</code></a> element
-as shown in the following example:</p><a id="semantics-default-region-example"></a><table class="example"><caption>Example – Implied Default Region</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>If <code>begin</code> and (or) <code>end</code> attributes are specified on
+ a <code>region</code> element, then they specify the beginning and (or) ending
+ points of a time interval during which the region is eligible for activation
+ and with respect to which animation child elements of the region are timed. If
+ specified, these begin and end points are relative to the time interval of the
+ nearest ancestor element associated with a time interval, irregardless of
+ whether that interval is explicit or implied.</p>
+
+ <p>The nearest ancestor element of a <code>region</code> element that is
+ associated with a time interval is the <code>layout</code> element.</p>
+
+ <p>If a <code>dur</code> attribute is specified on the <code>region</code>
+ element, then it specifies the simple duration of the region.</p>
+
+ <p>For the purpose of determining the semantics of presentation processing, a
+ region that is temporally inactive must not produce any visible marks when
+ presented on a visual medium.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>A <code>region</code> element may be associated with a time interval for
+ two purposes: (1) in order to temporally bound the presentation of the region
+ and its content, and (2) to provide a temporal context in which animations of
+ region styles may be effected.</p>
+
+ <p>For example, an author may wish to specify a region that is otherwise
+ empty, but may have a visible background color to be presented starting at
+ some time and continuing over the region's duration. The simple duration of
+ the region serves additionally to scope the presentation effects of content
+ that is targeted to the region. An author may also wish to move a region
+ within the <em>Root Container Region</em> or change a region's background
+ color by means of animation effects. In both of these cases, it is necessary
+ to posit an active time interval for a region.</p>
+ </div>
+
+ <p>If no <code>timeContainer</code> attribute is specified on a
+ <code>region</code> element, then it must be interpreted as having
+ <em>parallel</em> time containment semantics.</p>
+
+ <p>If a <a href="#metadata-attribute-role"><code>ttm:role</code></a> attribute
+ is specified on a <code>region</code> element, then it must adhere to the value
+ syntax defined by <a href="#metadata-attribute-role-syntax"><b>Syntax
+ Representation – ttm:role</b></a>, and where the roles identified by this
+ attribute express the semantic roles of the region independently from the
+ semantic roles of any content targeted to (associated with) the region.</p>
+ </div>
+ </div>
+
+ <div class="div2">
+ <h3><a id="layout-attribute-vocabulary" name=
+ "layout-attribute-vocabulary"></a>9.2 Layout Attribute Vocabulary</h3>
+
+ <p>This section defines the <a href="#layout-attribute-region"><b>9.2.1
+ region</b></a> attribute used with <a href=
+ "#element-vocab-type-content">Content</a> elements.</p>
+
+ <div class="div3">
+ <h4><a id="layout-attribute-region" name="layout-attribute-region"></a>9.2.1
+ region</h4>
+
+ <p>The <code>region</code> attribute is used to reference a <code>region</code>
+ element which defines a space or area into which a <a href=
+ "#element-vocab-type-content">Content</a> element is intended to be flowed.</p>
+
+ <p>If specified, the value of a <code>region</code> attribute must adhere to
+ the <code>IDREF</code> data type defined by <a href="#xsd-2">[XML Schema Part
+ 2]</a>, § 3.3.9, and, furthermore, this IDREF must reference a
+ <code>region</code> element which has a <code>layout</code> element as an
+ ancestor.</p>
+
+ <p>The <code>region</code> attribute may be specified by an instance of the
+ following element types:</p>
+
+ <ul>
+ <li>
+ <p><a href="#document-structure-vocabulary-body"><code>body</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#content-vocabulary-div"><code>div</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#content-vocabulary-p"><code>p</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#content-vocabulary-span"><code>span</code></a></p>
+ </li>
+ </ul>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>See <a href="#semantics-region-layout"><b>9.3 Region Layout and
+ Presentation</b></a> below for further information on content flow in a
+ region.</p>
+ </div>
+ </div>
+ </div>
+
+ <div class="div2">
+ <h3><a id="semantics-region-layout" name="semantics-region-layout"></a>9.3 Region
+ Layout and Presentation</h3>
+
+ <p>This section defines the semantics of region layout and presentation in terms
+ of a standard processing model as follows:</p>
+
+ <ul>
+ <li>
+ <p><a href="#semantics-default-region"><b>9.3.1 Default Region</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#semantics-region-layout-step-1"><b>9.3.2 Intermediate Synchronic
+ Document Construction</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#semantics-region-layout-step-2"><b>9.3.3 Synchronic Flow
+ Processing</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#semantics-region-layout-example"><b>9.3.4 Elaborated Example
+ (Informative)</b></a></p>
+ </li>
+ </ul>
+
+ <p>Any implementation is permitted provided that the externally observable
+ results are consistent with the results produced by this model.</p>
+
+ <div class="div3">
+ <h4><a id="semantics-default-region" name="semantics-default-region"></a>9.3.1
+ Default Region</h4>
+
+ <p>If a <em>Document Instance</em> does not specify a <a href=
+ "#layout-vocabulary-region"><code>region</code></a> element, then a <em>default
+ region</em> is implied with the following characteristics:</p>
+
+ <ul>
+ <li>
+ <p>the identity of the default region is considered to be anonymous;</p>
+ </li>
+
+ <li>
+ <p>the extent of the default region is the same as the extent of the
+ <em>Root Container Region</em>;</p>
+ </li>
+
+ <li>
+ <p>the temporal interval of the default region is the same as the interval
+ defined by the <em>Root Temporal Extent</em>;</p>
+ </li>
+ </ul>
+
+ <p>Furthermore, if no <a href=
+ "#layout-vocabulary-region"><code>region</code></a> element is specified, then
+ the <a href="#layout-attribute-region"><code>region</code></a> attribute must
+ not be specified on any <a href="#element-vocab-type-content">Content</a>
+ element in the <em>Document Instance</em>.</p>
+
+ <p>If a default region is implied for a given <em>Document Instance</em>, then
+ the <a href="#document-structure-vocabulary-body"><code>body</code></a> element
+ is implicitly targeted to (associated with) the default region.</p>
+
+ <p>When implying a default region, the <em>Document Instance</em> is to be
+ treated as if a <a href="#layout-vocabulary-region"><code>region</code></a>
+ element and its parent <a href=
+ "#layout-vocabulary-layout"><code>layout</code></a> element were specified in a
+ <a href="#document-structure-vocabulary-head"><code>head</code></a> element,
+ and a matching <a href="#layout-attribute-region"><code>region</code></a>
+ attribute were specified on the <a href=
+ "#document-structure-vocabulary-body"><code>body</code></a> element as shown in
+ the following example:</p><a id="semantics-default-region-example" name=
+ "semantics-default-region-example"></a>
+
+ <table class="example">
+ <caption>
+ Example – Implied Default Region
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<tt xml:lang="" xmlns="http://www.w3.org/ns/ttml">
<head>
<span class="strong"><layout>
@@ -4024,154 +10802,394 @@
</head>
<body <span class="strong">region="anonymous"</span>/>
</tt>
-</pre></div>
-</td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>In the above example, a default <code>region</code> element and <code>region</code>
-attribute are implied. In addition, a <code>layout</code> container element is implied for
-the implied <code>region</code> element.</p></div></div><div class="div3">
-<h4><a id="semantics-region-layout-step-1"></a>9.3.2 Intermediate Synchronic Document Construction</h4><p>For the purposes of performing presentation processing, the active time
-duration of a <em>Document Instance</em> is divided into a sequence of time coordinates where at
-each time coordinate, some element becomes temporally active or inactive,
-then, at each such time coordinate, a <em>Document Instance</em> is mapped from its original, source
-form, <em>DOC<sub>source</sub></em> ,
-to an intermediate
-synchronic document form,
-<em>DOC<sub>inter</sub></em> , according to the
-<span class="strong">[construct intermediate document]</span> procedure:</p><dl><dt class="label">[construct intermediate document]</dt><dd><ol class="enumar"><li><p>for each temporally active region <em>R</em>, replicate the
-sub-tree
- of <em>DOC<sub>source</sub></em>
-headed by the <code>body</code> element;</p></li><li><p>evaluating this sub-tree in a postorder traversal, prune elements if they
-are not a <a href="#element-vocab-type-content">Content</a> element, if they are temporally inactive, if they are empty,
-or if they aren't associated with region <em>R</em> according to the
-<span class="strong">[associate region]</span> procedure;</p></li><li><p>if the pruned sub-tree is non-empty, then reparent it to the <em>R</em>
-element;</p></li><li><p>finally, after completing the above steps, prune the original <code>body</code>
-element from the intermediate document, then prune all <code>region</code>,
-<code>begin</code>, <code>end</code>, and <code>dur</code> attributes, which are no
-longer semantically relevant;</p></li></ol><div class="note"><p class="prefix"><b>Note:</b></p><p>In this section, the term <em>prune</em>, when used in reference to
-an element, means that the element is to be removed from its parent's children,
-which, in turn, implies that the descendants of the pruned element will no longer
-be descendants of the element's parent. When <em>prune</em> is used in
-reference to an attribute, it means that attribute is to be removed from its
-associated (owning) element node.</p></div></dd><dt class="label">[associate region]</dt><dd><p>A <a href="#element-vocab-type-content">Content</a> element is associated with a region according
-to the following ordered rules, where the first rule satisfied
-is used and remaining rules are skipped:</p><ol class="enumar"><li><p>if the element specifies a <a href="#layout-attribute-region"><code>region</code></a> attribute,
-then the element is associated with the region referenced by that
-attribute;</p></li><li><p>if some ancestor of that element specifies a <a href="#layout-attribute-region"><code>region</code></a> attribute,
-then the element is associated with the region referenced by the most
-immediate ancestor that specifies this attribute;</p></li><li><p> if the element contains a descendant element that
-specifies a <a href="#layout-attribute-region"><code>region</code></a> attribute,
-then the element is associated with the region referenced by that
-attribute;</p></li><li><p>if a default region was implied (due to the absence of any
-<a href="#layout-vocabulary-region"><code>region</code></a> element),
-then the element is associated with the default region;</p></li><li><p>the element is not associated with any region.</p></li></ol></dd></dl><p>The result of performing the processing described above will be a sequence of
-<em>N</em> intermediate synchronic
-<em>Document Instances</em>,
-<em>DOC<sub><span>inter<sub>0</sub></span></sub></em> …
-<em>DOC<sub><span>inter<sub>N−1</sub></span></sub></em>.</p><div class="note" id="semantics-smooth-scrolling-recommendation"><p class="prefix"><b>Note:</b></p><p>Where an implementation is able to detect significant similarity between two
-adjacent synchronic <em>Document Instances</em>,
-<em>DOC<sub><span>inter<sub>N</sub></span></sub></em>
-<em>DOC<sub><span>inter<sub>N−1</sub></span></sub></em>,
-then it is preferred that the implementation make the transition between
-presenting the two instances as smooth as possible, e.g., as described
-by <a href="#cea608e">[CEA-608-E]</a>, § C.3, and <a href="#ccreq">[CC-DECODER-REQ]</a>.</p></div></div><div class="div3">
-<h4><a id="semantics-region-layout-step-2"></a>9.3.3 Synchronic Flow Processing</h4><p>Subsequent to performing a temporal (synchronic) slice and subsequent
-remapping of regionally selected content hierarchy, the resulting intermediate
-synchronic document is subjected to a flow transformation step that produces
-a rooted flow object tree represented as an XSL FO document instance as defined by <a href="#xsl11">[XSL 1.1]</a>,
-and semantically extended by TTML specific style properties that have no XSL
-FO counterpart.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>In this section, the use of XSL FO is intended to be conceptual only, employed
-solely for the purpose of defining the normative presentation semantics of
-TTML. An actual implementation of this algorithm is not required to create or process
-XSL-FO representations. In particular, it is possible to implement these semantics
-using alternative presentation models, such as Cascading Style Sheets (CSS).</p></div><p>Each intermediate synchronic document produced by <a href="#semantics-region-layout-step-1"><b>9.3.2 Intermediate Synchronic Document Construction</b></a> is mapped
-to an XSL FO document instance, <em>F</em>, as follows:</p><ol class="enumar"><li><p>perform the following ordered sub-steps to create anonymous spans:</p><ol class="enumla"><li><p>for each significant text node in a <a href="#element-vocab-type-content">Content</a> element,
-synthesize an anonymous span to enclose the text node, substituting
-the new anonymous span for the original text node child in its sibling
-and parent hierarchy;</p></li><li><p>for each contiguous sequence of anonymous spans, replace the
-sequence with a single anonymous span which contains a sequence of
-text nodes representing the individual text node children of the
-original sequence of anonymous spans;</p></li><li><p>for each span element whose child is a single anonymous span,
-replace the anonymous span with its sequence of child text
-nodes;</p></li></ol></li><li><p>resolve styles according to <a href="#semantics-style-resolution-process-overall"><b>8.4.4.4 Style Resolution Process</b></a>;</p></li><li><p>map the <code>tt</code> element to an <code>fo:root</code> element, populated
-initially with an <code>fo:layout-master-set</code> element that contains a valid
-<code>fo:simple-page-master</code> that, in turn, contains an
-<code>fo:region-body</code> child, where the extent of the <em>Root Container Region</em> expressed on the
-<code>tt</code> element is mapped to <code>page-width</code> and
-<code>page-height</code> attributes on the <code>fo:simple-page-master</code>
-element;</p></li><li><p>map the <code>layout</code> element to an <code>fo:page-sequence</code> element and a
-child <code>fo:flow</code> element that reference the page master and page region
-defined by the simple page master produced above;</p></li><li><p>map each non-empty <code>region</code> element to an <code>fo:block-container</code>
-element with an <code>absolute-position</code> attribute with value
-<code>absolute</code>, with <code>top</code>, <code>left</code>, <code>bottom</code>, and <code>right</code>
-attributes that express a rectangle equivalent to the region's origin and
-extent, and with a <code>line-stacking-strategy</code> attribute with value <code>line-height</code>;</p></li><li><p>for each <code>body</code>, <code>div</code>, and <code>p</code> element that is not
-associated with a <code>tts:display</code> style property with the value
-<code>none</code>, map the element to a distinct <code>fo:block</code> element,
-populating the style properties of <code>fo:block</code> by using the computed
-style set associated with each original TTML <a href="#element-vocab-type-content">Content</a> element;</p></li><li><p>for the resulting <code>fo:block</code> formatting object
-produced in the previous step that corresponds to the <code>body</code>
-element, perform the following ordered sub-steps:</p><ol class="enumla"><li><p>if the <code>display-align</code> style property of this <code>fo:block</code>
-has the value <code>center</code> or <code>after</code>,
-then synthesize and insert as the first child of this <code>fo:block</code>
-an empty <code>fo:block</code> with the following attributes:
-<code>space-after.optimum</code>, <code>space-after.maximum</code>, and
-<code>space-after.conditionality</code>, where the value of the former
-two attributes is the height or width of the containing
-<code>fo:block-container</code> element, whichever of these is designated
-as the block progression dimension, and where the value of the last is
-<code>retain</code>;</p></li><li><p>if the <code>display-align</code> style property of this <code>fo:block</code>
-has the value <code>center</code> or <code>before</code>,
-then synthesize and insert as the last child of this <code>fo:block</code>
-an empty <code>fo:block</code> with the following attributes:
-<code>space-after.optimum</code>, <code>space-after.maximum</code>, and
-<code>space-after.conditionality</code>, where the value of the former
-two attributes is the height or width of the containing
-<code>fo:block-container</code> element, whichever of these is designated
-as the block progression dimension, and where the value of the last is
-<code>retain</code>;</p></li></ol></li><li><p>for each <code>span</code> element that is not
-associated with a <code>tts:display</code> style property with the value
-<code>none</code> and for each anonymous
-span that is a child of a <code>p</code> or <code>span</code> element,
-map the element or
-sequence of character items to a distinct <code>fo:inline</code> element,
-populating the style properties of <code>fo:inline</code> by using the computed
-style set associated with each original TTML <a href="#element-vocab-type-content">Content</a> element
-or anonymous span;</p></li><li><p>for each <code>br</code> element that is not
-associated with a <code>tts:display</code> style property with the value
-<code>none</code>, map the element to
-a distinct <code>fo:character</code> element having the following
-properties:</p><ul><li><p><code>character="&#x000A;"</code></p></li><li><p><code>suppress-at-line-break="retain"</code></p></li></ul></li><li><p>for each TTML style property attribute in some computed
-style set that
-has no counterpart in <a href="#xsl11">[XSL 1.1]</a>, map that attribute directly through
-to the relevant formatting object produced by the input TTML <a href="#element-vocab-type-content">Content</a> element to
-which the style property applies;</p></li><li><p>optionally, synthesize a unique <code>id</code> attribute on each resulting
-formatting object element that relates that element to the input element that
-resulted in that formatting object element;</p></li></ol><p>For each resulting document instance F, if processing requires presentation on a
-visual medium, then apply formatting and rendering semantics consistent with that
-prescribed by <a href="#xsl11">[XSL 1.1]</a>.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>In an XSL FO area tree produced by formatting <em>F</em> using
-an <a href="#xsl11">[XSL 1.1]</a> formatting processor,
-the <code>page-viewport-area</code>,
-which is generated by <code>fo:page-sequence</code> element by
-reference to the sole generated <code>fo:simple-page-master</code>
-element, would correspond to the <em>Root Container Region</em> defined
-above in <a href="#definitions"><b>2 Definitions</b></a>.</p></div><div class="note"><p class="prefix"><b>Note:</b></p><p>When mapping a <code>region</code> element to <code>fo:block-container</code>, it may
-be necessary to use a negative offset as a value for one or more of the
-<code>top</code>, <code>left</code>, <code>bottom</code>, and <code>right</code>
-XSL-FO properties in case the region extends outside of its containing block.</p></div><div class="note"><p class="prefix"><b>Note:</b></p><p>Due to the possible presence of TTML style properties or style property values
-in a given <em>Document Instance</em> for which there is no <a href="#xsl11">[XSL 1.1]</a> counterpart,
-Implementors should recognize that it is the layout model of <a href="#xsl11">[XSL 1.1]</a> that is being referenced
-by this specification, not the requirement to use a compliant <a href="#xsl11">[XSL 1.1]</a> formatting processor,
-since such would not necessarily be sufficient to satisfy the full presentation semantics
-defined by this specification, and would contain a large number of features not needed to
-implement the presentation semantics of TTML.</p></div><div class="note"><p class="prefix"><b>Note:</b></p><p>The purpose of inserting additional, collapsible space in the block progression
-dimension of the <code>fo:block</code> that corresponds with the <code>body</code> element
-is to ensure that the before and after edges of this <code>fo:block</code> are coincident
-with the before and after edges of the <code>fo:block-container</code> that corresponds
-to the containing <code>region</code>, while simultaneously taking into account the needs
-to satisfy alignment in the block progression dimension. For example, this assures that
-the background color associated with the <code>body</code> element, if not <code>transparent</code>,
- will fill the containing region wholly.</p></div></div><div class="div3">
-<h4><a id="semantics-region-layout-example"></a>9.3.4 Elaborated Example (Informative)</h4><p>An example of the processing steps described above is elaborated below, starting with <a href="#region-mapping-example-1-s"><b>Example – Sample Source Document</b></a>.</p><a id="region-mapping-example-1-s"></a><table class="example"><caption>Example – Sample Source Document</caption><tbody><tr><td>
-<div class="exampleInner"><pre><tt tts:extent="640px 480px" xml:lang="en"
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>In the above example, a default <code>region</code> element and
+ <code>region</code> attribute are implied. In addition, a <code>layout</code>
+ container element is implied for the implied <code>region</code> element.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="semantics-region-layout-step-1" name=
+ "semantics-region-layout-step-1"></a>9.3.2 Intermediate Synchronic Document
+ Construction</h4>
+
+ <p>For the purposes of performing presentation processing, the active time
+ duration of a <em>Document Instance</em> is divided into a sequence of time
+ coordinates where at each time coordinate, some element becomes temporally
+ active or inactive, then, at each such time coordinate, a <em>Document
+ Instance</em> is mapped from its original, source form,
+ <em>DOC<sub>source</sub></em> , to an intermediate synchronic document form,
+ <em>DOC<sub>inter</sub></em> , according to the <span class="strong">[construct
+ intermediate document]</span> procedure:</p>
+
+ <dl>
+ <dt class="label">[construct intermediate document]</dt>
+
+ <dd>
+ <ol class="enumar">
+ <li>
+ <p>for each temporally active region <em>R</em>, replicate the sub-tree
+ of <em>DOC<sub>source</sub></em> headed by the <code>body</code>
+ element;</p>
+ </li>
+
+ <li>
+ <p>evaluating this sub-tree in a postorder traversal, prune elements if
+ they are not a <a href="#element-vocab-type-content">Content</a>
+ element, if they are temporally inactive, if they are empty, or if they
+ aren't associated with region <em>R</em> according to the <span class=
+ "strong">[associate region]</span> procedure;</p>
+ </li>
+
+ <li>
+ <p>if the pruned sub-tree is non-empty, then reparent it to the
+ <em>R</em> element;</p>
+ </li>
+
+ <li>
+ <p>finally, after completing the above steps, prune the original
+ <code>body</code> element from the intermediate document, then prune
+ all <code>region</code>, <code>begin</code>, <code>end</code>, and
+ <code>dur</code> attributes, which are no longer semantically
+ relevant;</p>
+ </li>
+ </ol>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>In this section, the term <em>prune</em>, when used in reference to an
+ element, means that the element is to be removed from its parent's
+ children, which, in turn, implies that the descendants of the pruned
+ element will no longer be descendants of the element's parent. When
+ <em>prune</em> is used in reference to an attribute, it means that
+ attribute is to be removed from its associated (owning) element node.</p>
+ </div>
+ </dd>
+
+ <dt class="label">[associate region]</dt>
+
+ <dd>
+ <p>A <a href="#element-vocab-type-content">Content</a> element is
+ associated with a region according to the following ordered rules, where
+ the first rule satisfied is used and remaining rules are skipped:</p>
+
+ <ol class="enumar">
+ <li>
+ <p>if the element specifies a <a href=
+ "#layout-attribute-region"><code>region</code></a> attribute, then the
+ element is associated with the region referenced by that attribute;</p>
+ </li>
+
+ <li>
+ <p>if some ancestor of that element specifies a <a href=
+ "#layout-attribute-region"><code>region</code></a> attribute, then the
+ element is associated with the region referenced by the most immediate
+ ancestor that specifies this attribute;</p>
+ </li>
+
+ <li>
+ <p>if the element contains a descendant element that specifies a
+ <a href="#layout-attribute-region"><code>region</code></a> attribute,
+ then the element is associated with the region referenced by that
+ attribute;</p>
+ </li>
+
+ <li>
+ <p>if a default region was implied (due to the absence of any <a href=
+ "#layout-vocabulary-region"><code>region</code></a> element), then the
+ element is associated with the default region;</p>
+ </li>
+
+ <li>
+ <p>the element is not associated with any region.</p>
+ </li>
+ </ol>
+ </dd>
+ </dl>
+
+ <p>The result of performing the processing described above will be a sequence
+ of <em>N</em> intermediate synchronic <em>Document Instances</em>,
+ <em>DOC<sub><span>inter<sub>0</sub></span></sub></em> …
+ <em>DOC<sub><span>inter<sub>N−1</sub></span></sub></em>.</p>
+
+ <div class="note" id="semantics-smooth-scrolling-recommendation">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>Where an implementation is able to detect significant similarity between
+ two adjacent synchronic <em>Document Instances</em>,
+ <em>DOC<sub><span>inter<sub>N</sub></span></sub></em>
+ <em>DOC<sub><span>inter<sub>N−1</sub></span></sub></em>, then it is preferred
+ that the implementation make the transition between presenting the two
+ instances as smooth as possible, e.g., as described by <a href=
+ "#cea608e">[CEA-608-E]</a>, § C.3, and <a href=
+ "#ccreq">[CC-DECODER-REQ]</a>.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="semantics-region-layout-step-2" name=
+ "semantics-region-layout-step-2"></a>9.3.3 Synchronic Flow Processing</h4>
+
+ <p>Subsequent to performing a temporal (synchronic) slice and subsequent
+ remapping of regionally selected content hierarchy, the resulting intermediate
+ synchronic document is subjected to a flow transformation step that produces a
+ rooted flow object tree represented as an XSL FO document instance as defined
+ by <a href="#xsl11">[XSL 1.1]</a>, and semantically extended by TTML specific
+ style properties that have no XSL FO counterpart.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>In this section, the use of XSL FO is intended to be conceptual only,
+ employed solely for the purpose of defining the normative presentation
+ semantics of TTML. An actual implementation of this algorithm is not required
+ to create or process XSL-FO representations. In particular, it is possible to
+ implement these semantics using alternative presentation models, such as
+ Cascading Style Sheets (CSS).</p>
+ </div>
+
+ <p>Each intermediate synchronic document produced by <a href=
+ "#semantics-region-layout-step-1"><b>9.3.2 Intermediate Synchronic Document
+ Construction</b></a> is mapped to an XSL FO document instance, <em>F</em>, as
+ follows:</p>
+
+ <ol class="enumar">
+ <li>
+ <p>perform the following ordered sub-steps to create anonymous spans:</p>
+
+ <ol class="enumla">
+ <li>
+ <p>for each significant text node in a <a href=
+ "#element-vocab-type-content">Content</a> element, synthesize an
+ anonymous span to enclose the text node, substituting the new anonymous
+ span for the original text node child in its sibling and parent
+ hierarchy;</p>
+ </li>
+
+ <li>
+ <p>for each contiguous sequence of anonymous spans, replace the
+ sequence with a single anonymous span which contains a sequence of text
+ nodes representing the individual text node children of the original
+ sequence of anonymous spans;</p>
+ </li>
+
+ <li>
+ <p>for each span element whose child is a single anonymous span,
+ replace the anonymous span with its sequence of child text nodes;</p>
+ </li>
+ </ol>
+ </li>
+
+ <li>
+ <p>resolve styles according to <a href=
+ "#semantics-style-resolution-process-overall"><b>8.4.4.4 Style Resolution
+ Process</b></a>;</p>
+ </li>
+
+ <li>
+ <p>map the <code>tt</code> element to an <code>fo:root</code> element,
+ populated initially with an <code>fo:layout-master-set</code> element that
+ contains a valid <code>fo:simple-page-master</code> that, in turn, contains
+ an <code>fo:region-body</code> child, where the extent of the <em>Root
+ Container Region</em> expressed on the <code>tt</code> element is mapped to
+ <code>page-width</code> and <code>page-height</code> attributes on the
+ <code>fo:simple-page-master</code> element;</p>
+ </li>
+
+ <li>
+ <p>map the <code>layout</code> element to an <code>fo:page-sequence</code>
+ element and a child <code>fo:flow</code> element that reference the page
+ master and page region defined by the simple page master produced
+ above;</p>
+ </li>
+
+ <li>
+ <p>map each non-empty <code>region</code> element to an
+ <code>fo:block-container</code> element with an
+ <code>absolute-position</code> attribute with value <code>absolute</code>,
+ with <code>top</code>, <code>left</code>, <code>bottom</code>, and
+ <code>right</code> attributes that express a rectangle equivalent to the
+ region's origin and extent, and with a <code>line-stacking-strategy</code>
+ attribute with value <code>line-height</code>;</p>
+ </li>
+
+ <li>
+ <p>for each <code>body</code>, <code>div</code>, and <code>p</code> element
+ that is not associated with a <code>tts:display</code> style property with
+ the value <code>none</code>, map the element to a distinct
+ <code>fo:block</code> element, populating the style properties of
+ <code>fo:block</code> by using the computed style set associated with each
+ original TTML <a href="#element-vocab-type-content">Content</a>
+ element;</p>
+ </li>
+
+ <li>
+ <p>for the resulting <code>fo:block</code> formatting object produced in
+ the previous step that corresponds to the <code>body</code> element,
+ perform the following ordered sub-steps:</p>
+
+ <ol class="enumla">
+ <li>
+ <p>if the <code>display-align</code> style property of this
+ <code>fo:block</code> has the value <code>center</code> or
+ <code>after</code>, then synthesize and insert as the first child of
+ this <code>fo:block</code> an empty <code>fo:block</code> with the
+ following attributes: <code>space-after.optimum</code>,
+ <code>space-after.maximum</code>, and
+ <code>space-after.conditionality</code>, where the value of the former
+ two attributes is the height or width of the containing
+ <code>fo:block-container</code> element, whichever of these is
+ designated as the block progression dimension, and where the value of
+ the last is <code>retain</code>;</p>
+ </li>
+
+ <li>
+ <p>if the <code>display-align</code> style property of this
+ <code>fo:block</code> has the value <code>center</code> or
+ <code>before</code>, then synthesize and insert as the last child of
+ this <code>fo:block</code> an empty <code>fo:block</code> with the
+ following attributes: <code>space-after.optimum</code>,
+ <code>space-after.maximum</code>, and
+ <code>space-after.conditionality</code>, where the value of the former
+ two attributes is the height or width of the containing
+ <code>fo:block-container</code> element, whichever of these is
+ designated as the block progression dimension, and where the value of
+ the last is <code>retain</code>;</p>
+ </li>
+ </ol>
+ </li>
+
+ <li>
+ <p>for each <code>span</code> element that is not associated with a
+ <code>tts:display</code> style property with the value <code>none</code>
+ and for each anonymous span that is a child of a <code>p</code> or
+ <code>span</code> element, map the element or sequence of character items
+ to a distinct <code>fo:inline</code> element, populating the style
+ properties of <code>fo:inline</code> by using the computed style set
+ associated with each original TTML <a href=
+ "#element-vocab-type-content">Content</a> element or anonymous span;</p>
+ </li>
+
+ <li>
+ <p>for each <code>br</code> element that is not associated with a
+ <code>tts:display</code> style property with the value <code>none</code>,
+ map the element to a distinct <code>fo:character</code> element having the
+ following properties:</p>
+
+ <ul>
+ <li>
+ <p><code>character="&#x000A;"</code></p>
+ </li>
+
+ <li>
+ <p><code>suppress-at-line-break="retain"</code></p>
+ </li>
+ </ul>
+ </li>
+
+ <li>
+ <p>for each TTML style property attribute in some computed style set that
+ has no counterpart in <a href="#xsl11">[XSL 1.1]</a>, map that attribute
+ directly through to the relevant formatting object produced by the input
+ TTML <a href="#element-vocab-type-content">Content</a> element to which the
+ style property applies;</p>
+ </li>
+
+ <li>
+ <p>optionally, synthesize a unique <code>id</code> attribute on each
+ resulting formatting object element that relates that element to the input
+ element that resulted in that formatting object element;</p>
+ </li>
+ </ol>
+
+ <p>For each resulting document instance F, if processing requires presentation
+ on a visual medium, then apply formatting and rendering semantics consistent
+ with that prescribed by <a href="#xsl11">[XSL 1.1]</a>.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>In an XSL FO area tree produced by formatting <em>F</em> using an <a href=
+ "#xsl11">[XSL 1.1]</a> formatting processor, the
+ <code>page-viewport-area</code>, which is generated by
+ <code>fo:page-sequence</code> element by reference to the sole generated
+ <code>fo:simple-page-master</code> element, would correspond to the <em>Root
+ Container Region</em> defined above in <a href="#definitions"><b>2
+ Definitions</b></a>.</p>
+ </div>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>When mapping a <code>region</code> element to
+ <code>fo:block-container</code>, it may be necessary to use a negative offset
+ as a value for one or more of the <code>top</code>, <code>left</code>,
+ <code>bottom</code>, and <code>right</code> XSL-FO properties in case the
+ region extends outside of its containing block.</p>
+ </div>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>Due to the possible presence of TTML style properties or style property
+ values in a given <em>Document Instance</em> for which there is no <a href=
+ "#xsl11">[XSL 1.1]</a> counterpart, Implementors should recognize that it is
+ the layout model of <a href="#xsl11">[XSL 1.1]</a> that is being referenced
+ by this specification, not the requirement to use a compliant <a href=
+ "#xsl11">[XSL 1.1]</a> formatting processor, since such would not necessarily
+ be sufficient to satisfy the full presentation semantics defined by this
+ specification, and would contain a large number of features not needed to
+ implement the presentation semantics of TTML.</p>
+ </div>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The purpose of inserting additional, collapsible space in the block
+ progression dimension of the <code>fo:block</code> that corresponds with the
+ <code>body</code> element is to ensure that the before and after edges of
+ this <code>fo:block</code> are coincident with the before and after edges of
+ the <code>fo:block-container</code> that corresponds to the containing
+ <code>region</code>, while simultaneously taking into account the needs to
+ satisfy alignment in the block progression dimension. For example, this
+ assures that the background color associated with the <code>body</code>
+ element, if not <code>transparent</code>, will fill the containing region
+ wholly.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="semantics-region-layout-example" name=
+ "semantics-region-layout-example"></a>9.3.4 Elaborated Example
+ (Informative)</h4>
+
+ <p>An example of the processing steps described above is elaborated below,
+ starting with <a href="#region-mapping-example-1-s"><b>Example – Sample Source
+ Document</b></a>.</p><a id="region-mapping-example-1-s" name=
+ "region-mapping-example-1-s"></a>
+
+ <table class="example">
+ <caption>
+ Example – Sample Source Document
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
+<tt tts:extent="640px 480px" xml:lang="en"
xmlns="http://www.w3.org/ns/ttml"
xmlns:tts="http://www.w3.org/ns/ttml#styling">
<head>
@@ -4209,18 +11227,46 @@
</div>
</body>
</tt>
-</pre></div>
-</td></tr></tbody></table><p>In the above document, the content hierarchy consists of two divisions, each
-containing two paragraphs. This content is targeted (associated with) one of two
-non-overlapping regions that are styled identically except for their position
-and their foreground colors, the latter of which is inherited by and applies to
-the (and, in this case, anonymous) spans reparented into the regions.</p><p>The following, first intermediate document shows the synchronic state for time
-interval [0,1), during which time only division <code>d1</code> is temporally active,
-and where paragraphs <code>p1</code> and <code>p2</code> (and their ancestors)
-are associated with regions <code>r1</code> and <code>r2</code>, respectively.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>The intermediate documents shown below are not valid <em>Document Instances</em>,
-but rather, are representations of possible internal processing states used for
-didactic purposes.</p></div><a id="region-mapping-example-1-i0"></a><table class="example"><caption>Example – Intermediate Document – [0s,1s)</caption><tbody><tr><td>
-<div class="exampleInner"><pre><tt tts:extent="640px 480px" xml:lang="en"
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>In the above document, the content hierarchy consists of two divisions, each
+ containing two paragraphs. This content is targeted (associated with) one of
+ two non-overlapping regions that are styled identically except for their
+ position and their foreground colors, the latter of which is inherited by and
+ applies to the (and, in this case, anonymous) spans reparented into the
+ regions.</p>
+
+ <p>The following, first intermediate document shows the synchronic state for
+ time interval [0,1), during which time only division <code>d1</code> is
+ temporally active, and where paragraphs <code>p1</code> and <code>p2</code>
+ (and their ancestors) are associated with regions <code>r1</code> and
+ <code>r2</code>, respectively.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The intermediate documents shown below are not valid <em>Document
+ Instances</em>, but rather, are representations of possible internal
+ processing states used for didactic purposes.</p>
+ </div><a id="region-mapping-example-1-i0" name=
+ "region-mapping-example-1-i0"></a>
+
+ <table class="example">
+ <caption>
+ Example – Intermediate Document – [0s,1s)
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
+<tt tts:extent="640px 480px" xml:lang="en"
xmlns="http://www.w3.org/ns/ttml"
xmlns:tts="http://www.w3.org/ns/ttml#styling">
<head>
@@ -4258,11 +11304,29 @@
</layout>
</head>
</tt>
-</pre></div>
-</td></tr></tbody></table><p>An XSL FO document instance that would yield rendering consistent with TTML, and
-which may be produced by performing flow processing upon the first intermediate
-document is illustrated below.</p><a id="region-mapping-example-1-f0"></a><table class="example"><caption>Example – XSL FO Document – [0s,1s)</caption><tbody><tr><td>
-<div class="exampleInner"><pre><fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>An XSL FO document instance that would yield rendering consistent with TTML,
+ and which may be produced by performing flow processing upon the first
+ intermediate document is illustrated below.</p><a id=
+ "region-mapping-example-1-f0" name="region-mapping-example-1-f0"></a>
+
+ <table class="example">
+ <caption>
+ Example – XSL FO Document – [0s,1s)
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
+<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
<fo:layout-master-set>
<fo:simple-page-master master-name="m1"
page-width="640px" page-height="480px">
@@ -4326,14 +11390,32 @@
</fo:flow>
</fo:page-sequence>
</fo:root>
-</pre></div>
-</td></tr></tbody></table><p>The following, second intermediate document shows the synchronic state for
-time interval [1,2), during which time both divisions <code>d1</code> and
-<code>d2</code> are temporally active, and where paragraphs <code>p1</code> and
-<code>p4</code> (and their ancestors) are associated with region <code>r1</code>
-and paragraphs <code>p2</code> and <code>p3</code> (and their ancestors) are
-associated with region <code>r2</code>.</p><a id="region-mapping-example-1-i1"></a><table class="example"><caption>Example – Intermediate Document – [1s,2s)</caption><tbody><tr><td>
-<div class="exampleInner"><pre><tt tts:extent="640px 480px" xml:lang="en"
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>The following, second intermediate document shows the synchronic state for
+ time interval [1,2), during which time both divisions <code>d1</code> and
+ <code>d2</code> are temporally active, and where paragraphs <code>p1</code> and
+ <code>p4</code> (and their ancestors) are associated with region
+ <code>r1</code> and paragraphs <code>p2</code> and <code>p3</code> (and their
+ ancestors) are associated with region <code>r2</code>.</p><a id=
+ "region-mapping-example-1-i1" name="region-mapping-example-1-i1"></a>
+
+ <table class="example">
+ <caption>
+ Example – Intermediate Document – [1s,2s)
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
+<tt tts:extent="640px 480px" xml:lang="en"
xmlns="http://www.w3.org/ns/ttml"
xmlns:tts="http://www.w3.org/ns/ttml#styling">
<head>
@@ -4377,12 +11459,31 @@
</layout>
</head>
</tt>
-</pre></div>
-</td></tr></tbody></table><p>The following, third intermediate document shows the synchronic state for time
-interval [2,3), during which time only division <code>d2</code> is temporally active,
-and where paragraphs <code>p4</code> and <code>p3</code> (and their ancestors)
-are associated with regions <code>r1</code> and <code>r2</code>, respectively.</p><a id="region-mapping-example-1-i2"></a><table class="example"><caption>Example – Intermediate Document – [2s,3s)</caption><tbody><tr><td>
-<div class="exampleInner"><pre><tt tts:extent="640px 480px" xml:lang="en"
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>The following, third intermediate document shows the synchronic state for
+ time interval [2,3), during which time only division <code>d2</code> is
+ temporally active, and where paragraphs <code>p4</code> and <code>p3</code>
+ (and their ancestors) are associated with regions <code>r1</code> and
+ <code>r2</code>, respectively.</p><a id="region-mapping-example-1-i2" name=
+ "region-mapping-example-1-i2"></a>
+
+ <table class="example">
+ <caption>
+ Example – Intermediate Document – [2s,3s)
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
+<tt tts:extent="640px 480px" xml:lang="en"
xmlns="http://www.w3.org/ns/ttml"
xmlns:tts="http://www.w3.org/ns/ttml#styling">
<head>
@@ -4420,91 +11521,286 @@
</layout>
</head>
</tt>
-</pre></div>
-</td></tr></tbody></table></div></div><div class="div2">
-<h3><a id="semantics-line-layout"></a>9.4 Line Layout</h3><p>If a profile that applies to a <em>Document Instance</em>
-requires use of the <a href="#feature-lineBreak-uax14">#lineBreak-uax14</a> feature
-(i.e., the value attribute for the feature is specified as <code>use</code>), then
-the recommendations defined by <a href="http://www.unicode.org/reports/tr14/#Algorithm">Line
-Breaking Algorithm</a> <a href="#uax14">[UAX14]</a> apply when performing
-line layout on the content of the <em>Document Instance</em>.</p></div></div><div class="div1">
-<h2><a id="timing"></a>10 Timing</h2><p>This section specifies the <em>timing</em> matter of the core
-vocabulary catalog, where
-timing is to be understood as a separable layer of information that applies to
-content and that denotes authorial intentions about the temporal presentation of
-that content.</p><div class="div2">
-<h3><a id="timing-element-vocabulary"></a>10.1 Timing Element Vocabulary</h3><p>No timing related element vocabulary is defined for use in the core
-vocabulary catalog.</p></div><div class="div2">
-<h3><a id="timing-attribute-vocabulary"></a>10.2 Timing Attribute Vocabulary</h3><p>This section defines the following basic timing attributes for use with timed elements:</p><ul><li><p><a href="#timing-attribute-begin"><b>10.2.1 begin</b></a></p></li><li><p><a href="#timing-attribute-end"><b>10.2.2 end</b></a></p></li><li><p><a href="#timing-attribute-dur"><b>10.2.3 dur</b></a></p></li></ul><p>In addition, this section defines the <a href="#timing-attribute-timeContainer"><b>10.2.4 timeContainer</b></a> attribute for use with timed elements
-that serve simultaneously as timing containers.</p><div class="div3">
-<h4><a id="timing-attribute-begin"></a>10.2.1 begin</h4><p>The <code>begin</code> attribute is used to specify the begin
-point of a temporal interval associated with a timed element. If
-specified, the value of a <code>begin</code> attribute must adhere to
-a <timeExpression> specification as defined by <a href="#timing-value-timeExpression"><b>10.3.1 <timeExpression></b></a>.</p><p>The begin point of a temporal interval is included in the
-interval; i.e., the interval is left-wise closed.</p><p>The semantics of the <code>begin</code> attribute are those defined
-by <a href="#smil21">[SMIL 2.1]</a>, § 10.4.1,
-while taking into account any overriding semantics defined by this specification.</p></div><div class="div3">
-<h4><a id="timing-attribute-end"></a>10.2.2 end</h4><p>The <code>end</code> attribute is used to specify the ending point
-of a temporal interval associated with a timed element. If
-specified, the value of an <code>end</code> attribute must adhere to a
-<timeExpression> specification as defined by <a href="#timing-value-timeExpression"><b>10.3.1 <timeExpression></b></a>.</p><p>The ending point of a temporal interval is not included in the
-interval; i.e., the interval is right-wise open.</p><p>The presentation effects of a non-empty active
-temporal interval include the frame immediately prior to the frame
-(or tick) equal to or immediately following the time specified by the ending
-point, but do not extend into this latter frame (or tick).</p><div class="note"><p class="prefix"><b>Note:</b></p><p>For example, if an active interval is [10s,10.33333s), and the
-frame rate is 30 frames per second, then the presentation effects of the interval
-are limited to frames 300 through 309 only (assuming that 0s corresponds
-with frame 0). The same holds if the active interval is specified
-as [300f,310f).</p></div><p>The semantics of the <code>end</code> attribute are those defined
-by <a href="#smil21">[SMIL 2.1]</a>, § 10.4.1,
-while taking into account any overriding semantics defined by this specification.</p></div><div class="div3">
-<h4><a id="timing-attribute-dur"></a>10.2.3 dur</h4><p>The <code>dur</code> attribute is used to specify the duration of a
-temporal interval associated with a timed element. If specified,
-the value of a <code>dur</code> attribute must adhere to a
-<timeExpression> specification as defined by <a href="#timing-value-timeExpression"><b>10.3.1 <timeExpression></b></a>.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>When the <code>clock-time</code> form of a <timeExpression> specification
-is used with a <code>dur</code> attribute, it is intended to be interpreted as
-a difference between two implied clock time expressions.</p></div><p>When a <em>Document Instance</em> specifies the use of the
-<code>smpte</code> time base and <code>discontinuous</code> marker
-mode, a (well-formed) <code>dur</code> attribute must not be specified on any
-element.</p><p>The semantics of the <code>dur</code> attribute are those defined
-by <a href="#smil21">[SMIL 2.1]</a>, § 10.4.1,
-while taking into account any overriding semantics defined by this specification.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>In the context of the subset of <a href="#smil21">[SMIL 2.1]</a> semantics supported by
-this specification, the active duration of an element that specifies both
-<code>end</code> and <code>dur</code> attributes is equal to the lesser of the value of
-the <code>dur</code> attribute and the difference between the value of the
-<code>end</code> attribute and the element's begin time.</p></div></div><div class="div3">
-<h4><a id="timing-attribute-timeContainer"></a>10.2.4 timeContainer</h4><p>The <code>timeContainer</code> attribute is used to specify a local temporal
-context by means of which timed child elements are temporally situated.</p><p>If specified, the value of a <code>timeContainer</code> attribute must be one
-of the following:</p><ul><li><p><code>par</code></p></li><li><p><code>seq</code></p></li></ul><p>If the time container semantics of an element instance is <code>par</code>,
-then the temporal intervals of child elements are considered to apply in
-parallel, i.e., simultaneously in time. Furthermore, the specification of
-the time interval of each child element is considered to be relative to the temporal
-interval of the container element instance. For the purpose of determining the
-<a href="#smil21">[SMIL 2.1]</a> <code>endsync</code> semantics of a <code>par</code>
-time container, a default value of <code>all</code> applies.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>The use of a default value of <code>all</code> for the <code>endsync</code>
-behavior is distinct from <a href="#smil21">[SMIL 2.1]</a> which uses a default value
-of <code>last</code>.</p></div><p>If the time container semantics of an element instance is <code>seq</code>,
-then the temporal intervals of child elements are considered to apply in
-sequence, i.e., sequentially in time. Furthermore, the specification of
-the time interval of each child element is considered to be relative to the temporal
-interval of its sibling elements, unless it is the first child element, in which case
-it is considered to be relative to the temporal interval of the container
-element instance.</p><p>Each time container is considered to constitute an independent time base, i.e.,
-time coordinate system.</p><p>If a <code>timeContainer</code> attribute is not specified on an element that
-has time container semantics, then <code>par</code> time container semantics must apply.</p><p>Time container semantics applies only to the following element types:</p><ul><li><p><a href="#document-structure-vocabulary-body"><code>body</code></a></p></li><li><p><a href="#content-vocabulary-div"><code>div</code></a></p></li><li><p><a href="#content-vocabulary-p"><code>p</code></a></p></li><li><p><a href="#layout-vocabulary-region"><code>region</code></a></p></li><li><p><a href="#content-vocabulary-span"><code>span</code></a></p></li></ul><p>The semantics of parallel and sequential time
-containment are those defined by <a href="#smil21">[SMIL 2.1]</a>, § 10.4.2,
-while taking into account any overriding semantics defined by this specification.</p></div></div><div class="div2">
-<h3><a id="timing-time-value-expressions"></a>10.3 Time Value Expressions</h3><p>Timing attribute values include the use of the following expressions:</p><ul><li><p><a href="#timing-value-timeExpression"><b>10.3.1 <timeExpression></b></a></p></li></ul><div class="div3">
-<h4><a id="timing-value-timeExpression"></a>10.3.1 <timeExpression></h4><p>A <timeExpression> is used to specify a coordinate within
-some time base, where the applicable time base is determined by the
-<code>ttp:timeBase</code> parameter, and where the semantics defined
-by <a href="#time-expression-semantics"><b>N Time Expression Semantics</b></a> apply.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>See
-<a href="#parameter-attribute-frameRate"><b>6.2.4 ttp:frameRate</b></a>,
-<a href="#parameter-attribute-subFrameRate"><b>6.2.9 ttp:subFrameRate</b></a>,
-<a href="#parameter-attribute-tickRate"><b>6.2.10 ttp:tickRate</b></a>, and
-<a href="#parameter-attribute-timeBase"><b>6.2.11 ttp:timeBase</b></a> for further information on
-explicit specification of frame rate, sub-frame rate, tick rate, and time base.</p></div><a id="timeExpression-syntax"></a><table class="syntax"><caption>Syntax Representation – <timeExpression></caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </div>
+
+ <div class="div2">
+ <h3><a id="semantics-line-layout" name="semantics-line-layout"></a>9.4 Line
+ Layout</h3>
+
+ <p>If a profile that applies to a <em>Document Instance</em> requires use of the
+ <a href="#feature-lineBreak-uax14">#lineBreak-uax14</a> feature (i.e., the value
+ attribute for the feature is specified as <code>use</code>), then the
+ recommendations defined by <a href=
+ "http://www.unicode.org/reports/tr14/#Algorithm">Line Breaking Algorithm</a>
+ <a href="#uax14">[UAX14]</a> apply when performing line layout on the content of
+ the <em>Document Instance</em>.</p>
+ </div>
+ </div>
+
+ <div class="div1">
+ <h2><a id="timing" name="timing"></a>10 Timing</h2>
+
+ <p>This section specifies the <em>timing</em> matter of the core vocabulary
+ catalog, where timing is to be understood as a separable layer of information that
+ applies to content and that denotes authorial intentions about the temporal
+ presentation of that content.</p>
+
+ <div class="div2">
+ <h3><a id="timing-element-vocabulary" name="timing-element-vocabulary"></a>10.1
+ Timing Element Vocabulary</h3>
+
+ <p>No timing related element vocabulary is defined for use in the core vocabulary
+ catalog.</p>
+ </div>
+
+ <div class="div2">
+ <h3><a id="timing-attribute-vocabulary" name=
+ "timing-attribute-vocabulary"></a>10.2 Timing Attribute Vocabulary</h3>
+
+ <p>This section defines the following basic timing attributes for use with timed
+ elements:</p>
+
+ <ul>
+ <li>
+ <p><a href="#timing-attribute-begin"><b>10.2.1 begin</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#timing-attribute-end"><b>10.2.2 end</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#timing-attribute-dur"><b>10.2.3 dur</b></a></p>
+ </li>
+ </ul>
+
+ <p>In addition, this section defines the <a href=
+ "#timing-attribute-timeContainer"><b>10.2.4 timeContainer</b></a> attribute for
+ use with timed elements that serve simultaneously as timing containers.</p>
+
+ <div class="div3">
+ <h4><a id="timing-attribute-begin" name="timing-attribute-begin"></a>10.2.1
+ begin</h4>
+
+ <p>The <code>begin</code> attribute is used to specify the begin point of a
+ temporal interval associated with a timed element. If specified, the value of a
+ <code>begin</code> attribute must adhere to a <timeExpression>
+ specification as defined by <a href="#timing-value-timeExpression"><b>10.3.1
+ <timeExpression></b></a>.</p>
+
+ <p>The begin point of a temporal interval is included in the interval; i.e.,
+ the interval is left-wise closed.</p>
+
+ <p>The semantics of the <code>begin</code> attribute are those defined by
+ <a href="#smil21">[SMIL 2.1]</a>, § 10.4.1, while taking into account any
+ overriding semantics defined by this specification.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="timing-attribute-end" name="timing-attribute-end"></a>10.2.2
+ end</h4>
+
+ <p>The <code>end</code> attribute is used to specify the ending point of a
+ temporal interval associated with a timed element. If specified, the value of
+ an <code>end</code> attribute must adhere to a <timeExpression>
+ specification as defined by <a href="#timing-value-timeExpression"><b>10.3.1
+ <timeExpression></b></a>.</p>
+
+ <p>The ending point of a temporal interval is not included in the interval;
+ i.e., the interval is right-wise open.</p>
+
+ <p>The presentation effects of a non-empty active temporal interval include the
+ frame immediately prior to the frame (or tick) equal to or immediately
+ following the time specified by the ending point, but do not extend into this
+ latter frame (or tick).</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>For example, if an active interval is [10s,10.33333s), and the frame rate
+ is 30 frames per second, then the presentation effects of the interval are
+ limited to frames 300 through 309 only (assuming that 0s corresponds with
+ frame 0). The same holds if the active interval is specified as
+ [300f,310f).</p>
+ </div>
+
+ <p>The semantics of the <code>end</code> attribute are those defined by
+ <a href="#smil21">[SMIL 2.1]</a>, § 10.4.1, while taking into account any
+ overriding semantics defined by this specification.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="timing-attribute-dur" name="timing-attribute-dur"></a>10.2.3
+ dur</h4>
+
+ <p>The <code>dur</code> attribute is used to specify the duration of a temporal
+ interval associated with a timed element. If specified, the value of a
+ <code>dur</code> attribute must adhere to a <timeExpression>
+ specification as defined by <a href="#timing-value-timeExpression"><b>10.3.1
+ <timeExpression></b></a>.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>When the <code>clock-time</code> form of a <timeExpression>
+ specification is used with a <code>dur</code> attribute, it is intended to be
+ interpreted as a difference between two implied clock time expressions.</p>
+ </div>
+
+ <p>When a <em>Document Instance</em> specifies the use of the
+ <code>smpte</code> time base and <code>discontinuous</code> marker mode, a
+ (well-formed) <code>dur</code> attribute must not be specified on any
+ element.</p>
+
+ <p>The semantics of the <code>dur</code> attribute are those defined by
+ <a href="#smil21">[SMIL 2.1]</a>, § 10.4.1, while taking into account any
+ overriding semantics defined by this specification.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>In the context of the subset of <a href="#smil21">[SMIL 2.1]</a> semantics
+ supported by this specification, the active duration of an element that
+ specifies both <code>end</code> and <code>dur</code> attributes is equal to
+ the lesser of the value of the <code>dur</code> attribute and the difference
+ between the value of the <code>end</code> attribute and the element's begin
+ time.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="timing-attribute-timeContainer" name=
+ "timing-attribute-timeContainer"></a>10.2.4 timeContainer</h4>
+
+ <p>The <code>timeContainer</code> attribute is used to specify a local temporal
+ context by means of which timed child elements are temporally situated.</p>
+
+ <p>If specified, the value of a <code>timeContainer</code> attribute must be
+ one of the following:</p>
+
+ <ul>
+ <li>
+ <p><code>par</code></p>
+ </li>
+
+ <li>
+ <p><code>seq</code></p>
+ </li>
+ </ul>
+
+ <p>If the time container semantics of an element instance is <code>par</code>,
+ then the temporal intervals of child elements are considered to apply in
+ parallel, i.e., simultaneously in time. Furthermore, the specification of the
+ time interval of each child element is considered to be relative to the
+ temporal interval of the container element instance. For the purpose of
+ determining the <a href="#smil21">[SMIL 2.1]</a> <code>endsync</code> semantics
+ of a <code>par</code> time container, a default value of <code>all</code>
+ applies.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The use of a default value of <code>all</code> for the
+ <code>endsync</code> behavior is distinct from <a href="#smil21">[SMIL
+ 2.1]</a> which uses a default value of <code>last</code>.</p>
+ </div>
+
+ <p>If the time container semantics of an element instance is <code>seq</code>,
+ then the temporal intervals of child elements are considered to apply in
+ sequence, i.e., sequentially in time. Furthermore, the specification of the
+ time interval of each child element is considered to be relative to the
+ temporal interval of its sibling elements, unless it is the first child
+ element, in which case it is considered to be relative to the temporal interval
+ of the container element instance.</p>
+
+ <p>Each time container is considered to constitute an independent time base,
+ i.e., time coordinate system.</p>
+
+ <p>If a <code>timeContainer</code> attribute is not specified on an element
+ that has time container semantics, then <code>par</code> time container
+ semantics must apply.</p>
+
+ <p>Time container semantics applies only to the following element types:</p>
+
+ <ul>
+ <li>
+ <p><a href="#document-structure-vocabulary-body"><code>body</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#content-vocabulary-div"><code>div</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#content-vocabulary-p"><code>p</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#layout-vocabulary-region"><code>region</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#content-vocabulary-span"><code>span</code></a></p>
+ </li>
+ </ul>
+
+ <p>The semantics of parallel and sequential time containment are those defined
+ by <a href="#smil21">[SMIL 2.1]</a>, § 10.4.2, while taking into account any
+ overriding semantics defined by this specification.</p>
+ </div>
+ </div>
+
+ <div class="div2">
+ <h3><a id="timing-time-value-expressions" name=
+ "timing-time-value-expressions"></a>10.3 Time Value Expressions</h3>
+
+ <p>Timing attribute values include the use of the following expressions:</p>
+
+ <ul>
+ <li>
+ <p><a href="#timing-value-timeExpression"><b>10.3.1
+ <timeExpression></b></a></p>
+ </li>
+ </ul>
+
+ <div class="div3">
+ <h4><a id="timing-value-timeExpression" name=
+ "timing-value-timeExpression"></a>10.3.1 <timeExpression></h4>
+
+ <p>A <timeExpression> is used to specify a coordinate within some time
+ base, where the applicable time base is determined by the
+ <code>ttp:timeBase</code> parameter, and where the semantics defined by
+ <a href="#time-expression-semantics"><b>N Time Expression Semantics</b></a>
+ apply.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>See <a href="#parameter-attribute-frameRate"><b>6.2.4
+ ttp:frameRate</b></a>, <a href="#parameter-attribute-subFrameRate"><b>6.2.9
+ ttp:subFrameRate</b></a>, <a href="#parameter-attribute-tickRate"><b>6.2.10
+ ttp:tickRate</b></a>, and <a href="#parameter-attribute-timeBase"><b>6.2.11
+ ttp:timeBase</b></a> for further information on explicit specification of
+ frame rate, sub-frame rate, tick rate, and time base.</p>
+ </div><a id="timeExpression-syntax" name="timeExpression-syntax"></a>
+
+ <table class="syntax">
+ <caption>
+ Syntax Representation – <timeExpression>
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<timeExpression>
: clock-time
| offset-time
@@ -4516,15 +11812,20 @@
: time-count fraction? metric
hours
- : <a href="#style-value-digit"><digit></a> <a href="#style-value-digit"><digit></a>
- | <a href="#style-value-digit"><digit></a> <a href="#style-value-digit"><digit></a> <a href="#style-value-digit"><digit></a>+
+ : <a href="#style-value-digit"><digit></a> <a href=
+"#style-value-digit"><digit></a>
+ | <a href="#style-value-digit"><digit></a> <a href=
+"#style-value-digit"><digit></a> <a href="#style-value-digit"><digit></a>+
minutes | seconds
- : <a href="#style-value-digit"><digit></a> <a href="#style-value-digit"><digit></a>
+ : <a href="#style-value-digit"><digit></a> <a href=
+"#style-value-digit"><digit></a>
frames
- : <a href="#style-value-digit"><digit></a> <a href="#style-value-digit"><digit></a>
- | <a href="#style-value-digit"><digit></a> <a href="#style-value-digit"><digit></a> <a href="#style-value-digit"><digit></a>+
+ : <a href="#style-value-digit"><digit></a> <a href=
+"#style-value-digit"><digit></a>
+ | <a href="#style-value-digit"><digit></a> <a href=
+"#style-value-digit"><digit></a> <a href="#style-value-digit"><digit></a>+
sub-frames
: <a href="#style-value-digit"><digit></a>+
@@ -4542,67 +11843,148 @@
| "ms" // milliseconds
| "f" // frames
| "t" // ticks
-</pre></div>
-</td></tr></tbody></table><p>If a <timeExpression> is expressed in terms of a
-<em>clock-time</em>, then leading zeroes are used when expressing hours,
-minutes, seconds, and frames less than 10. Minutes are constrained to
-[0…59], while seconds (including any fractional part) are constrained to the closed
-interval [0,60], where the value 60 applies only to leap seconds.</p><p>If a <timeExpression> is expressed in terms of a
-<em>clock-time</em> and a <em>frames</em> term is specified,
-then the value of this term must be constrained to the interval
-[0…<em>F-1</em>], where <em>F</em> is the frame rate
-determined by the <code>ttp:frameRate</code> parameter as defined
-by <a href="#parameter-attribute-frameRate"><b>6.2.4 ttp:frameRate</b></a>.
-It is considered an error if a <em>frames</em> term or
-<code>f</code> (frames) metric is specified when the <code>clock</code> time base applies.</p><p>If a <timeExpression> is expressed in terms of a
-<em>clock-time</em> and a <em>sub-frames</em> term is
-specified, then the value of this term must be constrained to the
-interval [0…<em>S-1</em>], where <em>S</em> is the
-sub-frame rate determined by the <code>ttp:subFrameRate</code> parameter as defined by <a href="#parameter-attribute-subFrameRate"><b>6.2.9 ttp:subFrameRate</b></a>.
-It is considered an error if a <em>sub-frames</em> term is specified
-when the <code>clock</code> time base applies.</p></div></div><div class="div2">
-<h3><a id="timing-time-intervals"></a>10.4 Time Intervals</h3><p>The semantics of time containment, durations, and intervals defined by
-<a href="#smil21">[SMIL 2.1]</a> apply to the interpretation of like-named timed elements and timing
-vocabulary defined by this specification, given the following
-constraints:</p><ul><li><p>The implicit duration of an anonymous span is defined as follows: if
-the anonymous span's parent time container is a parallel time container, then
-the implicit duration is equivalent to the <code>indefinite</code>
-duration value as defined by <a href="#smil21">[SMIL 2.1]</a>; if the anonymous span's
-parent time container is a sequential time container, then the implicit duration
-is equivalent to zero.</p></li><li><p>The implicit duration of a <code>body</code>, <code>div</code>, <code>p</code>,
-or <code>span</code> element is determined in accordance to (1) whether
-the element is a parallel or sequential time container, (2) the default
-<code>endsync</code> semantics defined above by <a href="#timing-attribute-timeContainer"><b>10.2.4 timeContainer</b></a>,
-and (3) the semantics of <a href="#smil21">[SMIL 2.1]</a> as applied to these time
-containers.</p></li><li><p>The implicit duration of the <code>region</code> element is defined to
-be equivalent to the <code>indefinite</code>
-duration value as defined by <a href="#smil21">[SMIL 2.1]</a>.</p></li><li><p>If the governing time base is <code>clock</code>, then time
-expressions are considered to be equivalent to wall-clock
-based timing in <a href="#smil21">[SMIL 2.1]</a>, where the specific semantics of
-<a href="#time-expression-semantics-clock"><b>N.1 Clock Time Base</b></a> apply.</p></li><li><p>If the governing time base is <code>media</code>, then time
-expressions are considered to be equivalent to offset based timing
-in <a href="#smil21">[SMIL 2.1]</a>, where the specific semantics of
-<a href="#time-expression-semantics-media"><b>N.2 Media Time Base</b></a> apply.</p></li><li><p>If the governing time base is <code>smpte</code>, then time
-expressions are considered to be equivalent to either offset
-based timing or event based timing in <a href="#smil21">[SMIL 2.1]</a>, where the specific semantics of
-<a href="#time-expression-semantics-smpte"><b>N.3 SMPTE Time Base</b></a> apply.</p></li></ul></div></div><div class="div1">
-<h2><a id="animation"></a>11 Animation</h2><p>This section specifies the <em>animation</em> matter of the
-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">
-<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
-<em>Document Instance</em>:</p><ul><li><p><a href="#animation-vocabulary-set"><b>11.1.1 set</b></a></p></li></ul><div class="div3">
-<h4><a id="animation-vocabulary-set"></a>11.1.1 set</h4><p>The <code>set</code> element is used as a child element of a
-<a href="#element-vocab-type-content">Content</a> element or a <code>region</code> element
-in order to express a discrete change of some style parameter value
-that applies over some time interval.</p><p>The <code>set</code> element accepts as its children zero or more
-elements in the <code>Metadata.class</code> element group.</p><a id="elt-syntax-set"></a><table class="syntax"><caption>XML Representation – Element Information Item: set</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>If a <timeExpression> is expressed in terms of a <em>clock-time</em>,
+ then leading zeroes are used when expressing hours, minutes, seconds, and
+ frames less than 10. Minutes are constrained to [0…59], while seconds
+ (including any fractional part) are constrained to the closed interval [0,60],
+ where the value 60 applies only to leap seconds.</p>
+
+ <p>If a <timeExpression> is expressed in terms of a <em>clock-time</em>
+ and a <em>frames</em> term is specified, then the value of this term must be
+ constrained to the interval [0…<em>F-1</em>], where <em>F</em> is the frame
+ rate determined by the <code>ttp:frameRate</code> parameter as defined by
+ <a href="#parameter-attribute-frameRate"><b>6.2.4 ttp:frameRate</b></a>. It is
+ considered an error if a <em>frames</em> term or <code>f</code> (frames) metric
+ is specified when the <code>clock</code> time base applies.</p>
+
+ <p>If a <timeExpression> is expressed in terms of a <em>clock-time</em>
+ and a <em>sub-frames</em> term is specified, then the value of this term must
+ be constrained to the interval [0…<em>S-1</em>], where <em>S</em> is the
+ sub-frame rate determined by the <code>ttp:subFrameRate</code> parameter as
+ defined by <a href="#parameter-attribute-subFrameRate"><b>6.2.9
+ ttp:subFrameRate</b></a>. It is considered an error if a <em>sub-frames</em>
+ term is specified when the <code>clock</code> time base applies.</p>
+ </div>
+ </div>
+
+ <div class="div2">
+ <h3><a id="timing-time-intervals" name="timing-time-intervals"></a>10.4 Time
+ Intervals</h3>
+
+ <p>The semantics of time containment, durations, and intervals defined by
+ <a href="#smil21">[SMIL 2.1]</a> apply to the interpretation of like-named timed
+ elements and timing vocabulary defined by this specification, given the following
+ constraints:</p>
+
+ <ul>
+ <li>
+ <p>The implicit duration of an anonymous span is defined as follows: if the
+ anonymous span's parent time container is a parallel time container, then the
+ implicit duration is equivalent to the <code>indefinite</code> duration value
+ as defined by <a href="#smil21">[SMIL 2.1]</a>; if the anonymous span's
+ parent time container is a sequential time container, then the implicit
+ duration is equivalent to zero.</p>
+ </li>
+
+ <li>
+ <p>The implicit duration of a <code>body</code>, <code>div</code>,
+ <code>p</code>, or <code>span</code> element is determined in accordance to
+ (1) whether the element is a parallel or sequential time container, (2) the
+ default <code>endsync</code> semantics defined above by <a href=
+ "#timing-attribute-timeContainer"><b>10.2.4 timeContainer</b></a>, and (3)
+ the semantics of <a href="#smil21">[SMIL 2.1]</a> as applied to these time
+ containers.</p>
+ </li>
+
+ <li>
+ <p>The implicit duration of the <code>region</code> element is defined to be
+ equivalent to the <code>indefinite</code> duration value as defined by
+ <a href="#smil21">[SMIL 2.1]</a>.</p>
+ </li>
+
+ <li>
+ <p>If the governing time base is <code>clock</code>, then time expressions
+ are considered to be equivalent to wall-clock based timing in <a href=
+ "#smil21">[SMIL 2.1]</a>, where the specific semantics of <a href=
+ "#time-expression-semantics-clock"><b>N.1 Clock Time Base</b></a> apply.</p>
+ </li>
+
+ <li>
+ <p>If the governing time base is <code>media</code>, then time expressions
+ are considered to be equivalent to offset based timing in <a href=
+ "#smil21">[SMIL 2.1]</a>, where the specific semantics of <a href=
+ "#time-expression-semantics-media"><b>N.2 Media Time Base</b></a> apply.</p>
+ </li>
+
+ <li>
+ <p>If the governing time base is <code>smpte</code>, then time expressions
+ are considered to be equivalent to either offset based timing or event based
+ timing in <a href="#smil21">[SMIL 2.1]</a>, where the specific semantics of
+ <a href="#time-expression-semantics-smpte"><b>N.3 SMPTE Time Base</b></a>
+ apply.</p>
+ </li>
+ </ul>
+ </div>
+ </div>
+
+ <div class="div1">
+ <h2><a id="animation" name="animation"></a>11 Animation</h2>
+
+ <p>This section specifies the <em>animation</em> matter of the 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">
+ <h3><a id="animation-element-vocabulary" name=
+ "animation-element-vocabulary"></a>11.1 Animation Element Vocabulary</h3>
+
+ <p>The following elements specify the structure and principal animation aspects
+ of a <em>Document Instance</em>:</p>
+
+ <ul>
+ <li>
+ <p><a href="#animation-vocabulary-set"><b>11.1.1 set</b></a></p>
+ </li>
+ </ul>
+
+ <div class="div3">
+ <h4><a id="animation-vocabulary-set" name="animation-vocabulary-set"></a>11.1.1
+ set</h4>
+
+ <p>The <code>set</code> element is used as a child element of a <a href=
+ "#element-vocab-type-content">Content</a> element or a <code>region</code>
+ element in order to express a discrete change of some style parameter value
+ that applies over some time interval.</p>
+
+ <p>The <code>set</code> element accepts as its children zero or more elements
+ in the <code>Metadata.class</code> element group.</p><a id="elt-syntax-set"
+ name="elt-syntax-set"></a>
+
+ <table class="syntax">
+ <caption>
+ XML Representation – Element Information Item: set
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<set
- <a href="#timing-attribute-begin">begin</a> = <a href="#timing-value-timeExpression"><timeExpression></a>
- <a href="#timing-attribute-dur">dur</a> = <a href="#timing-value-timeExpression"><timeExpression></a>
- <a href="#timing-attribute-end">end</a> = <a href="#timing-value-timeExpression"><timeExpression></a>
+ <a href="#timing-attribute-begin">begin</a> = <a href=
+"#timing-value-timeExpression"><timeExpression></a>
+ <a href="#timing-attribute-dur">dur</a> = <a href=
+"#timing-value-timeExpression"><timeExpression></a>
+ <a href="#timing-attribute-end">end</a> = <a href=
+"#timing-value-timeExpression"><timeExpression></a>
<a href="#content-attribute-id">xml:id</a> = ID
<a href="#content-attribute-lang">xml:lang</a> = string
<a href="#content-attribute-space">xml:space</a> = (<em>default</em>|<em>preserve</em>)
@@ -4610,11 +11992,34 @@
{<em>any attribute not in default or any TT namespace</em>}>
<em>Content:</em> <a href="#element-vocab-group-table">Metadata.class</a>*
</set>
-</pre></div>
-</td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>The use of multiple <code>set</code> element children may be used to effect fade and
-position transitions.</p></div><p>An example of using the <code>set</code> element to animate content
-styling is illustrated below:</p><a id="animation-vocabulary-set-example-1"></a><table class="example"><caption>Example Fragment – Content Style Animation</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The use of multiple <code>set</code> element children may be used to
+ effect fade and position transitions.</p>
+ </div>
+
+ <p>An example of using the <code>set</code> element to animate content styling
+ is illustrated below:</p><a id="animation-vocabulary-set-example-1" name=
+ "animation-vocabulary-set-example-1"></a>
+
+ <table class="example">
+ <caption>
+ Example Fragment – Content Style Animation
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
...
<p dur="5s" tts:color="yellow">
<span class="strong"><set begin="1s" dur="1s" tts:color="red"/></span>
@@ -4623,63 +12028,164 @@
Text with Flashing Colors!
</p>
...
-</pre></div>
-</td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>In the above example, the foreground color of the content "Text
-with Flashing Colors" is animated from yellow, to red, to green, to
-red, then back to yellow over a 5 second period.</p></div><p>An example of using the <code>set</code> element to animate region
-styling is illustrated below:</p><a id="animation-vocabulary-set-example-2"></a><table class="example"><caption>Example Fragment – Region Style Animation</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>In the above example, the foreground color of the content "Text with
+ Flashing Colors" is animated from yellow, to red, to green, to red, then back
+ to yellow over a 5 second period.</p>
+ </div>
+
+ <p>An example of using the <code>set</code> element to animate region styling
+ is illustrated below:</p><a id="animation-vocabulary-set-example-2" name=
+ "animation-vocabulary-set-example-2"></a>
+
+ <table class="example">
+ <caption>
+ Example Fragment – Region Style Animation
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<tt xml:lang="" xmlns="http://www.w3.org/ns/ttml"
xmlns:ttp="http://www.w3.org/ns/ttml#parameter"
xmlns:tts="http://www.w3.org/ns/ttml#styling"
ttp:cellResolution="40 16">
<head>
<layout>
- <region xml:id="r1" timeContainer="seq">
- <span class="strong"><set dur="10s" tts:origin=" 8c 14c"/></span>
- <span class="strong"><set dur="2s" tts:origin=" 2c 2c"/></span>
- <span class="strong"><set dur="3s" tts:origin=" 8c 14c"/></span>
- <span class="strong"><set dur="2s" tts:origin="14c 4c"/></span>
- <span class="strong"><set dur="10s" tts:origin=" 8c 14c"/></span>
- <style tts:extent="24c 2c"/>
- </region>
+ <region xml:id="r1" timeContainer="seq">
+ <span class="strong"><set dur="10s" tts:origin=" 8c 14c"/></span>
+ <span class="strong"><set dur="2s" tts:origin=" 2c 2c"/></span>
+ <span class="strong"><set dur="3s" tts:origin=" 8c 14c"/></span>
+ <span class="strong"><set dur="2s" tts:origin="14c 4c"/></span>
+ <span class="strong"><set dur="10s" tts:origin=" 8c 14c"/></span>
+ <style tts:extent="24c 2c"/>
+ </region>
</layout>
</head>
<body region="r1">...</body>
</tt>
-</pre></div>
-</td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>In the above example, the <em>Root Container Region</em> is divided into a
-cell grid of 40 columns and 16 rows. A region, <code>r1</code>, with
-dimensions of 24 columns and 2 rows is then positioned within the
-<em>Root Container Region</em>, with its position varying over time in order to
-create an effect of moving the region, which may be desirable so as
-to avoid obscuring characters in an underlying video with captions.</p></div><div class="note"><p class="prefix"><b>Note:</b></p><p>The semantics of the <code>set</code> element
-are based upon that defined by <a href="#svg11">[SVG 1.1]</a>,
-§ 6.2.13.</p></div></div></div><div class="div2">
-<h3><a id="animation-attribute-vocabulary"></a>11.2 Animation Attribute Vocabulary</h3><p>No animation related attribute vocabulary is defined for use in the
-core vocabulary catalog.</p></div></div><div class="div1">
-<h2><a id="metadata"></a>12 Metadata</h2><p>This section specifies the <em>metadata</em> matter of the core
-vocabulary catalog, where
-metadata is to be understood as a separable layer of information that applies to
-parameters, content,
-style, layout, timing, and even metadata itself, where the information
-represented by metadata takes one of two forms: (1) metadata defined by this
-specification for standardized use in a <em>Document Instance</em>, and (2) arbitrary
-metadata defined outside of the scope of this specification, whose use and
-semantics depend entirely upon an application's use of TTML Content.</p><div class="div2">
-<h3><a id="metadata-element-vocabulary"></a>12.1 Metadata Element Vocabulary</h3><p>The <a href="#metadata-vocabulary-metadata"><b>12.1.1 metadata</b></a> element serves as
-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 <em>Document Instances</em>:
-</p><ul><li><p><a href="#metadata-vocabulary-title"><b>12.1.2 ttm:title</b></a></p></li><li><p><a href="#metadata-vocabulary-desc"><b>12.1.3 ttm:desc</b></a></p></li><li><p><a href="#metadata-vocabulary-copyright"><b>12.1.4 ttm:copyright</b></a></p></li><li><p><a href="#metadata-vocabulary-agent"><b>12.1.5 ttm:agent</b></a></p></li><li><p><a href="#metadata-vocabulary-name"><b>12.1.6 ttm:name</b></a></p></li><li><p><a href="#metadata-vocabulary-actor"><b>12.1.7 ttm:actor</b></a></p></li></ul><div class="div3">
-<h4><a id="metadata-vocabulary-metadata"></a>12.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 on the <code>metadata</code> element,
-(2) one or more metadata child elements in the <code>metadata</code> element, or
-(3) a combination of metadata attributes and metadata child elements. Both types
-of metadata information are referred to in this document as <em>metadata
-items</em>.</p><a id="elt-syntax-metadata"></a><table class="syntax"><caption>XML Representation – Element Information Item: metadata</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>In the above example, the <em>Root Container Region</em> is divided into a
+ cell grid of 40 columns and 16 rows. A region, <code>r1</code>, with
+ dimensions of 24 columns and 2 rows is then positioned within the <em>Root
+ Container Region</em>, with its position varying over time in order to create
+ an effect of moving the region, which may be desirable so as to avoid
+ obscuring characters in an underlying video with captions.</p>
+ </div>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The semantics of the <code>set</code> element are based upon that defined
+ by <a href="#svg11">[SVG 1.1]</a>, § 6.2.13.</p>
+ </div>
+ </div>
+ </div>
+
+ <div class="div2">
+ <h3><a id="animation-attribute-vocabulary" name=
+ "animation-attribute-vocabulary"></a>11.2 Animation Attribute Vocabulary</h3>
+
+ <p>No animation related attribute vocabulary is defined for use in the core
+ vocabulary catalog.</p>
+ </div>
+ </div>
+
+ <div class="div1">
+ <h2><a id="metadata" name="metadata"></a>12 Metadata</h2>
+
+ <p>This section specifies the <em>metadata</em> matter of the core vocabulary
+ catalog, where metadata is to be understood as a separable layer of information
+ that applies to parameters, content, style, layout, timing, and even metadata
+ itself, where the information represented by metadata takes one of two forms: (1)
+ metadata defined by this specification for standardized use in a <em>Document
+ Instance</em>, and (2) arbitrary metadata defined outside of the scope of this
+ specification, whose use and semantics depend entirely upon an application's use of
+ TTML Content.</p>
+
+ <div class="div2">
+ <h3><a id="metadata-element-vocabulary" name=
+ "metadata-element-vocabulary"></a>12.1 Metadata Element Vocabulary</h3>
+
+ <p>The <a href="#metadata-vocabulary-metadata"><b>12.1.1 metadata</b></a> element
+ serves as 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 <em>Document Instances</em>:</p>
+
+ <ul>
+ <li>
+ <p><a href="#metadata-vocabulary-title"><b>12.1.2 ttm:title</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#metadata-vocabulary-desc"><b>12.1.3 ttm:desc</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#metadata-vocabulary-copyright"><b>12.1.4
+ ttm:copyright</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#metadata-vocabulary-agent"><b>12.1.5 ttm:agent</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#metadata-vocabulary-name"><b>12.1.6 ttm:name</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#metadata-vocabulary-actor"><b>12.1.7 ttm:actor</b></a></p>
+ </li>
+ </ul>
+
+ <div class="div3">
+ <h4><a id="metadata-vocabulary-metadata" name=
+ "metadata-vocabulary-metadata"></a>12.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 on the <code>metadata</code>
+ element, (2) one or more metadata child elements in the <code>metadata</code>
+ element, or (3) a combination of metadata attributes and metadata child
+ elements. Both types of metadata information are referred to in this document
+ as <em>metadata items</em>.</p><a id="elt-syntax-metadata" name=
+ "elt-syntax-metadata"></a>
+
+ <table class="syntax">
+ <caption>
+ XML Representation – Element Information Item: metadata
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<metadata
<a href="#content-attribute-id">xml:id</a> = ID
<a href="#content-attribute-lang">xml:lang</a> = string
@@ -4688,14 +12194,37 @@
{<em>any attribute not in default or any TT namespace</em>}>
<em>Content:</em> ({<em>any element in TT Metadata namespace</em>}|{<em>any element not in any TT namespace</em>})*
</metadata>
-</pre></div>
-</td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>The meaning of a specific metadata item must be evaluated in the
-context where it appears. The core vocabulary catalog permits an
-arbitrary number of <code>metadata</code> element children on any
-<a href="#element-vocab-type-content">Content</a> element type. See specific element
-vocabulary definitions for any constraints that apply to such
-usage.</p></div><p>The use of document metadata is illustrated by the following example.</p><a id="metadata-vocabulary-metadata-example-1"></a><table class="example"><caption>Example Fragment – Document Metadata</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The meaning of a specific metadata item must be evaluated in the context
+ where it appears. The core vocabulary catalog permits an arbitrary number of
+ <code>metadata</code> element children on any <a href=
+ "#element-vocab-type-content">Content</a> element type. See specific element
+ vocabulary definitions for any constraints that apply to such usage.</p>
+ </div>
+
+ <p>The use of document metadata is illustrated by the following
+ example.</p><a id="metadata-vocabulary-metadata-example-1" name=
+ "metadata-vocabulary-metadata-example-1"></a>
+
+ <table class="example">
+ <caption>
+ Example Fragment – Document Metadata
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
...
<head>
<metadata xmlns:ttm="http://www.w3.org/ns/ttml#metadata">
@@ -4704,9 +12233,27 @@
</metadata>
</head>
...
-</pre></div>
-</td></tr></tbody></table><p></p><p>The use of element metadata is illustrated by the following example.</p><a id="metadata-vocabulary-metadata-example-2"></a><table class="example"><caption>Example Fragment – Element Metadata</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>The use of element metadata is illustrated by the following
+ example.</p><a id="metadata-vocabulary-metadata-example-2" name=
+ "metadata-vocabulary-metadata-example-2"></a>
+
+ <table class="example">
+ <caption>
+ Example Fragment – Element Metadata
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
...
<div>
<metadata xmlns:ttm="http://www.w3.org/ns/ttml#metadata">
@@ -4715,23 +12262,64 @@
</metadata>
</div>
...
-</pre></div>
-</td></tr></tbody></table><p></p><p>The use of metadata attribute items is illustrated by the following example.</p><a id="metadata-vocabulary-metadata-example-3"></a><table class="example"><caption>Example Fragment – Foreign Metadata Attribute Items</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>The use of metadata attribute items is illustrated by the following
+ example.</p><a id="metadata-vocabulary-metadata-example-3" name=
+ "metadata-vocabulary-metadata-example-3"></a>
+
+ <table class="example">
+ <caption>
+ Example Fragment – Foreign Metadata Attribute Items
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
...
<div xmlns:ext="http://example.org/ttml#metadata">
<metadata ext:ednote="remove this division prior to publishing"/>
</div>
...
-</pre></div>
-</td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>In the above example, a global attribute from a foreign (external)
-namespace is used to express a metadata attribute that applies
-semantically to the containing <code>div</code> element. Note that the
-attribute may also be expressed directly on the <code>div</code> element;
-however, in this case the author wishes to segregate certain metadata
-attributes by expressing them indirectly on <code>metadata</code>
-elements.</p></div><p></p><p>The use of foreign element metadata is illustrated by the following example.</p><a id="metadata-vocabulary-metadata-example-4"></a><table class="example"><caption>Example Fragment – Foreign Element Metadata</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>In the above example, a global attribute from a foreign (external)
+ namespace is used to express a metadata attribute that applies semantically
+ to the containing <code>div</code> element. Note that the attribute may also
+ be expressed directly on the <code>div</code> element; however, in this case
+ the author wishes to segregate certain metadata attributes by expressing them
+ indirectly on <code>metadata</code> elements.</p>
+ </div>
+
+ <p>The use of foreign element metadata is illustrated by the following
+ example.</p><a id="metadata-vocabulary-metadata-example-4" name=
+ "metadata-vocabulary-metadata-example-4"></a>
+
+ <table class="example">
+ <caption>
+ Example Fragment – Foreign Element Metadata
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
...
<metadata
xmlns:dc="http://purl.org/dc/elements/1.1/"
@@ -4742,12 +12330,39 @@
<dc:format xsi:type="dcterms:IMT">application/ttml+xml</dc:format>
</metadata>
...
-</pre></div>
-</td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>In the above example, a number of elements defined by the Dublin
-Core metadata vocabulary are used to express document level metadata.</p></div><p></p></div><div class="div3">
-<h4><a id="metadata-vocabulary-title"></a>12.1.2 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>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>In the above example, a number of elements defined by the Dublin Core
+ metadata vocabulary are used to express document level metadata.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="metadata-vocabulary-title" name=
+ "metadata-vocabulary-title"></a>12.1.2 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" name=
+ "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
<a href="#content-attribute-id">xml:id</a> = ID
<a href="#content-attribute-lang">xml:lang</a> = string
@@ -4755,13 +12370,45 @@
{<em>any attribute not in default or any TT namespace</em>}>
<em>Content:</em> #PCDATA
</ttm:title>
-</pre></div>
-</td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>No specific use of the <code>ttm:title</code> element is defined by this specification.</p></div><p>Examples of the <code>ttm:title</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-desc"></a>12.1.3 ttm:desc</h4><p>The <code>ttm:desc</code> element is used to express a human-readable description of
-a specific element instance.</p><a id="elt-syntax-metadata-desc"></a><table class="syntax"><caption>XML Representation – Element Information Item: ttm:desc</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>No specific use of the <code>ttm:title</code> element is defined by this
+ specification.</p>
+ </div>
+
+ <p>Examples of the <code>ttm:title</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-desc" name="metadata-vocabulary-desc"></a>12.1.3
+ ttm:desc</h4>
+
+ <p>The <code>ttm:desc</code> element is used to express a human-readable
+ description of a specific element instance.</p><a id="elt-syntax-metadata-desc"
+ name="elt-syntax-metadata-desc"></a>
+
+ <table class="syntax">
+ <caption>
+ XML Representation – Element Information Item: ttm:desc
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<ttm:desc
<a href="#content-attribute-id">xml:id</a> = ID
<a href="#content-attribute-lang">xml:lang</a> = string
@@ -4769,14 +12416,48 @@
{<em>any attribute not in default or any TT namespace</em>}>
<em>Content:</em> #PCDATA
</ttm:desc>
-</pre></div>
-</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-copyright"></a>12.1.4 ttm:copyright</h4><p>The <code>ttm:copyright</code> element is used to express a human-readable copyright that
-applies to some scoping level.</p><p>A copyright statement that applies to a document as a whole should appear as a
-child of the <code>head</code> element.</p><a id="elt-syntax-metadata-copyright"></a><table class="syntax"><caption>XML Representation – Element Information Item: ttm:copyright</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </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-copyright" name=
+ "metadata-vocabulary-copyright"></a>12.1.4 ttm:copyright</h4>
+
+ <p>The <code>ttm:copyright</code> element is used to express a human-readable
+ copyright that applies to some scoping level.</p>
+
+ <p>A copyright statement that applies to a document as a whole should appear as
+ a child of the <code>head</code> element.</p><a id=
+ "elt-syntax-metadata-copyright" name="elt-syntax-metadata-copyright"></a>
+
+ <table class="syntax">
+ <caption>
+ XML Representation – Element Information Item: ttm:copyright
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<ttm:copyright
<a href="#content-attribute-id">xml:id</a> = ID
<a href="#content-attribute-lang">xml:lang</a> = string
@@ -4784,32 +12465,130 @@
{<em>any attribute not in default or any TT namespace</em>}>
<em>Content:</em> #PCDATA
</ttm:copyright>
-</pre></div>
-</td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>No specific use of the <code>ttm:copyright</code> element is defined by this specification.</p></div></div><div class="div3">
-<h4><a id="metadata-vocabulary-agent"></a>12.1.5 ttm:agent</h4><p>The <code>ttm:agent</code> element is used to define an agent for the purpose of associating
-content information with an agent who is involved in the production or expression of that content.</p><p>The <code>ttm:agent</code> element accepts as its children zero or more <code>ttm:name</code> elements followed by
-zero or one <code>ttm:actor</code> element.</p><p>At least one <code>ttm:name</code> element child should be specified that expresses a name for the
-agent, whether it be the name of a person, character, group, or organization.</p><a id="elt-syntax-metadata-agent"></a><table class="syntax"><caption>XML Representation – Element Information Item: ttm:agent</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>No specific use of the <code>ttm:copyright</code> element is defined by
+ this specification.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="metadata-vocabulary-agent" name=
+ "metadata-vocabulary-agent"></a>12.1.5 ttm:agent</h4>
+
+ <p>The <code>ttm:agent</code> element is used to define an agent for the
+ purpose of associating content information with an agent who is involved in the
+ production or expression of that content.</p>
+
+ <p>The <code>ttm:agent</code> element accepts as its children zero or more
+ <code>ttm:name</code> elements followed by zero or one <code>ttm:actor</code>
+ element.</p>
+
+ <p>At least one <code>ttm:name</code> element child should be specified that
+ expresses a name for the agent, whether it be the name of a person, character,
+ group, or organization.</p><a id="elt-syntax-metadata-agent" name=
+ "elt-syntax-metadata-agent"></a>
+
+ <table class="syntax">
+ <caption>
+ XML Representation – Element Information Item: ttm:agent
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<ttm:agent
- <span class="reqattr">type</span> = (<em>person</em>|<em>character</em>|<em>group</em>|<em>organization</em>|<em>other</em>)
+ <span class=
+"reqattr">type</span> = (<em>person</em>|<em>character</em>|<em>group</em>|<em>organization</em>|<em>other</em>)
<a href="#content-attribute-id">xml:id</a> = ID
<a href="#content-attribute-lang">xml:lang</a> = string
<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> <a href="#metadata-vocabulary-name">ttm:name</a>*, <a href="#metadata-vocabulary-actor">ttm:actor</a>?
+ <em>Content:</em> <a href="#metadata-vocabulary-name">ttm:name</a>*, <a href=
+"#metadata-vocabulary-actor">ttm:actor</a>?
</ttm:agent>
-</pre></div>
-</td></tr></tbody></table><p>A <code>type</code> attribute must be specified on each <code>ttm:agent</code> element, and,
-if specified, must have one of the following values:</p><ul><li><p><code>person</code></p></li><li><p><code>character</code></p></li><li><p><code>group</code></p></li><li><p><code>organization</code></p></li><li><p><code>other</code></p></li></ul><p>If the value of the <code>type</code> attribute is <code>character</code>, then the
-<code>ttm:agent</code> element instance should specify a <code>ttm:actor</code> child that
-specifies the agent that plays the role of the actor.</p><p>A <code>ttm:agent</code> metadata item is considered to be significant only
-when specified as a child of the <code>head</code> element or as a child of a
-<code>metadata</code> element child of the <code>head</code> element.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>A <code>ttm:agent</code> element instance is typically referenced using a <code>ttm:agent</code>
-attribute on a <a href="#element-vocab-type-content">Content</a> element type.</p></div><div class="note"><p class="prefix"><b>Note:</b></p><p>If a character agent is played by multiple actors, then multiple character
-agents may be specified (and referenced) wherein different definitions of the
-character specify different actors.</p></div><p>The use of agent metadata is illustrated by the following example.</p><a id="metadata-vocabulary-agent-example-1"></a><table class="example"><caption>Example Fragment – Agent Metadata</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>A <code>type</code> attribute must be specified on each
+ <code>ttm:agent</code> element, and, if specified, must have one of the
+ following values:</p>
+
+ <ul>
+ <li>
+ <p><code>person</code></p>
+ </li>
+
+ <li>
+ <p><code>character</code></p>
+ </li>
+
+ <li>
+ <p><code>group</code></p>
+ </li>
+
+ <li>
+ <p><code>organization</code></p>
+ </li>
+
+ <li>
+ <p><code>other</code></p>
+ </li>
+ </ul>
+
+ <p>If the value of the <code>type</code> attribute is <code>character</code>,
+ then the <code>ttm:agent</code> element instance should specify a
+ <code>ttm:actor</code> child that specifies the agent that plays the role of
+ the actor.</p>
+
+ <p>A <code>ttm:agent</code> metadata item is considered to be significant only
+ when specified as a child of the <code>head</code> element or as a child of a
+ <code>metadata</code> element child of the <code>head</code> element.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>A <code>ttm:agent</code> element instance is typically referenced using a
+ <code>ttm:agent</code> attribute on a <a href=
+ "#element-vocab-type-content">Content</a> element type.</p>
+ </div>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>If a character agent is played by multiple actors, then multiple character
+ agents may be specified (and referenced) wherein different definitions of the
+ character specify different actors.</p>
+ </div>
+
+ <p>The use of agent metadata is illustrated by the following example.</p><a id=
+ "metadata-vocabulary-agent-example-1" name=
+ "metadata-vocabulary-agent-example-1"></a>
+
+ <table class="example">
+ <caption>
+ Example Fragment – Agent Metadata
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<tt xml:lang="en" xmlns="http://www.w3.org/ns/ttml" xmlns:ttm="http://www.w3.org/ns/ttml#metadata">
<head>
@@ -4829,40 +12608,120 @@
<body>
<div>
...
- <p <span class="strong">ttm:agent="bond"</span>>I travel, a sort of licensed troubleshooter.</p>
+ <p <span class=
+"strong">ttm:agent="bond"</span>>I travel, a sort of licensed troubleshooter.</p>
...
</div>
</body>
</tt>
-</pre></div>
-</td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>In the above example, two agents, a real (person) agent, Sean
-Connery, and a fictitious (character) agent, James Bond, are defined,
-where the latter is linked to the former by means of the a
-<code>ttm:actor</code> element. A reference is then made from content (the
-<code>p</code> element) to the character agent associated with
-(responsible for producing) that content. Note that in this example
-the <code>ttm:agent</code> metadata items are specified as immediate
-children of the document's <code>head</code> element rather than being
-placed in a container <code>metadata</code> element.</p></div></div><div class="div3">
-<h4><a id="metadata-vocabulary-name"></a>12.1.6 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>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>In the above example, two agents, a real (person) agent, Sean Connery, and
+ a fictitious (character) agent, James Bond, are defined, where the latter is
+ linked to the former by means of the a <code>ttm:actor</code> element. A
+ reference is then made from content (the <code>p</code> element) to the
+ character agent associated with (responsible for producing) that content.
+ Note that in this example the <code>ttm:agent</code> metadata items are
+ specified as immediate children of the document's <code>head</code> element
+ rather than being placed in a container <code>metadata</code> element.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="metadata-vocabulary-name" name="metadata-vocabulary-name"></a>12.1.6
+ 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" name=
+ "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
- <span class="reqattr">type</span> = (<em>full</em>|<em>family</em>|<em>given</em>|<em>alias</em>|<em>other</em>)
+ <span class=
+"reqattr">type</span> = (<em>full</em>|<em>family</em>|<em>given</em>|<em>alias</em>|<em>other</em>)
<a href="#content-attribute-id">xml:id</a> = ID
<a href="#content-attribute-lang">xml:lang</a> = string
<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:name>
-</pre></div>
-</td></tr></tbody></table><p>A <code>type</code> attribute must be specified on each <code>ttm:name</code> element, and,
-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-actor"></a>12.1.7 ttm:actor</h4><p>The <code>ttm:actor</code> element is used to link the definition of a (role-based) character
-agent with another agent that portrays the character.</p><a id="elt-syntax-metadata-actor"></a><table class="syntax"><caption>XML Representation – Element Information Item: ttm:actor</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>A <code>type</code> attribute must be specified on each
+ <code>ttm:name</code> element, and, 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-actor" name=
+ "metadata-vocabulary-actor"></a>12.1.7 ttm:actor</h4>
+
+ <p>The <code>ttm:actor</code> element is used to link the definition of a
+ (role-based) character agent with another agent that portrays the
+ character.</p><a id="elt-syntax-metadata-actor" name=
+ "elt-syntax-metadata-actor"></a>
+
+ <table class="syntax">
+ <caption>
+ XML Representation – Element Information Item: ttm:actor
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
<ttm:actor
<span class="reqattr">agent</span> = IDREF
<a href="#content-attribute-id">xml:id</a> = ID
@@ -4871,30 +12730,101 @@
{<em>any attribute not in default or any TT namespace</em>}>
<em>Content:</em> EMPTY
</ttm:actor>
-</pre></div>
-</td></tr></tbody></table><p>The <code>agent</code> attribute of a <code>ttm:actor</code> element must
-reference a <em>significant</em> <code>ttm:agent</code> element that denotes the agent
-acting the part of a character.</p><p>An example of the <code>ttm:actor</code> element is shown above in
-<a href="#metadata-vocabulary-agent-example-1"><b>Example Fragment – Agent Metadata</b></a>.</p></div></div><div class="div2">
-<h3><a id="metadata-attribute-vocabulary"></a>12.2 Metadata Attribute Vocabulary</h3><p>This section specifies the following attributes in the TT Metadata Namespace
-for use with the <code>metadata</code> element and with certain
-<a href="#element-vocab-type-content">Content</a> element types:</p><ul><li><p><a href="#metadata-attribute-agent"><b>12.2.1 ttm:agent</b></a></p></li><li><p><a href="#metadata-attribute-role"><b>12.2.2 ttm:role</b></a></p></li></ul><div class="note"><p class="prefix"><b>Note:</b></p><p>Only certain metadata item attributes may be used with <a href="#element-vocab-type-content">Content</a> elements. See
-the definitions of <a href="#element-vocab-type-content">Content</a> elements to determine permissible usage.</p></div><div class="div3">
-<h4><a id="metadata-attribute-agent"></a>12.2.1 ttm:agent</h4><p>The <code>ttm:agent</code> attribute takes an <code>IDREFS</code>
-value, and is used with certain <a href="#element-vocab-type-content">Content</a> elements to designate the
-agents that perform or are
-involved in the performance of the content.</p><p>If specified, a <code>ttm:agent</code> attribute must reference <em>significant</em>
-<code>ttm:agent</code> element instances.</p><p>The same IDREF, <em>ID</em>, should not appear more than once in the value of a <code>ttm:agent</code> attribute.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>This constraint is intended to discourage the use of redundant agent references.</p></div><p>An example of the <code>ttm:agent</code> attribute is 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-attribute-role"></a>12.2.2 ttm:role</h4><p>The <code>ttm:role</code> attribute may be used by a content author
-to express
-the roles, functions, or characteristics
-of some <a href="#element-vocab-type-content">Content</a> element that is so labeled.</p><p>If specified, the value of this attribute must adhere to the following
-syntax, where
-the syntactic element <em>S</em> must adhere to production
-[3] <code>S</code> as defined by <a href="#xml10">[XML 1.0]</a> §
-2.3:</p><a id="metadata-attribute-role-syntax"></a><table class="syntax"><caption>Syntax Representation – ttm:role</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>The <code>agent</code> attribute of a <code>ttm:actor</code> element must
+ reference a <em>significant</em> <code>ttm:agent</code> element that denotes
+ the agent acting the part of a character.</p>
+
+ <p>An example of the <code>ttm:actor</code> element is shown above in <a href=
+ "#metadata-vocabulary-agent-example-1"><b>Example Fragment – Agent
+ Metadata</b></a>.</p>
+ </div>
+ </div>
+
+ <div class="div2">
+ <h3><a id="metadata-attribute-vocabulary" name=
+ "metadata-attribute-vocabulary"></a>12.2 Metadata Attribute Vocabulary</h3>
+
+ <p>This section specifies the following attributes in the TT Metadata Namespace
+ for use with the <code>metadata</code> element and with certain <a href=
+ "#element-vocab-type-content">Content</a> element types:</p>
+
+ <ul>
+ <li>
+ <p><a href="#metadata-attribute-agent"><b>12.2.1 ttm:agent</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#metadata-attribute-role"><b>12.2.2 ttm:role</b></a></p>
+ </li>
+ </ul>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>Only certain metadata item attributes may be used with <a href=
+ "#element-vocab-type-content">Content</a> elements. See the definitions of
+ <a href="#element-vocab-type-content">Content</a> elements to determine
+ permissible usage.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="metadata-attribute-agent" name="metadata-attribute-agent"></a>12.2.1
+ ttm:agent</h4>
+
+ <p>The <code>ttm:agent</code> attribute takes an <code>IDREFS</code> value, and
+ is used with certain <a href="#element-vocab-type-content">Content</a> elements
+ to designate the agents that perform or are involved in the performance of the
+ content.</p>
+
+ <p>If specified, a <code>ttm:agent</code> attribute must reference
+ <em>significant</em> <code>ttm:agent</code> element instances.</p>
+
+ <p>The same IDREF, <em>ID</em>, should not appear more than once in the value
+ of a <code>ttm:agent</code> attribute.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>This constraint is intended to discourage the use of redundant agent
+ references.</p>
+ </div>
+
+ <p>An example of the <code>ttm:agent</code> attribute is 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-attribute-role" name="metadata-attribute-role"></a>12.2.2
+ ttm:role</h4>
+
+ <p>The <code>ttm:role</code> attribute may be used by a content author to
+ express the roles, functions, or characteristics of some <a href=
+ "#element-vocab-type-content">Content</a> element that is so labeled.</p>
+
+ <p>If specified, the value of this attribute must adhere to the following
+ syntax, where the syntactic element <em>S</em> must adhere to production [3]
+ <code>S</code> as defined by <a href="#xml10">[XML 1.0]</a> §
+ 2.3:</p><a id="metadata-attribute-role-syntax" name=
+ "metadata-attribute-role-syntax"></a>
+
+ <table class="syntax">
+ <caption>
+ Syntax Representation – ttm:role
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
ttm:role
role ( <em>S</em> role )*
@@ -4923,91 +12853,395 @@
token-char
: { XML NameChar } // XML 1.1 Production [4a]
-</pre></div>
-</td></tr></tbody></table><p>The same <code>role</code> token, <em>R</em>, should not appear more than once in the value of a <code>ttm:role</code> attribute.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>This constraint is intended to discourage the use of redundant role tokens.</p></div><div class="note"><p class="prefix"><b>Note:</b></p><p>All values of <code>ttm:role</code> that do not start with the prefix
-<code>x-</code> are reserved for future standardization.</p></div><div class="note"><p class="prefix"><b>Note:</b></p><p>If using a custom <code>x-</code> prefixed form of <code>ttm:role</code>, it
-is recommended that an organization unique infix be used as well in order to
-prevent collisions. For example, <code>x-example-org-custom-role</code>. Furthermore,
-a registry for role values is available at
-<a href="http://www.w3.org/wiki/TTML/RoleRegistry">http://www.w3.org/wiki/TTML/RoleRegistry</a>
-in order to promote interoperability and collision avoidance.</p></div></div></div></div></div><div class="back"><div class="div1">
-<h2><a id="reduced-infoset"></a>A Reduced XML Infoset</h2><p><em>This appendix is normative.</em></p><p>For the purposes of this specification, a <em>Reduced XML Infoset</em> is
-an XML Information Set <a href="#infoset">[XML InfoSet]</a> that consists of only the following information items
-and information item properties:</p><div class="div2">
-<h3><a id="reduced-infoset-document"></a>A.1 Document Information Item</h3><ul><li><p><code>[document element]</code></p></li></ul></div><div class="div2">
-<h3><a id="reduced-infoset-element"></a>A.2 Element Information Item</h3><ul><li><p><code>[namespace URI]</code></p></li><li><p><code>[local name]</code></p></li><li><p><code>[children]</code></p></li><li><p><code>[attributes]</code></p></li></ul><p>Child information items <code>[children]</code> are reduced to
-only element and character information items.</p></div><div class="div2">
-<h3><a id="reduced-infoset-attribute"></a>A.3 Attribute Information Item</h3><ul><li><p><code>[namespace URI]</code></p></li><li><p><code>[local name]</code></p></li><li><p><code>[normalized value]</code></p></li></ul></div><div class="div2">
-<h3><a id="reduced-infoset-character"></a>A.4 Character Information Item</h3><ul><li><p><code>[character code]</code></p></li></ul><p>Contiguous character information items are not required to be represented distinctly,
-but may be aggregated (chunked) into a sequence of character codes (i.e., a character string).</p></div></div><div class="div1">
-<h2><a id="schemas"></a>B Schemas</h2><p><em>This appendix is normative.</em></p><p>This appendix specifies the following schemas for use with
-<em>Document Instances</em>:</p><ul><li><p>Relax NG, Compact Syntax (RNC) Schema</p></li><li><p>XML Schema Definition (XSD) Schema</p></li></ul><p>In any case where a schema specified by this appendix differs from the
-normative definitions of document type, element type, or attribute type
-as defined by the body of this specification, then the body of this
-specification takes precedence.</p><div class="div2">
-<h3><a id="ttml-schema-rnc"></a>B.1 Relax NG Compact (RNC) Schema</h3><p>A Relax NG Compact Syntax (RNC) <a href="#rng">[RELAX NG]</a> based schema
-for TTML Content is available at <a href="rnc/schema.zip">ZIP
-Archive</a>. This schema does not normatively define the validity
-of Timed Text Markup Language content as defined by this specification.
-In particular, the formal validity of TTML Content
-is defined by <a href="#conformance-content"><b>3.1 Content Conformance</b></a>.</p></div><div class="div2">
-<h3><a id="ttml-schema-xsd"></a>B.2 XML Schema Definition (XSD) Schema</h3><p>A W3C XML Schema Definition (XSD) <a href="#xsd-1">[XML Schema Part 1]</a> based schema
-for TTML Content is available at <a href="xsd/schema.zip">ZIP
-Archive</a>. This schema does not normatively define the validity
-of Timed Text Markup Language content as defined by this specification.
-In particular, the formal validity of TTML Content
-is defined by <a href="#conformance-content"><b>3.1 Content Conformance</b></a>.</p></div></div><div class="div1">
-<h2><a id="media-types-registration"></a>C Media Type Registration</h2><p><em>This appendix is normative.</em></p><p>This appendix registers a new media type,
-"application/ttml+xml" in conformance with
-<a href="http://www.ietf.org/rfc/rfc4288.txt">BCP 13</a> and
-<a href="http://www.w3.org/2002/06/registering-mediatype.html">W3CRegMedia</a>.
-The information in this appendix is being submitted to the Internet
-Engineering Steering Group (IESG) for review, approval, and
-registration with the Internet Assigned Numbers Authority (IANA).</p><dl><dt class="label">Type name:</dt><dd><p>application</p></dd><dt class="label">Subtype name:</dt><dd><p>ttml+xml</p></dd><dt class="label">Required parameters:</dt><dd><p>None.</p></dd><dt class="label">Optional parameters:</dt><dd><dl><dt class="label">charset</dt><dd><p>If specified, the <code>charset</code> parameter must match the XML encoding declaration, or if absent, the actual encoding. See also Encoding Considerations below.</p></dd><dt class="label">profile</dt><dd><p>The document profile of a TTMLDocument Instance may be specified using
-an optional <code>profile</code> parameter, which, if specified,
-the value of which must adhere to the syntax and semantics of
-<code>ttp:profile</code> parameter defined by
-Section
-<a href="#parameter-attribute-profile"><b>6.2.8 ttp:profile</b></a>
-of the published specification.</p></dd></dl></dd><dt class="label">Encoding considerations:</dt><dd><p>Same for application/xml, except constrained to either UTF-8 or UTF-16. See <a href="#xml-media">[XML Media Types]</a>
-(http://www.rfc-editor.org/rfc/rfc3023.txt), Section 3.2.
-For the purpose of filling out the IANA Application for Media Type (http://www.iana.org/cgi-bin/mediatypes.pl), the value <em>binary</em> applies.</p></dd><dt class="label">Security considerations:</dt><dd><p>As with other XML types and as noted in
-<a href="#xml-media">[XML Media Types]</a> (http://www.rfc-editor.org/rfc/rfc3023.txt),
-Section 10, repeated expansion of maliciously constructed XML entities
-can be used to consume large amounts of memory, which may cause XML
-processors in constrained environments to fail.</p><p>In addition, because of the extensibility features for TTML and of XML
-in general, it is possible that "application/ttml+xml" may describe content
-that has security implications beyond those described here. However,
-TTML does not provide for any sort of active or executable content, and
-if the processor follows only the normative semantics of the published
-specification, this content will be outside TTML namespaces and
-may be ignored. Only in the case where the processor recognizes and
-processes the additional content, or where further processing of that
-content is dispatched to other processors, would security issues
-potentially arise. And in that case, they would fall outside the
-domain of this registration document.</p><p>Although not prohibited, there are no expectations that XML signatures
-or encryption would normally be employed.</p></dd><dt class="label">Interoperability considerations:</dt><dd><p>The published specification describes processing semantics that dictate
-behavior that must be followed when dealing with, among other things,
-unrecognized elements and attributes, both in TTML namespaces and in
-other namespaces.</p><p>Because TTML is extensible, conformant "application/ttml+xml" processors may
-expect (and enforce) that content received is well-formed XML, but it cannot be
-guaranteed that the content is valid to a particular DTD or Schema or
-that the processor will recognize all of the elements and attributes
-in the document.</p><p></p></dd><dt class="label">Published specification:</dt><dd><p>This media type registration is extracted from Appendix C Media Type
-Registration of the Timed Text Markup Language (TTML) 1.0 specification:
-<a href="http://www.w3.org/TR/ttml1/">Timed Text Markup Language 1 (TTML1)</a>.</p></dd><dt class="label">Applications that use this media type:</dt><dd><p>TTML is used in the television industry for the purpose of authoring, transcoding and exchanging timed text information and for delivering captions, subtitles, and
-other metadata for television material repurposed for the Web or, more generally, the Internet.</p><p>There is partial and full support of TTML in components used by several Web browsers plugins, and in a number of caption authoring tools.</p></dd><dt class="label">Additional information:</dt><dd><dl><dt class="label">Magic number(s):</dt><dd></dd><dt class="label">File extension(s):</dt><dd><p>.ttml</p></dd><dt class="label">Macintosh file type code(s):</dt><dd><p>"TTML"</p></dd><dt class="label">Fragment identifiers:</dt><dd><p>For documents labeled as application/ttml+xml, the fragment identifier notation is intended to be used with xml:id attributes, as described in section 7.2.1 of the <a href="http://www.w3.org/TR/ttml1/">Timed Text Markup Language 1 (TTML1)</a> specification.</p></dd></dl></dd><dt class="label">Person & email address to contact for further information:</dt><dd><p>Timed Text Working Group (public-tt@w3.org)</p></dd><dt class="label">Intended usage:</dt><dd><p>COMMON</p></dd><dt class="label">Restrictions on usage:</dt><dd><p>None</p></dd><dt class="label">Author:</dt><dd><p>The published specification is a work product of the World Wide Web
-Consortium's Timed Text (TT) Working Group.</p></dd><dt class="label">Change controller:</dt><dd><p>The W3C has change control over this specification.</p></dd></dl></div><div class="div1">
-<h2><a id="features"></a>D Features</h2><p><em>This appendix is normative.</em></p><p>This appendix specifies (1) a set of feature designations, each of which
-labels one or more syntactic and/or semantic features defined by this
-specification, and (2) for each designated feature, whether the feature is mandatory
-or optional for a transformation or presentation processor.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>A TTML processor is said to <em>implement the transformation semantics</em> or
-<em>implement the presentation semantics</em> of feature designation <em>F</em>
-if it satisfies the requirements of this appendix with respect to the definition of
-feature designation <em>F</em> as pertains to transformation or
-presentation processing, respectively.</p></div><div class="div2">
-<h3><a id="feature-designations"></a>D.1 Feature Designations</h3><p>A feature designation is expressed as a string that adheres to the following
-form:</p><div class="exampleInner"><pre>
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>The same <code>role</code> token, <em>R</em>, should not appear more than
+ once in the value of a <code>ttm:role</code> attribute.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>This constraint is intended to discourage the use of redundant role
+ tokens.</p>
+ </div>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>All values of <code>ttm:role</code> that do not start with the prefix
+ <code>x-</code> are reserved for future standardization.</p>
+ </div>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>If using a custom <code>x-</code> prefixed form of <code>ttm:role</code>,
+ it is recommended that an organization unique infix be used as well in order
+ to prevent collisions. For example, <code>x-example-org-custom-role</code>.
+ Furthermore, a registry for role values is available at <a href=
+ "http://www.w3.org/wiki/TTML/RoleRegistry">http://www.w3.org/wiki/TTML/RoleRegistry</a>
+ in order to promote interoperability and collision avoidance.</p>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+
+ <div class="back">
+ <div class="div1">
+ <h2><a id="reduced-infoset" name="reduced-infoset"></a>A Reduced XML Infoset</h2>
+
+ <p><em>This appendix is normative.</em></p>
+
+ <p>For the purposes of this specification, a <em>Reduced XML Infoset</em> is an XML
+ Information Set <a href="#infoset">[XML InfoSet]</a> that consists of only the
+ following information items and information item properties:</p>
+
+ <div class="div2">
+ <h3><a id="reduced-infoset-document" name="reduced-infoset-document"></a>A.1
+ Document Information Item</h3>
+
+ <ul>
+ <li>
+ <p><code>[document element]</code></p>
+ </li>
+ </ul>
+ </div>
+
+ <div class="div2">
+ <h3><a id="reduced-infoset-element" name="reduced-infoset-element"></a>A.2
+ Element Information Item</h3>
+
+ <ul>
+ <li>
+ <p><code>[namespace URI]</code></p>
+ </li>
+
+ <li>
+ <p><code>[local name]</code></p>
+ </li>
+
+ <li>
+ <p><code>[children]</code></p>
+ </li>
+
+ <li>
+ <p><code>[attributes]</code></p>
+ </li>
+ </ul>
+
+ <p>Child information items <code>[children]</code> are reduced to only element
+ and character information items.</p>
+ </div>
+
+ <div class="div2">
+ <h3><a id="reduced-infoset-attribute" name="reduced-infoset-attribute"></a>A.3
+ Attribute Information Item</h3>
+
+ <ul>
+ <li>
+ <p><code>[namespace URI]</code></p>
+ </li>
+
+ <li>
+ <p><code>[local name]</code></p>
+ </li>
+
+ <li>
+ <p><code>[normalized value]</code></p>
+ </li>
+ </ul>
+ </div>
+
+ <div class="div2">
+ <h3><a id="reduced-infoset-character" name="reduced-infoset-character"></a>A.4
+ Character Information Item</h3>
+
+ <ul>
+ <li>
+ <p><code>[character code]</code></p>
+ </li>
+ </ul>
+
+ <p>Contiguous character information items are not required to be represented
+ distinctly, but may be aggregated (chunked) into a sequence of character codes
+ (i.e., a character string).</p>
+ </div>
+ </div>
+
+ <div class="div1">
+ <h2><a id="schemas" name="schemas"></a>B Schemas</h2>
+
+ <p><em>This appendix is normative.</em></p>
+
+ <p>This appendix specifies the following schemas for use with <em>Document
+ Instances</em>:</p>
+
+ <ul>
+ <li>
+ <p>Relax NG, Compact Syntax (RNC) Schema</p>
+ </li>
+
+ <li>
+ <p>XML Schema Definition (XSD) Schema</p>
+ </li>
+ </ul>
+
+ <p>In any case where a schema specified by this appendix differs from the normative
+ definitions of document type, element type, or attribute type as defined by the
+ body of this specification, then the body of this specification takes
+ precedence.</p>
+
+ <div class="div2">
+ <h3><a id="ttml-schema-rnc" name="ttml-schema-rnc"></a>B.1 Relax NG Compact (RNC)
+ Schema</h3>
+
+ <p>A Relax NG Compact Syntax (RNC) <a href="#rng">[RELAX NG]</a> based schema for
+ TTML Content is available at <a href="rnc/schema.zip">ZIP Archive</a>. This
+ schema does not normatively define the validity of Timed Text Markup Language
+ content as defined by this specification. In particular, the formal validity of
+ TTML Content is defined by <a href="#conformance-content"><b>3.1 Content
+ Conformance</b></a>.</p>
+ </div>
+
+ <div class="div2">
+ <h3><a id="ttml-schema-xsd" name="ttml-schema-xsd"></a>B.2 XML Schema Definition
+ (XSD) Schema</h3>
+
+ <p>A W3C XML Schema Definition (XSD) <a href="#xsd-1">[XML Schema Part 1]</a>
+ based schema for TTML Content is available at <a href="xsd/schema.zip">ZIP
+ Archive</a>. This schema does not normatively define the validity of Timed Text
+ Markup Language content as defined by this specification. In particular, the
+ formal validity of TTML Content is defined by <a href=
+ "#conformance-content"><b>3.1 Content Conformance</b></a>.</p>
+ </div>
+ </div>
+
+ <div class="div1">
+ <h2><a id="media-types-registration" name="media-types-registration"></a>C Media
+ Type Registration</h2>
+
+ <p><em>This appendix is normative.</em></p>
+
+ <p>This appendix registers a new media type, "application/ttml+xml" in conformance
+ with <a href="http://www.ietf.org/rfc/rfc4288.txt">BCP 13</a> and <a href=
+ "http://www.w3.org/2002/06/registering-mediatype.html">W3CRegMedia</a>. The
+ information in this appendix is being submitted to the Internet Engineering
+ Steering Group (IESG) for review, approval, and registration with the Internet
+ Assigned Numbers Authority (IANA).</p>
+
+ <dl>
+ <dt class="label">Type name:</dt>
+
+ <dd>
+ <p>application</p>
+ </dd>
+
+ <dt class="label">Subtype name:</dt>
+
+ <dd>
+ <p>ttml+xml</p>
+ </dd>
+
+ <dt class="label">Required parameters:</dt>
+
+ <dd>
+ <p>None.</p>
+ </dd>
+
+ <dt class="label">Optional parameters:</dt>
+
+ <dd>
+ <dl>
+ <dt class="label">charset</dt>
+
+ <dd>
+ <p>If specified, the <code>charset</code> parameter must match the XML
+ encoding declaration, or if absent, the actual encoding. See also Encoding
+ Considerations below.</p>
+ </dd>
+
+ <dt class="label">profile</dt>
+
+ <dd>
+ <p>The document profile of a TTMLDocument Instance may be specified using
+ an optional <code>profile</code> parameter, which, if specified, the value
+ of which must adhere to the syntax and semantics of
+ <code>ttp:profile</code> parameter defined by Section <a href=
+ "#parameter-attribute-profile"><b>6.2.8 ttp:profile</b></a> of the
+ published specification.</p>
+ </dd>
+ </dl>
+ </dd>
+
+ <dt class="label">Encoding considerations:</dt>
+
+ <dd>
+ <p>Same for application/xml, except constrained to either UTF-8 or UTF-16. See
+ <a href="#xml-media">[XML Media Types]</a>
+ (http://www.rfc-editor.org/rfc/rfc3023.txt), Section 3.2. For the purpose of
+ filling out the IANA Application for Media Type
+ (http://www.iana.org/cgi-bin/mediatypes.pl), the value <em>binary</em>
+ applies.</p>
+ </dd>
+
+ <dt class="label">Security considerations:</dt>
+
+ <dd>
+ <p>As with other XML types and as noted in <a href="#xml-media">[XML Media
+ Types]</a> (http://www.rfc-editor.org/rfc/rfc3023.txt), Section 10, repeated
+ expansion of maliciously constructed XML entities can be used to consume large
+ amounts of memory, which may cause XML processors in constrained environments
+ to fail.</p>
+
+ <p>In addition, because of the extensibility features for TTML and of XML in
+ general, it is possible that "application/ttml+xml" may describe content that
+ has security implications beyond those described here. However, TTML does not
+ provide for any sort of active or executable content, and if the processor
+ follows only the normative semantics of the published specification, this
+ content will be outside TTML namespaces and may be ignored. Only in the case
+ where the processor recognizes and processes the additional content, or where
+ further processing of that content is dispatched to other processors, would
+ security issues potentially arise. And in that case, they would fall outside
+ the domain of this registration document.</p>
+
+ <p>Although not prohibited, there are no expectations that XML signatures or
+ encryption would normally be employed.</p>
+ </dd>
+
+ <dt class="label">Interoperability considerations:</dt>
+
+ <dd>
+ <p>The published specification describes processing semantics that dictate
+ behavior that must be followed when dealing with, among other things,
+ unrecognized elements and attributes, both in TTML namespaces and in other
+ namespaces.</p>
+
+ <p>Because TTML is extensible, conformant "application/ttml+xml" processors may
+ expect (and enforce) that content received is well-formed XML, but it cannot be
+ guaranteed that the content is valid to a particular DTD or Schema or that the
+ processor will recognize all of the elements and attributes in the
+ document.</p>
+ </dd>
+
+ <dt class="label">Published specification:</dt>
+
+ <dd>
+ <p>This media type registration is extracted from Appendix C Media Type
+ Registration of the Timed Text Markup Language (TTML) 1.0 specification:
+ <a href="http://www.w3.org/TR/ttml1/">Timed Text Markup Language 1
+ (TTML1)</a>.</p>
+ </dd>
+
+ <dt class="label">Applications that use this media type:</dt>
+
+ <dd>
+ <p>TTML is used in the television industry for the purpose of authoring,
+ transcoding and exchanging timed text information and for delivering captions,
+ subtitles, and other metadata for television material repurposed for the Web
+ or, more generally, the Internet.</p>
+
+ <p>There is partial and full support of TTML in components used by several Web
+ browsers plugins, and in a number of caption authoring tools.</p>
+ </dd>
+
+ <dt class="label">Additional information:</dt>
+
+ <dd>
+ <dl>
+ <dt class="label">Magic number(s):</dt>
+
+ <dt class="label">File extension(s):</dt>
+
+ <dd>
+ <p>.ttml</p>
+ </dd>
+
+ <dt class="label">Macintosh file type code(s):</dt>
+
+ <dd>
+ <p>"TTML"</p>
+ </dd>
+
+ <dt class="label">Fragment identifiers:</dt>
+
+ <dd>
+ <p>For documents labeled as application/ttml+xml, the fragment identifier
+ notation is intended to be used with xml:id attributes, as described in
+ section 7.2.1 of the <a href="http://www.w3.org/TR/ttml1/">Timed Text
+ Markup Language 1 (TTML1)</a> specification.</p>
+ </dd>
+ </dl>
+ </dd>
+
+ <dt class="label">Person & email address to contact for further
+ information:</dt>
+
+ <dd>
+ <p>Timed Text Working Group (public-tt@w3.org)</p>
+ </dd>
+
+ <dt class="label">Intended usage:</dt>
+
+ <dd>
+ <p>COMMON</p>
+ </dd>
+
+ <dt class="label">Restrictions on usage:</dt>
+
+ <dd>
+ <p>None</p>
+ </dd>
+
+ <dt class="label">Author:</dt>
+
+ <dd>
+ <p>The published specification is a work product of the World Wide Web
+ Consortium's Timed Text (TT) Working Group.</p>
+ </dd>
+
+ <dt class="label">Change controller:</dt>
+
+ <dd>
+ <p>The W3C has change control over this specification.</p>
+ </dd>
+ </dl>
+ </div>
+
+ <div class="div1">
+ <h2><a id="features" name="features"></a>D Features</h2>
+
+ <p><em>This appendix is normative.</em></p>
+
+ <p>This appendix specifies (1) a set of feature designations, each of which labels
+ one or more syntactic and/or semantic features defined by this specification, and
+ (2) for each designated feature, whether the feature is mandatory or optional for a
+ transformation or presentation processor.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>A TTML processor is said to <em>implement the transformation semantics</em> or
+ <em>implement the presentation semantics</em> of feature designation <em>F</em>
+ if it satisfies the requirements of this appendix with respect to the definition
+ of feature designation <em>F</em> as pertains to transformation or presentation
+ processing, respectively.</p>
+ </div>
+
+ <div class="div2">
+ <h3><a id="feature-designations" name="feature-designations"></a>D.1 Feature
+ Designations</h3>
+
+ <p>A feature designation is expressed as a string that adheres to the following
+ form:</p>
+
+ <div class="exampleInner">
+ <pre>
feature-designation
: feature-namespace designation
@@ -5019,947 +13253,3272 @@
token-char
: { XML NameChar } // XML 1.1 Production [4a]
-</pre></div><p>All values of <code>feature-designation</code> not defined by this specification are reserved
-for future standardization.</p><p>The following sub-sections define all feature designations, expressed
-as relative URIs (fragment identifiers) with respect to the
-TT Feature Namespace base URI.</p><div class="div3">
-<h4><a id="feature-animation"></a>D.1.1 #animation</h4><p>A TTML transformation processor supports the <code>#animation</code>
-feature if it recognizes and is capable of transforming the following
-vocabulary defined by <a href="#animation"><b>11 Animation</b></a>:</p><ul><li><p><a href="#animation-vocabulary-set"><code>set</code></a></p></li></ul><p>A TTML presentation processor supports the <code>#animation</code>
-feature if it implements presentation semantic support for the
-same vocabulary enumerated above.</p></div><div class="div3">
-<h4><a id="feature-backgroundColor"></a>D.1.2 #backgroundColor</h4><p>A TTML transformation processor supports the
-<code>#backgroundColor</code> feature if it recognizes and is capable of
-transforming the <a href="#style-attribute-backgroundColor"><code>tts:backgroundColor</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#backgroundColor</code> feature if it (1) implements presentation semantic support
-for the <a href="#style-attribute-backgroundColor"><code>tts:backgroundColor</code></a>
-attribute
-and (2) is capable of displaying or generating an output display
-signal that distinguishes between at least sixteen (16) values of color,
-including all primary and secondary colors of the SRGB color space.</p></div><div class="div3">
-<h4><a id="feature-backgroundColor-block"></a>D.1.3 #backgroundColor-block</h4><p>A TTML transformation processor supports the
-<code>#backgroundColor-block</code> feature if it recognizes and is
-capable of transforming all defined values of the <a href="#style-attribute-backgroundColor"><code>tts:backgroundColor</code></a>
-attribute when applied to a content element that would generate a
-block area during presentation processing.</p><p>A TTML presentation processor supports the
-<code>#backgroundColor-block</code> feature if it (1) implements presentation semantic
-support for the <a href="#style-attribute-backgroundColor"><code>tts:backgroundColor</code></a>
-attribute when applied to a content element that generates a
-block area
-and (2) is capable of displaying or generating an output display
-signal that distinguishes between at least sixteen (16) values of color,
-including all primary and secondary colors of the SRGB color space.</p></div><div class="div3">
-<h4><a id="feature-backgroundColor-inline"></a>D.1.4 #backgroundColor-inline</h4><p>A TTML transformation processor supports the
-<code>#backgroundColor-inline</code> feature if it recognizes and is
-capable of transforming all defined values of the <a href="#style-attribute-backgroundColor"><code>tts:backgroundColor</code></a>
-attribute when applied to a content element that would generate an
-inline area during presentation processing.</p><p>A TTML presentation processor supports the
-<code>#backgroundColor-inline</code> feature if it (1) implements presentation semantic
-support for the <a href="#style-attribute-backgroundColor"><code>tts:backgroundColor</code></a>
-attribute when applied to a content element that generates an
-inline area
-and (2) is capable of displaying or generating an output display
-signal that distinguishes between at least sixteen (16) values of color,
-including all primary and secondary colors of the SRGB color space.</p></div><div class="div3">
-<h4><a id="feature-backgroundColor-region"></a>D.1.5 #backgroundColor-region</h4><p>A TTML transformation processor supports the
-<code>#backgroundColor-region</code> feature if it recognizes and is
-capable of transforming all defined values of the <a href="#style-attribute-backgroundColor"><code>tts:backgroundColor</code></a>
-attribute when applied to a <a href="#layout-vocabulary-region"><code>region</code></a> element.</p><p>A TTML presentation processor supports the
-<code>#backgroundColor-region</code> feature if it (1) implements presentation semantic
-support for the <a href="#style-attribute-backgroundColor"><code>tts:backgroundColor</code></a>
-attribute when applied to a <a href="#layout-vocabulary-region"><code>region</code></a> element
-and (2) is capable of displaying or generating an output display
-signal that distinguishes between at least sixteen (16) values of color,
-including all primary and secondary colors of the SRGB color space
-.</p></div><div class="div3">
-<h4><a id="feature-bidi"></a>D.1.6 #bidi</h4><p>A TTML processor supports the <code>#bidi</code> feature if it
-supports the following features:</p><ul><li><p><a href="#feature-direction"><code>#direction</code></a></p></li><li><p><a href="#feature-unicodeBidi"><code>#unicodeBidi</code></a></p></li><li><p><a href="#feature-writingMode-horizontal"><code>#writingMode-horizontal</code></a></p></li></ul></div><div class="div3">
-<h4><a id="feature-cellResolution"></a>D.1.7 #cellResolution</h4><p>A TTML transformation processor supports the
-<code>#cellResolution</code> feature if it recognizes and is capable of
-transforming the <a href="#parameter-attribute-cellResolution"><code>ttp:cellResolution</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#cellResolution</code> feature if it implements presentation semantic support
-for the <a href="#parameter-attribute-cellResolution"><code>ttp:cellResolution</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-clockMode"></a>D.1.8 #clockMode</h4><p>A TTML transformation processor supports the
-<code>#clockMode</code> feature if it recognizes and is capable of
-transforming the <a href="#parameter-attribute-clockMode"><code>ttp:clockMode</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#clockMode</code> feature if it implements presentation semantic support
-for the <a href="#parameter-attribute-clockMode"><code>ttp:clockMode</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-clockMode-gps"></a>D.1.9 #clockMode-gps</h4><p>A TTML transformation processor supports the
-<code>#clockMode-gps</code> feature if it recognizes and is capable of
-transforming the <code>gps</code> value of the <a href="#parameter-attribute-clockMode"><code>ttp:clockMode</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#clockMode-gps</code> feature if it implements presentation semantic support
-for the <code>gps</code> value of the <a href="#parameter-attribute-clockMode"><code>ttp:clockMode</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-clockMode-local"></a>D.1.10 #clockMode-local</h4><p>A TTML transformation processor supports the
-<code>#clockMode-local</code> feature if it recognizes and is capable of
-transforming the <code>local</code> value of the <a href="#parameter-attribute-clockMode"><code>ttp:clockMode</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#clockMode-local</code> feature if it implements presentation semantic support
-for the <code>local</code> value of the <a href="#parameter-attribute-clockMode"><code>ttp:clockMode</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-clockMode-utc"></a>D.1.11 #clockMode-utc</h4><p>A TTML transformation processor supports the
-<code>#clockMode-utc</code> feature if it recognizes and is capable of
-transforming the <code>utc</code> value of the <a href="#parameter-attribute-clockMode"><code>ttp:clockMode</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#clockMode-utc</code> feature if it implements presentation semantic support
-for the <code>utc</code> value of the <a href="#parameter-attribute-clockMode"><code>ttp:clockMode</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-color"></a>D.1.12 #color</h4><p>A TTML transformation processor supports the
-<code>#color</code> feature if it recognizes and is capable of
-transforming the <a href="#style-attribute-color"><code>tts:color</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#color</code> feature if it (1) implements presentation semantic support
-for the <a href="#style-attribute-color"><code>tts:color</code></a>
-attribute
-and (2) is capable of displaying or generating an output display
-signal that distinguishes between at least sixteen (16) values of color,
-including all primary and secondary colors of the SRGB color space.</p></div><div class="div3">
-<h4><a id="feature-content"></a>D.1.13 #content</h4><p>A TTML transformation processor supports the <code>#content</code>
-feature if it recognizes and is capable of transforming the following
-vocabulary defined by <a href="#content"><b>7 Content</b></a>:</p><ul><li><p><a href="#document-structure-vocabulary-body"><code>body</code></a></p></li><li><p><a href="#content-vocabulary-div"><code>div</code></a></p></li><li><p><a href="#content-vocabulary-p"><code>p</code></a></p></li><li><p><a href="#content-vocabulary-span"><code>span</code></a></p></li><li><p><a href="#content-vocabulary-br"><code>br</code></a></p></li></ul><p>A TTML presentation processor supports the <code>#content</code>
-feature if it implements presentation semantic support for the
-same vocabulary enumerated above.</p></div><div class="div3">
-<h4><a id="feature-core"></a>D.1.14 #core</h4><p>A TTML transformation processor supports the <code>#core</code>
-feature if it recognizes and is capable of transforming the following
-core attributes vocabulary defined by <a href="#content"><b>7 Content</b></a>:</p><ul><li><p><a href="#content-attribute-id">@<code>xml:id</code></a></p></li><li><p><a href="#content-attribute-id">@<code>xml:lang</code></a></p></li><li><p><a href="#content-attribute-id">@<code>xml:space</code></a></p></li></ul><p>A TTML presentation processor supports the <code>#core</code>
-feature if it implements presentation semantic support for the
-same vocabulary enumerated above.</p></div><div class="div3">
-<h4><a id="feature-direction"></a>D.1.15 #direction</h4><p>A TTML transformation processor supports the
-<code>#direction</code> feature if it recognizes and is capable of
-transforming all defined values of the <a href="#style-attribute-direction"><code>tts:direction</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#direction</code> feature if it implements presentation semantic support
-for all defined values of the <a href="#style-attribute-direction"><code>tts:direction</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-display"></a>D.1.16 #display</h4><p>A TTML transformation processor supports the
-<code>#display</code> feature if it recognizes and is capable of
-transforming all defined values of the <a href="#style-attribute-display"><code>tts:display</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#display</code> feature if it implements presentation semantic support
-for all defined values of the <a href="#style-attribute-display"><code>tts:display</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-display-block"></a>D.1.17 #display-block</h4><p>A TTML transformation processor supports the
-<code>#display-block</code> feature if it recognizes and is
-capable of transforming all defined values of the <a href="#style-attribute-display"><code>tts:display</code></a>
-attribute when applied to a content element that would generate a
-block area during presentation processing.</p><p>A TTML presentation processor supports the
-<code>#display-block</code> feature if it implements presentation semantic
-support for all defined values of the <a href="#style-attribute-display"><code>tts:display</code></a>
-attribute when applied to a content element that generates a
-block area.</p></div><div class="div3">
-<h4><a id="feature-display-inline"></a>D.1.18 #display-inline</h4><p>A TTML transformation processor supports the
-<code>#display-inline</code> feature if it recognizes and is
-capable of transforming all defined values of the <a href="#style-attribute-display"><code>tts:display</code></a>
-attribute when applied to a content element that would generate an
-inline area during presentation processing.</p><p>A TTML presentation processor supports the
-<code>#display-inline</code> feature if it implements presentation semantic
-support for all defined values of the <a href="#style-attribute-display"><code>tts:display</code></a>
-attribute when applied to a content element that generates an
-inline area.</p></div><div class="div3">
-<h4><a id="feature-display-region"></a>D.1.19 #display-region</h4><p>A TTML transformation processor supports the
-<code>#display-region</code> feature if it recognizes and is
-capable of transforming all defined values of the <a href="#style-attribute-display"><code>tts:display</code></a>
-attribute when applied to a <a href="#layout-vocabulary-region"><code>region</code></a> element.</p><p>A TTML presentation processor supports the
-<code>#display-region</code> feature if it implements presentation semantic
-support for all defined values of the <a href="#style-attribute-display"><code>tts:display</code></a>
-attribute when applied to a <a href="#layout-vocabulary-region"><code>region</code></a> element.</p></div><div class="div3">
-<h4><a id="feature-displayAlign"></a>D.1.20 #displayAlign</h4><p>A TTML transformation processor supports the
-<code>#displayAlign</code> feature if it recognizes and is capable of
-transforming all defined values of the <a href="#style-attribute-displayAlign"><code>tts:displayAlign</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#displayAlign</code> feature if it implements presentation semantic support
-for all defined values of the <a href="#style-attribute-displayAlign"><code>tts:displayAlign</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-dropMode"></a>D.1.21 #dropMode</h4><p>A TTML transformation processor supports the
-<code>#dropMode</code> feature if it recognizes and is capable of
-transforming the <a href="#parameter-attribute-dropMode"><code>ttp:dropMode</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#dropMode</code> feature if it implements presentation semantic support
-for the <a href="#parameter-attribute-dropMode"><code>ttp:dropMode</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-dropMode-dropNTSC"></a>D.1.22 #dropMode-dropNTSC</h4><p>A TTML transformation processor supports the
-<code>#dropMode-dropNTSC</code> feature if it recognizes and is capable of
-transforming the <code>dropNTSC</code> value of the <a href="#parameter-attribute-dropMode"><code>ttp:dropMode</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#dropMode-dropNTSC</code> feature if it implements presentation semantic support
-for the <code>dropNTSC</code> value of the <a href="#parameter-attribute-dropMode"><code>ttp:dropMode</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-dropMode-dropPAL"></a>D.1.23 #dropMode-dropPAL</h4><p>A TTML transformation processor supports the
-<code>#dropMode-dropPAL</code> feature if it recognizes and is capable of
-transforming the <code>dropPAL</code> value of the <a href="#parameter-attribute-dropMode"><code>ttp:dropMode</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#dropMode-dropPAL</code> feature if it implements presentation semantic support
-for the <code>dropPAL</code> value of the <a href="#parameter-attribute-dropMode"><code>ttp:dropMode</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-dropMode-nonDrop"></a>D.1.24 #dropMode-nonDrop</h4><p>A TTML transformation processor supports the
-<code>#dropMode-nonDrop</code> feature if it recognizes and is capable of
-transforming the <code>nonDrop</code> value of the <a href="#parameter-attribute-dropMode"><code>ttp:dropMode</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#dropMode-nonDrop</code> feature if it implements presentation semantic support
-for the <code>nonDrop</code> value of the <a href="#parameter-attribute-dropMode"><code>ttp:dropMode</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-extent"></a>D.1.25 #extent</h4><p>A TTML transformation processor supports the
-<code>#extent</code> feature if it recognizes and is capable of
-transforming the <a href="#style-attribute-extent"><code>tts:extent</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#extent</code> feature if it implements presentation semantic support for
-the <a href="#style-attribute-extent"><code>tts:extent</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-extent-region"></a>D.1.26 #extent-region</h4><p>A TTML transformation processor supports the
-<code>#extent-region</code> feature if it recognizes and is capable of
-transforming the <a href="#style-attribute-extent"><code>tts:extent</code></a>
-attribute when applied to a <a href="#layout-vocabulary-region"><code>region</code></a> element.</p><p>A TTML presentation processor supports the
-<code>#extent-region</code> feature if it implements presentation semantic support for
-the <a href="#style-attribute-extent"><code>tts:extent</code></a>
-attribute when applied to a <a href="#layout-vocabulary-region"><code>region</code></a> element.</p></div><div class="div3">
-<h4><a id="feature-extent-root"></a>D.1.27 #extent-root</h4><p>A TTML transformation processor supports the
-<code>#extent-root</code> feature if it recognizes and is capable of
-transforming the <a href="#style-attribute-extent"><code>tts:extent</code></a>
-attribute when applied to the <a href="#document-structure-vocabulary-tt"><code>tt</code></a> element.</p><p>A TTML presentation processor supports the
-<code>#extent-root</code> feature if it implements presentation semantic support for
-the <a href="#style-attribute-extent"><code>tts:extent</code></a>
-attribute when applied to a <a href="#document-structure-vocabulary-tt"><code>tt</code></a> element.</p></div><div class="div3">
-<h4><a id="feature-fontFamily"></a>D.1.28 #fontFamily</h4><p>A TTML transformation processor supports the
-<code>#fontFamily</code> feature if it recognizes and is capable of
-transforming the <a href="#style-attribute-fontFamily"><code>tts:fontFamily</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#fontFamily</code> feature if it implements presentation semantic support
-for the <a href="#style-attribute-fontFamily"><code>tts:fontFamily</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-fontFamily-generic"></a>D.1.29 #fontFamily-generic</h4><p>A TTML transformation processor supports the
-<code>#fontFamily-generic</code> feature if it recognizes and is
-capable of transforming <a href="#style-value-genericFamilyName"><genericFamilyName></a>
-values when used with the <a href="#style-attribute-fontFamily"><code>tts:fontFamily</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#fontFamily-generic</code> feature if it implements presentation semantic
-support for <a href="#style-value-genericFamilyName"><genericFamilyName></a>
-values when used with the <a href="#style-attribute-fontFamily"><code>tts:fontFamily</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-fontFamily-non-generic"></a>D.1.30 #fontFamily-non-generic</h4><p>A TTML transformation processor supports the
-<code>#fontFamily-non-generic</code> feature if it recognizes and is
-capable of transforming <a href="#style-value-familyName"><familyName></a>
-values when used with the <a href="#style-attribute-fontFamily"><code>tts:fontFamily</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#fontFamily-non-generic</code> feature if it implements presentation semantic
-support for <a href="#style-value-familyName"><familyName></a>
-values when used with the <a href="#style-attribute-fontFamily"><code>tts:fontFamily</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-fontSize"></a>D.1.31 #fontSize</h4><p>A TTML transformation processor supports the
-<code>#fontSize</code> feature if it recognizes and is capable of
-transforming the <a href="#style-attribute-fontSize"><code>tts:fontSize</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#fontSize</code> feature if it implements presentation semantic support
-for the <a href="#style-attribute-fontSize"><code>tts:fontSize</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-fontSize-anamorphic"></a>D.1.32 #fontSize-anamorphic</h4><p>A TTML transformation processor supports the
-<code>#fontSize-anamorphic</code> feature if it recognizes and is
-capable of transforming values of the <a href="#style-attribute-fontSize"><code>tts:fontSize</code></a>
-attribute that consist of two <a href="#style-value-length"><length></a> specifications.</p><p>A TTML presentation processor supports the
-<code>#fontSize-anamorphic</code> feature if it implements presentation semantic
-support for defined values of the <a href="#style-attribute-fontSize"><code>tts:fontSize</code></a>
-attribute that consist of two <a href="#style-value-length"><length></a> specifications.</p></div><div class="div3">
-<h4><a id="feature-fontSize-isomorphic"></a>D.1.33 #fontSize-isomorphic</h4><p>A TTML transformation processor supports the
-<code>#fontSize-isomorphic</code> feature if it recognizes and is
-capable of transforming values of the <a href="#style-attribute-fontSize"><code>tts:fontSize</code></a>
-attribute that consist of a single <a href="#style-value-length"><length></a> specification.</p><p>A TTML presentation processor supports the
-<code>#fontSize-isomorphic</code> feature if it implements presentation semantic
-support for defined values of the <a href="#style-attribute-fontSize"><code>tts:fontSize</code></a>
-attribute that consist of a single <a href="#style-value-length"><length></a> specification.</p></div><div class="div3">
-<h4><a id="feature-fontStyle"></a>D.1.34 #fontStyle</h4><p>A TTML transformation processor supports the
-<code>#fontStyle</code> feature if it recognizes and is capable of
-transforming all defined values of the <a href="#style-attribute-fontStyle"><code>tts:fontStyle</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#fontStyle</code> feature if it implements presentation semantic support
-for all defined values of the <a href="#style-attribute-fontStyle"><code>tts:fontStyle</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-fontStyle-italic"></a>D.1.35 #fontStyle-italic</h4><p>A TTML transformation processor supports the
-<code>#fontStyle-italic</code> feature if it recognizes and is
-capable of transforming the <code>italic</code> value of the <a href="#style-attribute-fontStyle"><code>tts:fontStyle</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#fontStyle-italic</code> feature if it implements presentation semantic
-support for the <code>italic</code> of the <a href="#style-attribute-fontStyle"><code>tts:fontStyle</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-fontStyle-oblique"></a>D.1.36 #fontStyle-oblique</h4><p>A TTML transformation processor supports the
-<code>#fontStyle-oblique</code> feature if it recognizes and is
-capable of transforming the <code>oblique</code> value of the <a href="#style-attribute-fontStyle"><code>tts:fontStyle</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#fontStyle-oblique</code> feature if it implements presentation semantic
-support for the <code>oblique</code> of the <a href="#style-attribute-fontStyle"><code>tts:fontStyle</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-fontWeight"></a>D.1.37 #fontWeight</h4><p>A TTML transformation processor supports the
-<code>#fontWeight</code> feature if it recognizes and is capable of
-transforming all defined values of the <a href="#style-attribute-fontWeight"><code>tts:fontWeight</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#fontWeight</code> feature if it implements presentation semantic support
-for all defined values of the <a href="#style-attribute-fontWeight"><code>tts:fontWeight</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-fontWeight-bold"></a>D.1.38 #fontWeight-bold</h4><p>A TTML transformation processor supports the
-<code>#fontWeight-bold</code> feature if it recognizes and is
-capable of transforming <code>bold</code> value of the <a href="#style-attribute-fontWeight"><code>tts:fontWeight</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#fontWeight-bold</code> feature if it implements presentation semantic
-support for the <code>bold</code> of the <a href="#style-attribute-fontWeight"><code>tts:fontWeight</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-frameRate"></a>D.1.39 #frameRate</h4><p>A TTML transformation processor supports the
-<code>#frameRate</code> feature if it recognizes and is capable of
-transforming the <a href="#parameter-attribute-frameRate"><code>ttp:frameRate</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#frameRate</code> feature if it implements presentation semantic support
-for the <a href="#parameter-attribute-frameRate"><code>ttp:frameRate</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-frameRateMultiplier"></a>D.1.40 #frameRateMultiplier</h4><p>A TTML transformation processor supports the
-<code>#frameRateMultiplier</code> feature if it recognizes and is capable of
-transforming the <a href="#parameter-attribute-frameRateMultiplier"><code>ttp:frameRateMultiplier</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#frameRateMultiplier</code> feature if it implements presentation semantic support
-for the <a href="#parameter-attribute-frameRateMultiplier"><code>ttp:frameRateMultiplier</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-layout"></a>D.1.41 #layout</h4><p>A TTML transformation processor supports the <code>#layout</code>
-feature if it (1) recognizes and is capable of transforming the following
-vocabulary defined by <a href="#layout"><b>9 Layout</b></a>:</p><ul><li><p><a href="#layout-vocabulary-layout"><code>layout</code></a></p></li><li><p><a href="#layout-vocabulary-region"><code>region</code></a></p></li><li><p><a href="#layout-attribute-region">@<code>region</code></a></p></li></ul><p>and (2) supports the following attributes when applied to the
-<a href="#layout-vocabulary-region"><code>region</code></a> element:</p><ul><li><p><a href="#style-attribute-extent"><code>tts:extent</code></a></p></li><li><p><a href="#style-attribute-origin"><code>tts:origin</code></a></p></li></ul><p>A TTML presentation processor supports the <code>#layout</code>
-feature if it implements presentation semantic support for the
-same vocabulary and features enumerated above.</p></div><div class="div3">
-<h4><a id="feature-length"></a>D.1.42 #length</h4><p>A TTML transformation processor supports the <code>#length</code>
-feature if it recognizes and is capable of transforming all defined
-values of the <a href="#style-value-length"><length></a>
-style value expression.</p><p>A TTML presentation processor supports the <code>#length</code>
-feature if it implements presentation semantic support for all defined values of
-the <a href="#style-value-length"><length></a> style value
-expression.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>Support for <code>#length</code> is intended to imply support for the following features:
-<code>#length-integer</code>,
-<code>#length-real</code>,
-<code>#length-positive</code>,
-<code>#length-negative</code>,
-<code>#length-cell</code>,
-<code>#length-em</code>,
-<code>#length-percentage</code>, and
-<code>#length-pixel</code>.</p></div></div><div class="div3">
-<h4><a id="feature-length-cell"></a>D.1.43 #length-cell</h4><p>A TTML transformation processor supports the
-<code>#length-cell</code> feature if it recognizes and is capable of
-transforming scalar values of the <a href="#style-value-length"><length></a> style value expression
-that use <code>c</code> (cell) units.</p><p>A TTML presentation processor supports the
-<code>#length-cell</code> feature if it implements presentation semantic support
-for scalar values of the <a href="#style-value-length"><length></a> style value expression
-that use <code>c</code> (cell) units.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>Support for <code>#length-cell</code> does not, by itself, imply support for
-<code>#length-integer</code>,
-<code>#length-real</code>,
-<code>#length-positive</code>, or
-<code>#length-negative</code> features.</p></div></div><div class="div3">
-<h4><a id="feature-length-em"></a>D.1.44 #length-em</h4><p>A TTML transformation processor supports the
-<code>#length-em</code> feature if it recognizes and is capable of
-transforming scalar values of the <a href="#style-value-length"><length></a> style value expression
-that use <code>em</code> (EM) units.</p><p>A TTML presentation processor supports the
-<code>#length-em</code> feature if it implements presentation semantic support
-for scalar values of the <a href="#style-value-length"><length></a> style value expression
-that use <code>em</code> (EM) units.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>Support for <code>#length-em</code> does not, by itself, imply support for
-<code>#length-integer</code>,
-<code>#length-real</code>,
-<code>#length-positive</code>, or
-<code>#length-negative</code> features.</p></div></div><div class="div3">
-<h4><a id="feature-length-integer"></a>D.1.45 #length-integer</h4><p>A TTML transformation processor supports the
-<code>#length-integer</code> feature if it recognizes and is
-capable of transforming integer values of the <a href="#style-value-length"><length></a> style value
-expression.</p><p>A TTML presentation processor supports the
-<code>#length-integer</code> feature if it implements presentation semantic
-support for integer values of the <a href="#style-value-length"><length></a> style value
-expression.
-</p><div class="note"><p class="prefix"><b>Note:</b></p><p>Support for <code>#length-integer</code> does not, by itself, imply support for
-<code>#length-positive</code> or
-<code>#length-negative</code> features.</p></div></div><div class="div3">
-<h4><a id="feature-length-negative"></a>D.1.46 #length-negative</h4><p>A TTML transformation processor supports the
-<code>#length-negative</code> feature if it recognizes and is
-capable of transforming negative values of the <a href="#style-value-length"><length></a> style value
-expression.</p><p>A TTML presentation processor supports the
-<code>#length-negative</code> feature if it implements presentation semantic
-support for negative values of the <a href="#style-value-length"><length></a> style value
-expression.
-</p><div class="note"><p class="prefix"><b>Note:</b></p><p>Support for <code>#length-negative</code> does not, by itself, imply support for
-<code>#length-integer</code> or
-<code>#length-real</code> features.</p></div></div><div class="div3">
-<h4><a id="feature-length-percentage"></a>D.1.47 #length-percentage</h4><p>A TTML transformation processor supports the
-<code>#length-percentage</code> feature if it recognizes and is
-capable of transforming percentage values of the <a href="#style-value-length"><length></a> style value
-expression.</p><p>A TTML presentation processor supports the
-<code>#length-percentage</code> feature if it implements presentation semantic
-support for percentage values of the <a href="#style-value-length"><length></a> style value
-expression.
-</p><div class="note"><p class="prefix"><b>Note:</b></p><p>Support for <code>#length-percentage</code> does not, by itself, imply support for
-<code>#length-integer</code>,
-<code>#length-real</code>,
-<code>#length-positive</code>, or
-<code>#length-negative</code> features.</p></div></div><div class="div3">
-<h4><a id="feature-length-pixel"></a>D.1.48 #length-pixel</h4><p>A TTML transformation processor supports the
-<code>#length-pixel</code> feature if it recognizes and is capable of
-transforming scalar values of the <a href="#style-value-length"><length></a> style value expression
-that use <code>px</code> (pixel) units.</p><p>A TTML presentation processor supports the
-<code>#length-pixel</code> feature if it implements presentation semantic support
-for scalar values of the <a href="#style-value-length"><length></a> style value expression
-that use <code>px</code> (pixel) units.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>Support for <code>#length-pixel</code> does not, by itself, imply support for
-<code>#length-integer</code>,
-<code>#length-real</code>,
-<code>#length-positive</code>, or
-<code>#length-negative</code> features.</p></div></div><div class="div3">
-<h4><a id="feature-length-positive"></a>D.1.49 #length-positive</h4><p>A TTML transformation processor supports the
-<code>#length-positive</code> feature if it recognizes and is
-capable of transforming positive values of the <a href="#style-value-length"><length></a> style value
-expression.</p><p>A TTML presentation processor supports the
-<code>#length-positive</code> feature if it implements presentation semantic
-support for positive values of the <a href="#style-value-length"><length></a> style value
-expression.
-</p><div class="note"><p class="prefix"><b>Note:</b></p><p>Support for <code>#length-positive</code> is intended to imply support for zero valued
-<a href="#style-value-length"><length></a> style value
-expressions.</p></div><div class="note"><p class="prefix"><b>Note:</b></p><p>Support for <code>#length-positive</code> does not, by itself, imply support for
-<code>#length-integer</code> or
-<code>#length-real</code> features.</p></div></div><div class="div3">
-<h4><a id="feature-length-real"></a>D.1.50 #length-real</h4><p>A TTML transformation processor supports the
-<code>#length-real</code> feature if it recognizes and is
-capable of transforming real values of the <a href="#style-value-length"><length></a> style value
-expression.</p><p>A TTML presentation processor supports the
-<code>#length-real</code> feature if it implements presentation semantic
-support for real values of the <a href="#style-value-length"><length></a> style value
-expression.
-</p><div class="note"><p class="prefix"><b>Note:</b></p><p>Support for <code>#length-real</code> is intended to imply support for
-integer valued <a href="#style-value-length"><length></a> style value
-expressions as well as real valued expressions.</p></div><div class="note"><p class="prefix"><b>Note:</b></p><p>Support for <code>#length-real</code> does not, by itself, imply support for
-<code>#length-positive</code> or
-<code>#length-negative</code> features.</p></div></div><div class="div3">
-<h4><a id="feature-lineBreak-uax14"></a>D.1.51 #lineBreak-uax14</h4><p>A TTML transformation processor supports the
-<code>#lineBreak-uax14</code> feature if it recognizes and is capable of
-transforming requirements expressed by <a href="#uax14">[UAX14]</a> into its
-target document space.</p><p>A TTML presentation processor supports the
-<code>#lineBreak-uax14</code> feature if it implements presentation semantic support
-for <a href="#uax14">[UAX14]</a> as applies to line breaking.</p></div><div class="div3">
-<h4><a id="feature-lineHeight"></a>D.1.52 #lineHeight</h4><p>A TTML transformation processor supports the
-<code>#lineHeight</code> feature if it recognizes and is capable of
-transforming the <a href="#style-attribute-lineHeight"><code>tts:lineHeight</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#lineHeight</code> feature if it implements presentation semantic support for
-the <a href="#style-attribute-lineHeight"><code>tts:lineHeight</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-markerMode"></a>D.1.53 #markerMode</h4><p>A TTML transformation processor supports the
-<code>#markerMode</code> feature if it recognizes and is capable of
-transforming the <a href="#parameter-attribute-markerMode"><code>ttp:markerMode</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#markerMode</code> feature if it implements presentation semantic support
-for the <a href="#parameter-attribute-markerMode"><code>ttp:markerMode</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-markerMode-continuous"></a>D.1.54 #markerMode-continuous</h4><p>A TTML transformation processor supports the
-<code>#markerMode-continuous</code> feature if it recognizes and is capable of
-transforming the <code>continuous</code> value of the <a href="#parameter-attribute-markerMode"><code>ttp:markerMode</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#markerMode-continuous</code> feature if it implements presentation semantic support
-for the <code>continuous</code> value of the <a href="#parameter-attribute-markerMode"><code>ttp:markerMode</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-markerMode-discontinuous"></a>D.1.55 #markerMode-discontinuous</h4><p>A TTML transformation processor supports the
-<code>#markerMode-discontinuous</code> feature if it recognizes and is capable of
-transforming the <code>discontinuous</code> value of the <a href="#parameter-attribute-markerMode"><code>ttp:markerMode</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#markerMode-discontinuous</code> feature if it implements presentation semantic support
-for the <code>discontinuous</code> value of the <a href="#parameter-attribute-markerMode"><code>ttp:markerMode</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-metadata"></a>D.1.56 #metadata</h4><p>A TTML transformation processor supports the <code>#metadata</code>
-feature if it recognizes and is capable of transforming the following
-vocabulary defined by <a href="#metadata"><b>12 Metadata</b></a>:</p><ul><li><p><a href="#metadata-vocabulary-metadata"><code>metadata</code></a></p></li><li><p><a href="#metadata-vocabulary-title"><code>ttm:title</code></a></p></li><li><p><a href="#metadata-vocabulary-title"><code>ttm:desc</code></a></p></li><li><p><a href="#metadata-vocabulary-title"><code>ttm:copyright</code></a></p></li><li><p><a href="#metadata-vocabulary-title"><code>ttm:agent</code></a></p></li><li><p><a href="#metadata-vocabulary-title"><code>ttm:name</code></a></p></li><li><p><a href="#metadata-vocabulary-title"><code>ttm:actor</code></a></p></li><li><p><a href="#metadata-attribute-agent">@<code>ttm:agent</code></a></p></li><li><p><a href="#metadata-attribute-role">@<code>ttm:role</code></a></p></li></ul><p>A TTML presentation processor supports the <code>#metadata</code>
-feature if it recognizes and is capable of presenting the information
-expressed by the same vocabulary enumerated above.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>This specification does not define a standardized form for the
-presentation of metadata information. The presentation or ability to
-present metadata information is considered to be implementation
-dependent.</p></div></div><div class="div3">
-<h4><a id="feature-nested-div"></a>D.1.57 #nested-div</h4><p>A TTML transformation processor supports the <code>#nested-div</code>
-feature if it recognizes and is capable of transforming nested
-<a href="#content-vocabulary-div"><code>div</code></a> elements.</p><p>A TTML presentation processor supports the <code>#nested-div</code>
-feature if it implements presentation semantic support for nested
-<a href="#content-vocabulary-div"><code>div</code></a> elements.</p></div><div class="div3">
-<h4><a id="feature-nested-span"></a>D.1.58 #nested-span</h4><p>A TTML transformation processor supports the <code>#nested-span</code>
-feature if it recognizes and is capable of transforming nested
-<a href="#content-vocabulary-span"><code>span</code></a> elements.</p><p>A TTML presentation processor supports the <code>#nested-span</code>
-feature if it implements presentation semantic support for nested
-<a href="#content-vocabulary-span"><code>span</code></a> elements.</p></div><div class="div3">
-<h4><a id="feature-opacity"></a>D.1.59 #opacity</h4><p>A TTML transformation processor supports the
-<code>#opacity</code> feature if it recognizes and is capable of
-transforming the <a href="#style-attribute-opacity"><code>tts:opacity</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#opacity</code> feature if it (1) implements presentation semantic support for
-the <a href="#style-attribute-opacity"><code>tts:opacity</code></a>
-attribute and (2) is capable of displaying or generating an output display
-signal that distinguishes between at least eight (8) values of opacity.</p></div><div class="div3">
-<h4><a id="feature-origin"></a>D.1.60 #origin</h4><p>A TTML transformation processor supports the
-<code>#origin</code> feature if it recognizes and is capable of
-transforming the <a href="#style-attribute-origin"><code>tts:origin</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#origin</code> feature if it implements presentation semantic support for
-the <a href="#style-attribute-origin"><code>tts:origin</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-overflow"></a>D.1.61 #overflow</h4><p>A TTML transformation processor supports the
-<code>#overflow</code> feature if it recognizes and is capable of
-transforming all defined values of the <a href="#style-attribute-overflow"><code>tts:overflow</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#overflow</code> feature if it implements presentation semantic support for
-all defined values of the <a href="#style-attribute-overflow"><code>tts:overflow</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-overflow-visible"></a>D.1.62 #overflow-visible</h4><p>A TTML transformation processor supports the
-<code>#overflow-visible</code> feature if it recognizes and is capable of
-transforming the <code>visible</code> value of the <a href="#style-attribute-overflow"><code>tts:overflow</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#overflow-visible</code> feature if it implements presentation semantic support for
-the <code>visible</code> value of the <a href="#style-attribute-overflow"><code>tts:overflow</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-padding"></a>D.1.63 #padding</h4><p>A TTML transformation processor supports the
-<code>#padding</code> feature if it recognizes and is capable of
-transforming the <a href="#style-attribute-padding"><code>tts:padding</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#padding</code> feature if it implements presentation semantic support for
-the <a href="#style-attribute-padding"><code>tts:padding</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-padding-1"></a>D.1.64 #padding-1</h4><p>A TTML transformation processor supports the
-<code>#padding-1</code> feature if it recognizes and is capable of
-transforming values of the <a href="#style-attribute-padding"><code>tts:padding</code></a> attribute
-that consist of one <a href="#style-value-length"><length></a> specification.</p><p>A TTML presentation processor supports the <code>#padding-1</code>
-feature if it implements presentation semantic support for values of the <a href="#style-attribute-padding"><code>tts:padding</code></a> attribute
-that consist of one <a href="#style-value-length"><length></a> specification.</p></div><div class="div3">
-<h4><a id="feature-padding-2"></a>D.1.65 #padding-2</h4><p>A TTML transformation processor supports the
-<code>#padding-2</code> feature if it recognizes and is capable of
-transforming values of the <a href="#style-attribute-padding"><code>tts:padding</code></a> attribute
-that consist of two <a href="#style-value-length"><length></a> specification.</p><p>A TTML presentation processor supports the <code>#padding-2</code>
-feature if it implements presentation semantic support for values of the <a href="#style-attribute-padding"><code>tts:padding</code></a> attribute
-that consist of two <a href="#style-value-length"><length></a> specification.</p></div><div class="div3">
-<h4><a id="feature-padding-3"></a>D.1.66 #padding-3</h4><p>A TTML transformation processor supports the
-<code>#padding-3</code> feature if it recognizes and is capable of
-transforming values of the <a href="#style-attribute-padding"><code>tts:padding</code></a> attribute
-that consist of three <a href="#style-value-length"><length></a> specification.</p><p>A TTML presentation processor supports the <code>#padding-3</code>
-feature if it implements presentation semantic support for values of the <a href="#style-attribute-padding"><code>tts:padding</code></a> attribute
-that consist of three <a href="#style-value-length"><length></a> specification.</p></div><div class="div3">
-<h4><a id="feature-padding-4"></a>D.1.67 #padding-4</h4><p>A TTML transformation processor supports the
-<code>#padding-4</code> feature if it recognizes and is capable of
-transforming values of the <a href="#style-attribute-padding"><code>tts:padding</code></a> attribute
-that consist of four <a href="#style-value-length"><length></a> specification.</p><p>A TTML presentation processor supports the <code>#padding-4</code>
-feature if it implements presentation semantic support for values of the <a href="#style-attribute-padding"><code>tts:padding</code></a> attribute
-that consist of four <a href="#style-value-length"><length></a> specification.</p></div><div class="div3">
-<h4><a id="feature-pixelAspectRatio"></a>D.1.68 #pixelAspectRatio</h4><p>A TTML transformation processor supports the
-<code>#pixelAspectRatio</code> feature if it recognizes and is capable of
-transforming the <a href="#parameter-attribute-pixelAspectRatio"><code>ttp:pixelAspectRatio</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#pixelAspectRatio</code> feature if it implements presentation semantic support
-for the <a href="#parameter-attribute-pixelAspectRatio"><code>ttp:pixelAspectRatio</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-presentation"></a>D.1.69 #presentation</h4><p>A TTML processor supports the
-<code>#presentation</code> feature if it
-(1) satisfies the generic processor criteria defined by
-<a href="#conformance-generic-processor"><b>3.2.1 Generic Processor Conformance</b></a>,
-(2) implements support for the region and line layout
-semantics defined by <a href="#semantics-region-layout"><b>9.3 Region Layout and Presentation</b></a> and
-<a href="#semantics-line-layout"><b>9.4 Line Layout</b></a>, respectively, and
-(3) implements presentation semantics for the following features:</p><ul><li><p><a href="#content"><code>#content</code></a></p></li><li><p><a href="#feature-core"><code>#core</code></a></p></li><li><p><a href="#feature-profile"><code>#profile</code></a></p></li><li><p><a href="#feature-structure"><code>#structure</code></a></p></li><li><p><a href="#feature-time-offset"><code>#time-offset</code></a></p></li><li><p><a href="#timing"><code>#timing</code></a></p></li></ul><p>
-In addition, a TTML processor that supports the
-<code>#presentation</code> feature should satisfy the user agent
-accessibility guidelines specified by <a href="#uaag">[UAAG]</a>.</p></div><div class="div3">
-<h4><a id="feature-profile"></a>D.1.70 #profile</h4><p>A TTML transformation processor supports the <code>#profile</code>
-feature if it recognizes and is capable of transforming the
-<a href="#parameter-attribute-profile"><code>ttp:profile</code></a>
-attribute on the <a href="#document-structure-vocabulary-tt"><code>tt</code></a> element and
-transforming the following vocabulary defined by
-<a href="#parameter-element-vocabulary"><b>6.1 Parameter Element Vocabulary</b></a>:</p><ul><li><p><a href="#parameter-vocabulary-profile"><code>ttp:profile</code></a></p></li><li><p><a href="#parameter-vocabulary-features"><code>ttp:features</code></a></p></li><li><p><a href="#parameter-vocabulary-feature"><code>ttp:feature</code></a></p></li><li><p><a href="#parameter-vocabulary-extensions"><code>ttp:extensions</code></a></p></li><li><p><a href="#parameter-vocabulary-extension"><code>ttp:extension</code></a></p></li></ul><p>A TTML presentation processor supports the
-<code>#profile</code> feature if it implements presentation semantic support
-for the same vocabulary specified above.</p></div><div class="div3">
-<h4><a id="feature-showBackground"></a>D.1.71 #showBackground</h4><p>A TTML transformation processor supports the
-<code>#showBackground</code> feature if it recognizes and is capable
-of transforming all defined values of the <a href="#style-attribute-showBackground"><code>tts:showBackground</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#showBackground</code> feature if it implements presentation semantic support
-for all defined values of the <a href="#style-attribute-showBackground"><code>tts:showBackground</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-structure"></a>D.1.72 #structure</h4><p>A TTML transformation processor supports the <code>#structure</code>
-feature if it recognizes and is capable of transforming the following
-vocabulary defined by <a href="#content"><b>7 Content</b></a>:</p><ul><li><p><a href="#document-structure-vocabulary-tt"><code>tt</code></a></p></li><li><p><a href="#document-structure-vocabulary-head"><code>head</code></a></p></li></ul><p>A TTML presentation processor supports the <code>#structure</code>
-feature if it implements presentation semantic support for the
-same vocabulary enumerated above.</p></div><div class="div3">
-<h4><a id="feature-styling"></a>D.1.73 #styling</h4><p>A TTML transformation processor supports the <code>#styling</code>
-feature if it recognizes and is capable of transforming the following
-vocabulary defined by <a href="#styling"><b>8 Styling</b></a>:</p><ul><li><p><a href="#styling-vocabulary-styling"><code>styling</code></a></p></li><li><p><a href="#styling-vocabulary-style"><code>style</code></a></p></li><li><p><a href="#style-attribute-style">@<code>style</code></a></p></li></ul><p>A TTML presentation processor supports the <code>#styling</code>
-feature if it implements presentation semantic support for the
-same vocabulary enumerated above.</p></div><div class="div3">
-<h4><a id="feature-styling-chained"></a>D.1.74 #styling-chained</h4><p>A TTML transformation processor supports the
-<code>#styling-chained</code> feature if it recognizes and is capable
-of transforming chained style association as defined by <a href="#semantics-style-association-chained-referential"><b>8.4.1.3 Chained Referential Styling</b></a>.</p><p>A TTML presentation processor supports the
-<code>#styling-chained</code> feature if it implements presentation semantic
-support for chained style association as defined by <a href="#semantics-style-association-chained-referential"><b>8.4.1.3 Chained Referential Styling</b></a>.</p></div><div class="div3">
-<h4><a id="feature-styling-inheritance-content"></a>D.1.75 #styling-inheritance-content</h4><p>A TTML transformation processor supports the
-<code>#styling-inheritance</code> feature if it recognizes and is
-capable of transforming content style inheritance as defined by
-<a href="#semantics-style-inheritance-content"><b>8.4.2.1 Content Style Inheritance</b></a>.</p><p>A TTML presentation processor supports the
-<code>#styling-inheritance-content</code> feature if it implements
-presentation semantic support for content style inheritance as defined by <a href="#semantics-style-inheritance-content"><b>8.4.2.1 Content Style Inheritance</b></a>.</p></div><div class="div3">
-<h4><a id="feature-styling-inheritance-region"></a>D.1.76 #styling-inheritance-region</h4><p>A TTML transformation processor supports the
-<code>#styling-inheritance</code> feature if it recognizes and is
-capable of transforming region style inheritance as defined by
-<a href="#semantics-style-inheritance-region"><b>8.4.2.2 Region Style Inheritance</b></a>.</p><p>A TTML presentation processor supports the
-<code>#styling-inheritance-region</code> feature if it implements
-presentation semantic support for region style inheritance as defined by <a href="#semantics-style-inheritance-region"><b>8.4.2.2 Region Style Inheritance</b></a>.</p></div><div class="div3">
-<h4><a id="feature-styling-inline"></a>D.1.77 #styling-inline</h4><p>A TTML transformation processor supports the
-<code>#styling-inline</code> feature if it recognizes and is capable
-of transforming inline style association as defined by <a href="#semantics-style-association-inline"><b>8.4.1.1 Inline Styling</b></a>.</p><p>A TTML presentation processor supports the
-<code>#styling-inline</code> feature if it implements presentation semantic support
-for inline style association as defined by <a href="#semantics-style-association-inline"><b>8.4.1.1 Inline Styling</b></a>.</p></div><div class="div3">
-<h4><a id="feature-styling-nested"></a>D.1.78 #styling-nested</h4><p>A TTML transformation processor supports the
-<code>#styling-nested</code> feature if it recognizes and is capable
-of transforming nested style association as defined by <a href="#semantics-style-association-nested"><b>8.4.1.4 Nested Styling</b></a>.</p><p>A TTML presentation processor supports the
-<code>#styling-nested</code> feature if it implements presentation semantic support
-for nested style association as defined by <a href="#semantics-style-association-nested"><b>8.4.1.4 Nested Styling</b></a>.</p></div><div class="div3">
-<h4><a id="feature-styling-referential"></a>D.1.79 #styling-referential</h4><p>A TTML transformation processor supports the
-<code>#styling-referential</code> feature if it recognizes and is capable
-of transforming referential style association as defined by <a href="#semantics-style-association-referential"><b>8.4.1.2 Referential Styling</b></a>.</p><p>A TTML presentation processor supports the
-<code>#styling-referential</code> feature if it implements presentation semantic
-support for referential style association as defined by <a href="#semantics-style-association-referential"><b>8.4.1.2 Referential Styling</b></a>.</p></div><div class="div3">
-<h4><a id="feature-subFrameRate"></a>D.1.80 #subFrameRate</h4><p>A TTML transformation processor supports the
-<code>#subFrameRate</code> feature if it recognizes and is capable of
-transforming the <a href="#parameter-attribute-subFrameRate"><code>ttp:subFrameRate</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#subFrameRate</code> feature if it implements presentation semantic support
-for the <a href="#parameter-attribute-subFrameRate"><code>ttp:subFrameRate</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-textAlign"></a>D.1.81 #textAlign</h4><p>A TTML transformation processor supports the
-<code>#textAlign</code> feature if it recognizes and is capable
-of transforming all defined values of the <a href="#style-attribute-textAlign"><code>tts:textAlign</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#textAlign</code> feature if it implements presentation semantic support
-for all defined values of the <a href="#style-attribute-textAlign"><code>tts:textAlign</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-textAlign-absolute"></a>D.1.82 #textAlign-absolute</h4><p>A TTML transformation processor supports the
-<code>#textAlign-absolute</code> feature if it recognizes and is
-capable of transforming the <code>left</code>, <code>center</code>,
-and <code>right</code> values of the <a href="#style-attribute-textAlign"><code>tts:textAlign</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#textAlign-absolute</code> feature if it implements presentation semantic
-support for the <code>left</code>, <code>center</code>, and
-<code>right</code> values of the <a href="#style-attribute-textAlign"><code>tts:textAlign</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-textAlign-relative"></a>D.1.83 #textAlign-relative</h4><p>A TTML transformation processor supports the
-<code>#textAlign-relative</code> feature if it recognizes and is
-capable of transforming the <code>start</code>, <code>center</code>,
-and <code>end</code> values of the <a href="#style-attribute-textAlign"><code>tts:textAlign</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#textAlign-relative</code> feature if it implements presentation semantic
-support for the <code>start</code>, <code>center</code>, and
-<code>end</code> values of the <a href="#style-attribute-textAlign"><code>tts:textAlign</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-textDecoration"></a>D.1.84 #textDecoration</h4><p>A TTML transformation processor supports the
-<code>#textDecoration</code> feature if it recognizes and is capable
-of transforming all defined values of the <a href="#style-attribute-textDecoration"><code>tts:textDecoration</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#textDecoration</code> feature if it implements presentation semantic support
-for all defined values of the <a href="#style-attribute-textDecoration"><code>tts:textDecoration</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-textDecoration-over"></a>D.1.85 #textDecoration-over</h4><p>A TTML transformation processor supports the
-<code>#textDecoration-over</code> feature if it recognizes and is
-capable of transforming the <code>overline</code> and
-<code>noOverline</code> values of the <a href="#style-attribute-textDecoration"><code>tts:textDecoration</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#textDecoration-over</code> feature if it implements
-presentation semantic support for the <code>overline</code> and
-<code>noOverline</code> values of the <a href="#style-attribute-textDecoration"><code>tts:textDecoration</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-textDecoration-through"></a>D.1.86 #textDecoration-through</h4><p>A TTML transformation processor supports the
-<code>#textDecoration-through</code> feature if it recognizes and is
-capable of transforming the <code>lineThrough</code> and
-<code>noLineThrough</code> values of the <a href="#style-attribute-textDecoration"><code>tts:textDecoration</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#textDecoration-through</code> feature if it implements
-presentation semantic support for the <code>lineThrough</code> and
-<code>noLineThrough</code> values of the <a href="#style-attribute-textDecoration"><code>tts:textDecoration</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-textDecoration-under"></a>D.1.87 #textDecoration-under</h4><p>A TTML transformation processor supports the
-<code>#textDecoration-under</code> feature if it recognizes and is
-capable of transforming the <code>underline</code> and
-<code>noUnderline</code> values of the <a href="#style-attribute-textDecoration"><code>tts:textDecoration</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#textDecoration-under</code> feature if it implements
-presentation semantic support for the <code>underline</code> and
-<code>noUnderline</code> values of the <a href="#style-attribute-textDecoration"><code>tts:textDecoration</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-textOutline"></a>D.1.88 #textOutline</h4><p>A TTML transformation processor supports the
-<code>#textOutline</code> feature if it recognizes and is capable of
-transforming the <a href="#style-attribute-textOutline"><code>tts:textOutline</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#textOutline</code> feature if it implements presentation semantic support
-for the <a href="#style-attribute-textOutline"><code>tts:textOutline</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-textOutline-blurred"></a>D.1.89 #textOutline-blurred</h4><p>A TTML transformation processor supports the
-<code>#textOutline-blurred</code> feature if it recognizes and is capable of
-transforming values of the <a href="#style-attribute-textOutline"><code>tts:textOutline</code></a>
-attribute that includes a blur radius specification.</p><p>A TTML presentation processor supports the
-<code>#textOutline-blurred</code> feature if it implements presentation semantic support
-for values of the <a href="#style-attribute-textOutline"><code>tts:textOutline</code></a>
-attribute that includes a blur radius specification.</p></div><div class="div3">
-<h4><a id="feature-textOutline-unblurred"></a>D.1.90 #textOutline-unblurred</h4><p>A TTML transformation processor supports the
-<code>#textOutline-unblurred</code> feature if it recognizes and is capable of
-transforming values of the <a href="#style-attribute-textOutline"><code>tts:textOutline</code></a>
-attribute that does not include a blur radius specification.</p><p>A TTML presentation processor supports the
-<code>#textOutline-unblurred</code> feature if it implements presentation semantic support
-for values of the <a href="#style-attribute-textOutline"><code>tts:textOutline</code></a>
-attribute that does not include a blur radius specification.</p></div><div class="div3">
-<h4><a id="feature-tickRate"></a>D.1.91 #tickRate</h4><p>A TTML transformation processor supports the
-<code>#tickRate</code> feature if it recognizes and is capable of
-transforming the <a href="#parameter-attribute-tickRate"><code>ttp:tickRate</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#tickRate</code> feature if it implements presentation semantic support
-for the <a href="#parameter-attribute-tickRate"><code>ttp:tickRate</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-timeBase-clock"></a>D.1.92 #timeBase-clock</h4><p>A TTML transformation processor supports the
-<code>#timeBase-clock</code> feature if it recognizes and is capable
-of transforming the <code>clock</code> value of the <a href="#parameter-attribute-timeBase"><code>ttp:timeBase</code></a>
-attribute and if it supports the <a href="#feature-clockMode"><code>#clockMode</code></a> feature.</p><p>A TTML presentation processor supports the
-<code>#timeBase-clock</code> feature if it implements presentation
-semantic support for the <code>clock</code> value of the <a href="#parameter-attribute-timeBase"><code>ttp:timeBase</code></a>
-attribute and if it supports the <a href="#feature-clockMode"><code>#clockMode</code></a> feature.</p></div><div class="div3">
-<h4><a id="feature-timeBase-media"></a>D.1.93 #timeBase-media</h4><p>A TTML transformation processor supports the
-<code>#timeBase-media</code> feature if it recognizes and is capable
-of transforming the <code>media</code> value of the <a href="#parameter-attribute-timeBase"><code>ttp:timeBase</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#timeBase-media</code> feature if it implements presentation
-semantic support for the <code>media</code> value of the <a href="#parameter-attribute-timeBase"><code>ttp:timeBase</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-timeBase-smpte"></a>D.1.94 #timeBase-smpte</h4><p>A TTML transformation processor supports the
-<code>#timeBase-smpte</code> feature if it recognizes and is capable
-of transforming the <code>smpte</code> value of the <a href="#parameter-attribute-timeBase"><code>ttp:timeBase</code></a>
-attribute and if it supports the <a href="#feature-dropMode"><code>#dropMode</code></a> feature.</p><p>A TTML presentation processor supports the
-<code>#timeBase-smpte</code> feature if it implements presentation
-semantic support for the <code>smpte</code> value of the <a href="#parameter-attribute-timeBase"><code>ttp:timeBase</code></a>
-attribute and if it supports the <a href="#feature-dropMode"><code>#dropMode</code></a> feature.</p></div><div class="div3">
-<h4><a id="feature-timeContainer"></a>D.1.95 #timeContainer</h4><p>A TTML transformation processor supports the
-<code>#timeContainer</code> feature if it recognizes and is capable of
-transforming the <a href="#timing-attribute-timeContainer"><code>timeContainer</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#timeContainer</code> feature if it implements presentation semantic support
-for the <a href="#timing-attribute-timeContainer"><code>timeContainer</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-time-clock"></a>D.1.96 #time-clock</h4><p>A TTML transformation processor supports the
-<code>#time-clock</code> feature if it recognizes and is capable of
-transforming all values of the <a href="#timing-value-timeExpression"><timeExpression></a> that
-satisfy the following subset of time expression syntax:</p><div class="exampleInner"><pre>
+</pre>
+ </div>
+
+ <p>All values of <code>feature-designation</code> not defined by this
+ specification are reserved for future standardization.</p>
+
+ <p>The following sub-sections define all feature designations, expressed as
+ relative URIs (fragment identifiers) with respect to the TT Feature Namespace
+ base URI.</p>
+
+ <div class="div3">
+ <h4><a id="feature-animation" name="feature-animation"></a>D.1.1
+ #animation</h4>
+
+ <p>A TTML transformation processor supports the <code>#animation</code> feature
+ if it recognizes and is capable of transforming the following vocabulary
+ defined by <a href="#animation"><b>11 Animation</b></a>:</p>
+
+ <ul>
+ <li>
+ <p><a href="#animation-vocabulary-set"><code>set</code></a></p>
+ </li>
+ </ul>
+
+ <p>A TTML presentation processor supports the <code>#animation</code> feature
+ if it implements presentation semantic support for the same vocabulary
+ enumerated above.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-backgroundColor" name="feature-backgroundColor"></a>D.1.2
+ #backgroundColor</h4>
+
+ <p>A TTML transformation processor supports the <code>#backgroundColor</code>
+ feature if it recognizes and is capable of transforming the <a href=
+ "#style-attribute-backgroundColor"><code>tts:backgroundColor</code></a>
+ attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#backgroundColor</code>
+ feature if it (1) implements presentation semantic support for the <a href=
+ "#style-attribute-backgroundColor"><code>tts:backgroundColor</code></a>
+ attribute and (2) is capable of displaying or generating an output display
+ signal that distinguishes between at least sixteen (16) values of color,
+ including all primary and secondary colors of the SRGB color space.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-backgroundColor-block" name=
+ "feature-backgroundColor-block"></a>D.1.3 #backgroundColor-block</h4>
+
+ <p>A TTML transformation processor supports the
+ <code>#backgroundColor-block</code> feature if it recognizes and is capable of
+ transforming all defined values of the <a href=
+ "#style-attribute-backgroundColor"><code>tts:backgroundColor</code></a>
+ attribute when applied to a content element that would generate a block area
+ during presentation processing.</p>
+
+ <p>A TTML presentation processor supports the
+ <code>#backgroundColor-block</code> feature if it (1) implements presentation
+ semantic support for the <a href=
+ "#style-attribute-backgroundColor"><code>tts:backgroundColor</code></a>
+ attribute when applied to a content element that generates a block area and (2)
+ is capable of displaying or generating an output display signal that
+ distinguishes between at least sixteen (16) values of color, including all
+ primary and secondary colors of the SRGB color space.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-backgroundColor-inline" name=
+ "feature-backgroundColor-inline"></a>D.1.4 #backgroundColor-inline</h4>
+
+ <p>A TTML transformation processor supports the
+ <code>#backgroundColor-inline</code> feature if it recognizes and is capable of
+ transforming all defined values of the <a href=
+ "#style-attribute-backgroundColor"><code>tts:backgroundColor</code></a>
+ attribute when applied to a content element that would generate an inline area
+ during presentation processing.</p>
+
+ <p>A TTML presentation processor supports the
+ <code>#backgroundColor-inline</code> feature if it (1) implements presentation
+ semantic support for the <a href=
+ "#style-attribute-backgroundColor"><code>tts:backgroundColor</code></a>
+ attribute when applied to a content element that generates an inline area and
+ (2) is capable of displaying or generating an output display signal that
+ distinguishes between at least sixteen (16) values of color, including all
+ primary and secondary colors of the SRGB color space.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-backgroundColor-region" name=
+ "feature-backgroundColor-region"></a>D.1.5 #backgroundColor-region</h4>
+
+ <p>A TTML transformation processor supports the
+ <code>#backgroundColor-region</code> feature if it recognizes and is capable of
+ transforming all defined values of the <a href=
+ "#style-attribute-backgroundColor"><code>tts:backgroundColor</code></a>
+ attribute when applied to a <a href=
+ "#layout-vocabulary-region"><code>region</code></a> element.</p>
+
+ <p>A TTML presentation processor supports the
+ <code>#backgroundColor-region</code> feature if it (1) implements presentation
+ semantic support for the <a href=
+ "#style-attribute-backgroundColor"><code>tts:backgroundColor</code></a>
+ attribute when applied to a <a href=
+ "#layout-vocabulary-region"><code>region</code></a> element and (2) is capable
+ of displaying or generating an output display signal that distinguishes between
+ at least sixteen (16) values of color, including all primary and secondary
+ colors of the SRGB color space .</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-bidi" name="feature-bidi"></a>D.1.6 #bidi</h4>
+
+ <p>A TTML processor supports the <code>#bidi</code> feature if it supports the
+ following features:</p>
+
+ <ul>
+ <li>
+ <p><a href="#feature-direction"><code>#direction</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#feature-unicodeBidi"><code>#unicodeBidi</code></a></p>
+ </li>
+
+ <li>
+ <p><a href=
+ "#feature-writingMode-horizontal"><code>#writingMode-horizontal</code></a></p>
+ </li>
+ </ul>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-cellResolution" name="feature-cellResolution"></a>D.1.7
+ #cellResolution</h4>
+
+ <p>A TTML transformation processor supports the <code>#cellResolution</code>
+ feature if it recognizes and is capable of transforming the <a href=
+ "#parameter-attribute-cellResolution"><code>ttp:cellResolution</code></a>
+ attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#cellResolution</code>
+ feature if it implements presentation semantic support for the <a href=
+ "#parameter-attribute-cellResolution"><code>ttp:cellResolution</code></a>
+ attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-clockMode" name="feature-clockMode"></a>D.1.8
+ #clockMode</h4>
+
+ <p>A TTML transformation processor supports the <code>#clockMode</code> feature
+ if it recognizes and is capable of transforming the <a href=
+ "#parameter-attribute-clockMode"><code>ttp:clockMode</code></a> attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#clockMode</code> feature
+ if it implements presentation semantic support for the <a href=
+ "#parameter-attribute-clockMode"><code>ttp:clockMode</code></a> attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-clockMode-gps" name="feature-clockMode-gps"></a>D.1.9
+ #clockMode-gps</h4>
+
+ <p>A TTML transformation processor supports the <code>#clockMode-gps</code>
+ feature if it recognizes and is capable of transforming the <code>gps</code>
+ value of the <a href=
+ "#parameter-attribute-clockMode"><code>ttp:clockMode</code></a> attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#clockMode-gps</code>
+ feature if it implements presentation semantic support for the <code>gps</code>
+ value of the <a href=
+ "#parameter-attribute-clockMode"><code>ttp:clockMode</code></a> attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-clockMode-local" name="feature-clockMode-local"></a>D.1.10
+ #clockMode-local</h4>
+
+ <p>A TTML transformation processor supports the <code>#clockMode-local</code>
+ feature if it recognizes and is capable of transforming the <code>local</code>
+ value of the <a href=
+ "#parameter-attribute-clockMode"><code>ttp:clockMode</code></a> attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#clockMode-local</code>
+ feature if it implements presentation semantic support for the
+ <code>local</code> value of the <a href=
+ "#parameter-attribute-clockMode"><code>ttp:clockMode</code></a> attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-clockMode-utc" name="feature-clockMode-utc"></a>D.1.11
+ #clockMode-utc</h4>
+
+ <p>A TTML transformation processor supports the <code>#clockMode-utc</code>
+ feature if it recognizes and is capable of transforming the <code>utc</code>
+ value of the <a href=
+ "#parameter-attribute-clockMode"><code>ttp:clockMode</code></a> attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#clockMode-utc</code>
+ feature if it implements presentation semantic support for the <code>utc</code>
+ value of the <a href=
+ "#parameter-attribute-clockMode"><code>ttp:clockMode</code></a> attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-color" name="feature-color"></a>D.1.12 #color</h4>
+
+ <p>A TTML transformation processor supports the <code>#color</code> feature if
+ it recognizes and is capable of transforming the <a href=
+ "#style-attribute-color"><code>tts:color</code></a> attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#color</code> feature if it
+ (1) implements presentation semantic support for the <a href=
+ "#style-attribute-color"><code>tts:color</code></a> attribute and (2) is
+ capable of displaying or generating an output display signal that distinguishes
+ between at least sixteen (16) values of color, including all primary and
+ secondary colors of the SRGB color space.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-content" name="feature-content"></a>D.1.13 #content</h4>
+
+ <p>A TTML transformation processor supports the <code>#content</code> feature
+ if it recognizes and is capable of transforming the following vocabulary
+ defined by <a href="#content"><b>7 Content</b></a>:</p>
+
+ <ul>
+ <li>
+ <p><a href="#document-structure-vocabulary-body"><code>body</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#content-vocabulary-div"><code>div</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#content-vocabulary-p"><code>p</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#content-vocabulary-span"><code>span</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#content-vocabulary-br"><code>br</code></a></p>
+ </li>
+ </ul>
+
+ <p>A TTML presentation processor supports the <code>#content</code> feature if
+ it implements presentation semantic support for the same vocabulary enumerated
+ above.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-core" name="feature-core"></a>D.1.14 #core</h4>
+
+ <p>A TTML transformation processor supports the <code>#core</code> feature if
+ it recognizes and is capable of transforming the following core attributes
+ vocabulary defined by <a href="#content"><b>7 Content</b></a>:</p>
+
+ <ul>
+ <li>
+ <p><a href="#content-attribute-id">@<code>xml:id</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#content-attribute-id">@<code>xml:lang</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#content-attribute-id">@<code>xml:space</code></a></p>
+ </li>
+ </ul>
+
+ <p>A TTML presentation processor supports the <code>#core</code> feature if it
+ implements presentation semantic support for the same vocabulary enumerated
+ above.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-direction" name="feature-direction"></a>D.1.15
+ #direction</h4>
+
+ <p>A TTML transformation processor supports the <code>#direction</code> feature
+ if it recognizes and is capable of transforming all defined values of the
+ <a href="#style-attribute-direction"><code>tts:direction</code></a>
+ attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#direction</code> feature
+ if it implements presentation semantic support for all defined values of the
+ <a href="#style-attribute-direction"><code>tts:direction</code></a>
+ attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-display" name="feature-display"></a>D.1.16 #display</h4>
+
+ <p>A TTML transformation processor supports the <code>#display</code> feature
+ if it recognizes and is capable of transforming all defined values of the
+ <a href="#style-attribute-display"><code>tts:display</code></a> attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#display</code> feature if
+ it implements presentation semantic support for all defined values of the
+ <a href="#style-attribute-display"><code>tts:display</code></a> attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-display-block" name="feature-display-block"></a>D.1.17
+ #display-block</h4>
+
+ <p>A TTML transformation processor supports the <code>#display-block</code>
+ feature if it recognizes and is capable of transforming all defined values of
+ the <a href="#style-attribute-display"><code>tts:display</code></a> attribute
+ when applied to a content element that would generate a block area during
+ presentation processing.</p>
+
+ <p>A TTML presentation processor supports the <code>#display-block</code>
+ feature if it implements presentation semantic support for all defined values
+ of the <a href="#style-attribute-display"><code>tts:display</code></a>
+ attribute when applied to a content element that generates a block area.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-display-inline" name="feature-display-inline"></a>D.1.18
+ #display-inline</h4>
+
+ <p>A TTML transformation processor supports the <code>#display-inline</code>
+ feature if it recognizes and is capable of transforming all defined values of
+ the <a href="#style-attribute-display"><code>tts:display</code></a> attribute
+ when applied to a content element that would generate an inline area during
+ presentation processing.</p>
+
+ <p>A TTML presentation processor supports the <code>#display-inline</code>
+ feature if it implements presentation semantic support for all defined values
+ of the <a href="#style-attribute-display"><code>tts:display</code></a>
+ attribute when applied to a content element that generates an inline area.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-display-region" name="feature-display-region"></a>D.1.19
+ #display-region</h4>
+
+ <p>A TTML transformation processor supports the <code>#display-region</code>
+ feature if it recognizes and is capable of transforming all defined values of
+ the <a href="#style-attribute-display"><code>tts:display</code></a> attribute
+ when applied to a <a href="#layout-vocabulary-region"><code>region</code></a>
+ element.</p>
+
+ <p>A TTML presentation processor supports the <code>#display-region</code>
+ feature if it implements presentation semantic support for all defined values
+ of the <a href="#style-attribute-display"><code>tts:display</code></a>
+ attribute when applied to a <a href=
+ "#layout-vocabulary-region"><code>region</code></a> element.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-displayAlign" name="feature-displayAlign"></a>D.1.20
+ #displayAlign</h4>
+
+ <p>A TTML transformation processor supports the <code>#displayAlign</code>
+ feature if it recognizes and is capable of transforming all defined values of
+ the <a href="#style-attribute-displayAlign"><code>tts:displayAlign</code></a>
+ attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#displayAlign</code>
+ feature if it implements presentation semantic support for all defined values
+ of the <a href=
+ "#style-attribute-displayAlign"><code>tts:displayAlign</code></a>
+ attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-dropMode" name="feature-dropMode"></a>D.1.21 #dropMode</h4>
+
+ <p>A TTML transformation processor supports the <code>#dropMode</code> feature
+ if it recognizes and is capable of transforming the <a href=
+ "#parameter-attribute-dropMode"><code>ttp:dropMode</code></a> attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#dropMode</code> feature if
+ it implements presentation semantic support for the <a href=
+ "#parameter-attribute-dropMode"><code>ttp:dropMode</code></a> attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-dropMode-dropNTSC" name=
+ "feature-dropMode-dropNTSC"></a>D.1.22 #dropMode-dropNTSC</h4>
+
+ <p>A TTML transformation processor supports the <code>#dropMode-dropNTSC</code>
+ feature if it recognizes and is capable of transforming the
+ <code>dropNTSC</code> value of the <a href=
+ "#parameter-attribute-dropMode"><code>ttp:dropMode</code></a> attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#dropMode-dropNTSC</code>
+ feature if it implements presentation semantic support for the
+ <code>dropNTSC</code> value of the <a href=
+ "#parameter-attribute-dropMode"><code>ttp:dropMode</code></a> attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-dropMode-dropPAL" name="feature-dropMode-dropPAL"></a>D.1.23
+ #dropMode-dropPAL</h4>
+
+ <p>A TTML transformation processor supports the <code>#dropMode-dropPAL</code>
+ feature if it recognizes and is capable of transforming the
+ <code>dropPAL</code> value of the <a href=
+ "#parameter-attribute-dropMode"><code>ttp:dropMode</code></a> attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#dropMode-dropPAL</code>
+ feature if it implements presentation semantic support for the
+ <code>dropPAL</code> value of the <a href=
+ "#parameter-attribute-dropMode"><code>ttp:dropMode</code></a> attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-dropMode-nonDrop" name="feature-dropMode-nonDrop"></a>D.1.24
+ #dropMode-nonDrop</h4>
+
+ <p>A TTML transformation processor supports the <code>#dropMode-nonDrop</code>
+ feature if it recognizes and is capable of transforming the
+ <code>nonDrop</code> value of the <a href=
+ "#parameter-attribute-dropMode"><code>ttp:dropMode</code></a> attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#dropMode-nonDrop</code>
+ feature if it implements presentation semantic support for the
+ <code>nonDrop</code> value of the <a href=
+ "#parameter-attribute-dropMode"><code>ttp:dropMode</code></a> attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-extent" name="feature-extent"></a>D.1.25 #extent</h4>
+
+ <p>A TTML transformation processor supports the <code>#extent</code> feature if
+ it recognizes and is capable of transforming the <a href=
+ "#style-attribute-extent"><code>tts:extent</code></a> attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#extent</code> feature if
+ it implements presentation semantic support for the <a href=
+ "#style-attribute-extent"><code>tts:extent</code></a> attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-extent-region" name="feature-extent-region"></a>D.1.26
+ #extent-region</h4>
+
+ <p>A TTML transformation processor supports the <code>#extent-region</code>
+ feature if it recognizes and is capable of transforming the <a href=
+ "#style-attribute-extent"><code>tts:extent</code></a> attribute when applied to
+ a <a href="#layout-vocabulary-region"><code>region</code></a> element.</p>
+
+ <p>A TTML presentation processor supports the <code>#extent-region</code>
+ feature if it implements presentation semantic support for the <a href=
+ "#style-attribute-extent"><code>tts:extent</code></a> attribute when applied to
+ a <a href="#layout-vocabulary-region"><code>region</code></a> element.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-extent-root" name="feature-extent-root"></a>D.1.27
+ #extent-root</h4>
+
+ <p>A TTML transformation processor supports the <code>#extent-root</code>
+ feature if it recognizes and is capable of transforming the <a href=
+ "#style-attribute-extent"><code>tts:extent</code></a> attribute when applied to
+ the <a href="#document-structure-vocabulary-tt"><code>tt</code></a>
+ element.</p>
+
+ <p>A TTML presentation processor supports the <code>#extent-root</code> feature
+ if it implements presentation semantic support for the <a href=
+ "#style-attribute-extent"><code>tts:extent</code></a> attribute when applied to
+ a <a href="#document-structure-vocabulary-tt"><code>tt</code></a> element.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-fontFamily" name="feature-fontFamily"></a>D.1.28
+ #fontFamily</h4>
+
+ <p>A TTML transformation processor supports the <code>#fontFamily</code>
+ feature if it recognizes and is capable of transforming the <a href=
+ "#style-attribute-fontFamily"><code>tts:fontFamily</code></a> attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#fontFamily</code> feature
+ if it implements presentation semantic support for the <a href=
+ "#style-attribute-fontFamily"><code>tts:fontFamily</code></a> attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-fontFamily-generic" name=
+ "feature-fontFamily-generic"></a>D.1.29 #fontFamily-generic</h4>
+
+ <p>A TTML transformation processor supports the
+ <code>#fontFamily-generic</code> feature if it recognizes and is capable of
+ transforming <a href=
+ "#style-value-genericFamilyName"><genericFamilyName></a> values when used
+ with the <a href="#style-attribute-fontFamily"><code>tts:fontFamily</code></a>
+ attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#fontFamily-generic</code>
+ feature if it implements presentation semantic support for <a href=
+ "#style-value-genericFamilyName"><genericFamilyName></a> values when used
+ with the <a href="#style-attribute-fontFamily"><code>tts:fontFamily</code></a>
+ attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-fontFamily-non-generic" name=
+ "feature-fontFamily-non-generic"></a>D.1.30 #fontFamily-non-generic</h4>
+
+ <p>A TTML transformation processor supports the
+ <code>#fontFamily-non-generic</code> feature if it recognizes and is capable of
+ transforming <a href="#style-value-familyName"><familyName></a> values
+ when used with the <a href=
+ "#style-attribute-fontFamily"><code>tts:fontFamily</code></a> attribute.</p>
+
+ <p>A TTML presentation processor supports the
+ <code>#fontFamily-non-generic</code> feature if it implements presentation
+ semantic support for <a href="#style-value-familyName"><familyName></a>
+ values when used with the <a href=
+ "#style-attribute-fontFamily"><code>tts:fontFamily</code></a> attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-fontSize" name="feature-fontSize"></a>D.1.31 #fontSize</h4>
+
+ <p>A TTML transformation processor supports the <code>#fontSize</code> feature
+ if it recognizes and is capable of transforming the <a href=
+ "#style-attribute-fontSize"><code>tts:fontSize</code></a> attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#fontSize</code> feature if
+ it implements presentation semantic support for the <a href=
+ "#style-attribute-fontSize"><code>tts:fontSize</code></a> attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-fontSize-anamorphic" name=
+ "feature-fontSize-anamorphic"></a>D.1.32 #fontSize-anamorphic</h4>
+
+ <p>A TTML transformation processor supports the
+ <code>#fontSize-anamorphic</code> feature if it recognizes and is capable of
+ transforming values of the <a href=
+ "#style-attribute-fontSize"><code>tts:fontSize</code></a> attribute that
+ consist of two <a href="#style-value-length"><length></a>
+ specifications.</p>
+
+ <p>A TTML presentation processor supports the <code>#fontSize-anamorphic</code>
+ feature if it implements presentation semantic support for defined values of
+ the <a href="#style-attribute-fontSize"><code>tts:fontSize</code></a> attribute
+ that consist of two <a href="#style-value-length"><length></a>
+ specifications.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-fontSize-isomorphic" name=
+ "feature-fontSize-isomorphic"></a>D.1.33 #fontSize-isomorphic</h4>
+
+ <p>A TTML transformation processor supports the
+ <code>#fontSize-isomorphic</code> feature if it recognizes and is capable of
+ transforming values of the <a href=
+ "#style-attribute-fontSize"><code>tts:fontSize</code></a> attribute that
+ consist of a single <a href="#style-value-length"><length></a>
+ specification.</p>
+
+ <p>A TTML presentation processor supports the <code>#fontSize-isomorphic</code>
+ feature if it implements presentation semantic support for defined values of
+ the <a href="#style-attribute-fontSize"><code>tts:fontSize</code></a> attribute
+ that consist of a single <a href="#style-value-length"><length></a>
+ specification.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-fontStyle" name="feature-fontStyle"></a>D.1.34
+ #fontStyle</h4>
+
+ <p>A TTML transformation processor supports the <code>#fontStyle</code> feature
+ if it recognizes and is capable of transforming all defined values of the
+ <a href="#style-attribute-fontStyle"><code>tts:fontStyle</code></a>
+ attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#fontStyle</code> feature
+ if it implements presentation semantic support for all defined values of the
+ <a href="#style-attribute-fontStyle"><code>tts:fontStyle</code></a>
+ attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-fontStyle-italic" name="feature-fontStyle-italic"></a>D.1.35
+ #fontStyle-italic</h4>
+
+ <p>A TTML transformation processor supports the <code>#fontStyle-italic</code>
+ feature if it recognizes and is capable of transforming the <code>italic</code>
+ value of the <a href=
+ "#style-attribute-fontStyle"><code>tts:fontStyle</code></a> attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#fontStyle-italic</code>
+ feature if it implements presentation semantic support for the
+ <code>italic</code> of the <a href=
+ "#style-attribute-fontStyle"><code>tts:fontStyle</code></a> attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-fontStyle-oblique" name=
+ "feature-fontStyle-oblique"></a>D.1.36 #fontStyle-oblique</h4>
+
+ <p>A TTML transformation processor supports the <code>#fontStyle-oblique</code>
+ feature if it recognizes and is capable of transforming the
+ <code>oblique</code> value of the <a href=
+ "#style-attribute-fontStyle"><code>tts:fontStyle</code></a> attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#fontStyle-oblique</code>
+ feature if it implements presentation semantic support for the
+ <code>oblique</code> of the <a href=
+ "#style-attribute-fontStyle"><code>tts:fontStyle</code></a> attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-fontWeight" name="feature-fontWeight"></a>D.1.37
+ #fontWeight</h4>
+
+ <p>A TTML transformation processor supports the <code>#fontWeight</code>
+ feature if it recognizes and is capable of transforming all defined values of
+ the <a href="#style-attribute-fontWeight"><code>tts:fontWeight</code></a>
+ attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#fontWeight</code> feature
+ if it implements presentation semantic support for all defined values of the
+ <a href="#style-attribute-fontWeight"><code>tts:fontWeight</code></a>
+ attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-fontWeight-bold" name="feature-fontWeight-bold"></a>D.1.38
+ #fontWeight-bold</h4>
+
+ <p>A TTML transformation processor supports the <code>#fontWeight-bold</code>
+ feature if it recognizes and is capable of transforming <code>bold</code> value
+ of the <a href="#style-attribute-fontWeight"><code>tts:fontWeight</code></a>
+ attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#fontWeight-bold</code>
+ feature if it implements presentation semantic support for the
+ <code>bold</code> of the <a href=
+ "#style-attribute-fontWeight"><code>tts:fontWeight</code></a> attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-frameRate" name="feature-frameRate"></a>D.1.39
+ #frameRate</h4>
+
+ <p>A TTML transformation processor supports the <code>#frameRate</code> feature
+ if it recognizes and is capable of transforming the <a href=
+ "#parameter-attribute-frameRate"><code>ttp:frameRate</code></a> attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#frameRate</code> feature
+ if it implements presentation semantic support for the <a href=
+ "#parameter-attribute-frameRate"><code>ttp:frameRate</code></a> attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-frameRateMultiplier" name=
+ "feature-frameRateMultiplier"></a>D.1.40 #frameRateMultiplier</h4>
+
+ <p>A TTML transformation processor supports the
+ <code>#frameRateMultiplier</code> feature if it recognizes and is capable of
+ transforming the <a href=
+ "#parameter-attribute-frameRateMultiplier"><code>ttp:frameRateMultiplier</code></a>
+ attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#frameRateMultiplier</code>
+ feature if it implements presentation semantic support for the <a href=
+ "#parameter-attribute-frameRateMultiplier"><code>ttp:frameRateMultiplier</code></a>
+ attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-layout" name="feature-layout"></a>D.1.41 #layout</h4>
+
+ <p>A TTML transformation processor supports the <code>#layout</code> feature if
+ it (1) recognizes and is capable of transforming the following vocabulary
+ defined by <a href="#layout"><b>9 Layout</b></a>:</p>
+
+ <ul>
+ <li>
+ <p><a href="#layout-vocabulary-layout"><code>layout</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#layout-vocabulary-region"><code>region</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#layout-attribute-region">@<code>region</code></a></p>
+ </li>
+ </ul>
+
+ <p>and (2) supports the following attributes when applied to the <a href=
+ "#layout-vocabulary-region"><code>region</code></a> element:</p>
+
+ <ul>
+ <li>
+ <p><a href="#style-attribute-extent"><code>tts:extent</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#style-attribute-origin"><code>tts:origin</code></a></p>
+ </li>
+ </ul>
+
+ <p>A TTML presentation processor supports the <code>#layout</code> feature if
+ it implements presentation semantic support for the same vocabulary and
+ features enumerated above.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-length" name="feature-length"></a>D.1.42 #length</h4>
+
+ <p>A TTML transformation processor supports the <code>#length</code> feature if
+ it recognizes and is capable of transforming all defined values of the <a href=
+ "#style-value-length"><length></a> style value expression.</p>
+
+ <p>A TTML presentation processor supports the <code>#length</code> feature if
+ it implements presentation semantic support for all defined values of the
+ <a href="#style-value-length"><length></a> style value expression.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>Support for <code>#length</code> is intended to imply support for the
+ following features: <code>#length-integer</code>, <code>#length-real</code>,
+ <code>#length-positive</code>, <code>#length-negative</code>,
+ <code>#length-cell</code>, <code>#length-em</code>,
+ <code>#length-percentage</code>, and <code>#length-pixel</code>.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-length-cell" name="feature-length-cell"></a>D.1.43
+ #length-cell</h4>
+
+ <p>A TTML transformation processor supports the <code>#length-cell</code>
+ feature if it recognizes and is capable of transforming scalar values of the
+ <a href="#style-value-length"><length></a> style value expression that
+ use <code>c</code> (cell) units.</p>
+
+ <p>A TTML presentation processor supports the <code>#length-cell</code> feature
+ if it implements presentation semantic support for scalar values of the
+ <a href="#style-value-length"><length></a> style value expression that
+ use <code>c</code> (cell) units.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>Support for <code>#length-cell</code> does not, by itself, imply support
+ for <code>#length-integer</code>, <code>#length-real</code>,
+ <code>#length-positive</code>, or <code>#length-negative</code> features.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-length-em" name="feature-length-em"></a>D.1.44
+ #length-em</h4>
+
+ <p>A TTML transformation processor supports the <code>#length-em</code> feature
+ if it recognizes and is capable of transforming scalar values of the <a href=
+ "#style-value-length"><length></a> style value expression that use
+ <code>em</code> (EM) units.</p>
+
+ <p>A TTML presentation processor supports the <code>#length-em</code> feature
+ if it implements presentation semantic support for scalar values of the
+ <a href="#style-value-length"><length></a> style value expression that
+ use <code>em</code> (EM) units.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>Support for <code>#length-em</code> does not, by itself, imply support for
+ <code>#length-integer</code>, <code>#length-real</code>,
+ <code>#length-positive</code>, or <code>#length-negative</code> features.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-length-integer" name="feature-length-integer"></a>D.1.45
+ #length-integer</h4>
+
+ <p>A TTML transformation processor supports the <code>#length-integer</code>
+ feature if it recognizes and is capable of transforming integer values of the
+ <a href="#style-value-length"><length></a> style value expression.</p>
+
+ <p>A TTML presentation processor supports the <code>#length-integer</code>
+ feature if it implements presentation semantic support for integer values of
+ the <a href="#style-value-length"><length></a> style value
+ expression.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>Support for <code>#length-integer</code> does not, by itself, imply
+ support for <code>#length-positive</code> or <code>#length-negative</code>
+ features.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-length-negative" name="feature-length-negative"></a>D.1.46
+ #length-negative</h4>
+
+ <p>A TTML transformation processor supports the <code>#length-negative</code>
+ feature if it recognizes and is capable of transforming negative values of the
+ <a href="#style-value-length"><length></a> style value expression.</p>
+
+ <p>A TTML presentation processor supports the <code>#length-negative</code>
+ feature if it implements presentation semantic support for negative values of
+ the <a href="#style-value-length"><length></a> style value
+ expression.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>Support for <code>#length-negative</code> does not, by itself, imply
+ support for <code>#length-integer</code> or <code>#length-real</code>
+ features.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-length-percentage" name=
+ "feature-length-percentage"></a>D.1.47 #length-percentage</h4>
+
+ <p>A TTML transformation processor supports the <code>#length-percentage</code>
+ feature if it recognizes and is capable of transforming percentage values of
+ the <a href="#style-value-length"><length></a> style value
+ expression.</p>
+
+ <p>A TTML presentation processor supports the <code>#length-percentage</code>
+ feature if it implements presentation semantic support for percentage values of
+ the <a href="#style-value-length"><length></a> style value
+ expression.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>Support for <code>#length-percentage</code> does not, by itself, imply
+ support for <code>#length-integer</code>, <code>#length-real</code>,
+ <code>#length-positive</code>, or <code>#length-negative</code> features.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-length-pixel" name="feature-length-pixel"></a>D.1.48
+ #length-pixel</h4>
+
+ <p>A TTML transformation processor supports the <code>#length-pixel</code>
+ feature if it recognizes and is capable of transforming scalar values of the
+ <a href="#style-value-length"><length></a> style value expression that
+ use <code>px</code> (pixel) units.</p>
+
+ <p>A TTML presentation processor supports the <code>#length-pixel</code>
+ feature if it implements presentation semantic support for scalar values of the
+ <a href="#style-value-length"><length></a> style value expression that
+ use <code>px</code> (pixel) units.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>Support for <code>#length-pixel</code> does not, by itself, imply support
+ for <code>#length-integer</code>, <code>#length-real</code>,
+ <code>#length-positive</code>, or <code>#length-negative</code> features.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-length-positive" name="feature-length-positive"></a>D.1.49
+ #length-positive</h4>
+
+ <p>A TTML transformation processor supports the <code>#length-positive</code>
+ feature if it recognizes and is capable of transforming positive values of the
+ <a href="#style-value-length"><length></a> style value expression.</p>
+
+ <p>A TTML presentation processor supports the <code>#length-positive</code>
+ feature if it implements presentation semantic support for positive values of
+ the <a href="#style-value-length"><length></a> style value
+ expression.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>Support for <code>#length-positive</code> is intended to imply support for
+ zero valued <a href="#style-value-length"><length></a> style value
+ expressions.</p>
+ </div>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>Support for <code>#length-positive</code> does not, by itself, imply
+ support for <code>#length-integer</code> or <code>#length-real</code>
+ features.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-length-real" name="feature-length-real"></a>D.1.50
+ #length-real</h4>
+
+ <p>A TTML transformation processor supports the <code>#length-real</code>
+ feature if it recognizes and is capable of transforming real values of the
+ <a href="#style-value-length"><length></a> style value expression.</p>
+
+ <p>A TTML presentation processor supports the <code>#length-real</code> feature
+ if it implements presentation semantic support for real values of the <a href=
+ "#style-value-length"><length></a> style value expression.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>Support for <code>#length-real</code> is intended to imply support for
+ integer valued <a href="#style-value-length"><length></a> style value
+ expressions as well as real valued expressions.</p>
+ </div>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>Support for <code>#length-real</code> does not, by itself, imply support
+ for <code>#length-positive</code> or <code>#length-negative</code>
+ features.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-lineBreak-uax14" name="feature-lineBreak-uax14"></a>D.1.51
+ #lineBreak-uax14</h4>
+
+ <p>A TTML transformation processor supports the <code>#lineBreak-uax14</code>
+ feature if it recognizes and is capable of transforming requirements expressed
+ by <a href="#uax14">[UAX14]</a> into its target document space.</p>
+
+ <p>A TTML presentation processor supports the <code>#lineBreak-uax14</code>
+ feature if it implements presentation semantic support for <a href=
+ "#uax14">[UAX14]</a> as applies to line breaking.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-lineHeight" name="feature-lineHeight"></a>D.1.52
+ #lineHeight</h4>
+
+ <p>A TTML transformation processor supports the <code>#lineHeight</code>
+ feature if it recognizes and is capable of transforming the <a href=
+ "#style-attribute-lineHeight"><code>tts:lineHeight</code></a> attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#lineHeight</code> feature
+ if it implements presentation semantic support for the <a href=
+ "#style-attribute-lineHeight"><code>tts:lineHeight</code></a> attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-markerMode" name="feature-markerMode"></a>D.1.53
+ #markerMode</h4>
+
+ <p>A TTML transformation processor supports the <code>#markerMode</code>
+ feature if it recognizes and is capable of transforming the <a href=
+ "#parameter-attribute-markerMode"><code>ttp:markerMode</code></a>
+ attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#markerMode</code> feature
+ if it implements presentation semantic support for the <a href=
+ "#parameter-attribute-markerMode"><code>ttp:markerMode</code></a>
+ attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-markerMode-continuous" name=
+ "feature-markerMode-continuous"></a>D.1.54 #markerMode-continuous</h4>
+
+ <p>A TTML transformation processor supports the
+ <code>#markerMode-continuous</code> feature if it recognizes and is capable of
+ transforming the <code>continuous</code> value of the <a href=
+ "#parameter-attribute-markerMode"><code>ttp:markerMode</code></a>
+ attribute.</p>
+
+ <p>A TTML presentation processor supports the
+ <code>#markerMode-continuous</code> feature if it implements presentation
+ semantic support for the <code>continuous</code> value of the <a href=
+ "#parameter-attribute-markerMode"><code>ttp:markerMode</code></a>
+ attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-markerMode-discontinuous" name=
+ "feature-markerMode-discontinuous"></a>D.1.55 #markerMode-discontinuous</h4>
+
+ <p>A TTML transformation processor supports the
+ <code>#markerMode-discontinuous</code> feature if it recognizes and is capable
+ of transforming the <code>discontinuous</code> value of the <a href=
+ "#parameter-attribute-markerMode"><code>ttp:markerMode</code></a>
+ attribute.</p>
+
+ <p>A TTML presentation processor supports the
+ <code>#markerMode-discontinuous</code> feature if it implements presentation
+ semantic support for the <code>discontinuous</code> value of the <a href=
+ "#parameter-attribute-markerMode"><code>ttp:markerMode</code></a>
+ attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-metadata" name="feature-metadata"></a>D.1.56 #metadata</h4>
+
+ <p>A TTML transformation processor supports the <code>#metadata</code> feature
+ if it recognizes and is capable of transforming the following vocabulary
+ defined by <a href="#metadata"><b>12 Metadata</b></a>:</p>
+
+ <ul>
+ <li>
+ <p><a href="#metadata-vocabulary-metadata"><code>metadata</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#metadata-vocabulary-title"><code>ttm:title</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#metadata-vocabulary-title"><code>ttm:desc</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#metadata-vocabulary-title"><code>ttm:copyright</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#metadata-vocabulary-title"><code>ttm:agent</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#metadata-vocabulary-title"><code>ttm:name</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#metadata-vocabulary-title"><code>ttm:actor</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#metadata-attribute-agent">@<code>ttm:agent</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#metadata-attribute-role">@<code>ttm:role</code></a></p>
+ </li>
+ </ul>
+
+ <p>A TTML presentation processor supports the <code>#metadata</code> feature if
+ it recognizes and is capable of presenting the information expressed by the
+ same vocabulary enumerated above.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>This specification does not define a standardized form for the
+ presentation of metadata information. The presentation or ability to present
+ metadata information is considered to be implementation dependent.</p>
+ </div>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-nested-div" name="feature-nested-div"></a>D.1.57
+ #nested-div</h4>
+
+ <p>A TTML transformation processor supports the <code>#nested-div</code>
+ feature if it recognizes and is capable of transforming nested <a href=
+ "#content-vocabulary-div"><code>div</code></a> elements.</p>
+
+ <p>A TTML presentation processor supports the <code>#nested-div</code> feature
+ if it implements presentation semantic support for nested <a href=
+ "#content-vocabulary-div"><code>div</code></a> elements.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-nested-span" name="feature-nested-span"></a>D.1.58
+ #nested-span</h4>
+
+ <p>A TTML transformation processor supports the <code>#nested-span</code>
+ feature if it recognizes and is capable of transforming nested <a href=
+ "#content-vocabulary-span"><code>span</code></a> elements.</p>
+
+ <p>A TTML presentation processor supports the <code>#nested-span</code> feature
+ if it implements presentation semantic support for nested <a href=
+ "#content-vocabulary-span"><code>span</code></a> elements.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-opacity" name="feature-opacity"></a>D.1.59 #opacity</h4>
+
+ <p>A TTML transformation processor supports the <code>#opacity</code> feature
+ if it recognizes and is capable of transforming the <a href=
+ "#style-attribute-opacity"><code>tts:opacity</code></a> attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#opacity</code> feature if
+ it (1) implements presentation semantic support for the <a href=
+ "#style-attribute-opacity"><code>tts:opacity</code></a> attribute and (2) is
+ capable of displaying or generating an output display signal that distinguishes
+ between at least eight (8) values of opacity.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-origin" name="feature-origin"></a>D.1.60 #origin</h4>
+
+ <p>A TTML transformation processor supports the <code>#origin</code> feature if
+ it recognizes and is capable of transforming the <a href=
+ "#style-attribute-origin"><code>tts:origin</code></a> attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#origin</code> feature if
+ it implements presentation semantic support for the <a href=
+ "#style-attribute-origin"><code>tts:origin</code></a> attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-overflow" name="feature-overflow"></a>D.1.61 #overflow</h4>
+
+ <p>A TTML transformation processor supports the <code>#overflow</code> feature
+ if it recognizes and is capable of transforming all defined values of the
+ <a href="#style-attribute-overflow"><code>tts:overflow</code></a>
+ attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#overflow</code> feature if
+ it implements presentation semantic support for all defined values of the
+ <a href="#style-attribute-overflow"><code>tts:overflow</code></a>
+ attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-overflow-visible" name="feature-overflow-visible"></a>D.1.62
+ #overflow-visible</h4>
+
+ <p>A TTML transformation processor supports the <code>#overflow-visible</code>
+ feature if it recognizes and is capable of transforming the
+ <code>visible</code> value of the <a href=
+ "#style-attribute-overflow"><code>tts:overflow</code></a> attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#overflow-visible</code>
+ feature if it implements presentation semantic support for the
+ <code>visible</code> value of the <a href=
+ "#style-attribute-overflow"><code>tts:overflow</code></a> attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-padding" name="feature-padding"></a>D.1.63 #padding</h4>
+
+ <p>A TTML transformation processor supports the <code>#padding</code> feature
+ if it recognizes and is capable of transforming the <a href=
+ "#style-attribute-padding"><code>tts:padding</code></a> attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#padding</code> feature if
+ it implements presentation semantic support for the <a href=
+ "#style-attribute-padding"><code>tts:padding</code></a> attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-padding-1" name="feature-padding-1"></a>D.1.64
+ #padding-1</h4>
+
+ <p>A TTML transformation processor supports the <code>#padding-1</code> feature
+ if it recognizes and is capable of transforming values of the <a href=
+ "#style-attribute-padding"><code>tts:padding</code></a> attribute that consist
+ of one <a href="#style-value-length"><length></a> specification.</p>
+
+ <p>A TTML presentation processor supports the <code>#padding-1</code> feature
+ if it implements presentation semantic support for values of the <a href=
+ "#style-attribute-padding"><code>tts:padding</code></a> attribute that consist
+ of one <a href="#style-value-length"><length></a> specification.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-padding-2" name="feature-padding-2"></a>D.1.65
+ #padding-2</h4>
+
+ <p>A TTML transformation processor supports the <code>#padding-2</code> feature
+ if it recognizes and is capable of transforming values of the <a href=
+ "#style-attribute-padding"><code>tts:padding</code></a> attribute that consist
+ of two <a href="#style-value-length"><length></a> specification.</p>
+
+ <p>A TTML presentation processor supports the <code>#padding-2</code> feature
+ if it implements presentation semantic support for values of the <a href=
+ "#style-attribute-padding"><code>tts:padding</code></a> attribute that consist
+ of two <a href="#style-value-length"><length></a> specification.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-padding-3" name="feature-padding-3"></a>D.1.66
+ #padding-3</h4>
+
+ <p>A TTML transformation processor supports the <code>#padding-3</code> feature
+ if it recognizes and is capable of transforming values of the <a href=
+ "#style-attribute-padding"><code>tts:padding</code></a> attribute that consist
+ of three <a href="#style-value-length"><length></a> specification.</p>
+
+ <p>A TTML presentation processor supports the <code>#padding-3</code> feature
+ if it implements presentation semantic support for values of the <a href=
+ "#style-attribute-padding"><code>tts:padding</code></a> attribute that consist
+ of three <a href="#style-value-length"><length></a> specification.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-padding-4" name="feature-padding-4"></a>D.1.67
+ #padding-4</h4>
+
+ <p>A TTML transformation processor supports the <code>#padding-4</code> feature
+ if it recognizes and is capable of transforming values of the <a href=
+ "#style-attribute-padding"><code>tts:padding</code></a> attribute that consist
+ of four <a href="#style-value-length"><length></a> specification.</p>
+
+ <p>A TTML presentation processor supports the <code>#padding-4</code> feature
+ if it implements presentation semantic support for values of the <a href=
+ "#style-attribute-padding"><code>tts:padding</code></a> attribute that consist
+ of four <a href="#style-value-length"><length></a> specification.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-pixelAspectRatio" name="feature-pixelAspectRatio"></a>D.1.68
+ #pixelAspectRatio</h4>
+
+ <p>A TTML transformation processor supports the <code>#pixelAspectRatio</code>
+ feature if it recognizes and is capable of transforming the <a href=
+ "#parameter-attribute-pixelAspectRatio"><code>ttp:pixelAspectRatio</code></a>
+ attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#pixelAspectRatio</code>
+ feature if it implements presentation semantic support for the <a href=
+ "#parameter-attribute-pixelAspectRatio"><code>ttp:pixelAspectRatio</code></a>
+ attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-presentation" name="feature-presentation"></a>D.1.69
+ #presentation</h4>
+
+ <p>A TTML processor supports the <code>#presentation</code> feature if it (1)
+ satisfies the generic processor criteria defined by <a href=
+ "#conformance-generic-processor"><b>3.2.1 Generic Processor
+ Conformance</b></a>, (2) implements support for the region and line layout
+ semantics defined by <a href="#semantics-region-layout"><b>9.3 Region Layout
+ and Presentation</b></a> and <a href="#semantics-line-layout"><b>9.4 Line
+ Layout</b></a>, respectively, and (3) implements presentation semantics for the
+ following features:</p>
+
+ <ul>
+ <li>
+ <p><a href="#content"><code>#content</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#feature-core"><code>#core</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#feature-profile"><code>#profile</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#feature-structure"><code>#structure</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#feature-time-offset"><code>#time-offset</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#timing"><code>#timing</code></a></p>
+ </li>
+ </ul>
+
+ <p>In addition, a TTML processor that supports the <code>#presentation</code>
+ feature should satisfy the user agent accessibility guidelines specified by
+ <a href="#uaag">[UAAG]</a>.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-profile" name="feature-profile"></a>D.1.70 #profile</h4>
+
+ <p>A TTML transformation processor supports the <code>#profile</code> feature
+ if it recognizes and is capable of transforming the <a href=
+ "#parameter-attribute-profile"><code>ttp:profile</code></a> attribute on the
+ <a href="#document-structure-vocabulary-tt"><code>tt</code></a> element and
+ transforming the following vocabulary defined by <a href=
+ "#parameter-element-vocabulary"><b>6.1 Parameter Element
+ Vocabulary</b></a>:</p>
+
+ <ul>
+ <li>
+ <p><a href="#parameter-vocabulary-profile"><code>ttp:profile</code></a></p>
+ </li>
+
+ <li>
+ <p><a href=
+ "#parameter-vocabulary-features"><code>ttp:features</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#parameter-vocabulary-feature"><code>ttp:feature</code></a></p>
+ </li>
+
+ <li>
+ <p><a href=
+ "#parameter-vocabulary-extensions"><code>ttp:extensions</code></a></p>
+ </li>
+
+ <li>
+ <p><a href=
+ "#parameter-vocabulary-extension"><code>ttp:extension</code></a></p>
+ </li>
+ </ul>
+
+ <p>A TTML presentation processor supports the <code>#profile</code> feature if
+ it implements presentation semantic support for the same vocabulary specified
+ above.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-showBackground" name="feature-showBackground"></a>D.1.71
+ #showBackground</h4>
+
+ <p>A TTML transformation processor supports the <code>#showBackground</code>
+ feature if it recognizes and is capable of transforming all defined values of
+ the <a href=
+ "#style-attribute-showBackground"><code>tts:showBackground</code></a>
+ attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#showBackground</code>
+ feature if it implements presentation semantic support for all defined values
+ of the <a href=
+ "#style-attribute-showBackground"><code>tts:showBackground</code></a>
+ attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-structure" name="feature-structure"></a>D.1.72
+ #structure</h4>
+
+ <p>A TTML transformation processor supports the <code>#structure</code> feature
+ if it recognizes and is capable of transforming the following vocabulary
+ defined by <a href="#content"><b>7 Content</b></a>:</p>
+
+ <ul>
+ <li>
+ <p><a href="#document-structure-vocabulary-tt"><code>tt</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#document-structure-vocabulary-head"><code>head</code></a></p>
+ </li>
+ </ul>
+
+ <p>A TTML presentation processor supports the <code>#structure</code> feature
+ if it implements presentation semantic support for the same vocabulary
+ enumerated above.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-styling" name="feature-styling"></a>D.1.73 #styling</h4>
+
+ <p>A TTML transformation processor supports the <code>#styling</code> feature
+ if it recognizes and is capable of transforming the following vocabulary
+ defined by <a href="#styling"><b>8 Styling</b></a>:</p>
+
+ <ul>
+ <li>
+ <p><a href="#styling-vocabulary-styling"><code>styling</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#styling-vocabulary-style"><code>style</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#style-attribute-style">@<code>style</code></a></p>
+ </li>
+ </ul>
+
+ <p>A TTML presentation processor supports the <code>#styling</code> feature if
+ it implements presentation semantic support for the same vocabulary enumerated
+ above.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-styling-chained" name="feature-styling-chained"></a>D.1.74
+ #styling-chained</h4>
+
+ <p>A TTML transformation processor supports the <code>#styling-chained</code>
+ feature if it recognizes and is capable of transforming chained style
+ association as defined by <a href=
+ "#semantics-style-association-chained-referential"><b>8.4.1.3 Chained
+ Referential Styling</b></a>.</p>
+
+ <p>A TTML presentation processor supports the <code>#styling-chained</code>
+ feature if it implements presentation semantic support for chained style
+ association as defined by <a href=
+ "#semantics-style-association-chained-referential"><b>8.4.1.3 Chained
+ Referential Styling</b></a>.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-styling-inheritance-content" name=
+ "feature-styling-inheritance-content"></a>D.1.75
+ #styling-inheritance-content</h4>
+
+ <p>A TTML transformation processor supports the
+ <code>#styling-inheritance</code> feature if it recognizes and is capable of
+ transforming content style inheritance as defined by <a href=
+ "#semantics-style-inheritance-content"><b>8.4.2.1 Content Style
+ Inheritance</b></a>.</p>
+
+ <p>A TTML presentation processor supports the
+ <code>#styling-inheritance-content</code> feature if it implements presentation
+ semantic support for content style inheritance as defined by <a href=
+ "#semantics-style-inheritance-content"><b>8.4.2.1 Content Style
+ Inheritance</b></a>.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-styling-inheritance-region" name=
+ "feature-styling-inheritance-region"></a>D.1.76
+ #styling-inheritance-region</h4>
+
+ <p>A TTML transformation processor supports the
+ <code>#styling-inheritance</code> feature if it recognizes and is capable of
+ transforming region style inheritance as defined by <a href=
+ "#semantics-style-inheritance-region"><b>8.4.2.2 Region Style
+ Inheritance</b></a>.</p>
+
+ <p>A TTML presentation processor supports the
+ <code>#styling-inheritance-region</code> feature if it implements presentation
+ semantic support for region style inheritance as defined by <a href=
+ "#semantics-style-inheritance-region"><b>8.4.2.2 Region Style
+ Inheritance</b></a>.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-styling-inline" name="feature-styling-inline"></a>D.1.77
+ #styling-inline</h4>
+
+ <p>A TTML transformation processor supports the <code>#styling-inline</code>
+ feature if it recognizes and is capable of transforming inline style
+ association as defined by <a href=
+ "#semantics-style-association-inline"><b>8.4.1.1 Inline Styling</b></a>.</p>
+
+ <p>A TTML presentation processor supports the <code>#styling-inline</code>
+ feature if it implements presentation semantic support for inline style
+ association as defined by <a href=
+ "#semantics-style-association-inline"><b>8.4.1.1 Inline Styling</b></a>.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-styling-nested" name="feature-styling-nested"></a>D.1.78
+ #styling-nested</h4>
+
+ <p>A TTML transformation processor supports the <code>#styling-nested</code>
+ feature if it recognizes and is capable of transforming nested style
+ association as defined by <a href=
+ "#semantics-style-association-nested"><b>8.4.1.4 Nested Styling</b></a>.</p>
+
+ <p>A TTML presentation processor supports the <code>#styling-nested</code>
+ feature if it implements presentation semantic support for nested style
+ association as defined by <a href=
+ "#semantics-style-association-nested"><b>8.4.1.4 Nested Styling</b></a>.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-styling-referential" name=
+ "feature-styling-referential"></a>D.1.79 #styling-referential</h4>
+
+ <p>A TTML transformation processor supports the
+ <code>#styling-referential</code> feature if it recognizes and is capable of
+ transforming referential style association as defined by <a href=
+ "#semantics-style-association-referential"><b>8.4.1.2 Referential
+ Styling</b></a>.</p>
+
+ <p>A TTML presentation processor supports the <code>#styling-referential</code>
+ feature if it implements presentation semantic support for referential style
+ association as defined by <a href=
+ "#semantics-style-association-referential"><b>8.4.1.2 Referential
+ Styling</b></a>.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-subFrameRate" name="feature-subFrameRate"></a>D.1.80
+ #subFrameRate</h4>
+
+ <p>A TTML transformation processor supports the <code>#subFrameRate</code>
+ feature if it recognizes and is capable of transforming the <a href=
+ "#parameter-attribute-subFrameRate"><code>ttp:subFrameRate</code></a>
+ attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#subFrameRate</code>
+ feature if it implements presentation semantic support for the <a href=
+ "#parameter-attribute-subFrameRate"><code>ttp:subFrameRate</code></a>
+ attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-textAlign" name="feature-textAlign"></a>D.1.81
+ #textAlign</h4>
+
+ <p>A TTML transformation processor supports the <code>#textAlign</code> feature
+ if it recognizes and is capable of transforming all defined values of the
+ <a href="#style-attribute-textAlign"><code>tts:textAlign</code></a>
+ attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#textAlign</code> feature
+ if it implements presentation semantic support for all defined values of the
+ <a href="#style-attribute-textAlign"><code>tts:textAlign</code></a>
+ attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-textAlign-absolute" name=
+ "feature-textAlign-absolute"></a>D.1.82 #textAlign-absolute</h4>
+
+ <p>A TTML transformation processor supports the
+ <code>#textAlign-absolute</code> feature if it recognizes and is capable of
+ transforming the <code>left</code>, <code>center</code>, and <code>right</code>
+ values of the <a href=
+ "#style-attribute-textAlign"><code>tts:textAlign</code></a> attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#textAlign-absolute</code>
+ feature if it implements presentation semantic support for the
+ <code>left</code>, <code>center</code>, and <code>right</code> values of the
+ <a href="#style-attribute-textAlign"><code>tts:textAlign</code></a>
+ attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-textAlign-relative" name=
+ "feature-textAlign-relative"></a>D.1.83 #textAlign-relative</h4>
+
+ <p>A TTML transformation processor supports the
+ <code>#textAlign-relative</code> feature if it recognizes and is capable of
+ transforming the <code>start</code>, <code>center</code>, and <code>end</code>
+ values of the <a href=
+ "#style-attribute-textAlign"><code>tts:textAlign</code></a> attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#textAlign-relative</code>
+ feature if it implements presentation semantic support for the
+ <code>start</code>, <code>center</code>, and <code>end</code> values of the
+ <a href="#style-attribute-textAlign"><code>tts:textAlign</code></a>
+ attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-textDecoration" name="feature-textDecoration"></a>D.1.84
+ #textDecoration</h4>
+
+ <p>A TTML transformation processor supports the <code>#textDecoration</code>
+ feature if it recognizes and is capable of transforming all defined values of
+ the <a href=
+ "#style-attribute-textDecoration"><code>tts:textDecoration</code></a>
+ attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#textDecoration</code>
+ feature if it implements presentation semantic support for all defined values
+ of the <a href=
+ "#style-attribute-textDecoration"><code>tts:textDecoration</code></a>
+ attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-textDecoration-over" name=
+ "feature-textDecoration-over"></a>D.1.85 #textDecoration-over</h4>
+
+ <p>A TTML transformation processor supports the
+ <code>#textDecoration-over</code> feature if it recognizes and is capable of
+ transforming the <code>overline</code> and <code>noOverline</code> values of
+ the <a href=
+ "#style-attribute-textDecoration"><code>tts:textDecoration</code></a>
+ attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#textDecoration-over</code>
+ feature if it implements presentation semantic support for the
+ <code>overline</code> and <code>noOverline</code> values of the <a href=
+ "#style-attribute-textDecoration"><code>tts:textDecoration</code></a>
+ attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-textDecoration-through" name=
+ "feature-textDecoration-through"></a>D.1.86 #textDecoration-through</h4>
+
+ <p>A TTML transformation processor supports the
+ <code>#textDecoration-through</code> feature if it recognizes and is capable of
+ transforming the <code>lineThrough</code> and <code>noLineThrough</code> values
+ of the <a href=
+ "#style-attribute-textDecoration"><code>tts:textDecoration</code></a>
+ attribute.</p>
+
+ <p>A TTML presentation processor supports the
+ <code>#textDecoration-through</code> feature if it implements presentation
+ semantic support for the <code>lineThrough</code> and
+ <code>noLineThrough</code> values of the <a href=
+ "#style-attribute-textDecoration"><code>tts:textDecoration</code></a>
+ attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-textDecoration-under" name=
+ "feature-textDecoration-under"></a>D.1.87 #textDecoration-under</h4>
+
+ <p>A TTML transformation processor supports the
+ <code>#textDecoration-under</code> feature if it recognizes and is capable of
+ transforming the <code>underline</code> and <code>noUnderline</code> values of
+ the <a href=
+ "#style-attribute-textDecoration"><code>tts:textDecoration</code></a>
+ attribute.</p>
+
+ <p>A TTML presentation processor supports the
+ <code>#textDecoration-under</code> feature if it implements presentation
+ semantic support for the <code>underline</code> and <code>noUnderline</code>
+ values of the <a href=
+ "#style-attribute-textDecoration"><code>tts:textDecoration</code></a>
+ attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-textOutline" name="feature-textOutline"></a>D.1.88
+ #textOutline</h4>
+
+ <p>A TTML transformation processor supports the <code>#textOutline</code>
+ feature if it recognizes and is capable of transforming the <a href=
+ "#style-attribute-textOutline"><code>tts:textOutline</code></a> attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#textOutline</code> feature
+ if it implements presentation semantic support for the <a href=
+ "#style-attribute-textOutline"><code>tts:textOutline</code></a> attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-textOutline-blurred" name=
+ "feature-textOutline-blurred"></a>D.1.89 #textOutline-blurred</h4>
+
+ <p>A TTML transformation processor supports the
+ <code>#textOutline-blurred</code> feature if it recognizes and is capable of
+ transforming values of the <a href=
+ "#style-attribute-textOutline"><code>tts:textOutline</code></a> attribute that
+ includes a blur radius specification.</p>
+
+ <p>A TTML presentation processor supports the <code>#textOutline-blurred</code>
+ feature if it implements presentation semantic support for values of the
+ <a href="#style-attribute-textOutline"><code>tts:textOutline</code></a>
+ attribute that includes a blur radius specification.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-textOutline-unblurred" name=
+ "feature-textOutline-unblurred"></a>D.1.90 #textOutline-unblurred</h4>
+
+ <p>A TTML transformation processor supports the
+ <code>#textOutline-unblurred</code> feature if it recognizes and is capable of
+ transforming values of the <a href=
+ "#style-attribute-textOutline"><code>tts:textOutline</code></a> attribute that
+ does not include a blur radius specification.</p>
+
+ <p>A TTML presentation processor supports the
+ <code>#textOutline-unblurred</code> feature if it implements presentation
+ semantic support for values of the <a href=
+ "#style-attribute-textOutline"><code>tts:textOutline</code></a> attribute that
+ does not include a blur radius specification.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-tickRate" name="feature-tickRate"></a>D.1.91 #tickRate</h4>
+
+ <p>A TTML transformation processor supports the <code>#tickRate</code> feature
+ if it recognizes and is capable of transforming the <a href=
+ "#parameter-attribute-tickRate"><code>ttp:tickRate</code></a> attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#tickRate</code> feature if
+ it implements presentation semantic support for the <a href=
+ "#parameter-attribute-tickRate"><code>ttp:tickRate</code></a> attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-timeBase-clock" name="feature-timeBase-clock"></a>D.1.92
+ #timeBase-clock</h4>
+
+ <p>A TTML transformation processor supports the <code>#timeBase-clock</code>
+ feature if it recognizes and is capable of transforming the <code>clock</code>
+ value of the <a href=
+ "#parameter-attribute-timeBase"><code>ttp:timeBase</code></a> attribute and if
+ it supports the <a href="#feature-clockMode"><code>#clockMode</code></a>
+ feature.</p>
+
+ <p>A TTML presentation processor supports the <code>#timeBase-clock</code>
+ feature if it implements presentation semantic support for the
+ <code>clock</code> value of the <a href=
+ "#parameter-attribute-timeBase"><code>ttp:timeBase</code></a> attribute and if
+ it supports the <a href="#feature-clockMode"><code>#clockMode</code></a>
+ feature.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-timeBase-media" name="feature-timeBase-media"></a>D.1.93
+ #timeBase-media</h4>
+
+ <p>A TTML transformation processor supports the <code>#timeBase-media</code>
+ feature if it recognizes and is capable of transforming the <code>media</code>
+ value of the <a href=
+ "#parameter-attribute-timeBase"><code>ttp:timeBase</code></a> attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#timeBase-media</code>
+ feature if it implements presentation semantic support for the
+ <code>media</code> value of the <a href=
+ "#parameter-attribute-timeBase"><code>ttp:timeBase</code></a> attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-timeBase-smpte" name="feature-timeBase-smpte"></a>D.1.94
+ #timeBase-smpte</h4>
+
+ <p>A TTML transformation processor supports the <code>#timeBase-smpte</code>
+ feature if it recognizes and is capable of transforming the <code>smpte</code>
+ value of the <a href=
+ "#parameter-attribute-timeBase"><code>ttp:timeBase</code></a> attribute and if
+ it supports the <a href="#feature-dropMode"><code>#dropMode</code></a>
+ feature.</p>
+
+ <p>A TTML presentation processor supports the <code>#timeBase-smpte</code>
+ feature if it implements presentation semantic support for the
+ <code>smpte</code> value of the <a href=
+ "#parameter-attribute-timeBase"><code>ttp:timeBase</code></a> attribute and if
+ it supports the <a href="#feature-dropMode"><code>#dropMode</code></a>
+ feature.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-timeContainer" name="feature-timeContainer"></a>D.1.95
+ #timeContainer</h4>
+
+ <p>A TTML transformation processor supports the <code>#timeContainer</code>
+ feature if it recognizes and is capable of transforming the <a href=
+ "#timing-attribute-timeContainer"><code>timeContainer</code></a> attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#timeContainer</code>
+ feature if it implements presentation semantic support for the <a href=
+ "#timing-attribute-timeContainer"><code>timeContainer</code></a> attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-time-clock" name="feature-time-clock"></a>D.1.96
+ #time-clock</h4>
+
+ <p>A TTML transformation processor supports the <code>#time-clock</code>
+ feature if it recognizes and is capable of transforming all values of the
+ <a href="#timing-value-timeExpression"><timeExpression></a> that satisfy
+ the following subset of time expression syntax:</p>
+
+ <div class="exampleInner">
+ <pre>
<timeExpression>
: hours ":" minutes ":" seconds ( fraction )?
-</pre></div><p>A TTML presentation processor supports the
-<code>#time-clock</code> feature if it implements presentation
-semantic support for the same syntax specified above.</p></div><div class="div3">
-<h4><a id="feature-time-clock-with-frames"></a>D.1.97 #time-clock-with-frames</h4><p>A TTML transformation processor supports the
-<code>#time-clock-with-frames</code> feature if it supports the
-<a href="#feature-frameRate"><code>#frameRate</code></a>,
-<a href="#feature-frameRateMultiplier"><code>#frameRateMultiplier</code></a>, and
-<a href="#feature-subFrameRate"><code>#subFrameRate</code></a> features
-and if it recognizes and is capable of
-transforming all values of the <a href="#timing-value-timeExpression"><timeExpression></a> that
-satisfy the following subset of time expression syntax:</p><div class="exampleInner"><pre>
+</pre>
+ </div>
+
+ <p>A TTML presentation processor supports the <code>#time-clock</code> feature
+ if it implements presentation semantic support for the same syntax specified
+ above.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-time-clock-with-frames" name=
+ "feature-time-clock-with-frames"></a>D.1.97 #time-clock-with-frames</h4>
+
+ <p>A TTML transformation processor supports the
+ <code>#time-clock-with-frames</code> feature if it supports the <a href=
+ "#feature-frameRate"><code>#frameRate</code></a>, <a href=
+ "#feature-frameRateMultiplier"><code>#frameRateMultiplier</code></a>, and
+ <a href="#feature-subFrameRate"><code>#subFrameRate</code></a> features and if
+ it recognizes and is capable of transforming all values of the <a href=
+ "#timing-value-timeExpression"><timeExpression></a> that satisfy the
+ following subset of time expression syntax:</p>
+
+ <div class="exampleInner">
+ <pre>
<timeExpression>
: hours ":" minutes ":" seconds ( fraction | ":" frames ( "." sub-frames )? )?
-</pre></div><p>A TTML presentation processor supports the
-<code>#time-clock-with-frames</code> feature if it implements
-presentation semantic support for the same features and syntax
-specified above.</p></div><div class="div3">
-<h4><a id="feature-time-offset"></a>D.1.98 #time-offset</h4><p>A TTML transformation processor supports the
-<code>#time-offset</code> feature if it recognizes and is capable of
-transforming all values of the <a href="#timing-value-timeExpression"><timeExpression></a> that
-satisfy the following subset of time expression syntax:</p><div class="exampleInner"><pre>
+</pre>
+ </div>
+
+ <p>A TTML presentation processor supports the
+ <code>#time-clock-with-frames</code> feature if it implements presentation
+ semantic support for the same features and syntax specified above.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-time-offset" name="feature-time-offset"></a>D.1.98
+ #time-offset</h4>
+
+ <p>A TTML transformation processor supports the <code>#time-offset</code>
+ feature if it recognizes and is capable of transforming all values of the
+ <a href="#timing-value-timeExpression"><timeExpression></a> that satisfy
+ the following subset of time expression syntax:</p>
+
+ <div class="exampleInner">
+ <pre>
<timeExpression>
: time-count fraction? ( "h" | "m" | "s" | "ms" )
-</pre></div><p>A TTML presentation processor supports the
-<code>#time-offset</code> feature if it implements presentation
-semantic support for the same syntax specified above.</p></div><div class="div3">
-<h4><a id="feature-time-offset-with-frames"></a>D.1.99 #time-offset-with-frames</h4><p>A TTML transformation processor supports the
-<code>#time-offset-with-frames</code> feature if it supports the
-<a href="#feature-frameRate"><code>#frameRate</code></a>,
-<a href="#feature-frameRateMultiplier"><code>#frameRateMultiplier</code></a>, and
-<a href="#feature-subFrameRate"><code>#subFrameRate</code></a> features
-and if it recognizes and is capable of
-transforming all values of the <a href="#timing-value-timeExpression"><timeExpression></a> that
-satisfy the following subset of time expression syntax:</p><div class="exampleInner"><pre>
+</pre>
+ </div>
+
+ <p>A TTML presentation processor supports the <code>#time-offset</code> feature
+ if it implements presentation semantic support for the same syntax specified
+ above.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-time-offset-with-frames" name=
+ "feature-time-offset-with-frames"></a>D.1.99 #time-offset-with-frames</h4>
+
+ <p>A TTML transformation processor supports the
+ <code>#time-offset-with-frames</code> feature if it supports the <a href=
+ "#feature-frameRate"><code>#frameRate</code></a>, <a href=
+ "#feature-frameRateMultiplier"><code>#frameRateMultiplier</code></a>, and
+ <a href="#feature-subFrameRate"><code>#subFrameRate</code></a> features and if
+ it recognizes and is capable of transforming all values of the <a href=
+ "#timing-value-timeExpression"><timeExpression></a> that satisfy the
+ following subset of time expression syntax:</p>
+
+ <div class="exampleInner">
+ <pre>
<timeExpression>
: time-count fraction? "f"
-</pre></div><p>A TTML presentation processor supports the
-<code>#time-offset-with-frames</code> feature if it implements
-presentation semantic support for the same features and syntax
-specified above.</p></div><div class="div3">
-<h4><a id="feature-time-offset-with-ticks"></a>D.1.100 #time-offset-with-ticks</h4><p>A TTML transformation processor supports the
-<code>#time-offset-with-ticks</code> feature if it supports the
-<a href="#feature-tickRate"><code>#tickRate</code></a> feature
-and if it recognizes and is capable of
-transforming all values of the <a href="#timing-value-timeExpression"><timeExpression></a> that
-satisfy the following subset of time expression syntax:</p><div class="exampleInner"><pre>
+</pre>
+ </div>
+
+ <p>A TTML presentation processor supports the
+ <code>#time-offset-with-frames</code> feature if it implements presentation
+ semantic support for the same features and syntax specified above.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-time-offset-with-ticks" name=
+ "feature-time-offset-with-ticks"></a>D.1.100 #time-offset-with-ticks</h4>
+
+ <p>A TTML transformation processor supports the
+ <code>#time-offset-with-ticks</code> feature if it supports the <a href=
+ "#feature-tickRate"><code>#tickRate</code></a> feature and if it recognizes and
+ is capable of transforming all values of the <a href=
+ "#timing-value-timeExpression"><timeExpression></a> that satisfy the
+ following subset of time expression syntax:</p>
+
+ <div class="exampleInner">
+ <pre>
<timeExpression>
: time-count fraction? "t"
-</pre></div><p>A TTML presentation processor supports the
-<code>#time-offset-with-ticks</code> feature if it implements presentation
-semantic support for the same features and syntax specified above.</p></div><div class="div3">
-<h4><a id="feature-timing"></a>D.1.101 #timing</h4><p>A TTML transformation processor supports the <code>#timing</code>
-feature if it recognizes and is capable of transforming the following
-vocabulary defined by <a href="#timing"><b>10 Timing</b></a>:</p><ul><li><p><a href="#timing-attribute-begin">@<code>begin</code></a></p></li><li><p><a href="#timing-attribute-dur">@<code>dur</code></a></p></li><li><p><a href="#timing-attribute-end">@<code>end</code></a></p></li></ul><p>A TTML presentation processor supports the <code>#timing</code>
-feature if it implements presentation semantic support for the
-same vocabulary enumerated above.</p></div><div class="div3">
-<h4><a id="feature-transformation"></a>D.1.102 #transformation</h4><p>A TTML processor supports the
-<code>#transformation</code> feature if it
-(1) satisfies the generic processor criteria defined by
-<a href="#conformance-generic-processor"><b>3.2.1 Generic Processor Conformance</b></a> and
-(2) implements the transformation semantics of the following features:</p><ul><li><p><a href="#content"><code>#content</code></a></p></li><li><p><a href="#feature-core"><code>#core</code></a></p></li><li><p><a href="#feature-profile"><code>#profile</code></a></p></li><li><p><a href="#feature-structure"><code>#structure</code></a></p></li><li><p><a href="#feature-time-offset"><code>#time-offset</code></a></p></li><li><p><a href="#timing"><code>#timing</code></a></p></li></ul></div><div class="div3">
-<h4><a id="feature-unicodeBidi"></a>D.1.103 #unicodeBidi</h4><p>A TTML transformation processor supports the
-<code>#unicodeBidi</code> feature if it recognizes and is capable of
-transforming all defined values of the <a href="#style-attribute-unicodeBidi"><code>tts:unicodeBidi</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#unicodeBidi</code> feature if it implements presentation semantic support
-for all defined values of the <a href="#style-attribute-unicodeBidi"><code>tts:unicodeBidi</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-visibility"></a>D.1.104 #visibility</h4><p>A TTML transformation processor supports the
-<code>#visibility</code> feature if it recognizes and is capable
-of transforming all defined values of the <a href="#style-attribute-visibility"><code>tts:visibility</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#visibility</code> feature if it implements presentation semantic support
-for all defined values of the <a href="#style-attribute-visibility"><code>tts:visibility</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-visibility-block"></a>D.1.105 #visibility-block</h4><p>A TTML transformation processor supports the
-<code>#visibility-block</code> feature if it recognizes and is
-capable of transforming all defined values of the <a href="#style-attribute-visibility"><code>tts:visibility</code></a>
-attribute when applied to a content element that would generate a
-block area during presentation processing.</p><p>A TTML presentation processor supports the
-<code>#visibility-block</code> feature if it implements presentation semantic
-support for all defined values of the <a href="#style-attribute-visibility"><code>tts:visibility</code></a>
-attribute when applied to a content element that generates a
-block area.</p></div><div class="div3">
-<h4><a id="feature-visibility-inline"></a>D.1.106 #visibility-inline</h4><p>A TTML transformation processor supports the
-<code>#visibility-inline</code> feature if it recognizes and is
-capable of transforming all defined values of the <a href="#style-attribute-visibility"><code>tts:visibility</code></a>
-attribute when applied to a content element that would generate an
-inline area during presentation processing.</p><p>A TTML presentation processor supports the
-<code>#visibility-inline</code> feature if it implements presentation semantic
-support for all defined values of the <a href="#style-attribute-visibility"><code>tts:visibility</code></a>
-attribute when applied to a content element that generates an
-inline area.</p></div><div class="div3">
-<h4><a id="feature-visibility-region"></a>D.1.107 #visibility-region</h4><p>A TTML transformation processor supports the
-<code>#visibility-region</code> feature if it recognizes and is
-capable of transforming all defined values of the <a href="#style-attribute-visibility"><code>tts:visibility</code></a>
-attribute when applied to a <a href="#layout-vocabulary-region"><code>region</code></a> element.</p><p>A TTML presentation processor supports the
-<code>#visibility-region</code> feature if it implements presentation semantic
-support for all defined values of the <a href="#style-attribute-visibility"><code>tts:visibility</code></a>
-attribute when applied to a <a href="#layout-vocabulary-region"><code>region</code></a> element.</p></div><div class="div3">
-<h4><a id="feature-wrapOption"></a>D.1.108 #wrapOption</h4><p>A TTML transformation processor supports the
-<code>#wrapOption</code> feature if it recognizes and is capable
-of transforming all defined values of the <a href="#style-attribute-wrapOption"><code>tts:wrapOption</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#wrapOption</code> feature if it implements presentation semantic support
-for all defined values of the <a href="#style-attribute-wrapOption"><code>tts:wrapOption</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-writingMode"></a>D.1.109 #writingMode</h4><p>A TTML transformation processor supports the
-<code>#writingMode</code> feature if it recognizes and is capable
-of transforming all defined values of the <a href="#style-attribute-writingMode"><code>tts:writingMode</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#writingMode</code> feature if it implements presentation semantic support
-for all defined values of the <a href="#style-attribute-writingMode"><code>tts:writingMode</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-writingMode-vertical"></a>D.1.110 #writingMode-vertical</h4><p>A TTML transformation processor supports the
-<code>#writingMode-vertical</code> feature if it recognizes and is
-capable of transforming the <code>tbrl</code>, <code>tblr</code>, and
-<code>tb</code> values of the <a href="#style-attribute-writingMode"><code>tts:writingMode</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#writingMode-vertical</code> feature if it implements presentation semantic
-support for the <code>tbrl</code>, <code>tblr</code>, and
-<code>tb</code> values of the <a href="#style-attribute-writingMode"><code>tts:writingMode</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-writingMode-horizontal"></a>D.1.111 #writingMode-horizontal</h4><p>A TTML transformation processor supports the
-<code>#writingMode-horizontal</code> feature if it recognizes and is
-capable of transforming the <code>lrtb</code>, <code>rltb</code>,
-<code>lr</code> and <code>rl</code> values of the <a href="#style-attribute-writingMode"><code>tts:writingMode</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#writingMode-horizontal</code> feature if it implements presentation semantic
-support for the <code>lrtb</code>, <code>rltb</code>, <code>lr</code>
-and <code>rl</code> values of the <a href="#style-attribute-writingMode"><code>tts:writingMode</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-writingMode-horizontal-lr"></a>D.1.112 #writingMode-horizontal-lr</h4><p>A TTML transformation processor supports the
-<code>#writingMode-horizontal</code> feature if it recognizes and is
-capable of transforming the <code>lrtb</code> and <code>lr</code>
-values of the <a href="#style-attribute-writingMode"><code>tts:writingMode</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#writingMode-horizontal-lr</code> feature if it implements presentation semantic
-support for the <code>lrtb</code> and <code>lr</code> values of the
-<a href="#style-attribute-writingMode"><code>tts:writingMode</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-writingMode-horizontal-rl"></a>D.1.113 #writingMode-horizontal-rl</h4><p>A TTML transformation processor supports the
-<code>#writingMode-horizontal</code> feature if it recognizes and is
-capable of transforming the <code>rltb</code> and <code>rl</code>
-values of the <a href="#style-attribute-writingMode"><code>tts:writingMode</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#writingMode-horizontal-rl</code> feature if it implements presentation semantic
-support for the <code>rltb</code> and <code>rl</code> values of the
-<a href="#style-attribute-writingMode"><code>tts:writingMode</code></a>
-attribute.</p></div><div class="div3">
-<h4><a id="feature-zIndex"></a>D.1.114 #zIndex</h4><p>A TTML transformation processor supports the
-<code>#zIndex</code> feature if it recognizes and is capable of
-transforming the <a href="#style-attribute-zIndex"><code>tts:zIndex</code></a>
-attribute.</p><p>A TTML presentation processor supports the
-<code>#zIndex</code> feature if it implements presentation semantic support for
-the <a href="#style-attribute-zIndex"><code>tts:zIndex</code></a>
-attribute.</p></div></div><div class="div2">
-<h3><a id="feature-support"></a>D.2 Feature Support</h3><p>The following table, <a href="#feature-support-table"><b>Table D-1 – Feature Support</b></a>,
-enumerates every defined feature designation (expressed without the TT
-Feature Namespace), and, for each designated feature, specifies
-whether the feature must be implemented, i.e., is mandatory (M), or may be implemented, i.e.,
-is optional (O), for transformation and presentation processors.</p><a id="feature-support-table"></a><table class="common"><caption>Table D-1 – Feature Support</caption><col width="60%" span="1"><col width="20%" span="1"><col width="20%" span="1"><tbody><tr><td><span class="strong">Feature</span></td><td><span class="strong">Transformation</span></td><td><span class="strong">Presentation</span></td></tr><tr><td><a href="#feature-animation"><code>#animation</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-backgroundColor"><code>#backgroundColor</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-backgroundColor-block"><code>#backgroundColor-block</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-backgroundColor-inline"><code>#backgroundColor-inline</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-backgroundColor-region"><code>#backgroundColor-region</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-bidi"><code>#bidi</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-cellResolution"><code>#cellResolution</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-clockMode"><code>#clockMode</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-clockMode-gps"><code>#clockMode-gps</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-clockMode-local"><code>#clockMode-local</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-clockMode-utc"><code>#clockMode-utc</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-color"><code>#color</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-content"><code>#content</code></a></td><td>M</td><td>M</td></tr><tr><td><a href="#feature-core"><code>#core</code></a></td><td>M</td><td>M</td></tr><tr><td><a href="#feature-direction"><code>#direction</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-display"><code>#display</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-display-block"><code>#display-block</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-display-inline"><code>#display-inline</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-display-region"><code>#display-region</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-displayAlign"><code>#displayAlign</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-dropMode"><code>#dropMode</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-dropMode-dropNTSC"><code>#dropMode-dropNTSC</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-dropMode-dropPAL"><code>#dropMode-dropPAL</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-dropMode-nonDrop"><code>#dropMode-nonDrop</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-extent"><code>#extent</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-extent-region"><code>#extent-region</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-extent-root"><code>#extent-root</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-fontFamily"><code>#fontFamily</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-fontFamily-generic"><code>#fontFamily-generic</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-fontFamily-non-generic"><code>#fontFamily-non-generic</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-fontSize"><code>#fontSize</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-fontSize-anamorphic"><code>#fontSize-anamorphic</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-fontSize-isomorphic"><code>#fontSize-isomorphic</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-fontStyle"><code>#fontStyle</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-fontStyle-italic"><code>#fontStyle-italic</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-fontStyle-oblique"><code>#fontStyle-oblique</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-fontWeight"><code>#fontWeight</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-fontWeight-bold"><code>#fontWeight-bold</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-frameRate"><code>#frameRate</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-frameRateMultiplier"><code>#frameRateMultiplier</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-layout"><code>#layout</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-length"><code>#length</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-length-cell"><code>#length-cell</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-length-em"><code>#length-em</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-length-integer"><code>#length-integer</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-length-negative"><code>#length-negative</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-length-percentage"><code>#length-percentage</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-length-pixel"><code>#length-pixel</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-length-positive"><code>#length-positive</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-length-real"><code>#length-real</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-lineBreak-uax14"><code>#lineBreak-uax14</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-lineHeight"><code>#lineHeight</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-markerMode"><code>#markerMode</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-markerMode-continuous"><code>#markerMode-continuous</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-markerMode-discontinuous"><code>#markerMode-discontinuous</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-metadata"><code>#metadata</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-nested-div"><code>#nested-div</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-nested-span"><code>#nested-span</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-opacity"><code>#opacity</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-origin"><code>#origin</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-overflow"><code>#overflow</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-overflow-visible"><code>#overflow-visible</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-padding"><code>#padding</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-padding-1"><code>#padding-1</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-padding-2"><code>#padding-2</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-padding-3"><code>#padding-3</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-padding-4"><code>#padding-4</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-pixelAspectRatio"><code>#pixelAspectRatio</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-presentation"><code>#presentation</code></a></td><td>O</td><td>M</td></tr><tr><td><a href="#feature-profile"><code>#profile</code></a></td><td>M</td><td>M</td></tr><tr><td><a href="#feature-showBackground"><code>#showBackground</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-structure"><code>#structure</code></a></td><td>M</td><td>M</td></tr><tr><td><a href="#feature-styling"><code>#styling</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-styling-chained"><code>#styling-chained</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-styling-inheritance-content"><code>#styling-inheritance-content</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-styling-inheritance-region"><code>#styling-inheritance-region</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-styling-inline"><code>#styling-inline</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-styling-nested"><code>#styling-nested</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-styling-referential"><code>#styling-referential</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-subFrameRate"><code>#subFrameRate</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-textAlign"><code>#textAlign</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-textAlign-absolute"><code>#textAlign-absolute</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-textAlign-relative"><code>#textAlign-relative</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-textDecoration"><code>#textDecoration</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-textDecoration-over"><code>#textDecoration-over</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-textDecoration-through"><code>#textDecoration-through</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-textDecoration-under"><code>#textDecoration-under</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-textOutline"><code>#textOutline</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-textOutline-blurred"><code>#textOutline-blurred</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-textOutline-unblurred"><code>#textOutline-unblurred</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-tickRate"><code>#tickRate</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-timeBase-clock"><code>#timeBase-clock</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-timeBase-media"><code>#timeBase-media</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-timeBase-smpte"><code>#timeBase-smpte</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-timeContainer"><code>#timeContainer</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-time-clock"><code>#time-clock</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-time-clock-with-frames"><code>#time-clock-with-frames</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-time-offset"><code>#time-offset</code></a></td><td>M</td><td>M</td></tr><tr><td><a href="#feature-time-offset-with-frames"><code>#time-offset-with-frames</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-time-offset-with-ticks"><code>#time-offset-with-ticks</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-timing"><code>#timing</code></a></td><td>M</td><td>M</td></tr><tr><td><a href="#feature-transformation"><code>#transformation</code></a></td><td>M</td><td>O</td></tr><tr><td><a href="#feature-unicodeBidi"><code>#unicodeBidi</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-visibility"><code>#visibility</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-visibility-block"><code>#visibility-block</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-visibility-inline"><code>#visibility-inline</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-visibility-region"><code>#visibility-region</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-wrapOption"><code>#wrapOption</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-writingMode"><code>#writingMode</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-writingMode-vertical"><code>#writingMode-vertical</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-writingMode-horizontal"><code>#writingMode-horizontal</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-writingMode-horizontal-lr"><code>#writingMode-horizontal-lr</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-writingMode-horizontal-rl"><code>#writingMode-horizontal-rl</code></a></td><td>O</td><td>O</td></tr><tr><td><a href="#feature-zIndex"><code>#zIndex</code></a></td><td>O</td><td>O</td></tr></tbody></table><p>For the sake of convenience, the following table,
-<a href="#feature-transformation-mandatory-table"><b>Table D-2 – Mandatory Features - Transformation</b></a>, enumerates all
-mandatory features for a TTML Transformation Processor, providing additional
-comments to summarize the context of usage or the nature of the feature.
-The <em>Profile Definition Document</em> that defines the corresponding
-DFXP Transformation Profile is specified in
-<a href="#profile-dfxp-transformation"><b>F.1 DFXP Transformation Profile</b></a>.
-</p><a id="feature-transformation-mandatory-table"></a><table class="common"><caption>Table D-2 – Mandatory Features - Transformation</caption><col width="60%" span="1"><col width="40%" span="1"><tbody><tr><td><span class="strong">Feature</span></td><td><span class="strong">Comments</span></td></tr><tr><td><a href="#feature-content"><code>#content</code></a></td><td>
-<a href="#document-structure-vocabulary-body"><code>body</code></a>,
-<a href="#content-vocabulary-div"><code>div</code></a>,
-<a href="#content-vocabulary-p"><code>p</code></a>,
-<a href="#content-vocabulary-span"><code>span</code></a>,
-<a href="#content-vocabulary-br"><code>br</code></a>
-</td></tr><tr><td><a href="#feature-core"><code>#core</code></a></td><td>
-<a href="#content-attribute-id">@<code>xml:id</code></a>,
-<a href="#content-attribute-id">@<code>xml:lang</code></a>,
-<a href="#content-attribute-id">@<code>xml:space</code></a>
-</td></tr><tr><td><a href="#feature-profile"><code>#profile</code></a></td><td></td></tr><tr><td><a href="#feature-structure"><code>#structure</code></a></td><td>
-<a href="#document-structure-vocabulary-tt"><code>tt</code></a>,
-<a href="#document-structure-vocabulary-head"><code>head</code></a>
-</td></tr><tr><td><a href="#feature-time-offset"><code>#time-offset</code></a></td><td></td></tr><tr><td><a href="#feature-timing"><code>#timing</code></a></td><td>
-<a href="#timing-attribute-begin">@<code>begin</code></a>,
-<a href="#timing-attribute-dur">@<code>dur</code></a>,
-<a href="#timing-attribute-end">@<code>end</code></a>
-</td></tr><tr><td><a href="#feature-transformation"><code>#transformation</code></a></td><td></td></tr></tbody></table><p>For the sake of convenience, the following table,
-<a href="#feature-presentation-mandatory-table"><b>Table D-3 – Mandatory Features - Presentation</b></a>, enumerates all
-mandatory features for a TTML Presentation Processor, providing additional
-comments to summarize the context of usage or the nature of the feature.
-The <em>Profile Definition Document</em> that defines the corresponding
-DFXP Presentation Profile is specified in
-<a href="#profile-dfxp-presentation"><b>F.2 DFXP Presentation Profile</b></a>.
-</p><a id="feature-presentation-mandatory-table"></a><table class="common"><caption>Table D-3 – Mandatory Features - Presentation</caption><col width="60%" span="1"><col width="40%" span="1"><tbody><tr><td><span class="strong">Feature</span></td><td><span class="strong">Comments</span></td></tr><tr><td><a href="#feature-content"><code>#content</code></a></td><td>
-<a href="#document-structure-vocabulary-body"><code>body</code></a>,
-<a href="#content-vocabulary-div"><code>div</code></a>,
-<a href="#content-vocabulary-p"><code>p</code></a>,
-<a href="#content-vocabulary-span"><code>span</code></a>,
-<a href="#content-vocabulary-br"><code>br</code></a>
-</td></tr><tr><td><a href="#feature-core"><code>#core</code></a></td><td>
-<a href="#content-attribute-id">@<code>xml:id</code></a>,
-<a href="#content-attribute-id">@<code>xml:lang</code></a>,
-<a href="#content-attribute-id">@<code>xml:space</code></a>
-</td></tr><tr><td><a href="#feature-profile"><code>#profile</code></a></td><td></td></tr><tr><td><a href="#feature-presentation"><code>#presentation</code></a></td><td></td></tr><tr><td><a href="#feature-structure"><code>#structure</code></a></td><td>
-<a href="#document-structure-vocabulary-tt"><code>tt</code></a>,
-<a href="#document-structure-vocabulary-head"><code>head</code></a>
-</td></tr><tr><td><a href="#feature-time-offset"><code>#time-offset</code></a></td><td></td></tr><tr><td><a href="#feature-timing"><code>#timing</code></a></td><td>
-<a href="#timing-attribute-begin">@<code>begin</code></a>,
-<a href="#timing-attribute-dur">@<code>dur</code></a>,
-<a href="#timing-attribute-end">@<code>end</code></a>
-</td></tr></tbody></table></div></div><div class="div1">
-<h2><a id="extensions"></a>E Extensions</h2><p><em>This appendix is normative.</em></p><p>This appendix specifies the syntactic form of extension designations, which are
-used to express authorial intent regarding the support for extension
-mechanisms in a TTML processor.</p><div class="div2">
-<h3><a id="extension-designations"></a>E.1 Extension Designations</h3><p>An extension designation is expressed as a string that adheres to the following
-form:</p><div class="exampleInner"><pre>
+</pre>
+ </div>
+
+ <p>A TTML presentation processor supports the
+ <code>#time-offset-with-ticks</code> feature if it implements presentation
+ semantic support for the same features and syntax specified above.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-timing" name="feature-timing"></a>D.1.101 #timing</h4>
+
+ <p>A TTML transformation processor supports the <code>#timing</code> feature if
+ it recognizes and is capable of transforming the following vocabulary defined
+ by <a href="#timing"><b>10 Timing</b></a>:</p>
+
+ <ul>
+ <li>
+ <p><a href="#timing-attribute-begin">@<code>begin</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#timing-attribute-dur">@<code>dur</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#timing-attribute-end">@<code>end</code></a></p>
+ </li>
+ </ul>
+
+ <p>A TTML presentation processor supports the <code>#timing</code> feature if
+ it implements presentation semantic support for the same vocabulary enumerated
+ above.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-transformation" name="feature-transformation"></a>D.1.102
+ #transformation</h4>
+
+ <p>A TTML processor supports the <code>#transformation</code> feature if it (1)
+ satisfies the generic processor criteria defined by <a href=
+ "#conformance-generic-processor"><b>3.2.1 Generic Processor Conformance</b></a>
+ and (2) implements the transformation semantics of the following features:</p>
+
+ <ul>
+ <li>
+ <p><a href="#content"><code>#content</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#feature-core"><code>#core</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#feature-profile"><code>#profile</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#feature-structure"><code>#structure</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#feature-time-offset"><code>#time-offset</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="#timing"><code>#timing</code></a></p>
+ </li>
+ </ul>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-unicodeBidi" name="feature-unicodeBidi"></a>D.1.103
+ #unicodeBidi</h4>
+
+ <p>A TTML transformation processor supports the <code>#unicodeBidi</code>
+ feature if it recognizes and is capable of transforming all defined values of
+ the <a href="#style-attribute-unicodeBidi"><code>tts:unicodeBidi</code></a>
+ attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#unicodeBidi</code> feature
+ if it implements presentation semantic support for all defined values of the
+ <a href="#style-attribute-unicodeBidi"><code>tts:unicodeBidi</code></a>
+ attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-visibility" name="feature-visibility"></a>D.1.104
+ #visibility</h4>
+
+ <p>A TTML transformation processor supports the <code>#visibility</code>
+ feature if it recognizes and is capable of transforming all defined values of
+ the <a href="#style-attribute-visibility"><code>tts:visibility</code></a>
+ attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#visibility</code> feature
+ if it implements presentation semantic support for all defined values of the
+ <a href="#style-attribute-visibility"><code>tts:visibility</code></a>
+ attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-visibility-block" name=
+ "feature-visibility-block"></a>D.1.105 #visibility-block</h4>
+
+ <p>A TTML transformation processor supports the <code>#visibility-block</code>
+ feature if it recognizes and is capable of transforming all defined values of
+ the <a href="#style-attribute-visibility"><code>tts:visibility</code></a>
+ attribute when applied to a content element that would generate a block area
+ during presentation processing.</p>
+
+ <p>A TTML presentation processor supports the <code>#visibility-block</code>
+ feature if it implements presentation semantic support for all defined values
+ of the <a href="#style-attribute-visibility"><code>tts:visibility</code></a>
+ attribute when applied to a content element that generates a block area.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-visibility-inline" name=
+ "feature-visibility-inline"></a>D.1.106 #visibility-inline</h4>
+
+ <p>A TTML transformation processor supports the <code>#visibility-inline</code>
+ feature if it recognizes and is capable of transforming all defined values of
+ the <a href="#style-attribute-visibility"><code>tts:visibility</code></a>
+ attribute when applied to a content element that would generate an inline area
+ during presentation processing.</p>
+
+ <p>A TTML presentation processor supports the <code>#visibility-inline</code>
+ feature if it implements presentation semantic support for all defined values
+ of the <a href="#style-attribute-visibility"><code>tts:visibility</code></a>
+ attribute when applied to a content element that generates an inline area.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-visibility-region" name=
+ "feature-visibility-region"></a>D.1.107 #visibility-region</h4>
+
+ <p>A TTML transformation processor supports the <code>#visibility-region</code>
+ feature if it recognizes and is capable of transforming all defined values of
+ the <a href="#style-attribute-visibility"><code>tts:visibility</code></a>
+ attribute when applied to a <a href=
+ "#layout-vocabulary-region"><code>region</code></a> element.</p>
+
+ <p>A TTML presentation processor supports the <code>#visibility-region</code>
+ feature if it implements presentation semantic support for all defined values
+ of the <a href="#style-attribute-visibility"><code>tts:visibility</code></a>
+ attribute when applied to a <a href=
+ "#layout-vocabulary-region"><code>region</code></a> element.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-wrapOption" name="feature-wrapOption"></a>D.1.108
+ #wrapOption</h4>
+
+ <p>A TTML transformation processor supports the <code>#wrapOption</code>
+ feature if it recognizes and is capable of transforming all defined values of
+ the <a href="#style-attribute-wrapOption"><code>tts:wrapOption</code></a>
+ attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#wrapOption</code> feature
+ if it implements presentation semantic support for all defined values of the
+ <a href="#style-attribute-wrapOption"><code>tts:wrapOption</code></a>
+ attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-writingMode" name="feature-writingMode"></a>D.1.109
+ #writingMode</h4>
+
+ <p>A TTML transformation processor supports the <code>#writingMode</code>
+ feature if it recognizes and is capable of transforming all defined values of
+ the <a href="#style-attribute-writingMode"><code>tts:writingMode</code></a>
+ attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#writingMode</code> feature
+ if it implements presentation semantic support for all defined values of the
+ <a href="#style-attribute-writingMode"><code>tts:writingMode</code></a>
+ attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-writingMode-vertical" name=
+ "feature-writingMode-vertical"></a>D.1.110 #writingMode-vertical</h4>
+
+ <p>A TTML transformation processor supports the
+ <code>#writingMode-vertical</code> feature if it recognizes and is capable of
+ transforming the <code>tbrl</code>, <code>tblr</code>, and <code>tb</code>
+ values of the <a href=
+ "#style-attribute-writingMode"><code>tts:writingMode</code></a> attribute.</p>
+
+ <p>A TTML presentation processor supports the
+ <code>#writingMode-vertical</code> feature if it implements presentation
+ semantic support for the <code>tbrl</code>, <code>tblr</code>, and
+ <code>tb</code> values of the <a href=
+ "#style-attribute-writingMode"><code>tts:writingMode</code></a> attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-writingMode-horizontal" name=
+ "feature-writingMode-horizontal"></a>D.1.111 #writingMode-horizontal</h4>
+
+ <p>A TTML transformation processor supports the
+ <code>#writingMode-horizontal</code> feature if it recognizes and is capable of
+ transforming the <code>lrtb</code>, <code>rltb</code>, <code>lr</code> and
+ <code>rl</code> values of the <a href=
+ "#style-attribute-writingMode"><code>tts:writingMode</code></a> attribute.</p>
+
+ <p>A TTML presentation processor supports the
+ <code>#writingMode-horizontal</code> feature if it implements presentation
+ semantic support for the <code>lrtb</code>, <code>rltb</code>, <code>lr</code>
+ and <code>rl</code> values of the <a href=
+ "#style-attribute-writingMode"><code>tts:writingMode</code></a> attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-writingMode-horizontal-lr" name=
+ "feature-writingMode-horizontal-lr"></a>D.1.112 #writingMode-horizontal-lr</h4>
+
+ <p>A TTML transformation processor supports the
+ <code>#writingMode-horizontal</code> feature if it recognizes and is capable of
+ transforming the <code>lrtb</code> and <code>lr</code> values of the <a href=
+ "#style-attribute-writingMode"><code>tts:writingMode</code></a> attribute.</p>
+
+ <p>A TTML presentation processor supports the
+ <code>#writingMode-horizontal-lr</code> feature if it implements presentation
+ semantic support for the <code>lrtb</code> and <code>lr</code> values of the
+ <a href="#style-attribute-writingMode"><code>tts:writingMode</code></a>
+ attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-writingMode-horizontal-rl" name=
+ "feature-writingMode-horizontal-rl"></a>D.1.113 #writingMode-horizontal-rl</h4>
+
+ <p>A TTML transformation processor supports the
+ <code>#writingMode-horizontal</code> feature if it recognizes and is capable of
+ transforming the <code>rltb</code> and <code>rl</code> values of the <a href=
+ "#style-attribute-writingMode"><code>tts:writingMode</code></a> attribute.</p>
+
+ <p>A TTML presentation processor supports the
+ <code>#writingMode-horizontal-rl</code> feature if it implements presentation
+ semantic support for the <code>rltb</code> and <code>rl</code> values of the
+ <a href="#style-attribute-writingMode"><code>tts:writingMode</code></a>
+ attribute.</p>
+ </div>
+
+ <div class="div3">
+ <h4><a id="feature-zIndex" name="feature-zIndex"></a>D.1.114 #zIndex</h4>
+
+ <p>A TTML transformation processor supports the <code>#zIndex</code> feature if
+ it recognizes and is capable of transforming the <a href=
+ "#style-attribute-zIndex"><code>tts:zIndex</code></a> attribute.</p>
+
+ <p>A TTML presentation processor supports the <code>#zIndex</code> feature if
+ it implements presentation semantic support for the <a href=
+ "#style-attribute-zIndex"><code>tts:zIndex</code></a> attribute.</p>
+ </div>
+ </div>
+
+ <div class="div2">
+ <h3><a id="feature-support" name="feature-support"></a>D.2 Feature Support</h3>
+
+ <p>The following table, <a href="#feature-support-table"><b>Table D-1 – Feature
+ Support</b></a>, enumerates every defined feature designation (expressed without
+ the TT Feature Namespace), and, for each designated feature, specifies whether
+ the feature must be implemented, i.e., is mandatory (M), or may be implemented,
+ i.e., is optional (O), for transformation and presentation processors.</p><a id=
+ "feature-support-table" name="feature-support-table"></a>
+
+ <table class="common">
+ <caption>
+ Table D-1 – Feature Support
+ </caption>
+ <col width="60%" span="1">
+ <col width="20%" span="1">
+ <col width="20%" span="1">
+
+ <tbody>
+ <tr>
+ <td><span class="strong">Feature</span></td>
+
+ <td><span class="strong">Transformation</span></td>
+
+ <td><span class="strong">Presentation</span></td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-animation"><code>#animation</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-backgroundColor"><code>#backgroundColor</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-backgroundColor-block"><code>#backgroundColor-block</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-backgroundColor-inline"><code>#backgroundColor-inline</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-backgroundColor-region"><code>#backgroundColor-region</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-bidi"><code>#bidi</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-cellResolution"><code>#cellResolution</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-clockMode"><code>#clockMode</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-clockMode-gps"><code>#clockMode-gps</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-clockMode-local"><code>#clockMode-local</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-clockMode-utc"><code>#clockMode-utc</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-color"><code>#color</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-content"><code>#content</code></a></td>
+
+ <td>M</td>
+
+ <td>M</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-core"><code>#core</code></a></td>
+
+ <td>M</td>
+
+ <td>M</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-direction"><code>#direction</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-display"><code>#display</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-display-block"><code>#display-block</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-display-inline"><code>#display-inline</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-display-region"><code>#display-region</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-displayAlign"><code>#displayAlign</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-dropMode"><code>#dropMode</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-dropMode-dropNTSC"><code>#dropMode-dropNTSC</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-dropMode-dropPAL"><code>#dropMode-dropPAL</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-dropMode-nonDrop"><code>#dropMode-nonDrop</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-extent"><code>#extent</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-extent-region"><code>#extent-region</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-extent-root"><code>#extent-root</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-fontFamily"><code>#fontFamily</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-fontFamily-generic"><code>#fontFamily-generic</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-fontFamily-non-generic"><code>#fontFamily-non-generic</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-fontSize"><code>#fontSize</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-fontSize-anamorphic"><code>#fontSize-anamorphic</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-fontSize-isomorphic"><code>#fontSize-isomorphic</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-fontStyle"><code>#fontStyle</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-fontStyle-italic"><code>#fontStyle-italic</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-fontStyle-oblique"><code>#fontStyle-oblique</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-fontWeight"><code>#fontWeight</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-fontWeight-bold"><code>#fontWeight-bold</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-frameRate"><code>#frameRate</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-frameRateMultiplier"><code>#frameRateMultiplier</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-layout"><code>#layout</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-length"><code>#length</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-length-cell"><code>#length-cell</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-length-em"><code>#length-em</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-length-integer"><code>#length-integer</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-length-negative"><code>#length-negative</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-length-percentage"><code>#length-percentage</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-length-pixel"><code>#length-pixel</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-length-positive"><code>#length-positive</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-length-real"><code>#length-real</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-lineBreak-uax14"><code>#lineBreak-uax14</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-lineHeight"><code>#lineHeight</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-markerMode"><code>#markerMode</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-markerMode-continuous"><code>#markerMode-continuous</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-markerMode-discontinuous"><code>#markerMode-discontinuous</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-metadata"><code>#metadata</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-nested-div"><code>#nested-div</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-nested-span"><code>#nested-span</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-opacity"><code>#opacity</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-origin"><code>#origin</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-overflow"><code>#overflow</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-overflow-visible"><code>#overflow-visible</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-padding"><code>#padding</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-padding-1"><code>#padding-1</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-padding-2"><code>#padding-2</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-padding-3"><code>#padding-3</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-padding-4"><code>#padding-4</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-pixelAspectRatio"><code>#pixelAspectRatio</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-presentation"><code>#presentation</code></a></td>
+
+ <td>O</td>
+
+ <td>M</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-profile"><code>#profile</code></a></td>
+
+ <td>M</td>
+
+ <td>M</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-showBackground"><code>#showBackground</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-structure"><code>#structure</code></a></td>
+
+ <td>M</td>
+
+ <td>M</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-styling"><code>#styling</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-styling-chained"><code>#styling-chained</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-styling-inheritance-content"><code>#styling-inheritance-content</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-styling-inheritance-region"><code>#styling-inheritance-region</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-styling-inline"><code>#styling-inline</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-styling-nested"><code>#styling-nested</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-styling-referential"><code>#styling-referential</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-subFrameRate"><code>#subFrameRate</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-textAlign"><code>#textAlign</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-textAlign-absolute"><code>#textAlign-absolute</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-textAlign-relative"><code>#textAlign-relative</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-textDecoration"><code>#textDecoration</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-textDecoration-over"><code>#textDecoration-over</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-textDecoration-through"><code>#textDecoration-through</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-textDecoration-under"><code>#textDecoration-under</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-textOutline"><code>#textOutline</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-textOutline-blurred"><code>#textOutline-blurred</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-textOutline-unblurred"><code>#textOutline-unblurred</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-tickRate"><code>#tickRate</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-timeBase-clock"><code>#timeBase-clock</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-timeBase-media"><code>#timeBase-media</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-timeBase-smpte"><code>#timeBase-smpte</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-timeContainer"><code>#timeContainer</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-time-clock"><code>#time-clock</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-time-clock-with-frames"><code>#time-clock-with-frames</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-time-offset"><code>#time-offset</code></a></td>
+
+ <td>M</td>
+
+ <td>M</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-time-offset-with-frames"><code>#time-offset-with-frames</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-time-offset-with-ticks"><code>#time-offset-with-ticks</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-timing"><code>#timing</code></a></td>
+
+ <td>M</td>
+
+ <td>M</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-transformation"><code>#transformation</code></a></td>
+
+ <td>M</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-unicodeBidi"><code>#unicodeBidi</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-visibility"><code>#visibility</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-visibility-block"><code>#visibility-block</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-visibility-inline"><code>#visibility-inline</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-visibility-region"><code>#visibility-region</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-wrapOption"><code>#wrapOption</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-writingMode"><code>#writingMode</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-writingMode-vertical"><code>#writingMode-vertical</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-writingMode-horizontal"><code>#writingMode-horizontal</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-writingMode-horizontal-lr"><code>#writingMode-horizontal-lr</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#feature-writingMode-horizontal-rl"><code>#writingMode-horizontal-rl</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-zIndex"><code>#zIndex</code></a></td>
+
+ <td>O</td>
+
+ <td>O</td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>For the sake of convenience, the following table, <a href=
+ "#feature-transformation-mandatory-table"><b>Table D-2 – Mandatory Features -
+ Transformation</b></a>, enumerates all mandatory features for a TTML
+ Transformation Processor, providing additional comments to summarize the context
+ of usage or the nature of the feature. The <em>Profile Definition Document</em>
+ that defines the corresponding DFXP Transformation Profile is specified in
+ <a href="#profile-dfxp-transformation"><b>F.1 DFXP Transformation
+ Profile</b></a>.</p><a id="feature-transformation-mandatory-table" name=
+ "feature-transformation-mandatory-table"></a>
+
+ <table class="common">
+ <caption>
+ Table D-2 – Mandatory Features - Transformation
+ </caption>
+ <col width="60%" span="1">
+ <col width="40%" span="1">
+
+ <tbody>
+ <tr>
+ <td><span class="strong">Feature</span></td>
+
+ <td><span class="strong">Comments</span></td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-content"><code>#content</code></a></td>
+
+ <td><a href="#document-structure-vocabulary-body"><code>body</code></a>,
+ <a href="#content-vocabulary-div"><code>div</code></a>, <a href=
+ "#content-vocabulary-p"><code>p</code></a>, <a href=
+ "#content-vocabulary-span"><code>span</code></a>, <a href=
+ "#content-vocabulary-br"><code>br</code></a></td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-core"><code>#core</code></a></td>
+
+ <td><a href="#content-attribute-id">@<code>xml:id</code></a>, <a href=
+ "#content-attribute-id">@<code>xml:lang</code></a>, <a href=
+ "#content-attribute-id">@<code>xml:space</code></a></td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-profile"><code>#profile</code></a></td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-structure"><code>#structure</code></a></td>
+
+ <td><a href="#document-structure-vocabulary-tt"><code>tt</code></a>,
+ <a href="#document-structure-vocabulary-head"><code>head</code></a></td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-time-offset"><code>#time-offset</code></a></td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-timing"><code>#timing</code></a></td>
+
+ <td><a href="#timing-attribute-begin">@<code>begin</code></a>, <a href=
+ "#timing-attribute-dur">@<code>dur</code></a>, <a href=
+ "#timing-attribute-end">@<code>end</code></a></td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-transformation"><code>#transformation</code></a></td>
+
+ <td></td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>For the sake of convenience, the following table, <a href=
+ "#feature-presentation-mandatory-table"><b>Table D-3 – Mandatory Features -
+ Presentation</b></a>, enumerates all mandatory features for a TTML Presentation
+ Processor, providing additional comments to summarize the context of usage or the
+ nature of the feature. The <em>Profile Definition Document</em> that defines the
+ corresponding DFXP Presentation Profile is specified in <a href=
+ "#profile-dfxp-presentation"><b>F.2 DFXP Presentation Profile</b></a>.</p><a id=
+ "feature-presentation-mandatory-table" name=
+ "feature-presentation-mandatory-table"></a>
+
+ <table class="common">
+ <caption>
+ Table D-3 – Mandatory Features - Presentation
+ </caption>
+ <col width="60%" span="1">
+ <col width="40%" span="1">
+
+ <tbody>
+ <tr>
+ <td><span class="strong">Feature</span></td>
+
+ <td><span class="strong">Comments</span></td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-content"><code>#content</code></a></td>
+
+ <td><a href="#document-structure-vocabulary-body"><code>body</code></a>,
+ <a href="#content-vocabulary-div"><code>div</code></a>, <a href=
+ "#content-vocabulary-p"><code>p</code></a>, <a href=
+ "#content-vocabulary-span"><code>span</code></a>, <a href=
+ "#content-vocabulary-br"><code>br</code></a></td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-core"><code>#core</code></a></td>
+
+ <td><a href="#content-attribute-id">@<code>xml:id</code></a>, <a href=
+ "#content-attribute-id">@<code>xml:lang</code></a>, <a href=
+ "#content-attribute-id">@<code>xml:space</code></a></td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-profile"><code>#profile</code></a></td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-presentation"><code>#presentation</code></a></td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-structure"><code>#structure</code></a></td>
+
+ <td><a href="#document-structure-vocabulary-tt"><code>tt</code></a>,
+ <a href="#document-structure-vocabulary-head"><code>head</code></a></td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-time-offset"><code>#time-offset</code></a></td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td><a href="#feature-timing"><code>#timing</code></a></td>
+
+ <td><a href="#timing-attribute-begin">@<code>begin</code></a>, <a href=
+ "#timing-attribute-dur">@<code>dur</code></a>, <a href=
+ "#timing-attribute-end">@<code>end</code></a></td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </div>
+
+ <div class="div1">
+ <h2><a id="extensions" name="extensions"></a>E Extensions</h2>
+
+ <p><em>This appendix is normative.</em></p>
+
+ <p>This appendix specifies the syntactic form of extension designations, which are
+ used to express authorial intent regarding the support for extension mechanisms in
+ a TTML processor.</p>
+
+ <div class="div2">
+ <h3><a id="extension-designations" name="extension-designations"></a>E.1
+ Extension Designations</h3>
+
+ <p>An extension designation is expressed as a string that adheres to the
+ following form:</p>
+
+ <div class="exampleInner">
+ <pre>
extension-designation
: extension-namespace designation
@@ -5972,21 +16531,62 @@
token-char
: { XML NameChar } // XML 1.1 Production [4a]
-</pre></div><p>If the extension namespace of an extension designation is the TT
-Extension Namespace, then all values of the following
-<code>designation</code> token are reserved for future
-standardization.</p><p>If the extension namespace of an extension designation is not the
-TT Extension Namespace, i.e., is an <em>Other Extension Namespace</em>,
-then the extension namespace must be expressed as an absolute URI
-capable of serving as a base URI used in combination with a
-<code>designation</code> token that takes the form of a fragment
-identifier.</p></div></div><div class="div1">
-<h2><a id="profiles"></a>F Profiles</h2><p><em>This appendix is normative.</em></p><p>This appendix specifies the following standard TTML profiles:</p><ul><li><p><a href="#profile-dfxp-transformation"><b>F.1 DFXP Transformation Profile</b></a></p></li><li><p><a href="#profile-dfxp-presentation"><b>F.2 DFXP Presentation Profile</b></a></p></li><li><p><a href="#profile-dfxp-full"><b>F.3 DFXP Full Profile</b></a></p></li></ul><p>The SDP US profile is defined in
-<a href="http://www.w3.org/TR/ttml10-sdp-us/">TTML Simple Delivery Profile for Closed Captions (US)</a>.</p><p>Each TTML profile is defined in terms of a <em>Profile Definition Document</em>,
-which is expressed as an XML document wherein the root element adheres to
-<a href="#parameter-vocabulary-profile"><b>6.1.1 ttp:profile</b></a>.</p><div class="div2">
-<h3><a id="profile-dfxp-transformation"></a>F.1 DFXP Transformation Profile</h3><p>The DFXP Transformation Profile is intended to be used to
-express minimum compliance for transformation processing.</p><div class="exampleInner"><pre><?xml version="1.0" encoding="utf-8"?>
+</pre>
+ </div>
+
+ <p>If the extension namespace of an extension designation is the TT Extension
+ Namespace, then all values of the following <code>designation</code> token are
+ reserved for future standardization.</p>
+
+ <p>If the extension namespace of an extension designation is not the TT Extension
+ Namespace, i.e., is an <em>Other Extension Namespace</em>, then the extension
+ namespace must be expressed as an absolute URI capable of serving as a base URI
+ used in combination with a <code>designation</code> token that takes the form of
+ a fragment identifier.</p>
+ </div>
+ </div>
+
+ <div class="div1">
+ <h2><a id="profiles" name="profiles"></a>F Profiles</h2>
+
+ <p><em>This appendix is normative.</em></p>
+
+ <p>This appendix specifies the following standard TTML profiles:</p>
+
+ <ul>
+ <li>
+ <p><a href="#profile-dfxp-transformation"><b>F.1 DFXP Transformation
+ Profile</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#profile-dfxp-presentation"><b>F.2 DFXP Presentation
+ Profile</b></a></p>
+ </li>
+
+ <li>
+ <p><a href="#profile-dfxp-full"><b>F.3 DFXP Full Profile</b></a></p>
+ </li>
+ </ul>
+
+ <p>The SDP US profile is defined in <a href=
+ "http://www.w3.org/TR/ttml10-sdp-us/">TTML Simple Delivery Profile for Closed
+ Captions (US)</a>.</p>
+
+ <p>Each TTML profile is defined in terms of a <em>Profile Definition Document</em>,
+ which is expressed as an XML document wherein the root element adheres to <a href=
+ "#parameter-vocabulary-profile"><b>6.1.1 ttp:profile</b></a>.</p>
+
+ <div class="div2">
+ <h3><a id="profile-dfxp-transformation" name=
+ "profile-dfxp-transformation"></a>F.1 DFXP Transformation Profile</h3>
+
+ <p>The DFXP Transformation Profile is intended to be used to express minimum
+ compliance for transformation processing.</p>
+
+ <div class="exampleInner">
+ <pre>
+<?xml version="1.0" encoding="utf-8"?>
<!-- this file defines the "dfxp-transformation" profile of ttml -->
<profile xmlns="http://www.w3.org/ns/ttml#parameter">
<features xml:base="http://www.w3.org/ns/ttml/feature/">
@@ -6113,9 +16713,20 @@
</extensions>
</profile>
-</pre></div></div><div class="div2">
-<h3><a id="profile-dfxp-presentation"></a>F.2 DFXP Presentation Profile</h3><p>The DFXP Presentation Profile is intended to be used to
-express minimum compliance for presentation processing.</p><div class="exampleInner"><pre><?xml version="1.0" encoding="utf-8"?>
+</pre>
+ </div>
+ </div>
+
+ <div class="div2">
+ <h3><a id="profile-dfxp-presentation" name="profile-dfxp-presentation"></a>F.2
+ DFXP Presentation Profile</h3>
+
+ <p>The DFXP Presentation Profile is intended to be used to express minimum
+ compliance for presentation processing.</p>
+
+ <div class="exampleInner">
+ <pre>
+<?xml version="1.0" encoding="utf-8"?>
<!-- this file defines the "dfxp-presentation" profile of ttml -->
<profile xmlns="http://www.w3.org/ns/ttml#parameter">
<features xml:base="http://www.w3.org/ns/ttml/feature/">
@@ -6242,9 +16853,20 @@
</extensions>
</profile>
-</pre></div></div><div class="div2">
-<h3><a id="profile-dfxp-full"></a>F.3 DFXP Full Profile</h3><p>The DFXP Full Profile is intended to be used to
-express maximum compliance for both transformation and presentation processing.</p><div class="exampleInner"><pre><?xml version="1.0" encoding="utf-8"?>
+</pre>
+ </div>
+ </div>
+
+ <div class="div2">
+ <h3><a id="profile-dfxp-full" name="profile-dfxp-full"></a>F.3 DFXP Full
+ Profile</h3>
+
+ <p>The DFXP Full Profile is intended to be used to express maximum compliance for
+ both transformation and presentation processing.</p>
+
+ <div class="exampleInner">
+ <pre>
+<?xml version="1.0" encoding="utf-8"?>
<!-- this file defines the "dfxp-full" profile of ttml -->
<profile xmlns="http://www.w3.org/ns/ttml#parameter">
<features xml:base="http://www.w3.org/ns/ttml/feature/">
@@ -6371,509 +16993,3370 @@
</extensions>
</profile>
-</pre></div></div></div><div class="div1">
-<h2><a id="references"></a>G References</h2><p><em>This appendix is normative.</em></p><dl><dt class="label"><a id="css2"></a>CSS2</dt><dd>Bert Bos et al.,
-<a href="http://www.w3.org/TR/2011/REC-CSS2-20110607/"><cite>Cascading
-Style Sheets, Level 2 Revision 1</cite></a>, W3C Recommendation, 07 June 2011.
-(See <a href="http://www.w3.org/TR/2011/REC-CSS2-20110607/">http://www.w3.org/TR/2011/REC-CSS2-20110607/</a>.)
-</dd><dt class="label"><a id="css3-color"></a>CSS3 Color</dt><dd>Tantek Çelik and Chris Lilley,
-<a href="http://www.w3.org/TR/2011/REC-css3-color-20110607/"><cite>CSS Color
-Module Level 3</cite></a>, W3C Recommendation, 07 June 2011. (See
-<a href="http://www.w3.org/TR/2011/REC-css3-color-20110607/">http://www.w3.org/TR/2011/REC-css3-color-20110607/</a>.)
-</dd><dt class="label"><a id="gps"></a>GPS</dt><dd>
-<a href="http://tycho.usno.navy.mil/gpsinfo.html"><cite>Global
-Positioning System</cite></a>, US Naval Observatory.
-(See
-<a href="http://tycho.usno.navy.mil/gpsinfo.html">http://tycho.usno.navy.mil/gpsinfo.html</a>.)
-</dd><dt class="label"><a id="media-types"></a>Media Types</dt><dd>Ned Freed and Nathaniel Borenstein,
-<a href="http://www.rfc-editor.org/rfc/rfc2046.txt"><cite>Multipurpose Internet
-Mail Extensions (MIME) Part Two: Media Types</cite></a>,
-RFC 2046, November 1996, IETF.(See
-<a href="http://www.rfc-editor.org/rfc/rfc2046.txt">http://www.rfc-editor.org/rfc/rfc2046.txt</a>.)
-</dd><dt class="label"><a id="rng"></a>RELAX NG</dt><dd>ISO/IEC 19757-2,
-<a href="http://www.iso.org/"><cite>Information technology – Document
-Schema Definition Language (DSDL) – Part 2: Regular-grammar-based validation – RELAX NG</cite></a>,
-International Organization for Standardization (ISO).
-</dd><dt class="label"><a id="smil21"></a>SMIL 2.1</dt><dd>Dick Bultermann, et al.,
-<a href="http://www.w3.org/TR/2005/REC-SMIL2-20051213/"><cite>Synchronized
-Multimedia Integration Language (SMIL 2.1)</cite></a>,
-W3C Recommendation, 13 December 2005. (See
-<a href="http://www.w3.org/TR/2005/REC-SMIL2-20051213/">http://www.w3.org/TR/2005/REC-SMIL2-20051213/</a>.)
-</dd><dt class="label"><a id="smpte12m"></a>SMPTE 12M</dt><dd>ANSI/SMPTE 12M,
-<a href="https://www.smpte.org/"><cite>Television, Audio and Film –
-Time and Control Code</cite></a>, SMPTE Standard.
-</dd><dt class="label"><a id="srgb"></a>SRGB</dt><dd>IEC 61966-2-1,
-<a href="http://www.iec.ch/"><cite>Multimedia
-systems and equipment – Colour measurement and management
-– Part 2-1: Colour management – Default RGB colour space
-– sRGB</cite></a>, International Electrotechnical
-Commission (IEC).
-</dd><dt class="label"><a id="uaag"></a>UAAG</dt><dd>Ian Jacobs, Jon Gunderson, and Eric Hansen, Eds.,
-<a href="http://www.w3.org/TR/2002/REC-UAAG10-20021217/"><cite>User
-Agent Accessibility Guidelines 1.0</cite></a>, W3C Recommendation, 17
-December 2002. (See
-<a href="http://www.w3.org/TR/2002/REC-UAAG10-20021217/">http://www.w3.org/TR/2002/REC-UAAG10-20021217/</a>.)
-</dd><dt class="label"><a id="uax14"></a>UAX14</dt><dd>Asmus Freytag, <a href="http://www.unicode.org/reports/tr14/tr14-17.html"><cite>Line Breaking
-Properties</cite></a>, Unicode Consortium, 29 August 2005. (See
-<a href="http://www.unicode.org/reports/tr14/tr14-17.html">http://www.unicode.org/reports/tr14/tr14-17.html</a>.)
-</dd><dt class="label"><a id="utc"></a>UTC</dt><dd>
-Recommendation TF.460,
-<a href="http://www.itu.int/"><cite>Standard-Frequency and Time-Signal
-Emissions</cite></a>, International
-Telecommunciations Union, Radio Sector (ITU-R).
-</dd><dt class="label"><a id="wcag"></a>WCAG</dt><dd>Ben Caldwell, et al., Eds.,
-<a href="http://www.w3.org/TR/2008/REC-WCAG20-20081211/"><cite>Web
-Content Accessibility Guidelines (WCAG) 2.0</cite></a>, W3C Recommendation, 11 December 2008. (See
-<a href="http://www.w3.org/TR/2008/REC-WCAG20-20081211/">http://www.w3.org/TR/2008/REC-WCAG20-20081211/</a>.)
-</dd><dt class="label"><a id="xml10"></a>XML 1.0</dt><dd>Tim Bray, et al.
-<a href="http://www.w3.org/TR/2008/REC-xml-20081126/"><cite>Extensible Markup Language (XML)
-1.0 (Fifth Edition)</cite></a>, W3C Recommendation, 26 November 2008. (See
-<a href="http://www.w3.org/TR/2008/REC-xml-20081126/">http://www.w3.org/TR/2008/REC-xml-20081126/</a>.)
-</dd><dt class="label"><a id="xml11"></a>XML 1.1</dt><dd>Tim Bray, et al.
-<a href="http://www.w3.org/TR/2006/REC-xml11-20060816/"><cite>Extensible Markup Language (XML)
-1.1 (Second Edition)</cite></a>, W3C Recommendation, 16 August 2006, edited in place 29 September 2006. (See
-<a href="http://www.w3.org/TR/2006/REC-xml11-20060816/">http://www.w3.org/TR/2006/REC-xml11-20060816/</a>.)
-</dd><dt class="label"><a id="xmlbase"></a>XML Base</dt><dd>Jonathan Marsh and Richard Tobin, Eds.,
-<a href="http://www.w3.org/TR/2009/REC-xmlbase-20090128/"><cite>XML Base (Second Edition)</cite></a>,
-W3C Recommendation, 28 January 2009. (See
-<a href="http://www.w3.org/TR/2009/REC-xmlbase-20090128/">http://www.w3.org/TR/2009/REC-xmlbase-20090128/</a>.)
-</dd><dt class="label"><a id="xmlid"></a>XML ID</dt><dd>Jonathan Marsh, Daniel Veillard, Norman Walsh, Eds.,
-<a href="http://www.w3.org/TR/2005/REC-xml-id-20050909/"><cite>xml:id Version 1.0</cite></a>,
-W3C Recommendation, 09 September 2005. (See
-<a href="http://www.w3.org/TR/2005/REC-xml-id-20050909/">http://www.w3.org/TR/2005/REC-xml-id-20050909/</a>.)
-</dd><dt class="label"><a id="infoset"></a>XML InfoSet</dt><dd>John Cowan and Richard Tobin, Eds.,
-<a href="http://www.w3.org/TR/2004/REC-xml-infoset-20040204/"><cite>XML Information Set (Second Edition)</cite></a>,
-W3C Recommendation, 04 February 2004. (See
-<a href="http://www.w3.org/TR/2004/REC-xml-infoset-20040204/">http://www.w3.org/TR/2004/REC-xml-infoset-20040204/</a>.)
-</dd><dt class="label"><a id="xml-media"></a>XML Media Types</dt><dd>Makato Murata, Simon St. Laurent,
-Kan Khon, Eds., <a href="http://www.rfc-editor.org/rfc/rfc3023.txt"><cite>XML Media Types</cite></a>,
-RFC 3023, January 2001, IETF.(See
-<a href="http://www.rfc-editor.org/rfc/rfc3023.txt">http://www.rfc-editor.org/rfc/rfc3023.txt</a>.)
-</dd><dt class="label"><a id="xmlns10"></a>XML Namespaces 1.0</dt><dd>Tim Bray, et al.
-<a href="http://www.w3.org/TR/2009/REC-xml-names-20091208/"><cite>Namespaces
-in XML 1.0 (Third Edition)</cite></a>, W3C Recommendation, 8 December 2009. (See
-<a href="http://www.w3.org/TR/2009/REC-xml-names-20091208/">http://www.w3.org/TR/2009/REC-xml-names-20091208/</a>.)
-</dd><dt class="label"><a id="xsd-1"></a>XML Schema Part 1</dt><dd>Henry S. Thompson, David Beech,
-Murray Maloney, Noah Mendelsohn, Eds.,
-<a href="http://www.w3.org/TR/xmlschema-1/"><cite>XML Schema Part 1: Structures</cite></a>,
-W3C Recommendation, 28 October 2004. (See
-<a href="http://www.w3.org/TR/xmlschema-1/">http://www.w3.org/TR/xmlschema-1/</a>.)
-</dd><dt class="label"><a id="xsd-2"></a>XML Schema Part 2</dt><dd>Paul Biron and Ashok Malhotra,
-<a href="http://www.w3.org/TR/xmlschema-2/"><cite>XML Schema Part 2: Datatypes</cite></a>,
-W3C Recommendation, 28 October 2004. (See
-<a href="http://www.w3.org/TR/xmlschema-2/">http://www.w3.org/TR/xmlschema-2/</a>.)
-</dd><dt class="label"><a id="xsl11"></a>XSL 1.1</dt><dd>Anders Berglund,
-<a href="http://www.w3.org/TR/2006/REC-xsl11-20061205/"><cite>Extensible Stylesheet Language (XSL) Version 1.1</cite></a>,
-W3C Recommendation, 05 December 2006. (See
-<a href="http://www.w3.org/TR/2006/REC-xsl11-20061205/">http://www.w3.org/TR/2006/REC-xsl11-20061205/</a>.)
-</dd></dl></div><div class="div1">
-<h2><a id="other-references"></a>H Other References (Non-Normative)</h2><dl><dt class="label"><a id="ccreq"></a>CC-DECODER-REQ</dt><dd><a href="http://www.gpo.gov/fdsys/pkg/CFR-2012-title47-vol4/pdf/CFR-2012-title47-vol4-sec79-101.pdf"><cite>Closed Caption Decoder
-Requirements for Analog Television Receivers</cite></a>,
-United States Code of Federal Regulations, Title 47, Volume 1, Part 79, § 79.101. (See
-<a href="http://www.gpo.gov/fdsys/pkg/CFR-2012-title47-vol4/pdf/CFR-2012-title47-vol4-sec79-101.pdf">http://www.gpo.gov/fdsys/pkg/CFR-2012-title47-vol4/pdf/CFR-2012-title47-vol4-sec79-101.pdf</a>.)
-</dd><dt class="label"><a id="cea608e"></a>CEA-608-E</dt><dd>
-EIA/CEA-608-E,
-<a href="http://www.ce.org/"><cite>Line 21 Data
-Services</cite></a>, EIA/CEA Standard,
-Consumer Electronics Association (CEA).
-</dd><dt class="label"><a id="cea708e"></a>CEA-708-E</dt><dd>
-CEA-708-E,
-<a href="http://www.ce.org/"><cite>Digital Television (DTV) Closed Captioning</cite></a>, CEA Standard,
-Consumer Electronics Association (CEA).
-</dd><dt class="label"><a id="dcmes"></a>DCMES 1.1</dt><dd>Dublin Core Metadata Initiative,
-<a href="http://dublincore.org/documents/dces/"><cite>Dublin Core Metadata Element Set, Version 1.1: Reference Description</cite></a>. (See
-<a href="http://dublincore.org/documents/dces/">http://dublincore.org/documents/dces/</a>.)
-</dd><dt class="label"><a id="mpeg7-5"></a>MPEG7-5</dt><dd>
-ISO/IEC 15938-5,
-<a href="http://www.iso.org/"><cite>Information technology – Multimedia content description
-interface – Part 5: Multimedia description schemes</cite></a>,
-International Organization for Standardization (ISO).
-</dd><dt class="label"><a id="nsstate"></a>NSState</dt><dd>Norman Walsh, Ed.,
-<a href="http://www.w3.org/2001/tag/doc/namespaceState-2006-01-09.html"><cite>The Disposition
-of Names in an XML Namespace</cite></a>, TAG Finding, 9 January 2006. (See
-<a href="http://www.w3.org/2001/tag/doc/namespaceState-2006-01-09.html">http://www.w3.org/2001/tag/doc/namespaceState-2006-01-09</a>.)
-</dd><dt class="label"><a id="qaf-sg"></a>QAF SG</dt><dd>Karl Dubost, et al.,
-<a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/"><cite>QA
-Framework: Specifications Guidelines</cite></a>, W3C Recommendation, 17
-August 2005. (See
-<a href="http://www.w3.org/TR/qaframe-spec/">http://www.w3.org/TR/qaframe-spec/</a>.)
-</dd><dt class="label"><a id="smpte170m"></a>SMPTE 170M</dt><dd>ANSI/SMPTE 170M,
-<a href="https://www.smpte.org/"><cite>Television – Composite Analog Video
-Signal – NTSC for Studio Applications</cite></a>, SMPTE Standard.
-</dd><dt class="label"><a id="smpte2052"></a>SMPTE 2052-11</dt><dd>SMPTE 2052-11,
-<a href="https://www.smpte.org/"><cite>Conversion from CEA-708 Caption Data to SMPTE-TT</cite></a>,
-SMPTE Recommended Practice.
-</dd><dt class="label"><a id="svg11"></a>SVG 1.1</dt><dd>Jon Ferraiolo, Jun Fujisawa, Dean Jackson, Eds.,
-<a href="http://www.w3.org/TR/2003/REC-SVG11-20030114/"><cite>Scalable
-Vector Graphics (SVG) 1.1 Specification</cite></a>, W3C Recommendation, 14
-January 2003. (See
-<a href="http://www.w3.org/TR/2003/REC-SVG11-20030114/">http://www.w3.org/TR/2003/REC-SVG11-20030114/</a>.)
-</dd><dt class="label"><a id="ttaf1-req"></a>TTAF1-REQ</dt><dd>Glenn Adams, Ed.,
-<a href="http://www.w3.org/TR/2006/NOTE-ttaf1-req-20060427/"><cite>Timed Text (TT) Authoring Format 1.0 Use
-Cases and Requirements</cite></a>,
-W3C Working Group Note, 27 April 2006. (See
-<a href="http://www.w3.org/TR/2006/NOTE-ttaf1-req-20060427/">http://www.w3.org/TR/2006/NOTE-ttaf1-req-20060427/</a>.)
-</dd><dt class="label"><a id="ttml10"></a>TTML10</dt><dd>Glenn Adams, Ed.,
-<a href="http://www.w3.org/TR/2010/REC-ttaf1-dfxp-20101118/"><cite>Timed Text Markup Language (TTML) 1.0</cite></a>,
-W3C Recommendation, 18 November 2010. (See
-<a href="http://www.w3.org/TR/2010/REC-ttaf1-dfxp-20101118/">http://www.w3.org/TR/2010/REC-ttaf1-dfxp-20101118/</a>.)
-</dd><dt class="label"><a id="xhtml10"></a>XHTML 1.0</dt><dd>Steven Pemberton, et al.,
-<a href="http://www.w3.org/TR/2002/REC-xhtml1-20020801/"><cite>XHTML™ 1.0,
-The Extensible Hypertext Markup Language (Second Edition)</cite></a>,
-W3C Recommendation, 01
-August 2002. (See
-<a href="http://www.w3.org/TR/2002/REC-xhtml1-20020801/">http://www.w3.org/TR/2002/REC-xhtml1-20020801/</a>.)
-</dd></dl></div><div class="div1">
-<h2><a id="requirements"></a>I Requirements (Non-Normative)</h2><p>The Timed Text Markup Language (TTML), also known as the Distribution Format Exchange Profile (DFXP) of the Timed Text Authoring
-Format (TTAF), satisfies a subset of the requirements established by
-<a href="#ttaf1-req">[TTAF1-REQ]</a>. The following table enumerates these requirements and
-indicates the extent to which they are satisfied by this specification, where
-<em>S</em> denotes a requirement is satisfied, <em>P</em> denotes
-a requirement is partially satisfied, and <em>N</em> denotes a
-requirement is not satisfied.</p><a id="requirements-table"></a><table class="common"><caption>Table I-1 – Requirement Satisfaction</caption><col width="10%" span="1"><col width="40%" span="1"><col width="10%" span="1"><col span="1"><tbody><tr><th>ID</th><th>Name</th><th>Status</th><th>Comments</th></tr><tr><td>R100</td><td>Specification Format</td><td>S</td><td></td></tr><tr><td>R101</td><td>Specification Modularity</td><td>S</td><td></td></tr><tr><td>R102</td><td>Specification Organization</td><td>S</td><td></td></tr><tr><td>R103</td><td>Core and Periphery</td><td>S</td><td>TT extension namespaces</td></tr><tr><td>R104</td><td>Evolution of Core</td><td>S</td><td>TT extension namespaces</td></tr><tr><td>R105</td><td>Ownership of Core</td><td>S</td><td>TT namespaces</td></tr><tr><td>R106</td><td>Surjection of Core</td><td>S</td><td></td></tr><tr><td>R107</td><td>Evolution of Periphery</td><td>S</td><td>TT extension namespaces</td></tr><tr><td>R108</td><td>Ownership of Periphery</td><td>S</td><td>Non-TT namespaces</td></tr><tr><td>R109</td><td>Transformation</td><td>S</td><td>Supports 3GPP, QText, RealText, SAMI</td></tr><tr><td>R110</td><td>Streamable Transformation</td><td>S</td><td>Progressive decoding</td></tr><tr><td>R111</td><td>Accessibility – Content</td><td>S</td><td>Alternative document instances</td></tr><tr><td>R112</td><td>Accessibility – Authoring System</td><td>S</td><td></td></tr><tr><td>R200</td><td>Authorability</td><td>S</td><td></td></tr><tr><td>R201</td><td>Multiple Natural Languages</td><td>S</td><td>Alternative document instances</td></tr><tr><td>R202</td><td>Natural Language Coverage</td><td>S</td><td>Unicode 4.0</td></tr><tr><td>R203</td><td>Natural Language Association Granularity</td><td>S</td><td>See <code>xml:lang</code></td></tr><tr><td>R204</td><td>Minimum Character Representability</td><td>S</td><td>Unicode 4.0</td></tr><tr><td>R205</td><td>Intrinsic and Extrinsic Text Content</td><td>P</td><td>Intrinsic only</td></tr><tr><td>R206</td><td>Markup Association</td><td>P</td><td>Intrinsic only</td></tr><tr><td>R207</td><td>Conditional Content</td><td>N</td><td></td></tr><tr><td>R208</td><td>Flowed Text</td><td>S</td><td></td></tr><tr><td>R209</td><td>Logical Flowed Text Vocabulary</td><td>S</td><td></td></tr><tr><td>R210</td><td>Presentational Flowed Text Vocabulary</td><td>S</td><td>Implied mapping from logical flowed text.</td></tr><tr><td>R211</td><td>Flowed Text Vocabulary Relationship</td><td>S</td><td></td></tr><tr><td>R212</td><td>Flowed Text Vocabulary Separation</td><td>N</td><td></td></tr><tr><td>R213</td><td>Non-Flowed Text</td><td>N</td><td></td></tr><tr><td>R214</td><td>Non-Flowed Text Vocabulary</td><td>N</td><td></td></tr><tr><td>R215</td><td>Hybrid Flowed and Non-Flowed Text</td><td>N</td><td></td></tr><tr><td>R216</td><td>Hyperlinking</td><td>N</td><td>Can support via XLink</td></tr><tr><td>R217</td><td>Embedded Graphics</td><td>N</td><td></td></tr><tr><td>R218</td><td>Non-Embedded Graphics</td><td>N</td><td></td></tr><tr><td>R219</td><td>Embedded Fonts</td><td>N</td><td></td></tr><tr><td>R220</td><td>Non-Embedded Fonts</td><td>N</td><td></td></tr><tr><td>R221</td><td>Descriptive Vocabulary</td><td>S</td><td>See <code>ttm:agent</code>, <code>ttm:role</code></td></tr><tr><td>R222</td><td>Embedded Audio</td><td>N</td><td></td></tr><tr><td>R223</td><td>Non-Embedded Audio</td><td>N</td><td></td></tr><tr><td>R290</td><td>Markup Format</td><td>S</td><td></td></tr><tr><td>R291</td><td>Markup Format and Unicode Interaction</td><td>S</td><td></td></tr><tr><td>R292</td><td>Extrinsic Resource References</td><td>N</td><td>No extrinsic references</td></tr><tr><td>R293</td><td>Schema Validity Specification</td><td>S</td><td></td></tr><tr><td>R300</td><td>Inline Styling</td><td>S</td><td></td></tr><tr><td>R301</td><td>Inline Styling Form</td><td>P</td><td>Inline and referential styling</td></tr><tr><td>R301</td><td>Out-of-Line Styling</td><td>N</td><td></td></tr><tr><td>R301</td><td>Out-of-Line Styling Form</td><td>N</td><td></td></tr><tr><td>R304</td><td>Styling Prioritization</td><td>S</td><td></td></tr><tr><td>R305</td><td>Style Parameters – Aural</td><td>N</td><td></td></tr><tr><td>R306</td><td>Style Parameters – Visual</td><td>P</td><td>Supports absolute position, background color, color, display none, display alignment,
-font family, font size, font style, font weight, height, line height, origin,
-opacity, overflow, padding (before, after, start, end), text alignment,
-text shadow (as outline), visibility, width, writing mode, z-index</td></tr><tr><td>R390</td><td>Style Parameter Symmetry</td><td>S</td><td></td></tr><tr><td>R391</td><td>Style Parameter Definitions</td><td>S</td><td></td></tr><tr><td>R392</td><td>Style Parameter Shorthands</td><td>S</td><td></td></tr><tr><td>R401</td><td>Inline Timing</td><td>S</td><td></td></tr><tr><td>R402</td><td>Out-of-Line Timing</td><td>N</td><td></td></tr><tr><td>R403</td><td>Synchronization Parameters</td><td>P</td><td>Supports begin, end, dur</td></tr><tr><td>R404</td><td>Synchronization Parameter Value Spaces</td><td>P</td><td>Supports offset values, media marker values (SMPTE 12M), wall-clock values</td></tr><tr><td>R405</td><td>Time Containment Semantics</td><td>P</td><td>Supports sequential, parallel</td></tr><tr><td>R500</td><td>Animation Modes</td><td>P</td><td>Supports discrete</td></tr><tr><td>R502</td><td>Highlight Animation</td><td>S</td><td><code><set tts:backgroundColor="..."/></code></td></tr><tr><td>R503</td><td>Fade Transition Animation</td><td>S</td><td><code><set tts:opacity="..."/></code></td></tr><tr><td>R504</td><td>Animated Style Parameters – Aural</td><td>N</td><td></td></tr><tr><td>R505</td><td>Animated Style Parameters – Visual</td><td>P</td><td>Supports animating background color, color, display, opacity, origin, visibility</td></tr><tr><td>N506</td><td>Animated Content</td><td>S</td><td></td></tr><tr><td>R600</td><td>Metadata Item Association</td><td>S</td><td>See <code>metadata</code>, <code>Metadata.class</code></td></tr><tr><td>R601</td><td>Metadata Item Constituents</td><td>P</td><td>Supports name, value</td></tr><tr><td>R602</td><td>Metadata Item Value Representation</td><td>P</td><td>See <code>metadata</code></td></tr><tr><td>R603</td><td>Metadata Item Extensibility</td><td>S</td><td>See <code>metadata</code></td></tr><tr><td>R604</td><td>Metadata Item Validation</td><td>S</td><td>See <code>metadata</code></td></tr><tr><td>R690</td><td>Dublin Core Preference</td><td>N</td><td>Uses <code>ttm:copyright</code>, <code>ttm:desc</code>, <code>ttm:title</code></td></tr></tbody></table></div><div class="div1">
-<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="d3e18942"></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
-the model (if a model is indicated);
-the fourth column specifies details about the derivation; the last
-column refers to additional notes describing the nature of the
-derivation.</p><p>In the fourth column, which describes details of derivation, a
-notation is use to indicate the addition or removal of an attribute.
-For example, in the derivation of the <code>tt:div</code> element, the
-details column includes "-@class", which denotes that the
-<code>class</code> attribute that is specified for use with the
-<code>xhtml:div</code> model element is not specified for use with the
-corresponding TTML element; in contrast, the details column includes
-"+@begin", which denotes that a <code>begin</code> attribute is added
-that is not specified for use with the <code>xhtml:div</code> model
-element.</p><a id="element-vocab-derivation-table"></a><table class="common"><caption>Table J-1 – Elements</caption><col width="20%" span="1"><col width="17%" span="1"><col width="13%" align="center" span="1"><col width="40%" span="1"><col width="10%" align="center" span="1"><tbody><tr><td><span class="strong">Element</span></td><td><span class="strong">Model</span></td><td><span class="strong">Reference</span></td><td><span class="strong">Details</span></td><td><span class="strong">Notes</span></td></tr><tr><td><a href="#document-structure-vocabulary-body"><code>tt:body</code></a></td><td><code>xhtml:body</code></td><td><a href="#xhtml10">[XHTML 1.0]</a></td><td>-@class, -@dir, -@lang, -@on*, -@title; +@begin, +@dur, +@end, +@region,
-+@timeContainer, +@ttm:*, +@tts:*; content model
-subsetted to zero or more division (div) children, and supersetted by
-optional metadata and animation children</td><td>1,2</td></tr><tr><td><a href="#content-vocabulary-br"><code>tt:br</code></a></td><td><code>xhtml:br</code></td><td><a href="#xhtml10">[XHTML 1.0]</a></td><td>-@class, -@title; +@ttm:*, +@tts:*, +@xml:lang, +@xml:space;
-content model supersetted by
-optional metadata and animation children for congruity with other
-content vocabulary</td><td>1,2</td></tr><tr><td><a href="#content-vocabulary-div"><code>tt:div</code></a></td><td><code>xhtml:div</code></td><td><a href="#xhtml10">[XHTML 1.0]</a></td><td>-@class, -@dir, -@lang, -@on*, -@title; +@begin, +@dur, +@end, +@region,
-+@timeContainer, +@ttm:*, +@tts:*, +@xml:space; content model
-subsetted to zero or more paragraph (p) children, and supersetted by
-optional metadata and animation children</td><td>1,2,3</td></tr><tr><td><a href="#document-structure-vocabulary-head"><code>tt:head</code></a></td><td><code>xhtml:head</code></td><td><a href="#xhtml10">[XHTML 1.0]</a></td><td>-@dir, -@lang, -@profile; +@id, +@xml:space; content model changed to
-optional metadata children, followed by optional styling child,
-followed by optional layout child</td><td>1,3</td></tr><tr><td><a href="#layout-vocabulary-layout"><code>tt:layout</code></a></td><td><code>fo:simple-page-master</code></td><td><a href="#xsl11">[XSL 1.1]</a></td><td>conceptual derivation</td><td>4</td></tr><tr><td><a href="#metadata-vocabulary-metadata"><code>tt:metadata</code></a></td><td><code>svg:metadata</code></td><td><a href="#svg11">[SVG 1.1]</a></td><td>-@xml:base; +@ttm:*, +@xml:lang, +@xml:space; content model
-subsetted to foreign namespace element content only (no #PCDATA)</td><td>3,5</td></tr><tr><td><a href="#content-vocabulary-p"><code>tt:p</code></a></td><td><code>xhtml:p</code></td><td><a href="#xhtml10">[XHTML 1.0]</a></td><td>-@class, -@dir, -@lang, -@on*, -@title; +@begin, +@dur, +@end, +@region,
-+@timeContainer, +@ttm:*, +@tts:*, +@xml:space; content model
-subsetted to zero or more span children, and supersetted by optional
-metadata and animation children</td><td>1,2,3</td></tr><tr><td><a href="#layout-vocabulary-region"><code>tt:region</code></a></td><td><code>fo:region-*</code></td><td><a href="#xsl11">[XSL 1.1]</a></td><td>conceptual derivation</td><td>4</td></tr><tr><td><a href="#animation-vocabulary-set"><code>tt:set</code></a></td><td><code>svg:set</code></td><td><a href="#svg11">[SVG 1.1]</a></td><td>-@* except begin, dur, end; +@tts:*, +@xml:lang, +@xml:space</td><td>3,6</td></tr><tr><td><a href="#content-vocabulary-span"><code>tt:span</code></a></td><td><code>xhtml:span</code></td><td><a href="#xhtml10">[XHTML 1.0]</a></td><td>-@class, -@dir, -@lang, -@on*, -@title; +@begin, +@dur, +@end, +@region,
-+@timeContainer, +@ttm:*, +@tts:*, +@xml:space; content model
-subsetted to zero or more #PCDATA or break (br) children, and
-supersetted by optional metadata and animation children</td><td>1,2,3</td></tr><tr><td><a href="#styling-vocabulary-style"><code>tt:style</code></a></td><td><em>style specification</em></td><td><a href="#css2">[CSS2]</a></td><td>XML representation of identified set of pairs of style property
-name and value, with optional inclusion of other styles by reference
-to other style elements</td><td>7</td></tr><tr><td><a href="#styling-vocabulary-styling"><code>tt:styling</code></a></td><td><code>xhtml:style</code></td><td><a href="#xhtml10">[XHTML 1.0]</a></td><td>XML representation of a set of style specifications sets, each
-represented by a style child element</td><td>1,7</td></tr><tr><td><a href="#document-structure-vocabulary-tt"><code>tt:tt</code></a></td><td><code>xhtml:html</code></td><td><a href="#xhtml10">[XHTML 1.0]</a></td><td>-@dir, -@lang; +@id, +@ttp:*, +@xml:space; content model subsetted by
-permitting body and/or head to be optional</td><td>1,8</td></tr><tr><td><a href="#metadata-vocabulary-actor"><code>ttm:actor</code></a></td><td><code>mpeg7:Creator</code></td><td><a href="#mpeg7-5">[MPEG7-5]</a></td><td>conceptual derivation</td><td>4</td></tr><tr><td><a href="#metadata-vocabulary-agent"><code>ttm:agent</code></a></td><td><code>mpeg7:Agent</code></td><td><a href="#mpeg7-5">[MPEG7-5]</a></td><td>conceptual derivation</td><td>4</td></tr><tr><td><a href="#metadata-vocabulary-copyright"><code>ttm:copyright</code></a></td><td><code>mpeg7:CopyrightString</code></td><td><a href="#mpeg7-5">[MPEG7-5]</a></td><td>conceptual derivation</td><td>4</td></tr><tr><td><a href="#metadata-vocabulary-desc"><code>ttm:desc</code></a></td><td><code>svg:desc</code></td><td><a href="#svg11">[SVG 1.1]</a></td><td>-@class, -@style, -@xml:base</td><td>2,5,9</td></tr><tr><td><a href="#metadata-vocabulary-name"><code>ttm:name</code></a></td><td><code>mpeg7:Name</code></td><td><a href="#mpeg7-5">[MPEG7-5]</a></td><td>conceptual derivation</td><td>4</td></tr><tr><td><a href="#metadata-vocabulary-title"><code>ttm:title</code></a></td><td><code>svg:title</code></td><td><a href="#svg11">[SVG 1.1]</a></td><td>-@class, -@style, -@xml:base</td><td>2,5,9</td></tr><tr><td><a href="#parameter-vocabulary-extension"><code>ttp:extension</code></a></td><td><code>@requiredExtensions</code></td><td><a href="#svg11">[SVG 1.1]</a></td><td>conceptual derivation</td><td>10</td></tr><tr><td><a href="#parameter-vocabulary-extensions"><code>ttp:extensions</code></a></td><td><code>@requiredExtensions</code></td><td><a href="#svg11">[SVG 1.1]</a></td><td>conceptual derivation</td><td>10</td></tr><tr><td><a href="#parameter-vocabulary-feature"><code>ttp:feature</code></a></td><td><code>@requiredFeatures</code></td><td><a href="#svg11">[SVG 1.1]</a></td><td>conceptual derivation</td><td>10</td></tr><tr><td><a href="#parameter-vocabulary-features"><code>ttp:features</code></a></td><td><code>@requiredFeatures</code></td><td><a href="#svg11">[SVG 1.1]</a></td><td>conceptual derivation</td><td>10</td></tr><tr><td><a href="#parameter-vocabulary-profile"><code>ttp:profile</code></a></td><td><code>@baseProfile</code></td><td><a href="#svg11">[SVG 1.1]</a></td><td>conceptual derivation</td><td>11</td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><ol class="enumar"><li><p>Derivation is indicated with respect to the strict DTD defined
-by <a href="#xhtml10">[XHTML 1.0]</a>, §A.1.</p></li><li><p>The <code>class</code> attribute is effectively replaced by the
-<code>style</code>
-attribute, which, instead of specifying an inline style,
-refers indirectly to one or more <a href="#styling-vocabulary-style"><code>style</code></a>
-elements that define a set of style specification sets.</p></li><li><p>The <code>xml:lang</code> and <code>xml:space</code> attributes are defined for all element
-types in order to support their inheritance semantics to operate in
-the context of foreign namespace elements.</p></li><li><p>Derivation is conceptual (notional) only.</p></li><li><p>The <code>xml:base</code> attribute is not used since there are no external
-references from core vocabulary.</p></li><li><p>The <code>attributeName</code> and <code>to</code> attributes of
-<code>svg:set</code> are replaced by the
-direct expression of the target attribute name and value by use of a
-<code>tts:*</code> attribute.</p></li><li><p>CSS style specification syntax is mapped to XML by use of
-attributes defined in the TT Style Namespace.</p></li><li><p>The <code>xml:id</code> attribute is defined for use on all element types.</p></li><li><p>The <code>style</code> attribute is supported only on
-<a href="#element-vocab-type-content">Content</a> elements.</p></li><li><p>Derived from the use of <code>@requiredExtensions</code>
-and <code>@requiredFeatures</code> on the <code>svg:svg</code> element,
-but extended to support distinct specification of optionality.</p></li><li><p>Derived from the use of <code>@baseProfile</code>
-and <code>@version</code> on the <code>svg:svg</code> element.</p></li></ol></div></div><div class="div2">
-<h3><a id="d3e19424"></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
-the model (if a model is indicated);
-the fourth column specifies details about the derivation; the last
-column refers to additional notes describing the nature of the
-derivation.</p><p>In the fourth column, which describes details of derivation, a
-notation is use to indicate the addition or removal of an attribute
-value. For example, in the derivation of the <code>timeContainer</code>
-attribute,
-the details column includes "-excl", which denotes that the
-<code>excl</code> value that is specified for use with the
-<code>timeContainer</code> model attribute is not specified for use with the
-corresponding TTML attribute; similarly, an "+<em>value</em>"
-in the details column indicates that the attribute's values have been
-extended to include <em>value</em>.</p><p>Only those attributes that are specified for use on more than one TTML
-element type are listed below. Those per-element namespace attributes
-that are uniquely defined for a specific TTML element type are not
-listed below, but are considered to be part of the specific element
-type's derivation described in <a href="#element-vocab-derivation-table"><b>Table J-1 – Elements</b></a>
-above.</p><a id="attribute-vocab-derivation-table"></a><table class="common"><caption>Table J-2 – Attributes</caption><col width="20%" span="1"><col width="17%" span="1"><col width="13%" align="center" span="1"><col width="40%" span="1"><col width="10%" align="center" span="1"><tbody><tr><td><span class="strong">Attribute</span></td><td><span class="strong">Model</span></td><td><span class="strong">Reference</span></td><td><span class="strong">Details</span></td><td><span class="strong">Notes</span></td></tr><tr><td><a href="#timing-attribute-begin"><code>begin</code></a></td><td><code>begin</code></td><td><a href="#smil21">[SMIL 2.1]</a></td><td>see notes</td><td>2,3,4</td></tr><tr><td><a href="#timing-attribute-dur"><code>dur</code></a></td><td><code>dur</code></td><td><a href="#smil21">[SMIL 2.1]</a></td><td>see notes</td><td>2,3,4</td></tr><tr><td><a href="#timing-attribute-end"><code>end</code></a></td><td><code>end</code></td><td><a href="#smil21">[SMIL 2.1]</a></td><td>see notes</td><td>2,3,4</td></tr><tr><td><a href="#layout-attribute-region"><code>region</code></a></td><td><code>master-reference</code></td><td><a href="#xsl11">[XSL 1.1]</a></td><td>conceptual derivation</td><td></td></tr><tr><td><a href="#style-attribute-style"><code>style</code></a></td><td><code>class</code></td><td><a href="#css2">[CSS2]</a></td><td>dereferences style specification(s) directly</td><td></td></tr><tr><td><a href="#timing-attribute-timeContainer"><code>timeContainer</code></a></td><td><code>timeContainer</code></td><td><a href="#smil21">[SMIL 2.1]</a></td><td>-excl, -none; no default attribute value</td><td>5</td></tr><tr><td><a href="#metadata-attribute-agent"><code>ttm:agent</code></a></td><td><em>none</em></td><td></td><td>used to attribute agent of content</td><td></td></tr><tr><td><a href="#metadata-attribute-role"><code>ttm:role</code></a></td><td><em>none</em></td><td></td><td>used to attribute role of content</td><td></td></tr><tr><td><a href="#parameter-attribute-cellResolution"><code>ttp:cellResolution</code></a></td><td><em>none</em></td><td></td><td>expresses uniform grid resolution for cell based coordinates</td><td></td></tr><tr><td><a href="#parameter-attribute-clockMode"><code>ttp:clockMode</code></a></td><td><em>none</em></td><td></td><td>determines how to interpret time expressions</td><td></td></tr><tr><td><a href="#parameter-attribute-frameRate"><code>ttp:frameRate</code></a></td><td><em>none</em></td><td></td><td>expresses integral frame rate</td><td></td></tr><tr><td><a href="#parameter-attribute-frameRateMultiplier"><code>ttp:frameRateMultiplier</code></a></td><td><em>none</em></td><td></td><td>used to express non-integral, rational frame rates</td><td></td></tr><tr><td><a href="#parameter-attribute-markerMode"><code>ttp:markerMode</code></a></td><td><em>none</em></td><td></td><td>expresses marker continuity semantics</td><td></td></tr><tr><td><a href="#parameter-attribute-pixelAspectRatio"><code>ttp:pixelAspectRatio</code></a></td><td><em>none</em></td><td></td><td>expresses pixel aspect ratio of related media</td><td></td></tr><tr><td><a href="#parameter-attribute-profile"><code>ttp:profile</code></a></td><td><em>none</em></td><td></td><td>expresses profile of TTML used by a <em>Document Instance</em></td><td></td></tr><tr><td><a href="#parameter-attribute-dropMode"><code>ttp:dropMode</code></a></td><td><em>none</em></td><td></td><td>expresses frame counting (drop) modes</td><td></td></tr><tr><td><a href="#parameter-attribute-subFrameRate"><code>ttp:subFrameRate</code></a></td><td><em>none</em></td><td></td><td>expresses sub-frame rate</td><td></td></tr><tr><td><a href="#parameter-attribute-tickRate"><code>ttp:tickRate</code></a></td><td><em>none</em></td><td></td><td>used to interpret tick based time expressions</td><td></td></tr><tr><td><a href="#parameter-attribute-timeBase"><code>ttp:timeBase</code></a></td><td><em>none</em></td><td></td><td>used to interpret semantics of time expressions</td><td></td></tr><tr><td><a href="#style-attribute-backgroundColor"><code>tts:backgroundColor</code></a></td><td><code>background-color</code></td><td><a href="#xsl11">[XSL 1.1]</a></td><td><code>-inherit</code></td><td>1,6</td></tr><tr><td><a href="#style-attribute-color"><code>tts:color</code></a></td><td><code>color</code></td><td><a href="#xsl11">[XSL 1.1]</a></td><td><code>-inherit</code></td><td>6</td></tr><tr><td><a href="#style-attribute-direction"><code>tts:direction</code></a></td><td><code>direction</code></td><td><a href="#xsl11">[XSL 1.1]</a></td><td><code>-inherit</code></td><td></td></tr><tr><td><a href="#style-attribute-display"><code>tts:display</code></a></td><td><code>display</code></td><td><a href="#css2">[CSS2]</a></td><td>only <code>auto</code>, <code>none</code></td><td></td></tr><tr><td><a href="#style-attribute-displayAlign"><code>tts:displayAlign</code></a></td><td><code>display-align</code></td><td><a href="#xsl11">[XSL 1.1]</a></td><td><code>-inherit</code></td><td>1</td></tr><tr><td><a href="#style-attribute-extent"><code>tts:extent</code></a></td><td><code>width</code>, <code>height</code></td><td><a href="#xsl11">[XSL 1.1]</a></td><td>shorthand property</td><td></td></tr><tr><td><a href="#style-attribute-fontFamily"><code>tts:fontFamily</code></a></td><td><code>font-family</code></td><td><a href="#xsl11">[XSL 1.1]</a></td><td><code>-inherit</code>, extends generic family names</td><td>1</td></tr><tr><td><a href="#style-attribute-fontSize"><code>tts:fontSize</code></a></td><td><code>font-size</code></td><td><a href="#xsl11">[XSL 1.1]</a></td><td><code>-inherit</code></td><td>1,7</td></tr><tr><td><a href="#style-attribute-fontStyle"><code>tts:fontStyle</code></a></td><td><code>font-style</code></td><td><a href="#xsl11">[XSL 1.1]</a></td><td><code>-inherit</code>, <code>-backslant</code></td><td>1</td></tr><tr><td><a href="#style-attribute-fontWeight"><code>tts:fontWeight</code></a></td><td><code>font-weight</code></td><td><a href="#xsl11">[XSL 1.1]</a></td><td><code>-inherit</code>, <code>-bolder</code>, <code>-lighter</code>, <code>-<number></code></td><td>1</td></tr><tr><td><a href="#style-attribute-lineHeight"><code>tts:lineHeight</code></a></td><td><code>line-height</code></td><td><a href="#xsl11">[XSL 1.1]</a></td><td><code>-inherit</code>, <code>-<number></code>, <code>-<space></code></td><td>1</td></tr><tr><td><a href="#style-attribute-opacity"><code>tts:opacity</code></a></td><td><code>opacity</code></td><td><a href="#css3-color">[CSS3 Color]</a></td><td><code>-inherit</code></td><td></td></tr><tr><td><a href="#style-attribute-origin"><code>tts:origin</code></a></td><td><code>top</code>, <code>left</code></td><td><a href="#xsl11">[XSL 1.1]</a></td><td>shorthand property</td><td></td></tr><tr><td><a href="#style-attribute-overflow"><code>tts:overflow</code></a></td><td><code>overflow</code></td><td><a href="#xsl11">[XSL 1.1]</a></td><td><code>-inherit</code>, <code>-auto</code>, <code>-error-if-overflow</code></td><td></td></tr><tr><td><a href="#style-attribute-padding"><code>tts:padding</code></a></td><td><code>padding</code></td><td><a href="#xsl11">[XSL 1.1]</a></td><td><code>-inherit</code></td><td>8</td></tr><tr><td><a href="#style-attribute-showBackground"><code>tts:showBackground</code></a></td><td><code>showBackground</code></td><td><a href="#smil21">[SMIL 2.1]</a></td><td><code>-inherit</code></td><td></td></tr><tr><td><a href="#style-attribute-textAlign"><code>tts:textAlign</code></a></td><td><code>text-align</code></td><td><a href="#xsl11">[XSL 1.1]</a></td><td><code>-inherit</code></td><td>1</td></tr><tr><td><a href="#style-attribute-textDecoration"><code>tts:textDecoration</code></a></td><td><code>text-decoration</code></td><td><a href="#xsl11">[XSL 1.1]</a></td><td><code>-inherit</code></td><td>1,9,12</td></tr><tr><td><a href="#style-attribute-textOutline"><code>tts:textOutline</code></a></td><td><code>text-shadow</code></td><td><a href="#xsl11">[XSL 1.1]</a></td><td><code>-inherit</code></td><td>10,12</td></tr><tr><td><a href="#style-attribute-unicodeBidi"><code>tts:unicodeBidi</code></a></td><td><code>unicode-bidi</code></td><td><a href="#xsl11">[XSL 1.1]</a></td><td><code>-inherit</code></td><td>1</td></tr><tr><td><a href="#style-attribute-visibility"><code>tts:visibility</code></a></td><td><code>visibility</code></td><td><a href="#xsl11">[XSL 1.1]</a></td><td><code>-inherit</code>, <code>-collapse</code></td><td></td></tr><tr><td><a href="#style-attribute-wrapOption"><code>tts:wrapOption</code></a></td><td><code>wrap-option</code></td><td><a href="#xsl11">[XSL 1.1]</a></td><td><code>-inherit</code></td><td>1</td></tr><tr><td><a href="#style-attribute-writingMode"><code>tts:writingMode</code></a></td><td><code>writing-mode</code></td><td><a href="#xsl11">[XSL 1.1]</a></td><td><code>-inherit</code>, <code>+tblr</code></td><td>1</td></tr><tr><td><a href="#style-attribute-zIndex"><code>tts:zIndex</code></a></td><td><code>z-index</code></td><td><a href="#xsl11">[XSL 1.1]</a></td><td><code>-inherit</code></td><td>1</td></tr><tr><td><a href="#content-attribute-id"><code>xml:id</code></a></td><td><code>xml:id</code></td><td><a href="#xmlid">[XML ID]</a></td><td>complies with model</td><td></td></tr><tr><td><a href="#content-attribute-lang"><code>xml:lang</code></a></td><td><code>xml:lang</code></td><td><a href="#xml10">[XML 1.0]</a></td><td>complies with model</td><td></td></tr><tr><td><a href="#content-attribute-space"><code>xml:space</code></a></td><td><code>xml:space</code></td><td><a href="#xml10">[XML 1.0]</a></td><td>see notes</td><td>11</td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><ol class="enumar"><li><p>Attribute name and/or value(s) are normalized to use
-<em>lowerCamelCase</em> naming convention.</p></li><li><p>Restricted to expressing a clock value that denotes one of the
-following in accordance to whether the parameter expressed by the
-<code>ttp:timeBase</code> attribute is <code>media</code>, <code>smpte</code>,
-or <code>clock</code>, respectively:
-(1) an offset from an implicit syncbase that is linked to a media time
-line, (2) an event time
-that represents the occurrence of an implicit media marker, or (3) a wall-clock
-time.</p></li><li><p>Syntactically subsets and supersets the <a href="#smil21">[SMIL 2.1]</a> <code>Clock-value</code> syntax as follows:
-(1) requires non-negative <code>Full-clock-value</code> or
-<code>Timecount-value</code>;
-(2) if <code>Full-clock-value</code>
-then <em>hours</em> must be two or more digits;
-(3) if <code>Timecount-value</code>, then <em>metric</em> must be
-specified;
-(4) uses <code>m</code> as alias for <code>min</code> metric to denote
-minutes;
-(5) adds <code>f</code> and <code>t</code> metrics denoting frames and
-ticks, respectively;
-(6) adds alternative expression of optional <code>Fraction</code> in
-<code>Full-clock-value</code> by specifying frame count or frame
-count with subframe count.
-</p></li><li><p>
-Interpretation of time expression is further constrained by
-parameters expressed by
-<code>ttp:clockMode</code>,
-<code>ttp:dropMode</code>,
-<code>ttp:frameRate</code>,
-<code>ttp:frameRateMultiplier</code>,
-<code>ttp:markerMode</code>,
-<code>ttp:subFrameRate</code>,
-<code>ttp:tickRate</code>, and
-<code>ttp:timeBase</code> attributes.</p></li><li><p>Uses subset of named colors from model to which two aliases are
-added as follows: <code>magenta</code> as <code>fuchsia</code>, and <code>cyan</code>
-as <code>aqua</code>.</p></li><li><p>If not specified, then parallel (par) container semantics apply to
-the element types specified by <a href="#timing-attribute-timeContainer"><b>10.2.4 timeContainer</b></a>.</p></li><li><p>Restricts size to length specification which can be a percentage;
-adds optional second length (or percentage) for
-specifying separate horizontal and vertical scaling of glyph's EM
-square.</p></li><li><p>Expressed in terms of writing mode relative padding properties
-rather than absolute padding properties.</p></li><li><p>Excludes <code>blink</code> and <code>no-blink</code> values.</p></li><li><p>Uses only one length specification instead of two, where one length
-defines distance of outline effect from nominal edge of glyph contour
-outline perpendicular to point of glyph contour. Percentage lengths
-are also added to express outline effect in relative to font size.
-Outline effects are intended to be drawn both outside of outer closed
-contours and inside of inner closed contours.</p></li><li><p>On root element, default attribute value specified as
-<code>default</code>, which is defined in terms of whitespace
-normalization. Semantics of preservation and default normalization are
-defined in terms of presentation semantics by <a href="#content-attribute-space"><b>7.2.3 xml:space</b></a>.</p></li><li><p>Defined to be inheritable.</p></li></ol></div></div></div><div class="div1">
-<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="d3e20309"></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="d3e20473"></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">
-<h2><a id="streaming"></a>L Streaming TTML Content (Non-Normative)</h2><p>TTML Content is designed to support streamability by implementing the
-following properties:</p><ul><li><p>can be progressively encoded (i.e., does not require computing
-subsequent data prior to sending current data);</p></li><li><p>can be progressively decoded (i.e., does not require forward
-references, but uses only reverse references when necessary);</p></li><li><p>does not require dereferencing (and subsequent loading) of any
-resources other than TTML Content (i.e., no embedded URIs);</p></li><li><p>does not support alternative content forms (e.g., different
-language, graphics formats, time bases) in a single document;</p></li><li><p>has timing structure compiled into inline format that makes
-possible a temporal ordering of content that follows temporal
-presentation order;</p></li><li><p>constrains content models to prevent arbitrary nested content
-structures;</p></li></ul><p>One possible means by which TTML Content may be streamed is to
-partition a <em>Document Instance</em>'s information set into
-non-overlapping fragments, where one particular fragment, call it the
-<em>root fragment</em>, represents the front matter (head) of the
-<em>Document Instance</em> as well as its top level structural elements, and
-other fragments represent content whose time intervals are expected to
-be active in parallel.</p><p>In applications that require arbitrary (random) entry into a
-stream, i.e., the property of being able to start reading data at an
-arbitrary data access unit, the root fragment will be repetitively
-transmitted (inserted) into the stream in order to permit a decoder to
-resynchronize and acquire sufficient structural information in the
-information set in order to interpret subsequent content
-fragments.</p><p>An example of such a fragmentation of a <em>Document Instance</em> is
-shown in <a href="#fragment-streaming-graphic"><b>Figure 3 – Fragment Streaming</b></a>.</p><a id="fragment-streaming-graphic"></a><table class="example-images"><caption>Figure 3 – Fragment Streaming</caption><col span="1"><tbody><tr><td><img src="images/streaming.png" alt="Fragment Streaming"></td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>This specification does not define a transport buffer model or a decoder
-capabilities model.</p></div></div><div class="div1">
-<h2><a id="concrete-encoding"></a>M Concrete Encoding (Non-Normative)</h2><p>In the absence of other requirements, it is recommended that a <em>Document Instance</em> 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>&lt;</code>, and <code>&gt;</code>.</p></div></div><div class="div1">
-<h2><a id="time-expression-semantics"></a>N Time Expression Semantics (Non-Normative)</h2><p>This appendix describes the intended semantics for interpreting time expressions in <em>Document Instances</em>.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>It is expected that the information in this appendix will be elevated to normative status in a future revision of this specification.</p></div><div class="note"><p class="prefix"><b>Note:</b></p><p>The phrase <em>local real time</em> as used below is intended to model a virtual real time clock in the document processing context, where
-<em>local</em> means in the immediate proximity of the implementation of this processing context. The intent
-of defining relationships with this virtual clock is to establish a locally valid physical realization of time for didactic purposes.</p></div><div class="note"><p class="prefix"><b>Note:</b></p><p>The phrase <em>play rate</em> as used below is intended to model a (possibly variable) parameter in the document processing context wherein
-the rate of playback (or interpretation) of time may artificially dilated or narrowed, for example, when slowing down or speeding up the rate of
-playback of a <em>Related Media Object</em>. Without loss of generality, the following discussion assumes a fixed play(back) rate. In the case of
-variable play rates, appropriate adjustments may need to be made to the resulting computations.</p></div><div class="div2">
-<h3><a id="time-expression-semantics-clock"></a>N.1 Clock Time Base</h3><p>When operating with the <code>clock</code> time base, the following semantics should be applied for interpreting time expressions,
-as defined by <a href="#timing-value-timeExpression"><timeExpression></a>, and their relationship to media time and local real time.</p><p>The clock time base <span class="strong"><code>C</code></span> is related to local real time <span class="strong"><code>R</code></span>
-expressed in an arbitrary (implementation defined) epoch <span class="strong"><code>E</code></span>
-as follows:</p><a id="clock-time-and-real-time"></a><table class="semantics"><caption>TTML Semantics – Clock Time and Real Time Relationship</caption><tbody><tr><td>
-<blockquote><p><br>
-<code>R = C + epochOffset + discontinuityOffset</code>
-<br><br>
-where <code>C ∈ ℜ</code>, <code>0 ≤ C < ∞</code>, <code>C</code> in seconds since the most immediately prior midnight of the reference clock base;
-<br><br>
-<code>epochOffset ∈ ℜ</code>, <code>0 ≤ epochOffset < ∞</code>, <code>epochOffset</code> in seconds, with 0 being the beginning
-of epoch <code>E</code>, and where the value of <code>epochOffset</code> is determined from the computed value of the <code>ttp:clockMode</code> parameter
-as follows:
-<br><br>
-(1) if <code>local</code>, then the difference between the local real time at the most immediately prior local midnight and the local real time
-at the beginning of epoch <code>E</code>, expressed in seconds;
-<br><br>
-(2) if <code>gps</code>, then the difference between the GPS time at the most immediately prior GPS midnight
-and the GPS time at the beginning of epoch <code>E</code>, expressed in seconds;
-<br><br>
-(3) if <code>utc</code>, then the difference between the UTC time at the most immediately prior UTC midnight
-and the UTC time at the beginning of epoch <code>E</code>, expressed in seconds;
-<br><br>
-<code>discontinuityOffset ∈ ℜ</code>, <code>−∞ < discontinuityOffset < ∞</code>, <code>discontinuityOffset</code> in seconds,
-and where the value of <code>discontinuityOffset</code> is equal to the sum of leap seconds (and fractions thereof) that have been added (or subtracted) since the
-most immediately prior midnight in the reference clock base;
-<br><br>
-and <code>epochOffset</code> and <code>discontinuityOffset</code> are determined once and only once prior to the beginning of the <em>Root Temporal Extent</em> such that
-during the period between value determination and the beginning of the <em>Root Temporal Extent</em> there occurs no local midnight or reference clock base discontinuity.
-<br></p></blockquote>
-</td></tr></tbody></table><p>Time value expressions, as denoted by a <a href="#timing-value-timeExpression"><timeExpression></a>, are related to
-clock time <span class="strong"><code>C</code></span> as follows:</p><a id="time-expressions-and-clock-time"></a><table class="semantics"><caption>TTML Semantics – Time Expressions and Clock Time Relationship</caption><tbody><tr><td>
-<blockquote><p><br>
-If a time expression uses the <em>clock-time</em> form or an <em>offset-time</em> form that doesn't use the ticks (<code>t</code>) metric, then:
-<br><br>
-<code>C = 3600 * hours + 60 * minutes + seconds</code>
-<br><br>
-where
-<code>hours</code>,
-<code>minutes</code>,
-<code>seconds</code> components are extracted from time expression if present, or zero if not present.
-<br><br>
-Otherwise, if a time expression uses an <em>offset-time</em> form that uses the ticks (<code>t</code>) metric, then:
-<br><br>
-<code>C = ticks / tickRate</code>
-<br></p></blockquote>
-</td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>The <em>frames</em> and <em>sub-frames</em> terms and the frames (<code>f</code>) metric of time expressions do not apply when using
-the <code>clock</code> time base.</p></div><p>The clock time base <span class="strong"><code>C</code></span> is independent of media time <span class="strong"><code>M</code></span>:</p><a id="clock-time-and-media-time"></a><table class="semantics"><caption>TTML Semantics – Clock Time and Media Time Relationship</caption><tbody><tr><td>
-<blockquote><p><br>
-<code>M ¬∝ C</code>
-<br></p></blockquote>
-</td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>That is to say, timing is disconnected from (not necessarily proportional to) media time when
-the <code>clock</code> time base is used. For example, if the media play rate is zero (0), media playback is suspended; however, timing coordinates
-will continue to advance according to the natural progression of clock time in direct proportion to the reference clock base. Furthermore, if the media play rate changes
-during playback, presentation timing is not affected.
-</p></div></div><div class="div2">
-<h3><a id="time-expression-semantics-media"></a>N.2 Media Time Base</h3><p>When operating with the <code>media</code> time base, the following semantics should be applied for interpreting time expressions,
-as defined by <a href="#timing-value-timeExpression"><timeExpression></a>, and their relationship to media time and local real time.</p><p>The media time base <span class="strong"><code>M</code></span> is related to local real time <span class="strong"><code>R</code></span>
-expressed in an arbitrary (implementation defined) epoch <span class="strong"><code>E</code></span> as follows:</p><a id="media-time-and-real-time"></a><table class="semantics"><caption>TTML Semantics – Media Time and Real Time Relationship</caption><tbody><tr><td>
-<blockquote><p><br>
-<code>R = playRate * M + epochOffset</code>
-<br><br>
-where <code>M ∈ ℜ</code>, <code>0 ≤ M < ∞</code>, <code>M</code> in seconds, with 0 corresponding to the beginning of the <em>Root Temporal Extent</em>;
-<br><br>
-<code>playRate ∈ ℜ</code>, <code>−∞ < playRate < ∞</code>, <code>playRate</code> is unit-less, and where the value of
-<code>playRate</code> is determined by the document processing context;
-<br><br>
-and <code>epochOffset ∈ ℜ</code>, <code>0 ≤ epochOffset < ∞</code>, <code>epochOffset</code> in seconds, with 0 corresponding to the beginning of
-an epoch <code>E</code>, and where the value of <code>epochOffset</code> is the difference between the local real time at the beginning of the
-<em>Root Temporal Extent</em> and the local real time at the the beginning of epoch <code>E</code>, expressed in seconds.
-</p></blockquote>
-</td></tr></tbody></table><p>Time value expressions, as denoted by a <a href="#timing-value-timeExpression"><timeExpression></a>, are related to
-media time <span class="strong"><code>M</code></span> in accordance to the
-<code>ttp:frameRate</code>, <code>ttp:subFrameRate</code>, and <code>ttp:frameRateMultipler</code> parameters as follows:</p><a id="time-expressions-and-media-time"></a><table class="semantics"><caption>TTML Semantics – Time Expressions and Media Time Relationship</caption><tbody><tr><td>
-<blockquote><p><br>
-If a time expression uses a <em>clock-time</em> form or an <em>offset-time</em> form that doesn't use the ticks (<code>t</code>) metric, then:
-<br><br>
-<code>
-M = referenceBegin + 3600 * hours + 60 * minutes + seconds + ((frames + (subFrames / subFrameRate)) / effectiveFrameRate)
-</code>
-<br><br>
-where <code>referenceBegin</code> is determined according to whether the nearest ancestor time container employs
-parallel (<code>par</code>) or sequential (<code>seq</code>) semantics: if parallel or if sequential and no prior sibling
-timed element exists, then <code>referenceBegin</code>
-is the media time that corresponds to the beginning of the nearest ancestor time container or
-zero (0) if this time container is the <em>Root Temporal Extent</em>; otherwise, if sequential and a prior sibling
-timed element exists, then <code>referenceBegin</code> is the media time that corresponds to the active end of the
-immediate prior sibling timed element;
-<br><br>
-the <code>hours</code>, <code>minutes</code>, <code>seconds</code>, <code>frames</code>, <code>subFrames</code> components
-are extracted from time expression if present, or zero if not present;
-<br><br>
-<code>subFrameRate</code> is the computed value of the <code>ttp:subFrameRate</code> parameter;
-<br><br>
-and <code>effectiveFrameRate</code> (in frames per second) is <code>frameRate * frameRateMultipler</code> where
-<code>frameRate</code> is the computed value of the <code>ttp:frameRate</code> parameter and
-<code>frameRateMultipler</code> is the computed value of the <code>ttp:frameRateMultiplier</code> parameter.
-<br><br>
-Otherwise, if a time expression uses an <em>offset-time</em> form that uses the ticks (<code>t</code>) metric, then:
-<br><br>
-<code>
-M = referenceBegin + ticks / tickRate
-</code>
-<br><br>
-where <code>referenceBegin</code> is as described above;
-<br><br>
-the <code>ticks</code> component is extracted from time expression;
-<br><br>
-and <code>tickRate</code> is the computed value of the <code>ttp:tickRate</code> parameter;
-<br></p></blockquote>
-</td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>If the computed <code>frameRateMultipler</code> ratio is not integral, then <code>effectiveFrameRate</code> will be a non-integral rational.</p></div><div class="note"><p class="prefix"><b>Note:</b></p><p>The above formalisms assumes that the <em>Root Temporal Extent</em> corresponds with the beginning of a related media object. If
-this assumption doesn't hold, then an additional offset that accounts for the difference may be introduced when computing media time <code>M</code>.</p></div></div><div class="div2">
-<h3><a id="time-expression-semantics-smpte"></a>N.3 SMPTE Time Base</h3><p>When operating with the <code>smpte</code> time base, the following semantics should be applied for interpreting time expressions,
-as defined by <a href="#timing-value-timeExpression"><timeExpression></a>, and their relationship to media time and local real time.</p><p>If the computed value of the <code>ttp:markerMode</code> parameter is <code>discontinuous</code>, then there is no direct relationship between
-time expressions and media time <span class="strong"><code>M</code></span> or local real time <span class="strong"><code>R</code></span>. In
-this case, time expressions refer to synchronization events (markers) emitted by the <em>Document Processing Context</em> when <em>SMPTE Time
-Codes</em> are encountered in the <em>Related Media Object</em>.</p><p>Otherwise, if the computed value of the <code>ttp:markerMode</code> parameter is <code>continuous</code>, then the relationships between time expressions and
-local real time and media time are as described below in terms of a <em>Synthetic SMPTE Document Syncbase</em>, here referred to as the
-SMPTE time base <span class="strong"><code>S</code></span>.</p><a id="time-expressions-and-smpte-time"></a><table class="semantics"><caption>TTML Semantics – Time Expressions and SMPTE Time Relationship</caption><tbody><tr><td>
-<blockquote><p><br>
-<code>S = (countedFrames - droppedFrames + (subFrames / subFrameRate)) / effectiveFrameRate</code>
-<br><br>where<br><br>
-<code>countedFrames = (3600 * hours + 60 * minutes + seconds) * frameRate + frames</code>
-<br><br>
-<code>hours</code>, <code>minutes</code>, <code>seconds</code>, <code>frames</code>, <code>subFrames</code> components
-are extracted from time expression if present, or zero if not present;
-<br><br>
-<code>droppedFrames</code> is computed as follows:
-<br><br>
-1. let <em>dropMode</em> be the computed value of the <code>ttp:dropMode</code> parameter;
-<br><br>
-2. if <em>dropMode</em> is <code>dropNTSC</code>, let
-<code>droppedFrames = (hours * 54 + floor(minutes - minutes/10)) * 2</code>;
-<br><br>
-3. otherwise, if <em>dropMode</em> is <code>dropPAL</code>, let
-<code>droppedFrames = (hours * 27 + floor(minutes/2 - minutes/20)) * 4</code>;
-<br><br>
-4. otherwise, let
-<code>droppedFrames = 0</code>;
-<br><br>
-<code>frameRate</code> is the computed value of the <code>ttp:frameRate</code> parameter;
-<br><br>
-<code>subFrameRate</code> is the computed value of the <code>ttp:subFrameRate</code> parameter;
-<br><br>
-and <code>effectiveFrameRate</code> (in frames per second) is <code>frameRate * frameRateMultipler</code> where
-<code>frameRate</code> is the computed value of the <code>ttp:frameRate</code> parameter and
-<code>frameRateMultipler</code> is the computed value of the <code>ttp:frameRateMultiplier</code> parameter.
-<br><br>
-Notwithstanding the above, if a time expression contains a frame code that is designated as
-dropped according to <a href="#parameter-attribute-dropMode"><b>6.2.3 ttp:dropMode</b></a>, then that time expression
-should be considered to be invalid for purposes of validation assessment.
-<br></p></blockquote>
-</td></tr></tbody></table><p>The SMPTE time base <span class="strong"><code>S</code></span> is related to the media time base <span class="strong"><code>M</code></span> as follows:</p><a id="smpte-time-and-media-time"></a><table class="semantics"><caption>TTML Semantics – SMPTE Time and Media Time Relationship</caption><tbody><tr><td>
-<blockquote><p><br>
-<code>M = referenceBegin + S</code>
-<br><br>
-where <code>referenceBegin</code> is determined according to whether the nearest ancestor time container employs
-parallel (<code>par</code>) or sequential (<code>seq</code>) semantics: if parallel or if sequential and no prior sibling
-timed element exists, then <code>referenceBegin</code>
-is the SMPTE time that corresponds to the beginning of the nearest ancestor time container or
-zero (0) if this time container is the <em>Root Temporal Extent</em>; otherwise, if sequential and a prior sibling
-timed element exists, then <code>referenceBegin</code> is the SMPTE time that corresponds to the active end of the
-immediate prior sibling timed element;
-<br></p></blockquote>
-</td></tr></tbody></table><p>Given the derived media time base as described above, then
-media time base <span class="strong"><code>M</code></span> is related to the local real time <span class="strong"><code>R</code></span>
-as described in <a href="#time-expression-semantics-media"><b>N.2 Media Time Base</b></a> above.</p></div></div><div class="div1">
-<h2><a id="common-styling"></a>O Common Caption Style Examples (Non-Normative)</h2><p>This section provides examples of the following common caption styles using TTML Content
-to obtain the desired behavior:</p><ul><li><p>Pop-On Captions</p></li><li><p>Roll-Up Captions</p></li><li><p>Paint-On Captions</p></li></ul><div class="div2">
-<h3><a id="pop-on-example"></a>O.1 Pop-On Caption Example</h3><p>An example of paint-on captions. In this example, two regions are targeted with alternating, paint-on content, where content is timed
-using explicit sequential time containment rules. Each paragraph is non-overlapping in time and appears in the same single row
-of its targeted region.</p><a id="pop-on-example-1-s"></a><table class="example"><caption>Example – Pop-On Captions</caption><tbody><tr><td>
-<div class="exampleInner"><pre><tt ttp:cellResolution="60 20" xml:lang="en" xmlns="http://www.w3.org/ns/ttml"
+</pre>
+ </div>
+ </div>
+ </div>
+
+ <div class="div1">
+ <h2><a id="references" name="references"></a>G References</h2>
+
+ <p><em>This appendix is normative.</em></p>
+
+ <dl>
+ <dt class="label"><a id="css2" name="css2"></a>CSS2</dt>
+
+ <dd>Bert Bos et al., <a href=
+ "http://www.w3.org/TR/2011/REC-CSS2-20110607/"><cite>Cascading Style Sheets,
+ Level 2 Revision 1</cite></a>, W3C Recommendation, 07 June 2011. (See <a href=
+ "http://www.w3.org/TR/2011/REC-CSS2-20110607/">http://www.w3.org/TR/2011/REC-CSS2-20110607/</a>.)</dd>
+
+ <dt class="label"><a id="css3-color" name="css3-color"></a>CSS3 Color</dt>
+
+ <dd>Tantek Çelik and Chris Lilley, <a href=
+ "http://www.w3.org/TR/2011/REC-css3-color-20110607/"><cite>CSS Color Module Level
+ 3</cite></a>, W3C Recommendation, 07 June 2011. (See <a href=
+ "http://www.w3.org/TR/2011/REC-css3-color-20110607/">http://www.w3.org/TR/2011/REC-css3-color-20110607/</a>.)</dd>
+
+ <dt class="label"><a id="gps" name="gps"></a>GPS</dt>
+
+ <dd><a href="http://tycho.usno.navy.mil/gpsinfo.html"><cite>Global Positioning
+ System</cite></a>, US Naval Observatory. (See <a href=
+ "http://tycho.usno.navy.mil/gpsinfo.html">http://tycho.usno.navy.mil/gpsinfo.html</a>.)</dd>
+
+ <dt class="label"><a id="media-types" name="media-types"></a>Media Types</dt>
+
+ <dd>Ned Freed and Nathaniel Borenstein, <a href=
+ "http://www.rfc-editor.org/rfc/rfc2046.txt"><cite>Multipurpose Internet Mail
+ Extensions (MIME) Part Two: Media Types</cite></a>, RFC 2046, November 1996,
+ IETF.(See <a href=
+ "http://www.rfc-editor.org/rfc/rfc2046.txt">http://www.rfc-editor.org/rfc/rfc2046.txt</a>.)</dd>
+
+ <dt class="label"><a id="rng" name="rng"></a>RELAX NG</dt>
+
+ <dd>ISO/IEC 19757-2, <a href="http://www.iso.org/"><cite>Information technology –
+ Document Schema Definition Language (DSDL) – Part 2: Regular-grammar-based
+ validation – RELAX NG</cite></a>, International Organization for Standardization
+ (ISO).</dd>
+
+ <dt class="label"><a id="smil21" name="smil21"></a>SMIL 2.1</dt>
+
+ <dd>Dick Bultermann, et al., <a href=
+ "http://www.w3.org/TR/2005/REC-SMIL2-20051213/"><cite>Synchronized Multimedia
+ Integration Language (SMIL 2.1)</cite></a>, W3C Recommendation, 13 December 2005.
+ (See <a href=
+ "http://www.w3.org/TR/2005/REC-SMIL2-20051213/">http://www.w3.org/TR/2005/REC-SMIL2-20051213/</a>.)</dd>
+
+ <dt class="label"><a id="smpte12m" name="smpte12m"></a>SMPTE 12M</dt>
+
+ <dd>ANSI/SMPTE 12M, <a href="https://www.smpte.org/"><cite>Television, Audio and
+ Film – Time and Control Code</cite></a>, SMPTE Standard.</dd>
+
+ <dt class="label"><a id="srgb" name="srgb"></a>SRGB</dt>
+
+ <dd>IEC 61966-2-1, <a href="http://www.iec.ch/"><cite>Multimedia systems and
+ equipment – Colour measurement and management – Part 2-1: Colour management –
+ Default RGB colour space – sRGB</cite></a>, International Electrotechnical
+ Commission (IEC).</dd>
+
+ <dt class="label"><a id="uaag" name="uaag"></a>UAAG</dt>
+
+ <dd>Ian Jacobs, Jon Gunderson, and Eric Hansen, Eds., <a href=
+ "http://www.w3.org/TR/2002/REC-UAAG10-20021217/"><cite>User Agent Accessibility
+ Guidelines 1.0</cite></a>, W3C Recommendation, 17 December 2002. (See <a href=
+ "http://www.w3.org/TR/2002/REC-UAAG10-20021217/">http://www.w3.org/TR/2002/REC-UAAG10-20021217/</a>.)</dd>
+
+ <dt class="label"><a id="uax14" name="uax14"></a>UAX14</dt>
+
+ <dd>Asmus Freytag, <a href=
+ "http://www.unicode.org/reports/tr14/tr14-17.html"><cite>Line Breaking
+ Properties</cite></a>, Unicode Consortium, 29 August 2005. (See <a href=
+ "http://www.unicode.org/reports/tr14/tr14-17.html">http://www.unicode.org/reports/tr14/tr14-17.html</a>.)</dd>
+
+ <dt class="label"><a id="utc" name="utc"></a>UTC</dt>
+
+ <dd>Recommendation TF.460, <a href="http://www.itu.int/"><cite>Standard-Frequency
+ and Time-Signal Emissions</cite></a>, International Telecommunciations Union,
+ Radio Sector (ITU-R).</dd>
+
+ <dt class="label"><a id="wcag" name="wcag"></a>WCAG</dt>
+
+ <dd>Ben Caldwell, et al., Eds., <a href=
+ "http://www.w3.org/TR/2008/REC-WCAG20-20081211/"><cite>Web Content Accessibility
+ Guidelines (WCAG) 2.0</cite></a>, W3C Recommendation, 11 December 2008. (See
+ <a href=
+ "http://www.w3.org/TR/2008/REC-WCAG20-20081211/">http://www.w3.org/TR/2008/REC-WCAG20-20081211/</a>.)</dd>
+
+ <dt class="label"><a id="xml10" name="xml10"></a>XML 1.0</dt>
+
+ <dd>Tim Bray, et al. <a href=
+ "http://www.w3.org/TR/2008/REC-xml-20081126/"><cite>Extensible Markup Language
+ (XML) 1.0 (Fifth Edition)</cite></a>, W3C Recommendation, 26 November 2008. (See
+ <a href=
+ "http://www.w3.org/TR/2008/REC-xml-20081126/">http://www.w3.org/TR/2008/REC-xml-20081126/</a>.)</dd>
+
+ <dt class="label"><a id="xml11" name="xml11"></a>XML 1.1</dt>
+
+ <dd>Tim Bray, et al. <a href=
+ "http://www.w3.org/TR/2006/REC-xml11-20060816/"><cite>Extensible Markup Language
+ (XML) 1.1 (Second Edition)</cite></a>, W3C Recommendation, 16 August 2006, edited
+ in place 29 September 2006. (See <a href=
+ "http://www.w3.org/TR/2006/REC-xml11-20060816/">http://www.w3.org/TR/2006/REC-xml11-20060816/</a>.)</dd>
+
+ <dt class="label"><a id="xmlbase" name="xmlbase"></a>XML Base</dt>
+
+ <dd>Jonathan Marsh and Richard Tobin, Eds., <a href=
+ "http://www.w3.org/TR/2009/REC-xmlbase-20090128/"><cite>XML Base (Second
+ Edition)</cite></a>, W3C Recommendation, 28 January 2009. (See <a href=
+ "http://www.w3.org/TR/2009/REC-xmlbase-20090128/">http://www.w3.org/TR/2009/REC-xmlbase-20090128/</a>.)</dd>
+
+ <dt class="label"><a id="xmlid" name="xmlid"></a>XML ID</dt>
+
+ <dd>Jonathan Marsh, Daniel Veillard, Norman Walsh, Eds., <a href=
+ "http://www.w3.org/TR/2005/REC-xml-id-20050909/"><cite>xml:id Version
+ 1.0</cite></a>, W3C Recommendation, 09 September 2005. (See <a href=
+ "http://www.w3.org/TR/2005/REC-xml-id-20050909/">http://www.w3.org/TR/2005/REC-xml-id-20050909/</a>.)</dd>
+
+ <dt class="label"><a id="infoset" name="infoset"></a>XML InfoSet</dt>
+
+ <dd>John Cowan and Richard Tobin, Eds., <a href=
+ "http://www.w3.org/TR/2004/REC-xml-infoset-20040204/"><cite>XML Information Set
+ (Second Edition)</cite></a>, W3C Recommendation, 04 February 2004. (See <a href=
+ "http://www.w3.org/TR/2004/REC-xml-infoset-20040204/">http://www.w3.org/TR/2004/REC-xml-infoset-20040204/</a>.)</dd>
+
+ <dt class="label"><a id="xml-media" name="xml-media"></a>XML Media Types</dt>
+
+ <dd>Makato Murata, Simon St. Laurent, Kan Khon, Eds., <a href=
+ "http://www.rfc-editor.org/rfc/rfc3023.txt"><cite>XML Media Types</cite></a>, RFC
+ 3023, January 2001, IETF.(See <a href=
+ "http://www.rfc-editor.org/rfc/rfc3023.txt">http://www.rfc-editor.org/rfc/rfc3023.txt</a>.)</dd>
+
+ <dt class="label"><a id="xmlns10" name="xmlns10"></a>XML Namespaces 1.0</dt>
+
+ <dd>Tim Bray, et al. <a href=
+ "http://www.w3.org/TR/2009/REC-xml-names-20091208/"><cite>Namespaces in XML 1.0
+ (Third Edition)</cite></a>, W3C Recommendation, 8 December 2009. (See <a href=
+ "http://www.w3.org/TR/2009/REC-xml-names-20091208/">http://www.w3.org/TR/2009/REC-xml-names-20091208/</a>.)</dd>
+
+ <dt class="label"><a id="xsd-1" name="xsd-1"></a>XML Schema Part 1</dt>
+
+ <dd>Henry S. Thompson, David Beech, Murray Maloney, Noah Mendelsohn, Eds.,
+ <a href="http://www.w3.org/TR/xmlschema-1/"><cite>XML Schema Part 1:
+ Structures</cite></a>, W3C Recommendation, 28 October 2004. (See <a href=
+ "http://www.w3.org/TR/xmlschema-1/">http://www.w3.org/TR/xmlschema-1/</a>.)</dd>
+
+ <dt class="label"><a id="xsd-2" name="xsd-2"></a>XML Schema Part 2</dt>
+
+ <dd>Paul Biron and Ashok Malhotra, <a href=
+ "http://www.w3.org/TR/xmlschema-2/"><cite>XML Schema Part 2:
+ Datatypes</cite></a>, W3C Recommendation, 28 October 2004. (See <a href=
+ "http://www.w3.org/TR/xmlschema-2/">http://www.w3.org/TR/xmlschema-2/</a>.)</dd>
+
+ <dt class="label"><a id="xsl11" name="xsl11"></a>XSL 1.1</dt>
+
+ <dd>Anders Berglund, <a href=
+ "http://www.w3.org/TR/2006/REC-xsl11-20061205/"><cite>Extensible Stylesheet
+ Language (XSL) Version 1.1</cite></a>, W3C Recommendation, 05 December 2006. (See
+ <a href=
+ "http://www.w3.org/TR/2006/REC-xsl11-20061205/">http://www.w3.org/TR/2006/REC-xsl11-20061205/</a>.)</dd>
+ </dl>
+ </div>
+
+ <div class="div1">
+ <h2><a id="other-references" name="other-references"></a>H Other References
+ (Non-Normative)</h2>
+
+ <dl>
+ <dt class="label"><a id="ccreq" name="ccreq"></a>CC-DECODER-REQ</dt>
+
+ <dd><a href=
+ "http://www.gpo.gov/fdsys/pkg/CFR-2012-title47-vol4/pdf/CFR-2012-title47-vol4-sec79-101.pdf">
+ <cite>Closed Caption Decoder Requirements for Analog Television
+ Receivers</cite></a>, United States Code of Federal Regulations, Title 47, Volume
+ 1, Part 79, § 79.101. (See <a href=
+ "http://www.gpo.gov/fdsys/pkg/CFR-2012-title47-vol4/pdf/CFR-2012-title47-vol4-sec79-101.pdf">
+ http://www.gpo.gov/fdsys/pkg/CFR-2012-title47-vol4/pdf/CFR-2012-title47-vol4-sec79-101.pdf</a>.)</dd>
+
+ <dt class="label"><a id="cea608e" name="cea608e"></a>CEA-608-E</dt>
+
+ <dd>EIA/CEA-608-E, <a href="http://www.ce.org/"><cite>Line 21 Data
+ Services</cite></a>, EIA/CEA Standard, Consumer Electronics Association
+ (CEA).</dd>
+
+ <dt class="label"><a id="cea708e" name="cea708e"></a>CEA-708-E</dt>
+
+ <dd>CEA-708-E, <a href="http://www.ce.org/"><cite>Digital Television (DTV) Closed
+ Captioning</cite></a>, CEA Standard, Consumer Electronics Association (CEA).</dd>
+
+ <dt class="label"><a id="dcmes" name="dcmes"></a>DCMES 1.1</dt>
+
+ <dd>Dublin Core Metadata Initiative, <a href=
+ "http://dublincore.org/documents/dces/"><cite>Dublin Core Metadata Element Set,
+ Version 1.1: Reference Description</cite></a>. (See <a href=
+ "http://dublincore.org/documents/dces/">http://dublincore.org/documents/dces/</a>.)</dd>
+
+ <dt class="label"><a id="mpeg7-5" name="mpeg7-5"></a>MPEG7-5</dt>
+
+ <dd>ISO/IEC 15938-5, <a href="http://www.iso.org/"><cite>Information technology –
+ Multimedia content description interface – Part 5: Multimedia description
+ schemes</cite></a>, International Organization for Standardization (ISO).</dd>
+
+ <dt class="label"><a id="nsstate" name="nsstate"></a>NSState</dt>
+
+ <dd>Norman Walsh, Ed., <a href=
+ "http://www.w3.org/2001/tag/doc/namespaceState-2006-01-09.html"><cite>The
+ Disposition of Names in an XML Namespace</cite></a>, TAG Finding, 9 January 2006.
+ (See <a href=
+ "http://www.w3.org/2001/tag/doc/namespaceState-2006-01-09.html">http://www.w3.org/2001/tag/doc/namespaceState-2006-01-09</a>.)</dd>
+
+ <dt class="label"><a id="qaf-sg" name="qaf-sg"></a>QAF SG</dt>
+
+ <dd>Karl Dubost, et al., <a href=
+ "http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/"><cite>QA Framework:
+ Specifications Guidelines</cite></a>, W3C Recommendation, 17 August 2005. (See
+ <a href=
+ "http://www.w3.org/TR/qaframe-spec/">http://www.w3.org/TR/qaframe-spec/</a>.)</dd>
+
+ <dt class="label"><a id="smpte170m" name="smpte170m"></a>SMPTE 170M</dt>
+
+ <dd>ANSI/SMPTE 170M, <a href="https://www.smpte.org/"><cite>Television –
+ Composite Analog Video Signal – NTSC for Studio Applications</cite></a>, SMPTE
+ Standard.</dd>
+
+ <dt class="label"><a id="smpte2052" name="smpte2052"></a>SMPTE 2052-11</dt>
+
+ <dd>SMPTE 2052-11, <a href="https://www.smpte.org/"><cite>Conversion from CEA-708
+ Caption Data to SMPTE-TT</cite></a>, SMPTE Recommended Practice.</dd>
+
+ <dt class="label"><a id="svg11" name="svg11"></a>SVG 1.1</dt>
+
+ <dd>Jon Ferraiolo, Jun Fujisawa, Dean Jackson, Eds., <a href=
+ "http://www.w3.org/TR/2003/REC-SVG11-20030114/"><cite>Scalable Vector Graphics
+ (SVG) 1.1 Specification</cite></a>, W3C Recommendation, 14 January 2003. (See
+ <a href=
+ "http://www.w3.org/TR/2003/REC-SVG11-20030114/">http://www.w3.org/TR/2003/REC-SVG11-20030114/</a>.)</dd>
+
+ <dt class="label"><a id="ttaf1-req" name="ttaf1-req"></a>TTAF1-REQ</dt>
+
+ <dd>Glenn Adams, Ed., <a href=
+ "http://www.w3.org/TR/2006/NOTE-ttaf1-req-20060427/"><cite>Timed Text (TT)
+ Authoring Format 1.0 Use Cases and Requirements</cite></a>, W3C Working Group
+ Note, 27 April 2006. (See <a href=
+ "http://www.w3.org/TR/2006/NOTE-ttaf1-req-20060427/">http://www.w3.org/TR/2006/NOTE-ttaf1-req-20060427/</a>.)</dd>
+
+ <dt class="label"><a id="ttml10" name="ttml10"></a>TTML10</dt>
+
+ <dd>Glenn Adams, Ed., <a href=
+ "http://www.w3.org/TR/2010/REC-ttaf1-dfxp-20101118/"><cite>Timed Text Markup
+ Language (TTML) 1.0</cite></a>, W3C Recommendation, 18 November 2010. (See
+ <a href=
+ "http://www.w3.org/TR/2010/REC-ttaf1-dfxp-20101118/">http://www.w3.org/TR/2010/REC-ttaf1-dfxp-20101118/</a>.)</dd>
+
+ <dt class="label"><a id="xhtml10" name="xhtml10"></a>XHTML 1.0</dt>
+
+ <dd>Steven Pemberton, et al., <a href=
+ "http://www.w3.org/TR/2002/REC-xhtml1-20020801/"><cite>XHTML™ 1.0, The Extensible
+ Hypertext Markup Language (Second Edition)</cite></a>, W3C Recommendation, 01
+ August 2002. (See <a href=
+ "http://www.w3.org/TR/2002/REC-xhtml1-20020801/">http://www.w3.org/TR/2002/REC-xhtml1-20020801/</a>.)</dd>
+ </dl>
+ </div>
+
+ <div class="div1">
+ <h2><a id="requirements" name="requirements"></a>I Requirements
+ (Non-Normative)</h2>
+
+ <p>The Timed Text Markup Language (TTML), also known as the Distribution Format
+ Exchange Profile (DFXP) of the Timed Text Authoring Format (TTAF), satisfies a
+ subset of the requirements established by <a href="#ttaf1-req">[TTAF1-REQ]</a>. The
+ following table enumerates these requirements and indicates the extent to which
+ they are satisfied by this specification, where <em>S</em> denotes a requirement is
+ satisfied, <em>P</em> denotes a requirement is partially satisfied, and <em>N</em>
+ denotes a requirement is not satisfied.</p><a id="requirements-table" name=
+ "requirements-table"></a>
+
+ <table class="common">
+ <caption>
+ Table I-1 – Requirement Satisfaction
+ </caption>
+ <col width="10%" span="1">
+ <col width="40%" span="1">
+ <col width="10%" span="1">
+ <col span="1">
+
+ <tbody>
+ <tr>
+ <th>ID</th>
+
+ <th>Name</th>
+
+ <th>Status</th>
+
+ <th>Comments</th>
+ </tr>
+
+ <tr>
+ <td>R100</td>
+
+ <td>Specification Format</td>
+
+ <td>S</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td>R101</td>
+
+ <td>Specification Modularity</td>
+
+ <td>S</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td>R102</td>
+
+ <td>Specification Organization</td>
+
+ <td>S</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td>R103</td>
+
+ <td>Core and Periphery</td>
+
+ <td>S</td>
+
+ <td>TT extension namespaces</td>
+ </tr>
+
+ <tr>
+ <td>R104</td>
+
+ <td>Evolution of Core</td>
+
+ <td>S</td>
+
+ <td>TT extension namespaces</td>
+ </tr>
+
+ <tr>
+ <td>R105</td>
+
+ <td>Ownership of Core</td>
+
+ <td>S</td>
+
+ <td>TT namespaces</td>
+ </tr>
+
+ <tr>
+ <td>R106</td>
+
+ <td>Surjection of Core</td>
+
+ <td>S</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td>R107</td>
+
+ <td>Evolution of Periphery</td>
+
+ <td>S</td>
+
+ <td>TT extension namespaces</td>
+ </tr>
+
+ <tr>
+ <td>R108</td>
+
+ <td>Ownership of Periphery</td>
+
+ <td>S</td>
+
+ <td>Non-TT namespaces</td>
+ </tr>
+
+ <tr>
+ <td>R109</td>
+
+ <td>Transformation</td>
+
+ <td>S</td>
+
+ <td>Supports 3GPP, QText, RealText, SAMI</td>
+ </tr>
+
+ <tr>
+ <td>R110</td>
+
+ <td>Streamable Transformation</td>
+
+ <td>S</td>
+
+ <td>Progressive decoding</td>
+ </tr>
+
+ <tr>
+ <td>R111</td>
+
+ <td>Accessibility – Content</td>
+
+ <td>S</td>
+
+ <td>Alternative document instances</td>
+ </tr>
+
+ <tr>
+ <td>R112</td>
+
+ <td>Accessibility – Authoring System</td>
+
+ <td>S</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td>R200</td>
+
+ <td>Authorability</td>
+
+ <td>S</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td>R201</td>
+
+ <td>Multiple Natural Languages</td>
+
+ <td>S</td>
+
+ <td>Alternative document instances</td>
+ </tr>
+
+ <tr>
+ <td>R202</td>
+
+ <td>Natural Language Coverage</td>
+
+ <td>S</td>
+
+ <td>Unicode 4.0</td>
+ </tr>
+
+ <tr>
+ <td>R203</td>
+
+ <td>Natural Language Association Granularity</td>
+
+ <td>S</td>
+
+ <td>See <code>xml:lang</code></td>
+ </tr>
+
+ <tr>
+ <td>R204</td>
+
+ <td>Minimum Character Representability</td>
+
+ <td>S</td>
+
+ <td>Unicode 4.0</td>
+ </tr>
+
+ <tr>
+ <td>R205</td>
+
+ <td>Intrinsic and Extrinsic Text Content</td>
+
+ <td>P</td>
+
+ <td>Intrinsic only</td>
+ </tr>
+
+ <tr>
+ <td>R206</td>
+
+ <td>Markup Association</td>
+
+ <td>P</td>
+
+ <td>Intrinsic only</td>
+ </tr>
+
+ <tr>
+ <td>R207</td>
+
+ <td>Conditional Content</td>
+
+ <td>N</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td>R208</td>
+
+ <td>Flowed Text</td>
+
+ <td>S</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td>R209</td>
+
+ <td>Logical Flowed Text Vocabulary</td>
+
+ <td>S</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td>R210</td>
+
+ <td>Presentational Flowed Text Vocabulary</td>
+
+ <td>S</td>
+
+ <td>Implied mapping from logical flowed text.</td>
+ </tr>
+
+ <tr>
+ <td>R211</td>
+
+ <td>Flowed Text Vocabulary Relationship</td>
+
+ <td>S</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td>R212</td>
+
+ <td>Flowed Text Vocabulary Separation</td>
+
+ <td>N</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td>R213</td>
+
+ <td>Non-Flowed Text</td>
+
+ <td>N</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td>R214</td>
+
+ <td>Non-Flowed Text Vocabulary</td>
+
+ <td>N</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td>R215</td>
+
+ <td>Hybrid Flowed and Non-Flowed Text</td>
+
+ <td>N</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td>R216</td>
+
+ <td>Hyperlinking</td>
+
+ <td>N</td>
+
+ <td>Can support via XLink</td>
+ </tr>
+
+ <tr>
+ <td>R217</td>
+
+ <td>Embedded Graphics</td>
+
+ <td>N</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td>R218</td>
+
+ <td>Non-Embedded Graphics</td>
+
+ <td>N</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td>R219</td>
+
+ <td>Embedded Fonts</td>
+
+ <td>N</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td>R220</td>
+
+ <td>Non-Embedded Fonts</td>
+
+ <td>N</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td>R221</td>
+
+ <td>Descriptive Vocabulary</td>
+
+ <td>S</td>
+
+ <td>See <code>ttm:agent</code>, <code>ttm:role</code></td>
+ </tr>
+
+ <tr>
+ <td>R222</td>
+
+ <td>Embedded Audio</td>
+
+ <td>N</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td>R223</td>
+
+ <td>Non-Embedded Audio</td>
+
+ <td>N</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td>R290</td>
+
+ <td>Markup Format</td>
+
+ <td>S</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td>R291</td>
+
+ <td>Markup Format and Unicode Interaction</td>
+
+ <td>S</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td>R292</td>
+
+ <td>Extrinsic Resource References</td>
+
+ <td>N</td>
+
+ <td>No extrinsic references</td>
+ </tr>
+
+ <tr>
+ <td>R293</td>
+
+ <td>Schema Validity Specification</td>
+
+ <td>S</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td>R300</td>
+
+ <td>Inline Styling</td>
+
+ <td>S</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td>R301</td>
+
+ <td>Inline Styling Form</td>
+
+ <td>P</td>
+
+ <td>Inline and referential styling</td>
+ </tr>
+
+ <tr>
+ <td>R301</td>
+
+ <td>Out-of-Line Styling</td>
+
+ <td>N</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td>R301</td>
+
+ <td>Out-of-Line Styling Form</td>
+
+ <td>N</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td>R304</td>
+
+ <td>Styling Prioritization</td>
+
+ <td>S</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td>R305</td>
+
+ <td>Style Parameters – Aural</td>
+
+ <td>N</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td>R306</td>
+
+ <td>Style Parameters – Visual</td>
+
+ <td>P</td>
+
+ <td>Supports absolute position, background color, color, display none,
+ display alignment, font family, font size, font style, font weight, height,
+ line height, origin, opacity, overflow, padding (before, after, start, end),
+ text alignment, text shadow (as outline), visibility, width, writing mode,
+ z-index</td>
+ </tr>
+
+ <tr>
+ <td>R390</td>
+
+ <td>Style Parameter Symmetry</td>
+
+ <td>S</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td>R391</td>
+
+ <td>Style Parameter Definitions</td>
+
+ <td>S</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td>R392</td>
+
+ <td>Style Parameter Shorthands</td>
+
+ <td>S</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td>R401</td>
+
+ <td>Inline Timing</td>
+
+ <td>S</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td>R402</td>
+
+ <td>Out-of-Line Timing</td>
+
+ <td>N</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td>R403</td>
+
+ <td>Synchronization Parameters</td>
+
+ <td>P</td>
+
+ <td>Supports begin, end, dur</td>
+ </tr>
+
+ <tr>
+ <td>R404</td>
+
+ <td>Synchronization Parameter Value Spaces</td>
+
+ <td>P</td>
+
+ <td>Supports offset values, media marker values (SMPTE 12M), wall-clock
+ values</td>
+ </tr>
+
+ <tr>
+ <td>R405</td>
+
+ <td>Time Containment Semantics</td>
+
+ <td>P</td>
+
+ <td>Supports sequential, parallel</td>
+ </tr>
+
+ <tr>
+ <td>R500</td>
+
+ <td>Animation Modes</td>
+
+ <td>P</td>
+
+ <td>Supports discrete</td>
+ </tr>
+
+ <tr>
+ <td>R502</td>
+
+ <td>Highlight Animation</td>
+
+ <td>S</td>
+
+ <td><code><set tts:backgroundColor="..."/></code></td>
+ </tr>
+
+ <tr>
+ <td>R503</td>
+
+ <td>Fade Transition Animation</td>
+
+ <td>S</td>
+
+ <td><code><set tts:opacity="..."/></code></td>
+ </tr>
+
+ <tr>
+ <td>R504</td>
+
+ <td>Animated Style Parameters – Aural</td>
+
+ <td>N</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td>R505</td>
+
+ <td>Animated Style Parameters – Visual</td>
+
+ <td>P</td>
+
+ <td>Supports animating background color, color, display, opacity, origin,
+ visibility</td>
+ </tr>
+
+ <tr>
+ <td>N506</td>
+
+ <td>Animated Content</td>
+
+ <td>S</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td>R600</td>
+
+ <td>Metadata Item Association</td>
+
+ <td>S</td>
+
+ <td>See <code>metadata</code>, <code>Metadata.class</code></td>
+ </tr>
+
+ <tr>
+ <td>R601</td>
+
+ <td>Metadata Item Constituents</td>
+
+ <td>P</td>
+
+ <td>Supports name, value</td>
+ </tr>
+
+ <tr>
+ <td>R602</td>
+
+ <td>Metadata Item Value Representation</td>
+
+ <td>P</td>
+
+ <td>See <code>metadata</code></td>
+ </tr>
+
+ <tr>
+ <td>R603</td>
+
+ <td>Metadata Item Extensibility</td>
+
+ <td>S</td>
+
+ <td>See <code>metadata</code></td>
+ </tr>
+
+ <tr>
+ <td>R604</td>
+
+ <td>Metadata Item Validation</td>
+
+ <td>S</td>
+
+ <td>See <code>metadata</code></td>
+ </tr>
+
+ <tr>
+ <td>R690</td>
+
+ <td>Dublin Core Preference</td>
+
+ <td>N</td>
+
+ <td>Uses <code>ttm:copyright</code>, <code>ttm:desc</code>,
+ <code>ttm:title</code></td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+
+ <div class="div1">
+ <h2><a id="derivation" name="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="d3e18942" name="d3e18942"></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 the model (if a
+ model is indicated); the fourth column specifies details about the derivation;
+ the last column refers to additional notes describing the nature of the
+ derivation.</p>
+
+ <p>In the fourth column, which describes details of derivation, a notation is use
+ to indicate the addition or removal of an attribute. For example, in the
+ derivation of the <code>tt:div</code> element, the details column includes
+ "-@class", which denotes that the <code>class</code> attribute that is specified
+ for use with the <code>xhtml:div</code> model element is not specified for use
+ with the corresponding TTML element; in contrast, the details column includes
+ "+@begin", which denotes that a <code>begin</code> attribute is added that is not
+ specified for use with the <code>xhtml:div</code> model element.</p><a id=
+ "element-vocab-derivation-table" name="element-vocab-derivation-table"></a>
+
+ <table class="common">
+ <caption>
+ Table J-1 – Elements
+ </caption>
+ <col width="20%" span="1">
+ <col width="17%" span="1">
+ <col width="13%" align="center" span="1">
+ <col width="40%" span="1">
+ <col width="10%" align="center" span="1">
+
+ <tbody>
+ <tr>
+ <td><span class="strong">Element</span></td>
+
+ <td><span class="strong">Model</span></td>
+
+ <td><span class="strong">Reference</span></td>
+
+ <td><span class="strong">Details</span></td>
+
+ <td><span class="strong">Notes</span></td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#document-structure-vocabulary-body"><code>tt:body</code></a></td>
+
+ <td><code>xhtml:body</code></td>
+
+ <td><a href="#xhtml10">[XHTML 1.0]</a></td>
+
+ <td>-@class, -@dir, -@lang, -@on*, -@title; +@begin, +@dur, +@end,
+ +@region, +@timeContainer, +@ttm:*, +@tts:*; content model subsetted to
+ zero or more division (div) children, and supersetted by optional metadata
+ and animation children</td>
+
+ <td>1,2</td>
+ </tr>
+
+ <tr>
+ <td><a href="#content-vocabulary-br"><code>tt:br</code></a></td>
+
+ <td><code>xhtml:br</code></td>
+
+ <td><a href="#xhtml10">[XHTML 1.0]</a></td>
+
+ <td>-@class, -@title; +@ttm:*, +@tts:*, +@xml:lang, +@xml:space; content
+ model supersetted by optional metadata and animation children for congruity
+ with other content vocabulary</td>
+
+ <td>1,2</td>
+ </tr>
+
+ <tr>
+ <td><a href="#content-vocabulary-div"><code>tt:div</code></a></td>
+
+ <td><code>xhtml:div</code></td>
+
+ <td><a href="#xhtml10">[XHTML 1.0]</a></td>
+
+ <td>-@class, -@dir, -@lang, -@on*, -@title; +@begin, +@dur, +@end,
+ +@region, +@timeContainer, +@ttm:*, +@tts:*, +@xml:space; content model
+ subsetted to zero or more paragraph (p) children, and supersetted by
+ optional metadata and animation children</td>
+
+ <td>1,2,3</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#document-structure-vocabulary-head"><code>tt:head</code></a></td>
+
+ <td><code>xhtml:head</code></td>
+
+ <td><a href="#xhtml10">[XHTML 1.0]</a></td>
+
+ <td>-@dir, -@lang, -@profile; +@id, +@xml:space; content model changed to
+ optional metadata children, followed by optional styling child, followed by
+ optional layout child</td>
+
+ <td>1,3</td>
+ </tr>
+
+ <tr>
+ <td><a href="#layout-vocabulary-layout"><code>tt:layout</code></a></td>
+
+ <td><code>fo:simple-page-master</code></td>
+
+ <td><a href="#xsl11">[XSL 1.1]</a></td>
+
+ <td>conceptual derivation</td>
+
+ <td>4</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#metadata-vocabulary-metadata"><code>tt:metadata</code></a></td>
+
+ <td><code>svg:metadata</code></td>
+
+ <td><a href="#svg11">[SVG 1.1]</a></td>
+
+ <td>-@xml:base; +@ttm:*, +@xml:lang, +@xml:space; content model subsetted
+ to foreign namespace element content only (no #PCDATA)</td>
+
+ <td>3,5</td>
+ </tr>
+
+ <tr>
+ <td><a href="#content-vocabulary-p"><code>tt:p</code></a></td>
+
+ <td><code>xhtml:p</code></td>
+
+ <td><a href="#xhtml10">[XHTML 1.0]</a></td>
+
+ <td>-@class, -@dir, -@lang, -@on*, -@title; +@begin, +@dur, +@end,
+ +@region, +@timeContainer, +@ttm:*, +@tts:*, +@xml:space; content model
+ subsetted to zero or more span children, and supersetted by optional
+ metadata and animation children</td>
+
+ <td>1,2,3</td>
+ </tr>
+
+ <tr>
+ <td><a href="#layout-vocabulary-region"><code>tt:region</code></a></td>
+
+ <td><code>fo:region-*</code></td>
+
+ <td><a href="#xsl11">[XSL 1.1]</a></td>
+
+ <td>conceptual derivation</td>
+
+ <td>4</td>
+ </tr>
+
+ <tr>
+ <td><a href="#animation-vocabulary-set"><code>tt:set</code></a></td>
+
+ <td><code>svg:set</code></td>
+
+ <td><a href="#svg11">[SVG 1.1]</a></td>
+
+ <td>-@* except begin, dur, end; +@tts:*, +@xml:lang, +@xml:space</td>
+
+ <td>3,6</td>
+ </tr>
+
+ <tr>
+ <td><a href="#content-vocabulary-span"><code>tt:span</code></a></td>
+
+ <td><code>xhtml:span</code></td>
+
+ <td><a href="#xhtml10">[XHTML 1.0]</a></td>
+
+ <td>-@class, -@dir, -@lang, -@on*, -@title; +@begin, +@dur, +@end,
+ +@region, +@timeContainer, +@ttm:*, +@tts:*, +@xml:space; content model
+ subsetted to zero or more #PCDATA or break (br) children, and supersetted
+ by optional metadata and animation children</td>
+
+ <td>1,2,3</td>
+ </tr>
+
+ <tr>
+ <td><a href="#styling-vocabulary-style"><code>tt:style</code></a></td>
+
+ <td><em>style specification</em></td>
+
+ <td><a href="#css2">[CSS2]</a></td>
+
+ <td>XML representation of identified set of pairs of style property name
+ and value, with optional inclusion of other styles by reference to other
+ style elements</td>
+
+ <td>7</td>
+ </tr>
+
+ <tr>
+ <td><a href="#styling-vocabulary-styling"><code>tt:styling</code></a></td>
+
+ <td><code>xhtml:style</code></td>
+
+ <td><a href="#xhtml10">[XHTML 1.0]</a></td>
+
+ <td>XML representation of a set of style specifications sets, each
+ represented by a style child element</td>
+
+ <td>1,7</td>
+ </tr>
+
+ <tr>
+ <td><a href="#document-structure-vocabulary-tt"><code>tt:tt</code></a></td>
+
+ <td><code>xhtml:html</code></td>
+
+ <td><a href="#xhtml10">[XHTML 1.0]</a></td>
+
+ <td>-@dir, -@lang; +@id, +@ttp:*, +@xml:space; content model subsetted by
+ permitting body and/or head to be optional</td>
+
+ <td>1,8</td>
+ </tr>
+
+ <tr>
+ <td><a href="#metadata-vocabulary-actor"><code>ttm:actor</code></a></td>
+
+ <td><code>mpeg7:Creator</code></td>
+
+ <td><a href="#mpeg7-5">[MPEG7-5]</a></td>
+
+ <td>conceptual derivation</td>
+
+ <td>4</td>
+ </tr>
+
+ <tr>
+ <td><a href="#metadata-vocabulary-agent"><code>ttm:agent</code></a></td>
+
+ <td><code>mpeg7:Agent</code></td>
+
+ <td><a href="#mpeg7-5">[MPEG7-5]</a></td>
+
+ <td>conceptual derivation</td>
+
+ <td>4</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#metadata-vocabulary-copyright"><code>ttm:copyright</code></a></td>
+
+ <td><code>mpeg7:CopyrightString</code></td>
+
+ <td><a href="#mpeg7-5">[MPEG7-5]</a></td>
+
+ <td>conceptual derivation</td>
+
+ <td>4</td>
+ </tr>
+
+ <tr>
+ <td><a href="#metadata-vocabulary-desc"><code>ttm:desc</code></a></td>
+
+ <td><code>svg:desc</code></td>
+
+ <td><a href="#svg11">[SVG 1.1]</a></td>
+
+ <td>-@class, -@style, -@xml:base</td>
+
+ <td>2,5,9</td>
+ </tr>
+
+ <tr>
+ <td><a href="#metadata-vocabulary-name"><code>ttm:name</code></a></td>
+
+ <td><code>mpeg7:Name</code></td>
+
+ <td><a href="#mpeg7-5">[MPEG7-5]</a></td>
+
+ <td>conceptual derivation</td>
+
+ <td>4</td>
+ </tr>
+
+ <tr>
+ <td><a href="#metadata-vocabulary-title"><code>ttm:title</code></a></td>
+
+ <td><code>svg:title</code></td>
+
+ <td><a href="#svg11">[SVG 1.1]</a></td>
+
+ <td>-@class, -@style, -@xml:base</td>
+
+ <td>2,5,9</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#parameter-vocabulary-extension"><code>ttp:extension</code></a></td>
+
+ <td><code>@requiredExtensions</code></td>
+
+ <td><a href="#svg11">[SVG 1.1]</a></td>
+
+ <td>conceptual derivation</td>
+
+ <td>10</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#parameter-vocabulary-extensions"><code>ttp:extensions</code></a></td>
+
+ <td><code>@requiredExtensions</code></td>
+
+ <td><a href="#svg11">[SVG 1.1]</a></td>
+
+ <td>conceptual derivation</td>
+
+ <td>10</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#parameter-vocabulary-feature"><code>ttp:feature</code></a></td>
+
+ <td><code>@requiredFeatures</code></td>
+
+ <td><a href="#svg11">[SVG 1.1]</a></td>
+
+ <td>conceptual derivation</td>
+
+ <td>10</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#parameter-vocabulary-features"><code>ttp:features</code></a></td>
+
+ <td><code>@requiredFeatures</code></td>
+
+ <td><a href="#svg11">[SVG 1.1]</a></td>
+
+ <td>conceptual derivation</td>
+
+ <td>10</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#parameter-vocabulary-profile"><code>ttp:profile</code></a></td>
+
+ <td><code>@baseProfile</code></td>
+
+ <td><a href="#svg11">[SVG 1.1]</a></td>
+
+ <td>conceptual derivation</td>
+
+ <td>11</td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <ol class="enumar">
+ <li>
+ <p>Derivation is indicated with respect to the strict DTD defined by
+ <a href="#xhtml10">[XHTML 1.0]</a>, §A.1.</p>
+ </li>
+
+ <li>
+ <p>The <code>class</code> attribute is effectively replaced by the
+ <code>style</code> attribute, which, instead of specifying an inline style,
+ refers indirectly to one or more <a href=
+ "#styling-vocabulary-style"><code>style</code></a> elements that define a
+ set of style specification sets.</p>
+ </li>
+
+ <li>
+ <p>The <code>xml:lang</code> and <code>xml:space</code> attributes are
+ defined for all element types in order to support their inheritance
+ semantics to operate in the context of foreign namespace elements.</p>
+ </li>
+
+ <li>
+ <p>Derivation is conceptual (notional) only.</p>
+ </li>
+
+ <li>
+ <p>The <code>xml:base</code> attribute is not used since there are no
+ external references from core vocabulary.</p>
+ </li>
+
+ <li>
+ <p>The <code>attributeName</code> and <code>to</code> attributes of
+ <code>svg:set</code> are replaced by the direct expression of the target
+ attribute name and value by use of a <code>tts:*</code> attribute.</p>
+ </li>
+
+ <li>
+ <p>CSS style specification syntax is mapped to XML by use of attributes
+ defined in the TT Style Namespace.</p>
+ </li>
+
+ <li>
+ <p>The <code>xml:id</code> attribute is defined for use on all element
+ types.</p>
+ </li>
+
+ <li>
+ <p>The <code>style</code> attribute is supported only on <a href=
+ "#element-vocab-type-content">Content</a> elements.</p>
+ </li>
+
+ <li>
+ <p>Derived from the use of <code>@requiredExtensions</code> and
+ <code>@requiredFeatures</code> on the <code>svg:svg</code> element, but
+ extended to support distinct specification of optionality.</p>
+ </li>
+
+ <li>
+ <p>Derived from the use of <code>@baseProfile</code> and
+ <code>@version</code> on the <code>svg:svg</code> element.</p>
+ </li>
+ </ol>
+ </div>
+ </div>
+
+ <div class="div2">
+ <h3><a id="d3e19424" name="d3e19424"></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 the model (if a
+ model is indicated); the fourth column specifies details about the derivation;
+ the last column refers to additional notes describing the nature of the
+ derivation.</p>
+
+ <p>In the fourth column, which describes details of derivation, a notation is use
+ to indicate the addition or removal of an attribute value. For example, in the
+ derivation of the <code>timeContainer</code> attribute, the details column
+ includes "-excl", which denotes that the <code>excl</code> value that is
+ specified for use with the <code>timeContainer</code> model attribute is not
+ specified for use with the corresponding TTML attribute; similarly, an
+ "+<em>value</em>" in the details column indicates that the attribute's values
+ have been extended to include <em>value</em>.</p>
+
+ <p>Only those attributes that are specified for use on more than one TTML element
+ type are listed below. Those per-element namespace attributes that are uniquely
+ defined for a specific TTML element type are not listed below, but are considered
+ to be part of the specific element type's derivation described in <a href=
+ "#element-vocab-derivation-table"><b>Table J-1 – Elements</b></a>
+ above.</p><a id="attribute-vocab-derivation-table" name=
+ "attribute-vocab-derivation-table"></a>
+
+ <table class="common">
+ <caption>
+ Table J-2 – Attributes
+ </caption>
+ <col width="20%" span="1">
+ <col width="17%" span="1">
+ <col width="13%" align="center" span="1">
+ <col width="40%" span="1">
+ <col width="10%" align="center" span="1">
+
+ <tbody>
+ <tr>
+ <td><span class="strong">Attribute</span></td>
+
+ <td><span class="strong">Model</span></td>
+
+ <td><span class="strong">Reference</span></td>
+
+ <td><span class="strong">Details</span></td>
+
+ <td><span class="strong">Notes</span></td>
+ </tr>
+
+ <tr>
+ <td><a href="#timing-attribute-begin"><code>begin</code></a></td>
+
+ <td><code>begin</code></td>
+
+ <td><a href="#smil21">[SMIL 2.1]</a></td>
+
+ <td>see notes</td>
+
+ <td>2,3,4</td>
+ </tr>
+
+ <tr>
+ <td><a href="#timing-attribute-dur"><code>dur</code></a></td>
+
+ <td><code>dur</code></td>
+
+ <td><a href="#smil21">[SMIL 2.1]</a></td>
+
+ <td>see notes</td>
+
+ <td>2,3,4</td>
+ </tr>
+
+ <tr>
+ <td><a href="#timing-attribute-end"><code>end</code></a></td>
+
+ <td><code>end</code></td>
+
+ <td><a href="#smil21">[SMIL 2.1]</a></td>
+
+ <td>see notes</td>
+
+ <td>2,3,4</td>
+ </tr>
+
+ <tr>
+ <td><a href="#layout-attribute-region"><code>region</code></a></td>
+
+ <td><code>master-reference</code></td>
+
+ <td><a href="#xsl11">[XSL 1.1]</a></td>
+
+ <td>conceptual derivation</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td><a href="#style-attribute-style"><code>style</code></a></td>
+
+ <td><code>class</code></td>
+
+ <td><a href="#css2">[CSS2]</a></td>
+
+ <td>dereferences style specification(s) directly</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#timing-attribute-timeContainer"><code>timeContainer</code></a></td>
+
+ <td><code>timeContainer</code></td>
+
+ <td><a href="#smil21">[SMIL 2.1]</a></td>
+
+ <td>-excl, -none; no default attribute value</td>
+
+ <td>5</td>
+ </tr>
+
+ <tr>
+ <td><a href="#metadata-attribute-agent"><code>ttm:agent</code></a></td>
+
+ <td><em>none</em></td>
+
+ <td></td>
+
+ <td>used to attribute agent of content</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td><a href="#metadata-attribute-role"><code>ttm:role</code></a></td>
+
+ <td><em>none</em></td>
+
+ <td></td>
+
+ <td>used to attribute role of content</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#parameter-attribute-cellResolution"><code>ttp:cellResolution</code></a></td>
+
+ <td><em>none</em></td>
+
+ <td></td>
+
+ <td>expresses uniform grid resolution for cell based coordinates</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#parameter-attribute-clockMode"><code>ttp:clockMode</code></a></td>
+
+ <td><em>none</em></td>
+
+ <td></td>
+
+ <td>determines how to interpret time expressions</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#parameter-attribute-frameRate"><code>ttp:frameRate</code></a></td>
+
+ <td><em>none</em></td>
+
+ <td></td>
+
+ <td>expresses integral frame rate</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#parameter-attribute-frameRateMultiplier"><code>ttp:frameRateMultiplier</code></a></td>
+
+ <td><em>none</em></td>
+
+ <td></td>
+
+ <td>used to express non-integral, rational frame rates</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#parameter-attribute-markerMode"><code>ttp:markerMode</code></a></td>
+
+ <td><em>none</em></td>
+
+ <td></td>
+
+ <td>expresses marker continuity semantics</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#parameter-attribute-pixelAspectRatio"><code>ttp:pixelAspectRatio</code></a></td>
+
+ <td><em>none</em></td>
+
+ <td></td>
+
+ <td>expresses pixel aspect ratio of related media</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#parameter-attribute-profile"><code>ttp:profile</code></a></td>
+
+ <td><em>none</em></td>
+
+ <td></td>
+
+ <td>expresses profile of TTML used by a <em>Document Instance</em></td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#parameter-attribute-dropMode"><code>ttp:dropMode</code></a></td>
+
+ <td><em>none</em></td>
+
+ <td></td>
+
+ <td>expresses frame counting (drop) modes</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#parameter-attribute-subFrameRate"><code>ttp:subFrameRate</code></a></td>
+
+ <td><em>none</em></td>
+
+ <td></td>
+
+ <td>expresses sub-frame rate</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#parameter-attribute-tickRate"><code>ttp:tickRate</code></a></td>
+
+ <td><em>none</em></td>
+
+ <td></td>
+
+ <td>used to interpret tick based time expressions</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#parameter-attribute-timeBase"><code>ttp:timeBase</code></a></td>
+
+ <td><em>none</em></td>
+
+ <td></td>
+
+ <td>used to interpret semantics of time expressions</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#style-attribute-backgroundColor"><code>tts:backgroundColor</code></a></td>
+
+ <td><code>background-color</code></td>
+
+ <td><a href="#xsl11">[XSL 1.1]</a></td>
+
+ <td><code>-inherit</code></td>
+
+ <td>1,6</td>
+ </tr>
+
+ <tr>
+ <td><a href="#style-attribute-color"><code>tts:color</code></a></td>
+
+ <td><code>color</code></td>
+
+ <td><a href="#xsl11">[XSL 1.1]</a></td>
+
+ <td><code>-inherit</code></td>
+
+ <td>6</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#style-attribute-direction"><code>tts:direction</code></a></td>
+
+ <td><code>direction</code></td>
+
+ <td><a href="#xsl11">[XSL 1.1]</a></td>
+
+ <td><code>-inherit</code></td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td><a href="#style-attribute-display"><code>tts:display</code></a></td>
+
+ <td><code>display</code></td>
+
+ <td><a href="#css2">[CSS2]</a></td>
+
+ <td>only <code>auto</code>, <code>none</code></td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#style-attribute-displayAlign"><code>tts:displayAlign</code></a></td>
+
+ <td><code>display-align</code></td>
+
+ <td><a href="#xsl11">[XSL 1.1]</a></td>
+
+ <td><code>-inherit</code></td>
+
+ <td>1</td>
+ </tr>
+
+ <tr>
+ <td><a href="#style-attribute-extent"><code>tts:extent</code></a></td>
+
+ <td><code>width</code>, <code>height</code></td>
+
+ <td><a href="#xsl11">[XSL 1.1]</a></td>
+
+ <td>shorthand property</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#style-attribute-fontFamily"><code>tts:fontFamily</code></a></td>
+
+ <td><code>font-family</code></td>
+
+ <td><a href="#xsl11">[XSL 1.1]</a></td>
+
+ <td><code>-inherit</code>, extends generic family names</td>
+
+ <td>1</td>
+ </tr>
+
+ <tr>
+ <td><a href="#style-attribute-fontSize"><code>tts:fontSize</code></a></td>
+
+ <td><code>font-size</code></td>
+
+ <td><a href="#xsl11">[XSL 1.1]</a></td>
+
+ <td><code>-inherit</code></td>
+
+ <td>1,7</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#style-attribute-fontStyle"><code>tts:fontStyle</code></a></td>
+
+ <td><code>font-style</code></td>
+
+ <td><a href="#xsl11">[XSL 1.1]</a></td>
+
+ <td><code>-inherit</code>, <code>-backslant</code></td>
+
+ <td>1</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#style-attribute-fontWeight"><code>tts:fontWeight</code></a></td>
+
+ <td><code>font-weight</code></td>
+
+ <td><a href="#xsl11">[XSL 1.1]</a></td>
+
+ <td><code>-inherit</code>, <code>-bolder</code>, <code>-lighter</code>,
+ <code>-<number></code></td>
+
+ <td>1</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#style-attribute-lineHeight"><code>tts:lineHeight</code></a></td>
+
+ <td><code>line-height</code></td>
+
+ <td><a href="#xsl11">[XSL 1.1]</a></td>
+
+ <td><code>-inherit</code>, <code>-<number></code>,
+ <code>-<space></code></td>
+
+ <td>1</td>
+ </tr>
+
+ <tr>
+ <td><a href="#style-attribute-opacity"><code>tts:opacity</code></a></td>
+
+ <td><code>opacity</code></td>
+
+ <td><a href="#css3-color">[CSS3 Color]</a></td>
+
+ <td><code>-inherit</code></td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td><a href="#style-attribute-origin"><code>tts:origin</code></a></td>
+
+ <td><code>top</code>, <code>left</code></td>
+
+ <td><a href="#xsl11">[XSL 1.1]</a></td>
+
+ <td>shorthand property</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td><a href="#style-attribute-overflow"><code>tts:overflow</code></a></td>
+
+ <td><code>overflow</code></td>
+
+ <td><a href="#xsl11">[XSL 1.1]</a></td>
+
+ <td><code>-inherit</code>, <code>-auto</code>,
+ <code>-error-if-overflow</code></td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td><a href="#style-attribute-padding"><code>tts:padding</code></a></td>
+
+ <td><code>padding</code></td>
+
+ <td><a href="#xsl11">[XSL 1.1]</a></td>
+
+ <td><code>-inherit</code></td>
+
+ <td>8</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#style-attribute-showBackground"><code>tts:showBackground</code></a></td>
+
+ <td><code>showBackground</code></td>
+
+ <td><a href="#smil21">[SMIL 2.1]</a></td>
+
+ <td><code>-inherit</code></td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#style-attribute-textAlign"><code>tts:textAlign</code></a></td>
+
+ <td><code>text-align</code></td>
+
+ <td><a href="#xsl11">[XSL 1.1]</a></td>
+
+ <td><code>-inherit</code></td>
+
+ <td>1</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#style-attribute-textDecoration"><code>tts:textDecoration</code></a></td>
+
+ <td><code>text-decoration</code></td>
+
+ <td><a href="#xsl11">[XSL 1.1]</a></td>
+
+ <td><code>-inherit</code></td>
+
+ <td>1,9,12</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#style-attribute-textOutline"><code>tts:textOutline</code></a></td>
+
+ <td><code>text-shadow</code></td>
+
+ <td><a href="#xsl11">[XSL 1.1]</a></td>
+
+ <td><code>-inherit</code></td>
+
+ <td>10,12</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#style-attribute-unicodeBidi"><code>tts:unicodeBidi</code></a></td>
+
+ <td><code>unicode-bidi</code></td>
+
+ <td><a href="#xsl11">[XSL 1.1]</a></td>
+
+ <td><code>-inherit</code></td>
+
+ <td>1</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#style-attribute-visibility"><code>tts:visibility</code></a></td>
+
+ <td><code>visibility</code></td>
+
+ <td><a href="#xsl11">[XSL 1.1]</a></td>
+
+ <td><code>-inherit</code>, <code>-collapse</code></td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#style-attribute-wrapOption"><code>tts:wrapOption</code></a></td>
+
+ <td><code>wrap-option</code></td>
+
+ <td><a href="#xsl11">[XSL 1.1]</a></td>
+
+ <td><code>-inherit</code></td>
+
+ <td>1</td>
+ </tr>
+
+ <tr>
+ <td><a href=
+ "#style-attribute-writingMode"><code>tts:writingMode</code></a></td>
+
+ <td><code>writing-mode</code></td>
+
+ <td><a href="#xsl11">[XSL 1.1]</a></td>
+
+ <td><code>-inherit</code>, <code>+tblr</code></td>
+
+ <td>1</td>
+ </tr>
+
+ <tr>
+ <td><a href="#style-attribute-zIndex"><code>tts:zIndex</code></a></td>
+
+ <td><code>z-index</code></td>
+
+ <td><a href="#xsl11">[XSL 1.1]</a></td>
+
+ <td><code>-inherit</code></td>
+
+ <td>1</td>
+ </tr>
+
+ <tr>
+ <td><a href="#content-attribute-id"><code>xml:id</code></a></td>
+
+ <td><code>xml:id</code></td>
+
+ <td><a href="#xmlid">[XML ID]</a></td>
+
+ <td>complies with model</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td><a href="#content-attribute-lang"><code>xml:lang</code></a></td>
+
+ <td><code>xml:lang</code></td>
+
+ <td><a href="#xml10">[XML 1.0]</a></td>
+
+ <td>complies with model</td>
+
+ <td></td>
+ </tr>
+
+ <tr>
+ <td><a href="#content-attribute-space"><code>xml:space</code></a></td>
+
+ <td><code>xml:space</code></td>
+
+ <td><a href="#xml10">[XML 1.0]</a></td>
+
+ <td>see notes</td>
+
+ <td>11</td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <ol class="enumar">
+ <li>
+ <p>Attribute name and/or value(s) are normalized to use
+ <em>lowerCamelCase</em> naming convention.</p>
+ </li>
+
+ <li>
+ <p>Restricted to expressing a clock value that denotes one of the following
+ in accordance to whether the parameter expressed by the
+ <code>ttp:timeBase</code> attribute is <code>media</code>,
+ <code>smpte</code>, or <code>clock</code>, respectively: (1) an offset from
+ an implicit syncbase that is linked to a media time line, (2) an event time
+ that represents the occurrence of an implicit media marker, or (3) a
+ wall-clock time.</p>
+ </li>
+
+ <li>
+ <p>Syntactically subsets and supersets the <a href="#smil21">[SMIL
+ 2.1]</a> <code>Clock-value</code> syntax as follows: (1) requires
+ non-negative <code>Full-clock-value</code> or <code>Timecount-value</code>;
+ (2) if <code>Full-clock-value</code> then <em>hours</em> must be two or
+ more digits; (3) if <code>Timecount-value</code>, then <em>metric</em> must
+ be specified; (4) uses <code>m</code> as alias for <code>min</code> metric
+ to denote minutes; (5) adds <code>f</code> and <code>t</code> metrics
+ denoting frames and ticks, respectively; (6) adds alternative expression of
+ optional <code>Fraction</code> in <code>Full-clock-value</code> by
+ specifying frame count or frame count with subframe count.</p>
+ </li>
+
+ <li>
+ <p>Interpretation of time expression is further constrained by parameters
+ expressed by <code>ttp:clockMode</code>, <code>ttp:dropMode</code>,
+ <code>ttp:frameRate</code>, <code>ttp:frameRateMultiplier</code>,
+ <code>ttp:markerMode</code>, <code>ttp:subFrameRate</code>,
+ <code>ttp:tickRate</code>, and <code>ttp:timeBase</code> attributes.</p>
+ </li>
+
+ <li>
+ <p>Uses subset of named colors from model to which two aliases are added as
+ follows: <code>magenta</code> as <code>fuchsia</code>, and
+ <code>cyan</code> as <code>aqua</code>.</p>
+ </li>
+
+ <li>
+ <p>If not specified, then parallel (par) container semantics apply to the
+ element types specified by <a href=
+ "#timing-attribute-timeContainer"><b>10.2.4 timeContainer</b></a>.</p>
+ </li>
+
+ <li>
+ <p>Restricts size to length specification which can be a percentage; adds
+ optional second length (or percentage) for specifying separate horizontal
+ and vertical scaling of glyph's EM square.</p>
+ </li>
+
+ <li>
+ <p>Expressed in terms of writing mode relative padding properties rather
+ than absolute padding properties.</p>
+ </li>
+
+ <li>
+ <p>Excludes <code>blink</code> and <code>no-blink</code> values.</p>
+ </li>
+
+ <li>
+ <p>Uses only one length specification instead of two, where one length
+ defines distance of outline effect from nominal edge of glyph contour
+ outline perpendicular to point of glyph contour. Percentage lengths are
+ also added to express outline effect in relative to font size. Outline
+ effects are intended to be drawn both outside of outer closed contours and
+ inside of inner closed contours.</p>
+ </li>
+
+ <li>
+ <p>On root element, default attribute value specified as
+ <code>default</code>, which is defined in terms of whitespace
+ normalization. Semantics of preservation and default normalization are
+ defined in terms of presentation semantics by <a href=
+ "#content-attribute-space"><b>7.2.3 xml:space</b></a>.</p>
+ </li>
+
+ <li>
+ <p>Defined to be inheritable.</p>
+ </li>
+ </ol>
+ </div>
+ </div>
+ </div>
+
+ <div class="div1">
+ <h2><a id="qa" name="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="d3e20309" name="d3e20309"></a>K.1 Requirements</h3><a id=
+ "qa-framework-requirements-table" name="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="d3e20473" name="d3e20473"></a>K.2 Guidelines</h3><a id=
+ "qa-framework-guidelines-table" name="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">
+ <h2><a id="streaming" name="streaming"></a>L Streaming TTML Content
+ (Non-Normative)</h2>
+
+ <p>TTML Content is designed to support streamability by implementing the following
+ properties:</p>
+
+ <ul>
+ <li>
+ <p>can be progressively encoded (i.e., does not require computing subsequent
+ data prior to sending current data);</p>
+ </li>
+
+ <li>
+ <p>can be progressively decoded (i.e., does not require forward references, but
+ uses only reverse references when necessary);</p>
+ </li>
+
+ <li>
+ <p>does not require dereferencing (and subsequent loading) of any resources
+ other than TTML Content (i.e., no embedded URIs);</p>
+ </li>
+
+ <li>
+ <p>does not support alternative content forms (e.g., different language,
+ graphics formats, time bases) in a single document;</p>
+ </li>
+
+ <li>
+ <p>has timing structure compiled into inline format that makes possible a
+ temporal ordering of content that follows temporal presentation order;</p>
+ </li>
+
+ <li>
+ <p>constrains content models to prevent arbitrary nested content
+ structures;</p>
+ </li>
+ </ul>
+
+ <p>One possible means by which TTML Content may be streamed is to partition a
+ <em>Document Instance</em>'s information set into non-overlapping fragments, where
+ one particular fragment, call it the <em>root fragment</em>, represents the front
+ matter (head) of the <em>Document Instance</em> as well as its top level structural
+ elements, and other fragments represent content whose time intervals are expected
+ to be active in parallel.</p>
+
+ <p>In applications that require arbitrary (random) entry into a stream, i.e., the
+ property of being able to start reading data at an arbitrary data access unit, the
+ root fragment will be repetitively transmitted (inserted) into the stream in order
+ to permit a decoder to resynchronize and acquire sufficient structural information
+ in the information set in order to interpret subsequent content fragments.</p>
+
+ <p>An example of such a fragmentation of a <em>Document Instance</em> is shown in
+ <a href="#fragment-streaming-graphic"><b>Figure 3 – Fragment
+ Streaming</b></a>.</p><a id="fragment-streaming-graphic" name=
+ "fragment-streaming-graphic"></a>
+
+ <table class="example-images">
+ <caption>
+ Figure 3 – Fragment Streaming
+ </caption>
+ <col span="1">
+
+ <tbody>
+ <tr>
+ <td><img src="images/streaming.png" alt="Fragment Streaming"></td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>This specification does not define a transport buffer model or a decoder
+ capabilities model.</p>
+ </div>
+ </div>
+
+ <div class="div1">
+ <h2><a id="concrete-encoding" name="concrete-encoding"></a>M Concrete Encoding
+ (Non-Normative)</h2>
+
+ <p>In the absence of other requirements, it is recommended that a <em>Document
+ Instance</em> 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>&lt;</code>, and <code>&gt;</code>.</p>
+ </div>
+ </div>
+
+ <div class="div1">
+ <h2><a id="time-expression-semantics" name="time-expression-semantics"></a>N Time
+ Expression Semantics (Non-Normative)</h2>
+
+ <p>This appendix describes the intended semantics for interpreting time expressions
+ in <em>Document Instances</em>.</p>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>It is expected that the information in this appendix will be elevated to
+ normative status in a future revision of this specification.</p>
+ </div>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The phrase <em>local real time</em> as used below is intended to model a
+ virtual real time clock in the document processing context, where <em>local</em>
+ means in the immediate proximity of the implementation of this processing
+ context. The intent of defining relationships with this virtual clock is to
+ establish a locally valid physical realization of time for didactic purposes.</p>
+ </div>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The phrase <em>play rate</em> as used below is intended to model a (possibly
+ variable) parameter in the document processing context wherein the rate of
+ playback (or interpretation) of time may artificially dilated or narrowed, for
+ example, when slowing down or speeding up the rate of playback of a <em>Related
+ Media Object</em>. Without loss of generality, the following discussion assumes a
+ fixed play(back) rate. In the case of variable play rates, appropriate
+ adjustments may need to be made to the resulting computations.</p>
+ </div>
+
+ <div class="div2">
+ <h3><a id="time-expression-semantics-clock" name=
+ "time-expression-semantics-clock"></a>N.1 Clock Time Base</h3>
+
+ <p>When operating with the <code>clock</code> time base, the following semantics
+ should be applied for interpreting time expressions, as defined by <a href=
+ "#timing-value-timeExpression"><timeExpression></a>, and their relationship
+ to media time and local real time.</p>
+
+ <p>The clock time base <span class="strong"><code>C</code></span> is related to
+ local real time <span class="strong"><code>R</code></span> expressed in an
+ arbitrary (implementation defined) epoch <span class=
+ "strong"><code>E</code></span> as follows:</p><a id="clock-time-and-real-time"
+ name="clock-time-and-real-time"></a>
+
+ <table class="semantics">
+ <caption>
+ TTML Semantics – Clock Time and Real Time Relationship
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <blockquote>
+ <p><br>
+ <code>R = C + epochOffset + discontinuityOffset</code><br>
+ <br>
+ where <code>C ∈ ℜ</code>, <code>0 ≤ C < ∞</code>, <code>C</code> in
+ seconds since the most immediately prior midnight of the reference
+ clock base;<br>
+ <br>
+ <code>epochOffset ∈ ℜ</code>, <code>0 ≤ epochOffset < ∞</code>,
+ <code>epochOffset</code> in seconds, with 0 being the beginning of
+ epoch <code>E</code>, and where the value of <code>epochOffset</code>
+ is determined from the computed value of the <code>ttp:clockMode</code>
+ parameter as follows:<br>
+ <br>
+ (1) if <code>local</code>, then the difference between the local real
+ time at the most immediately prior local midnight and the local real
+ time at the beginning of epoch <code>E</code>, expressed in
+ seconds;<br>
+ <br>
+ (2) if <code>gps</code>, then the difference between the GPS time at
+ the most immediately prior GPS midnight and the GPS time at the
+ beginning of epoch <code>E</code>, expressed in seconds;<br>
+ <br>
+ (3) if <code>utc</code>, then the difference between the UTC time at
+ the most immediately prior UTC midnight and the UTC time at the
+ beginning of epoch <code>E</code>, expressed in seconds;<br>
+ <br>
+ <code>discontinuityOffset ∈ ℜ</code>, <code>−∞ < discontinuityOffset
+ < ∞</code>, <code>discontinuityOffset</code> in seconds, and where
+ the value of <code>discontinuityOffset</code> is equal to the sum of
+ leap seconds (and fractions thereof) that have been added (or
+ subtracted) since the most immediately prior midnight in the reference
+ clock base;<br>
+ <br>
+ and <code>epochOffset</code> and <code>discontinuityOffset</code> are
+ determined once and only once prior to the beginning of the <em>Root
+ Temporal Extent</em> such that during the period between value
+ determination and the beginning of the <em>Root Temporal Extent</em>
+ there occurs no local midnight or reference clock base
+ discontinuity.<br></p>
+ </blockquote>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>Time value expressions, as denoted by a <a href=
+ "#timing-value-timeExpression"><timeExpression></a>, are related to clock
+ time <span class="strong"><code>C</code></span> as follows:</p><a id=
+ "time-expressions-and-clock-time" name="time-expressions-and-clock-time"></a>
+
+ <table class="semantics">
+ <caption>
+ TTML Semantics – Time Expressions and Clock Time Relationship
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <blockquote>
+ <p><br>
+ If a time expression uses the <em>clock-time</em> form or an
+ <em>offset-time</em> form that doesn't use the ticks (<code>t</code>)
+ metric, then:<br>
+ <br>
+ <code>C = 3600 * hours + 60 * minutes + seconds</code><br>
+ <br>
+ where <code>hours</code>, <code>minutes</code>, <code>seconds</code>
+ components are extracted from time expression if present, or zero if
+ not present.<br>
+ <br>
+ Otherwise, if a time expression uses an <em>offset-time</em> form that
+ uses the ticks (<code>t</code>) metric, then:<br>
+ <br>
+ <code>C = ticks / tickRate</code><br></p>
+ </blockquote>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The <em>frames</em> and <em>sub-frames</em> terms and the frames
+ (<code>f</code>) metric of time expressions do not apply when using the
+ <code>clock</code> time base.</p>
+ </div>
+
+ <p>The clock time base <span class="strong"><code>C</code></span> is independent
+ of media time <span class="strong"><code>M</code></span>:</p><a id=
+ "clock-time-and-media-time" name="clock-time-and-media-time"></a>
+
+ <table class="semantics">
+ <caption>
+ TTML Semantics – Clock Time and Media Time Relationship
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <blockquote>
+ <p><br>
+ <code>M ¬∝ C</code><br></p>
+ </blockquote>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>That is to say, timing is disconnected from (not necessarily proportional
+ to) media time when the <code>clock</code> time base is used. For example, if
+ the media play rate is zero (0), media playback is suspended; however, timing
+ coordinates will continue to advance according to the natural progression of
+ clock time in direct proportion to the reference clock base. Furthermore, if
+ the media play rate changes during playback, presentation timing is not
+ affected.</p>
+ </div>
+ </div>
+
+ <div class="div2">
+ <h3><a id="time-expression-semantics-media" name=
+ "time-expression-semantics-media"></a>N.2 Media Time Base</h3>
+
+ <p>When operating with the <code>media</code> time base, the following semantics
+ should be applied for interpreting time expressions, as defined by <a href=
+ "#timing-value-timeExpression"><timeExpression></a>, and their relationship
+ to media time and local real time.</p>
+
+ <p>The media time base <span class="strong"><code>M</code></span> is related to
+ local real time <span class="strong"><code>R</code></span> expressed in an
+ arbitrary (implementation defined) epoch <span class=
+ "strong"><code>E</code></span> as follows:</p><a id="media-time-and-real-time"
+ name="media-time-and-real-time"></a>
+
+ <table class="semantics">
+ <caption>
+ TTML Semantics – Media Time and Real Time Relationship
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <blockquote>
+ <p><br>
+ <code>R = playRate * M + epochOffset</code><br>
+ <br>
+ where <code>M ∈ ℜ</code>, <code>0 ≤ M < ∞</code>, <code>M</code> in
+ seconds, with 0 corresponding to the beginning of the <em>Root Temporal
+ Extent</em>;<br>
+ <br>
+ <code>playRate ∈ ℜ</code>, <code>−∞ < playRate < ∞</code>,
+ <code>playRate</code> is unit-less, and where the value of
+ <code>playRate</code> is determined by the document processing
+ context;<br>
+ <br>
+ and <code>epochOffset ∈ ℜ</code>, <code>0 ≤ epochOffset < ∞</code>,
+ <code>epochOffset</code> in seconds, with 0 corresponding to the
+ beginning of an epoch <code>E</code>, and where the value of
+ <code>epochOffset</code> is the difference between the local real time
+ at the beginning of the <em>Root Temporal Extent</em> and the local
+ real time at the the beginning of epoch <code>E</code>, expressed in
+ seconds.</p>
+ </blockquote>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>Time value expressions, as denoted by a <a href=
+ "#timing-value-timeExpression"><timeExpression></a>, are related to media
+ time <span class="strong"><code>M</code></span> in accordance to the
+ <code>ttp:frameRate</code>, <code>ttp:subFrameRate</code>, and
+ <code>ttp:frameRateMultipler</code> parameters as follows:</p><a id=
+ "time-expressions-and-media-time" name="time-expressions-and-media-time"></a>
+
+ <table class="semantics">
+ <caption>
+ TTML Semantics – Time Expressions and Media Time Relationship
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <blockquote>
+ <p><br>
+ If a time expression uses a <em>clock-time</em> form or an
+ <em>offset-time</em> form that doesn't use the ticks (<code>t</code>)
+ metric, then:<br>
+ <br>
+ <code>M = referenceBegin + 3600 * hours + 60 * minutes + seconds +
+ ((frames + (subFrames / subFrameRate)) / effectiveFrameRate)</code><br>
+ <br>
+ where <code>referenceBegin</code> is determined according to whether
+ the nearest ancestor time container employs parallel (<code>par</code>)
+ or sequential (<code>seq</code>) semantics: if parallel or if
+ sequential and no prior sibling timed element exists, then
+ <code>referenceBegin</code> is the media time that corresponds to the
+ beginning of the nearest ancestor time container or zero (0) if this
+ time container is the <em>Root Temporal Extent</em>; otherwise, if
+ sequential and a prior sibling timed element exists, then
+ <code>referenceBegin</code> is the media time that corresponds to the
+ active end of the immediate prior sibling timed element;<br>
+ <br>
+ the <code>hours</code>, <code>minutes</code>, <code>seconds</code>,
+ <code>frames</code>, <code>subFrames</code> components are extracted
+ from time expression if present, or zero if not present;<br>
+ <br>
+ <code>subFrameRate</code> is the computed value of the
+ <code>ttp:subFrameRate</code> parameter;<br>
+ <br>
+ and <code>effectiveFrameRate</code> (in frames per second) is
+ <code>frameRate * frameRateMultipler</code> where
+ <code>frameRate</code> is the computed value of the
+ <code>ttp:frameRate</code> parameter and
+ <code>frameRateMultipler</code> is the computed value of the
+ <code>ttp:frameRateMultiplier</code> parameter.<br>
+ <br>
+ Otherwise, if a time expression uses an <em>offset-time</em> form that
+ uses the ticks (<code>t</code>) metric, then:<br>
+ <br>
+ <code>M = referenceBegin + ticks / tickRate</code><br>
+ <br>
+ where <code>referenceBegin</code> is as described above;<br>
+ <br>
+ the <code>ticks</code> component is extracted from time expression;<br>
+ <br>
+ and <code>tickRate</code> is the computed value of the
+ <code>ttp:tickRate</code> parameter;<br></p>
+ </blockquote>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>If the computed <code>frameRateMultipler</code> ratio is not integral, then
+ <code>effectiveFrameRate</code> will be a non-integral rational.</p>
+ </div>
+
+ <div class="note">
+ <p class="prefix"><b>Note:</b></p>
+
+ <p>The above formalisms assumes that the <em>Root Temporal Extent</em>
+ corresponds with the beginning of a related media object. If this assumption
+ doesn't hold, then an additional offset that accounts for the difference may be
+ introduced when computing media time <code>M</code>.</p>
+ </div>
+ </div>
+
+ <div class="div2">
+ <h3><a id="time-expression-semantics-smpte" name=
+ "time-expression-semantics-smpte"></a>N.3 SMPTE Time Base</h3>
+
+ <p>When operating with the <code>smpte</code> time base, the following semantics
+ should be applied for interpreting time expressions, as defined by <a href=
+ "#timing-value-timeExpression"><timeExpression></a>, and their relationship
+ to media time and local real time.</p>
+
+ <p>If the computed value of the <code>ttp:markerMode</code> parameter is
+ <code>discontinuous</code>, then there is no direct relationship between time
+ expressions and media time <span class="strong"><code>M</code></span> or local
+ real time <span class="strong"><code>R</code></span>. In this case, time
+ expressions refer to synchronization events (markers) emitted by the <em>Document
+ Processing Context</em> when <em>SMPTE Time Codes</em> are encountered in the
+ <em>Related Media Object</em>.</p>
+
+ <p>Otherwise, if the computed value of the <code>ttp:markerMode</code> parameter
+ is <code>continuous</code>, then the relationships between time expressions and
+ local real time and media time are as described below in terms of a <em>Synthetic
+ SMPTE Document Syncbase</em>, here referred to as the SMPTE time base
+ <span class="strong"><code>S</code></span>.</p><a id=
+ "time-expressions-and-smpte-time" name="time-expressions-and-smpte-time"></a>
+
+ <table class="semantics">
+ <caption>
+ TTML Semantics – Time Expressions and SMPTE Time Relationship
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <blockquote>
+ <p><br>
+ <code>S = (countedFrames - droppedFrames + (subFrames / subFrameRate))
+ / effectiveFrameRate</code><br>
+ <br>
+ where<br>
+ <br>
+ <code>countedFrames = (3600 * hours + 60 * minutes + seconds) *
+ frameRate + frames</code><br>
+ <br>
+ <code>hours</code>, <code>minutes</code>, <code>seconds</code>,
+ <code>frames</code>, <code>subFrames</code> components are extracted
+ from time expression if present, or zero if not present;<br>
+ <br>
+ <code>droppedFrames</code> is computed as follows:<br>
+ <br>
+ 1. let <em>dropMode</em> be the computed value of the
+ <code>ttp:dropMode</code> parameter;<br>
+ <br>
+ 2. if <em>dropMode</em> is <code>dropNTSC</code>, let
+ <code>droppedFrames = (hours * 54 + floor(minutes - minutes/10)) *
+ 2</code>;<br>
+ <br>
+ 3. otherwise, if <em>dropMode</em> is <code>dropPAL</code>, let
+ <code>droppedFrames = (hours * 27 + floor(minutes/2 - minutes/20)) *
+ 4</code>;<br>
+ <br>
+ 4. otherwise, let <code>droppedFrames = 0</code>;<br>
+ <br>
+ <code>frameRate</code> is the computed value of the
+ <code>ttp:frameRate</code> parameter;<br>
+ <br>
+ <code>subFrameRate</code> is the computed value of the
+ <code>ttp:subFrameRate</code> parameter;<br>
+ <br>
+ and <code>effectiveFrameRate</code> (in frames per second) is
+ <code>frameRate * frameRateMultipler</code> where
+ <code>frameRate</code> is the computed value of the
+ <code>ttp:frameRate</code> parameter and
+ <code>frameRateMultipler</code> is the computed value of the
+ <code>ttp:frameRateMultiplier</code> parameter.<br>
+ <br>
+ Notwithstanding the above, if a time expression contains a frame code
+ that is designated as dropped according to <a href=
+ "#parameter-attribute-dropMode"><b>6.2.3 ttp:dropMode</b></a>, then
+ that time expression should be considered to be invalid for purposes of
+ validation assessment.<br></p>
+ </blockquote>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>The SMPTE time base <span class="strong"><code>S</code></span> is related to
+ the media time base <span class="strong"><code>M</code></span> as
+ follows:</p><a id="smpte-time-and-media-time" name=
+ "smpte-time-and-media-time"></a>
+
+ <table class="semantics">
+ <caption>
+ TTML Semantics – SMPTE Time and Media Time Relationship
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <blockquote>
+ <p><br>
+ <code>M = referenceBegin + S</code><br>
+ <br>
+ where <code>referenceBegin</code> is determined according to whether
+ the nearest ancestor time container employs parallel (<code>par</code>)
+ or sequential (<code>seq</code>) semantics: if parallel or if
+ sequential and no prior sibling timed element exists, then
+ <code>referenceBegin</code> is the SMPTE time that corresponds to the
+ beginning of the nearest ancestor time container or zero (0) if this
+ time container is the <em>Root Temporal Extent</em>; otherwise, if
+ sequential and a prior sibling timed element exists, then
+ <code>referenceBegin</code> is the SMPTE time that corresponds to the
+ active end of the immediate prior sibling timed element;<br></p>
+ </blockquote>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <p>Given the derived media time base as described above, then media time base
+ <span class="strong"><code>M</code></span> is related to the local real time
+ <span class="strong"><code>R</code></span> as described in <a href=
+ "#time-expression-semantics-media"><b>N.2 Media Time Base</b></a> above.</p>
+ </div>
+ </div>
+
+ <div class="div1">
+ <h2><a id="common-styling" name="common-styling"></a>O Common Caption Style
+ Examples (Non-Normative)</h2>
+
+ <p>This section provides examples of the following common caption styles using TTML
+ Content to obtain the desired behavior:</p>
+
+ <ul>
+ <li>
+ <p>Pop-On Captions</p>
+ </li>
+
+ <li>
+ <p>Roll-Up Captions</p>
+ </li>
+
+ <li>
+ <p>Paint-On Captions</p>
+ </li>
+ </ul>
+
+ <div class="div2">
+ <h3><a id="pop-on-example" name="pop-on-example"></a>O.1 Pop-On Caption
+ Example</h3>
+
+ <p>An example of paint-on captions. In this example, two regions are targeted
+ with alternating, paint-on content, where content is timed using explicit
+ sequential time containment rules. Each paragraph is non-overlapping in time and
+ appears in the same single row of its targeted region.</p><a id=
+ "pop-on-example-1-s" name="pop-on-example-1-s"></a>
+
+ <table class="example">
+ <caption>
+ Example – Pop-On Captions
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
+<tt ttp:cellResolution="60 20" xml:lang="en" xmlns="http://www.w3.org/ns/ttml"
xmlns:tts="http://www.w3.org/ns/ttml#parameter" xmlns:tts="http://www.w3.org/ns/ttml#styling">
<head>
<layout>
@@ -6891,13 +20374,39 @@
</div>
</body>
</tt>
-</pre></div>
-</td></tr></tbody></table></div><div class="div2">
-<h3><a id="roll-up-example"></a>O.2 Roll-Up Caption Example</h3><p>An example of roll-up captions. Roll-up effects are achieved by using overlapped time intervals, where zero, one, or two paragraphs appear in the region
-at a given time. Each paragraph consumes a single row (line) of the region since no wrapping occurs. Depending on whether a presentation processor supports
-<a href="#semantics-smooth-scrolling-recommendation">smooth scrolling between adjacent synchronic intermediate document instances</a>, the transitions, i.e., moving an
-old paragraph (line) out and a new paragraph (line) in, will be either smooth or discrete.</p><a id="roll-up-example-1-s"></a><table class="example"><caption>Example – Roll-Up Captions</caption><tbody><tr><td>
-<div class="exampleInner"><pre><tt ttp:cellResolution="60 20" xml:lang="en" xmlns="http://www.w3.org/ns/ttml"
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+
+ <div class="div2">
+ <h3><a id="roll-up-example" name="roll-up-example"></a>O.2 Roll-Up Caption
+ Example</h3>
+
+ <p>An example of roll-up captions. Roll-up effects are achieved by using
+ overlapped time intervals, where zero, one, or two paragraphs appear in the
+ region at a given time. Each paragraph consumes a single row (line) of the region
+ since no wrapping occurs. Depending on whether a presentation processor supports
+ <a href="#semantics-smooth-scrolling-recommendation">smooth scrolling between
+ adjacent synchronic intermediate document instances</a>, the transitions, i.e.,
+ moving an old paragraph (line) out and a new paragraph (line) in, will be either
+ smooth or discrete.</p><a id="roll-up-example-1-s" name=
+ "roll-up-example-1-s"></a>
+
+ <table class="example">
+ <caption>
+ Example – Roll-Up Captions
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
+<tt ttp:cellResolution="60 20" xml:lang="en" xmlns="http://www.w3.org/ns/ttml"
xmlns:tts="http://www.w3.org/ns/ttml#parameter" xmlns:tts="http://www.w3.org/ns/ttml#styling">
<head>
<layout>
@@ -6914,12 +20423,39 @@
</div>
</body>
</tt>
-</pre></div>
-</td></tr></tbody></table></div><div class="div2">
-<h3><a id="paint-on-example"></a>O.3 Paint-On Caption Example</h3><p>An example of paint-on captions. Paint-on effects are achieved by using timed <code>span</code> elements in order to expose (paint) inline text units, e.g., words,
-over some time interval. Here, five paragraphs have their individual words sequentially timed in order to paint one new word every second. The end of the active duration of
-each inline element coincides with the end of the <code>div</code> element's parallel time container, so that once a word is painted, it remains in the region (on its rendered line) until the <code>div</code> element's active time interval lapses.</p><a id="paint-on-example-1-s"></a><table class="example"><caption>Example – Paint-On Captions</caption><tbody><tr><td>
-<div class="exampleInner"><pre><tt ttp:cellResolution="60 20" xml:lang="en" xmlns="http://www.w3.org/ns/ttml"
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+
+ <div class="div2">
+ <h3><a id="paint-on-example" name="paint-on-example"></a>O.3 Paint-On Caption
+ Example</h3>
+
+ <p>An example of paint-on captions. Paint-on effects are achieved by using timed
+ <code>span</code> elements in order to expose (paint) inline text units, e.g.,
+ words, over some time interval. Here, five paragraphs have their individual words
+ sequentially timed in order to paint one new word every second. The end of the
+ active duration of each inline element coincides with the end of the
+ <code>div</code> element's parallel time container, so that once a word is
+ painted, it remains in the region (on its rendered line) until the
+ <code>div</code> element's active time interval lapses.</p><a id=
+ "paint-on-example-1-s" name="paint-on-example-1-s"></a>
+
+ <table class="example">
+ <caption>
+ Example – Paint-On Captions
+ </caption>
+
+ <tbody>
+ <tr>
+ <td>
+ <div class="exampleInner">
+ <pre>
+<tt ttp:cellResolution="60 20" xml:lang="en" xmlns="http://www.w3.org/ns/ttml"
xmlns:tts="http://www.w3.org/ns/ttml#parameter" xmlns:tts="http://www.w3.org/ns/ttml#styling">
<head>
<layout>
@@ -6966,58 +20502,43 @@
</div>
</body>
</tt>
-</pre></div>
-</td></tr></tbody></table></div></div><div class="div1">
-<h2><a id="acknowledgments"></a>P Acknowledgments (Non-Normative)</h2><p>The editor acknowledges the current and former members of the Timed Text Working
-Group, the members of other W3C Working Groups, and industry experts
-in other forums who have contributed directly or indirectly to the
-process or content of this document as follows:</p><p>Glenn Adams,
-Thomas Bause-Mason,
-John Birch,
-Kees Blom,
-Bert Bos,
-Brad Botkin,
-Dick Bulterman,
-Frans de Jong,
-Mike Dolan,
-Martin Dürst,
-Donald Evans,
-Geoff Freed,
-Al Gilman,
-Giles Godart-Brown,
-Markus Gylling,
-Markku Hakkinen,
-Sean Hayes,
-Erik Hodge,
-Philipp Hoschka,
-Suzi Hyun,
-Michael Jordan,
-Masahiko Kaneko,
-Courtney Kennedy,
-George Kerscher,
-David Kirby,
-Andrew Kirkpatrick,
-Philippe Le Hégaret,
-Pierre-Anthony Lemieux,
-Chris Lilley,
-Jason Livingston,
-Monica Martin,
-Matthew May,
-Nigel Megitt,
-Thierry Michel,
-Frank Olivier,
-Soohong Daniel Park,
-Silvia Pfeiffer,
-Brian Raymor,
-David Ronca,
-Patrick Schmitz,
-David Singer,
-Craig Smithpeters,
-Andreas Tai,
-and Mohamed Zergaoui.
-</p><p>The editor wishes to especially acknowledge the following contributions
-by members: Micheal Dolan (SMPTE time codes, streaming; SMPTE liaison), David
-Kirby (introductory example document; SMPTE time codes, descriptive metadata; EBU/AAF liaison), Geoff Freed (styling
-and example images of style properties), Sean Hayes (advanced profile
-concepts, including applicative timing), Eric Hodge (timing),
-Thierry Michel (metadata), and Dave Singer (animation, scrolling).</p><p>The Working Group dedicates this specification to our colleague David Kirby.</p></div></div></body></html>
\ No newline at end of file
+</pre>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </div>
+
+ <div class="div1">
+ <h2><a id="acknowledgments" name="acknowledgments"></a>P Acknowledgments
+ (Non-Normative)</h2>
+
+ <p>The editor acknowledges the current and former members of the Timed Text Working
+ Group, the members of other W3C Working Groups, and industry experts in other
+ forums who have contributed directly or indirectly to the process or content of
+ this document as follows:</p>
+
+ <p>Glenn Adams, Thomas Bause-Mason, John Birch, Kees Blom, Bert Bos, Brad Botkin,
+ Dick Bulterman, Frans de Jong, Mike Dolan, Martin Dürst, Donald Evans, Geoff Freed,
+ Al Gilman, Giles Godart-Brown, Markus Gylling, Markku Hakkinen, Sean Hayes, Erik
+ Hodge, Philipp Hoschka, Suzi Hyun, Michael Jordan, Masahiko Kaneko, Courtney
+ Kennedy, George Kerscher, David Kirby, Andrew Kirkpatrick, Philippe Le Hégaret,
+ Pierre-Anthony Lemieux, Chris Lilley, Jason Livingston, Monica Martin, Matthew May,
+ Nigel Megitt, Thierry Michel, Frank Olivier, Soohong Daniel Park, Silvia Pfeiffer,
+ Brian Raymor, David Ronca, Patrick Schmitz, David Singer, Craig Smithpeters,
+ Andreas Tai, and Mohamed Zergaoui.</p>
+
+ <p>The editor wishes to especially acknowledge the following contributions by
+ members: Micheal Dolan (SMPTE time codes, streaming; SMPTE liaison), David Kirby
+ (introductory example document; SMPTE time codes, descriptive metadata; EBU/AAF
+ liaison), Geoff Freed (styling and example images of style properties), Sean Hayes
+ (advanced profile concepts, including applicative timing), Eric Hodge (timing),
+ Thierry Michel (metadata), and Dave Singer (animation, scrolling).</p>
+
+ <p>The Working Group dedicates this specification to our colleague David Kirby.</p>
+ </div>
+ </div>
+</body>
+</html>