--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/ttml10/spec/PER-ttaf1-dfxp-20130515-for-WG-review.html Thu May 09 23:05:36 2013 -0600
@@ -0,0 +1,6891 @@
+<!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 (TTML) 1.0 (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;
+ margin: 0em; padding: 0em}
+div.exampleInner { background-color: #d5dee3;
+ border-top-width: 4px;
+ border-top-style: double;
+ border-top-color: #d3d3d3;
+ border-bottom-width: 4px;
+ border-bottom-style: double;
+ border-bottom-color: #d3d3d3;
+ padding: 4px; margin: 0em }
+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 {
+ 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 {
+ 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-PER.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 name="title" id="title"></a>Timed Text Markup Language (TTML) 1.0 (Second Edition)</h1>
+<h2><a name="w3c-doctype" id="w3c-doctype"></a>W3C Proposed Edited Recommendation 15 May 2013</h2><dl><dt>This version:</dt><dd>
+<a href="http://www.w3.org/TR/2013/PER-ttaf1-dfxp-20130515/">http://www.w3.org/TR/2013/PER-ttaf1-dfxp-20130515/</a>
+</dd><dt>Latest version:</dt><dd><a href="http://www.w3.org/TR/ttaf1-dfxp/">http://www.w3.org/TR/ttaf1-dfxp/</a></dd><dt>Previous version:</dt><dd>
+<a href="http://www.w3.org/TR/2010/REC-ttaf1-dfxp-20101118/">http://www.w3.org/TR/2010/REC-ttaf1-dfxp-20101118/</a>
+</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="https://dvcs.w3.org/hg/ttml/raw-file/default/ttml10/spec/ttml-issues.html">errata</a> for this document, which may
+ include normative corrections.</p><p>See also <a href="http://www.w3.org/2003/03/Translations/byTechnology?technology=ttaf1-dfxp"><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 name="abstract" id="abstract"></a>Abstract</h2><p>This document specifies the Timed Text Markup Language (TTML) 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 object element in a <a href="#smil21">[SMIL 2.1]</a> document.</p></div><div>
+<h2><a name="status" 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, published on 15 May 2013,
+is a <a href="http://www.w3.org/2005/10/Process-20051014/tr.html#ProposedEditedRec">Proposed Edited Recommendation</a>
+of the W3C. This second edition is not a new version of this specification;
+its purpose is to clarify a number of issues that have become apparent since the
+first edition was published.</p><p>This document has been 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.</p><p>Publication as a Proposed Edited Recommendation does not imply endorsement by
+the W3C Membership. This is a draft document and may be updated,
+replaced or obsoleted by other documents at any time. It is
+inappropriate to cite this document as other than work in progress.</p><p>W3C Advisory Committee Members are invited to send formal review comments
+on this Proposed Edited Recommendation to the W3C Team until 15 June 2013.
+Members of the W3C Advisory Committee will find the appropriate review form
+for this document by consulting their
+<a href="http://www.w3.org/2002/09/wbs/myQuestionnaires">list
+of WBS questionnaires</a>.</p><p>This document incorporates changes made against the
+<a href="http://www.w3.org/TR/2010/REC-ttaf1-dfxp-20101118/">Recommendation</a>
+of 18 November 2010 that resolve all errata known at the date of publication.
+A list of the errata that have been applied is provided in
+<a href="https://dvcs.w3.org/hg/ttml/raw-file/default/ttml10/spec/ttml-changes.html#change-history-rec-to-2e-per">Changes
+from Recommendation to Proposed Edited Recommendation (2nd Ed.)</a>.</p><p>Please report errors in and submit comments on this document to the
+W3C Timed Text public comments mailing list,
+<a href="mailto:public-tt-comments@w3.org">public-tt-comments@w3.org</a>.
+It will be very helpful if you include the string "[TTML10SE]" in the
+subject line of your report. Each email message should contain only one
+error report. Archives of the comments and responses are available at
+<a href="http://lists.w3.org/Archives/Public/public-tt-comments/">http://lists.w3.org/Archives/Public/public-tt-comments/</a>.</p><p>The Timed Text Working Group plans to submit this specification for
+consideration as a W3C Recommendation (Second Edition) as soon as the Working
+Group has responded formally to all issues raised during the PER period
+against this document.</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">public list of any patent
+disclosures</a> made in connection with the deliverables of the Timed Text Working Group;
+those pages also include 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 name="contents" 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="#dfxp-content-doctype">DFXP 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 name="appendices" 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="#dfxp-schema-rnc">Relax NG Schema</a><br>
+ B.2 <a href="#dfxp-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="#d3e17632">Element Derivation</a><br>
+ J.2 <a href="#d3e18111">Attribute Derivation</a><br>
+K <a href="#qa">QA Framework Compliance</a> (Non-Normative)<br>
+ K.1 <a href="#d3e18979">Requirements</a><br>
+ K.2 <a href="#d3e19143">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 name="intro" 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) 1.0
+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 potential presentation.</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 was not expressly designed for direct (embedded) integration into 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 document instance. 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="div2">
+<h3><a name="model" 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 a 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.</p><a name="model-graphic" 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 name="example" id="example"></a>1.2 Document Example</h3><p>A TTML document instance 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 timing information.</p><a name="dfxp-example-document-structure" id="dfxp-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/>
+ <styling/>
+ <layout/>
+ </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 name="dfxp-example-metadata" id="dfxp-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.</p><p>In <a href="#dfxp-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 name="dfxp-example-styling" id="dfxp-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"
+ tts:color="white"
+ tts:fontFamily="proportionalSansSerif"
+ tts:fontSize="22px"
+ tts:textAlign="center"
+ />
+ <!-- alternative using yellow text but otherwise the same as style s1 -->
+ <style xml:id="s2" style="s1" tts:color="yellow"/>
+ <!-- a style based on s1 but justified to the right -->
+ <style xml:id="s1Right" style="s1" tts:textAlign="end" />
+ <!-- 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="#dfxp-example-layout"><b>Example Fragment – TTML Layout</b></a>, the region definition makes
+reference to style specification <code>s1</code> which allows all 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 name="dfxp-example-layout" id="dfxp-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"
+ tts:extent="560px 62px"
+ tts:padding="5px 3px"
+ tts:backgroundColor="black"
+ tts:displayAlign="after"
+ />
+</layout>
+</pre></div>
+</td></tr></tbody></table><p>The content of a TTML document instance 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="#dfxp-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 as a parallel time
+container.</p><a name="dfxp-example-body" id="dfxp-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">
+ It seems a paradox, does it not,
+ </p>
+ <p xml:id="subtitle2" begin="5.0s" end="10.0s">
+ that the image formed on<br/>
+ the Retina should be inverted?
+ </p>
+ <p xml:id="subtitle3" begin="10.0s" end="16.0s" style="s2">
+ It is puzzling, why is it<br/>
+ we do not see things upside-down?
+ </p>
+ <p xml:id="subtitle4" begin="17.2s" end="23.0s">
+ You have never heard the Theory,<br/>
+ then, that the Brain also is inverted?
+ </p>
+ <p xml:id="subtitle5" begin="23.0s" end="27.0s" style="s2">
+ No indeed! What a beautiful fact!
+ </p>
+ <p xml:id="subtitle6a" begin="28.0s" end="34.6s" style="s2Left">
+ But how is it proved?
+ </p>
+ <p xml:id="subtitle6b" begin="28.0s" end="34.6s" style="s1Right">
+ Thus: what we call
+ </p>
+ <p xml:id="subtitle7" begin="34.6s" end="45.0s" style="s1Right">
+ the vertex of the Brain<br/>
+ is really its base
+ </p>
+ <p xml:id="subtitle8" begin="45.0s" end="52.0s" style="s1Right">
+ and what we call its base<br/>
+ is really its vertex,
+ </p>
+ <p xml:id="subtitle9a" begin="53.5s" end="58.7s">
+ it is simply a question of nomenclature.
+ </p>
+ <p xml:id="subtitle9b" begin="53.5s" end="58.7s" style="s2">
+ How truly delightful!
+ </p>
+ </div>
+</body>
+</pre></div>
+</td></tr></tbody></table><p>The first subtitle <a href="#dfxp-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
+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><a name="dfxp-example-subtitle-1" id="dfxp-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 name="dfxp-example-subtitle-2" id="dfxp-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 name="dfxp-example-subtitle-3" id="dfxp-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 name="dfxp-example-subtitle-4" id="dfxp-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 name="dfxp-example-subtitle-5" id="dfxp-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 paragraph expressing each subtitle using a different style that overrides 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 name="dfxp-example-subtitle-6" id="dfxp-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 a paragraph right (end) justified in the
+inline progression direction.</p><a name="dfxp-example-subtitle-7" id="dfxp-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 name="dfxp-example-subtitle-8" id="dfxp-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 name="dfxp-example-subtitle-9" id="dfxp-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 document instance. 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 name="definitions" id="definitions"></a>2 Definitions</h2><div class="div2">
+<h3><a name="acronyms" 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>TT AS</b></td><td class="def"><p>Timed Text Authoring System</p></td></tr><tr><td class="label"><b>TT AF</b></td><td class="def"><p>Timed Text Authoring Format</p></td></tr><tr><td class="label"><b>TT WG</b></td><td class="def"><p>Timed Text Working Group</p></td></tr></table></div><div class="div2">
+<h3><a name="terms" 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
+Set</em>s <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">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 Profile</dt><dd><p>A collection of features and extensions that are (or may be) employed by
+Timed Text Markup Language 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 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 <em>Content Profile</em>.</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 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 content profile 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">Processor Profile</dt><dd><p>A collection of features and extensions that must or may be implemented (supported) by
+a content processor.</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 satisfieds 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 TTML document instance. For example, an aggregate audio/video media
+object for which a TTML document instance provides caption or subtitle
+information, and with which that TTML document instance is associated.</p></dd><dt class="label">Root Container Region</dt><dd><p>A logical region that establishes a coordinate system into which
+TTML document instance 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 TTML document instance 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 is 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 syncbase 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></dl></div><div class="div2">
+<h3><a name="conventions" 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>All normative syntactic definitions of XML representations and
+other related terms are depicted with a light orange background color
+and labeled as "XML Representation" or "Syntax Representation", such
+as in the following:</p><a name="elt-syntax-example" id="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>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 name="example-fragment-1" id="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/>
+ <styling/>
+ <layout/>
+ </head>
+ <body/>
+</tt>
+</pre></div>
+</td></tr></tbody></table></div></div><div class="div1">
+<h2><a name="conformance" 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 name="conformance-content" id="conformance-content"></a>3.1 Content Conformance</h3><p>A TTML document instance conforms to this specification if the following criteria are
+satisfied:</p><ol class="enumar"><li><p>When transporting a document instance in a context in which a
+Media Type <a href="#media-types">[Media Types]</a> identifies the content type of the interchanged document
+instance, then the specified media type is
+<code>application/ttml+xml</code> in conformance with <a href="#rfc3023">[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 document instance 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 document instance is or can
+be associated with one of the TTML Abstract
+Document Types defined by
+<a href="#doctypes"><b>4 Document Types</b></a>.</p></li><li><p>The Reduced XML Infoset that corresponds to the document instance is a
+Valid Abstract Document Instance of the associated
+Abstract Document Type.</p></li><li><p>The Reduced XML Infoset 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 name="conformance-processor" id="conformance-processor"></a>3.2 Processor Conformance</h3><div class="div3">
+<h4><a name="conformance-generic-processor" id="conformance-generic-processor"></a>3.2.1 Generic Processor Conformance</h4><p>A TTML processor 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 TTML document
+instance.</p></li><li><p>If a process does or can perform validation of a candidate TTML
+document instance, then it provides at least one mechanism to
+implicitly or explicitly associate the
+Reduced XML Infoset representation
+of a conformant TTML document instance with one of the
+TTML Abstract Document Types 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 TTML document instance
+unless the processor does not support some required
+(mandatory) feature specified or implied by a TTML content profile
+declared to apply to the document instance.</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 name="conformance-transformation-processor" id="conformance-transformation-processor"></a>3.2.2 Transformation Processor Conformance</h4><p>A TTML processor is a conformant TTML transformation processor 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 name="conformance-presentation-processor" id="conformance-presentation-processor"></a>3.2.3 Presentation Processor Conformance</h4><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 name="claims" id="claims"></a>3.3 Claims</h3><p>Any claim of compliance with respect to TTML content or processor
+conformance 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
+content or 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 TTML document instance 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 name="doctypes" id="doctypes"></a>4 Document Types</h2><p>This section defines the following TTML Abstract Document Types:</p><ul><li><p><a href="#dfxp-content-doctype"><b>4.1 DFXP Content</b></a></p></li></ul><p>Each abstract document type 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 Abstract Document Instance may be assessed in terms of validity,
+and is considered to be a Valid Abstract Document Instance 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 abstract document type, 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 Abstract Document Type, 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 abstract document type,
+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 abstract document type.</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 document instance that adheres to a
+supported content profile, a given document instance may be
+constrained by the author or authoring tool to satisfy a more
+restrictive definition of validity.</p></div><div class="div2">
+<h3><a name="dfxp-content-doctype" id="dfxp-content-doctype"></a>4.1 DFXP Content</h3><p>DFXP Content is an abstract document type 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 defines two types of schemas that may be used to validate a subset of
+conformant DFXP Content document instances:</p><ul><li><p><a href="#dfxp-schema-rnc"><b>B.1 Relax NG Schema</b></a></p></li><li><p><a href="#dfxp-schema-xsd"><b>B.2 XML Schema Definition (XSD) Schema</b></a></p></li></ul><p>The (root) document element of a DFXP Content document instance 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 included in this specification do not validate all syntactic constraints
+defined by this specification. In particular, performing validation with one of the above
+referenced schemas may result in a <em>false positive</em> indication of validity.
+However, with one exception, their
+use will not produce a <em>false negative</em> indication of validity
+when used with a compliant validating
+processor.</p><p>In exception to the above statement about false negatives,
+if the Relax NG schema included in this specification is used to validate a
+TTML Document containing elements in a foreign namespace and the <code>xml:id</code>
+attribute is used with any of those (foreign) elements,
+then an error will be reported even though such usage is permitted by this
+specification. In this case, the false negative arises 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 TTML Document to be
+based on an abstract document instance 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 TTML Document validity.</p></div></div></div><div class="div1">
+<h2><a name="vocabulary" id="vocabulary"></a>5 Vocabulary</h2><p>This section defines the
+namespaces, profiles, and vocabulary (as an element an 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 name="vocabulary-namespaces" id="vocabulary-namespaces"></a>5.1 Namespaces</h3><p>The Timed Text Markup Language (TTML) employs a number of
+namespaces 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 document instance, it is not required that the default
+prefixes shown below are used. Any prefix or namespace binding that satisfies the constraints
+of XML Namespaces may be used that is associated with the specified namespace URI.</p></div><a name="namespace-vocab-table" 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 name="vocabulary-profiles" 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>.</p><a name="profile-vocab-table" 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></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>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 Profile Definition Document.</p><p>The profile of TTML that must be supported by a
+TTML content processor in order to process a document
+instance is specified 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 document instance), 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 TTML document instance, then all specified profiles apply
+simultaneously. In such a case, if some feature or some extension is
+specified by one profile to be used (mandatory and enabled) and by
+another profile to be required (mandatory) or optional (voluntary),
+then that feature or extension must be considered to be used
+(mandatory and enabled); if some feature or some extension is
+specified by one profile to be merely required (mandatory) and by
+another profile to be optional (voluntary), then that feature or
+extension must be considered to be required (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 TTML document instance, and if the Document
+Interchange Context does not make an implicit or explicit
+reference to a pre-defined Content Profile or does not specify a Profile Definition
+Document 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 document instance that a <em>Content Profile</em> 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 <em>Content Profile</em> 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 TTML Profile Definition Document.
+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 document instance 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 required (mandatory) that was either not specified in the underlying, baseline
+profile or was specified as optional (voluntary) in the baseline profile.
+A predefined profile is subsetted by specifying some feature or extension to
+be optional (voluntary) that was specified as required 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 TTML document instance 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 TTML document instance 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 required or used feature
+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 required or used
+extension 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="#dfxp-example-sub-profile"><b>Example Fragment – DFXP Additive Profile</b></a>.</p><a name="dfxp-example-sub-profile" id="dfxp-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">
+ <features xml:base="http://www.w3.org/ns/ttml/feature/">
+ <feature value="required">#fontStyle-italic</feature>
+ </features>
+ </profile>
+ </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 name="vocabulary-overview" 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 DFXP Content. The extension catalog
+serves as a placeholder for extensions to the core vocabulary defined
+by TTML.</p><div class="div3">
+<h4><a name="core-vocabulary-overview" 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 TTML document
+instance is enumerated in
+<a href="#element-vocab-table"><b>Table 3 – Element Vocabulary</b></a>.</p><a name="element-vocab-table" 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><td>
+Animation
+</td><td>
+<a href="#animation-vocabulary-set">set</a>
+</td></tr><tr><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><td>
+Document
+</td><td>
+<a href="#document-structure-vocabulary-tt">tt</a>
+</td></tr><tr><td>
+Head
+</td><td>
+<a href="#document-structure-vocabulary-head">head</a>
+</td></tr><tr><td>
+Layout
+</td><td>
+<a href="#layout-vocabulary-layout">layout</a>,
+<a href="#layout-vocabulary-region">region</a>
+</td></tr><tr><td>
+Metadata
+</td><td>
+<a href="#metadata-vocabulary-metadata">metadata</a>
+</td></tr><tr><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><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><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 name="element-vocab-group-table" 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 name="attribute-vocab-table" 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 name="extension-vocabulary-overview" 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 TTML
+document instance may contain arbitrary namespace qualified
+elements that reside in any namespace other than those namespaces
+defined for use with this specification. Furthermore, a conforming TTML
+document instance 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 name="parameters" 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 processing context by means
+of which TTML content can be related to an external environment.</p><div class="div2">
+<h3><a name="parameter-element-vocabulary" 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 document
+or a content processor:</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 name="parameter-vocabulary-profile" 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 TTML content processor in order to process a TTML
+document that makes use (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 document
+instance;</p></li><li><p>as the root element of a TTML Profile Definition document
+instance;</p></li></ul><p>When a <code>tt:profile</code> element appears within a TTML document
+instance, 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 document instance.</p><p>When a <code>tt:profile</code> element is used by a TTML
+Profile Definition document instance, it serves to publish a machine
+readable specification of a specific TTML content profile, of which
+this specification defines three such Profile Definition Documents 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 name="elt-syntax-parameter-profile" 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>
+<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>*
+</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
+TTML Profile Definition Document as defined by <a href="#profiles"><b>F Profiles</b></a>,
+or (2) a dereferenceable resource representing a valid TTML Profile Definition
+document 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 TTML Profile Definition Document that is not one of the
+standard, predefined profiles defined by <a href="#profiles"><b>F Profiles</b></a>. 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 TTML
+Profile Definition Document, 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 TTML document instance due to the inability to
+reference a non-standard TTML Profile Definition Document, 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 name="parameter-vocabulary-profile-example-1" id="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 name="parameter-vocabulary-features" 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 name="elt-syntax-parameter-features" 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>
+<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>*
+</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 name="parameter-vocabulary-feature" 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 name="elt-syntax-parameter-feature" 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>
+<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>.</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 if the TTML processor implementation does
+not support the 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 TTML document instance 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 document instance)
+is disallowed or otherwise prohibited.</p></div><p>The <code>ttp:feature</code> element is illustrated by the following example.</p><a name="parameter-vocabulary-feature-example-1" id="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>
+ </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 name="parameter-vocabulary-extensions" 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 name="elt-syntax-parameter-extensions" 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>
+<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>*
+</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 name="parameter-vocabulary-extension" 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 name="elt-syntax-parameter-extension" 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>
+<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 if the TTML processor implementation does not support the
+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 TTML document instance 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>The <code>ttp:extension</code> element is illustrated by the following example.</p><a name="parameter-vocabulary-extension-example-1" id="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://foo.bar.example.org/ttaf1/extension/">
+ <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 use an extension defined by a third party.</p></div></div></div><div class="div2">
+<h3><a name="parameter-attribute-vocabulary" 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) may
+appear between tokens of a value of a TT Parameter.</p><div class="div3">
+<h4><a name="parameter-attribute-cellResolution" 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 root container region
+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 name="parameter-attribute-cellResolution-syntax" id="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="#cea608c">[CEA-608-C]</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><div class="note"><p class="prefix"><b>Note:</b></p><p>Except where indicated otherwise, when a <a href="#style-value-length"><length></a> expressed in
+cells expresses a dimension parallel to the inline or block progression dimension,
+the cell's dimension in the inline or block progression dimension applies, respectively.
+For example, if padding (on all four edges) is specified as 0.1c, the cell resolution
+is 20 by 10, and the root container extent 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 name="parameter-attribute-clockMode" 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.</p></div><p>If specified, the value of this attribute must adhere to the following syntax:</p><a name="parameter-attribute-clockMode-syntax" id="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 name="parameter-attribute-dropMode" 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 name="parameter-attribute-dropMode-syntax" id="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 name="parameter-attribute-frameRate" 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 document instance 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 name="parameter-attribute-frameRate-syntax" id="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 document instance 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>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><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 name="parameter-attribute-frameRateMultiplier" 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 name="parameter-attribute-frameRateMultiplier-syntax" id="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 name="parameter-attribute-markerMode" 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 name="parameter-attribute-markerMode-syntax" id="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 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 name="parameter-attribute-pixelAspectRatio" 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 name="parameter-attribute-pixelAspectRatio-syntax" id="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 name="parameter-attribute-profile" 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 document instance.</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 name="parameter-attribute-subFrameRate" 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 document instance 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 name="parameter-attribute-subFrameRate-syntax" id="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 document instance 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>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><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 name="parameter-attribute-tickRate" 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 document instance 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 name="parameter-attribute-tickRate-syntax" id="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 document instance 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>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><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 name="parameter-attribute-timeBase" 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 document instance.</p><p>If specified, the value of this attribute must adhere to the following syntax:</p><a name="parameter-attribute-timeBase-syntax" id="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 document instance is to be synchronized, or it may
+be the content of a document instance 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, 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 document instance 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 document instance 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 document instance, the interpretation of time expressions
+is uniform throughout the document instance.</p></div><p>When operating with the <code>clock</code> time base,
+the expression <em>media time</em> as used in this specification is
+to be interpreted as the real-time clock selected by
+<a href="#parameter-attribute-clockMode"><b>6.2.2 ttp:clockMode</b></a>.</p></div></div></div><div class="div1">
+<h2><a name="content" 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 name="content-element-vocabulary" id="content-element-vocabulary"></a>7.1 Content Element Vocabulary</h3><p>The following elements specify the structure and principal content aspects of a
+document instance:</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 name="document-structure-vocabulary-tt" 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 document
+instance.</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 name="elt-syntax-tt" id="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
+ {<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>?
+</tt>
+</pre></div>
+</td></tr></tbody></table><p>The <em>Root Temporal Extent</em>, i.e., the time interval over which a document instance is active, has an implicit duration that is equal to the
+implicit duration of the <code>body</code> element of the document, if present, or zero, if not present.</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 root container region in
+which content regions are located and presented. If no <code>tts:extent</code>
+attribute is specified, then the spatial extent of the root container region is
+considered to be determined by the external authoring or presentation
+context. The root container origin is determined by the <em>Document Processing Context</em>.</p><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 root container
+region 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="#cea708d">[CEA-708-D]</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 document instance.</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 name="document-structure-vocabulary-head" 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 document instance 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 document instance 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
+content elements.</p><p>A <code>layout</code> child element is used to specify layout constructs that
+are referenced by content elements.</p><a name="elt-syntax-head" id="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>?
+</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 name="document-structure-vocabulary-body" 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 name="elt-syntax-body" id="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="#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="#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>*
+</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 TTML document instance 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 document instance are available for style inheritance by
+descendant content 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 name="content-vocabulary-div" 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 name="elt-syntax-div" id="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="#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="#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>*
+</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 document instance
+are available for style inheritance by descendant content 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 name="content-vocabulary-p" 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
+<code>span</code> element,
+<code>br</code> element,
+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>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 name="elt-syntax-p" id="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="#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="#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>*
+</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 document instance are available for style inheritance by
+descendant content 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 name="content-vocabulary-span" 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
+<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 name="elt-syntax-span" id="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="#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="#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>*
+</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 document instance are available for style inheritance by
+descendant content 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 name="content-vocabulary-br" id="content-vocabulary-br"></a>7.1.7 br</h4><p>The <code>br</code> element denotes an explicit line break.</p><a name="elt-syntax-br" id="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
+ <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>*
+</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>NL</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 name="content-attribute-vocabulary" 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 name="content-attribute-id" 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 name="content-attribute-lang" 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.</p></div><div class="div3">
+<h4><a name="content-attribute-space" 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.</p><p>The semantics of the value <code>default</code> are fixed to mean that
+when performing presentation processing of a document instance 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></div></div><div class="div1">
+<h2><a name="styling" 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 TTML documents 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 intended effect of the attributes in this section
+ are to be compatible with the layout model of XSL. Presentation agents may however
+ 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 name="styling-element-vocabulary" id="styling-element-vocabulary"></a>8.1 Styling Element Vocabulary</h3><p>The following elements specify the structure and principal styling aspects of a
+document instance:</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 name="styling-vocabulary-styling" 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 name="elt-syntax-styling" id="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>*
+</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 name="styling-vocabulary-style" 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><p>The <code>style</code> element accepts as its children zero or more <code>metadata</code> elements.</p><a name="elt-syntax-style" id="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
+ <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> 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 name="styling-attribute-vocabulary" 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 content 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 content 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) may
+appear between tokens of a value of a TT
+Style or TT Style Extension
+Property.</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 content
+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="div3">
+<h4><a name="style-attribute-style" 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
+specified
+style 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><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 name="style-attribute-backgroundColor" 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 name="style-property-details-backgroundColor" 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 name="style-attribute-backgroundColor-example-1" id="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>/>
+ <style tts:color="white"/>
+ <style tts:displayAlign="after"/>
+ <style tts:padding="3px 40px"/>
+</region>
+...
+<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!
+</p>
+</pre></div>
+</td></tr></tbody></table><p></p><a name="style-attribute-backgroundColor-example-1-images" 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><div class="div3">
+<h4><a name="style-attribute-color" 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 name="style-property-details-color" 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 root container region.</p><p>The <code>tts:color</code> style is illustrated by the following example.</p><a name="style-attribute-color-example-1" id="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>/>
+ <style tts:displayAlign="after"/>
+ <style tts:textAlign="center"/>
+</region>
+...
+<p region="r1">
+ 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 name="style-attribute-color-example-1-images" 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><div class="div3">
+<h4><a name="style-attribute-direction" 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 name="style-property-details-direction" 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 specified value of this attribute is not supported,
+then a presentation processor must ignore the attribute.</p><p>The <code>tts:direction</code> style is illustrated by the following example.</p><a name="style-attribute-direction-example-1" id="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"/>
+ <style tts:backgroundColor="black"/>
+ <style tts:color="white"/>
+ <style tts:displayAlign="after"/>
+ <style tts:textAlign="center"/>
+</region>
+...
+<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>
+</p>
+</pre></div>
+</td></tr></tbody></table><p></p><a name="style-attribute-direction-example-1-images" 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><div class="div3">
+<h4><a name="style-attribute-display" 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 name="style-property-details-display" 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 name="style-attribute-display-example-1" id="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"
+ tts:color="white"
+ tts:displayAlign="before"
+ tts:textAlign="start"/>
+</region>
+...
+<div region="r1">
+ <p dur="5s">
+ [[[
+ <span <span class="strong">tts:display="none"</span>>
+ <set begin="1s" dur="1s" <span class="strong">tts:display="auto"</span>/>
+ Beautiful soup,
+ </span>
+ <span <span class="strong">tts:display="none"</span>>
+ <set begin="2s" dur="1s" <span class="strong">tts:display="auto"</span>/>
+ so rich and green,
+ </span>
+ <span <span class="strong">tts:display="none"</span>>
+ <set begin="3s" dur="1s" <span class="strong">tts:display="auto"</span>/>
+ waiting in a hot tureen!
+ </span>
+ ]]]
+ </p>
+</div>
+</pre></div>
+</td></tr></tbody></table><p></p><a name="style-attribute-display-example-1-images" 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><div class="div3">
+<h4><a name="style-attribute-displayAlign" 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 name="style-property-details-displayAlign" 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 specified value of this attribute is not supported,
+then a presentation processor must interpret the attribute as if the
+value <code>before</code> were specified.</p><p>The <code>tts:displayAlign</code> style is illustrated by the following example.</p><a name="style-attribute-displayAlign-example-1" id="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"/>
+ <style <span class="strong">tts:displayAlign="before"</span>/>
+ <style tts:textAlign="start"/>
+</region>
+<region xml:id="r2">
+ <style tts:extent="192px 66px" tts:origin="128px 66px"/>
+ tts:backgroundColor="green" tts:color="white"/>
+ <style <span class="strong">tts:displayAlign="after"</span>/>
+ <style tts:textAlign="start"/>
+</region>
+<region xml:id="r3">
+ <style tts:extent="128px 66px"/> style tts:origin="0px 132px"
+ tts:backgroundColor="black" tts:color="white"/>
+ <style <span class="strong">tts:displayAlign="before"</span>/>
+ <style tts:textAlign="start"/>
+</region>
+<region xml:id="r4">
+ <style tts:extent="192px 66px" tts:origin="128px 198px"/>
+ tts:backgroundColor="green" tts:color="white"/>
+ <style <span class="strong">tts:displayAlign="after"</span>/>
+ <style tts:textAlign="start"/>
+</region>
+...
+<div>
+ <p region="r1">I sent a message to the fish:</p>
+ <p region="r2">I told them<br/> "This is what I wish."</p>
+ <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 name="style-attribute-displayAlign-example-1-images" 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><div class="div3">
+<h4><a name="style-attribute-extent" 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 root container 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 name="style-property-details-extent" 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 root container region</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>, where, if either <em>width</em> or <em>height</em> is negative or zero, then
+extent must be considered zero in both inline and block progression dimensions.</p><p>If the value of this attribute is <code>auto</code>, then the initial value
+of the style property must be considered to be the same as the root container extent.
+</p><p>
+The root container extent is determined either by a
+<code>tts:extent</code> specified on the <code>tt</code> element, if
+present, or by the external authoring context, 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 specified value of this attribute is not supported,
+then a presentation processor must interpret the attribute as if the
+value <code>auto</code> were specified.</p><p>The <code>tts:extent</code> style is illustrated by the following example.</p><a name="style-attribute-extent-example-1" id="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"/>
+ <style tts:color="white"/>
+ <style tts:displayAlign="after"/>
+ <style tts:textAlign="center"/>
+</region>
+...
+<p region="r1">
+ 'Tis the voice of the Lobster:<br/>
+ I heard him declare,<br/>
+ "You have baked me too brown,<br/>
+ I must sugar my hair."
+</p>
+</pre></div>
+</td></tr></tbody></table><p></p><a name="style-attribute-extent-example-1-images" 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 name="style-attribute-fontFamily" 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 name="style-property-details-fontFamily" 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 specified font family is not available, then a
+presentation processor must attempt to map the specified font family
+to an available font family that has similar typographic
+characteristics, or, in the absence of such a mapping, it must
+interpret the font family as if the value <code>default</code> were
+specified.</p><p>The <code>tts:fontFamily</code> style is illustrated by the following example.</p><a name="style-attribute-fontFamily-example-1" id="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"/>
+ <style tts:color="white"/>
+ <style tts:displayAlign="center"/>
+ <style tts:textAlign="start"/>
+ <style <span class="strong">tts:fontFamily="proportionalSansSerif"</span>/>
+</region>
+...
+<div region="r1">
+ <p>
+ "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>>
+ Of shoes, and ships, and sealing wax,<br/>
+ Of cabbages and kings,
+ </p>
+ <p>
+ And why the sea is boiling hot,<br/>
+ and whether pigs have wings."
+ </p>
+</div>
+</pre></div>
+</td></tr></tbody></table><p></p><a name="style-attribute-fontFamily-example-1-images" 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><div class="div3">
+<h4><a name="style-attribute-fontSize" 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, where font size is interpreted as a
+scaling transform to the font's design EM square.</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 name="style-property-details-fontSize" 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>relative to parent element's font size</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><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 specified value of this attribute is not supported,
+then a presentation processor must interpret the attribute as if the
+value <code>1c</code> were specified.</p><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>.</p></div><p>The <code>tts:fontSize</code> style is illustrated by the following example.</p><a name="style-attribute-fontSize-example-1" id="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"/>
+ <style tts:color="white"/>
+ <style tts:displayAlign="center"/>
+ <style tts:textAlign="center"/>
+ <style tts:fontFamily="proportionalSansSerif"/>
+ <style <span class="strong">tts:fontSize="18px"</span>/>
+</region>
+...
+<p region="r1">
+ 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.
+</p>
+</pre></div>
+</td></tr></tbody></table><p></p><a name="style-attribute-fontSize-example-1-images" 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><div class="div3">
+<h4><a name="style-attribute-fontStyle" 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 name="style-property-details-fontStyle" 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>
+denote a shear transformation (at an unspecified
+angle) in the inline progression dimension.</p><p>If a specified font style is not available, then a
+presentation processor must attempt to map the specified font style
+to an available font style that has similar typographic
+characteristics, or, in the absence of such a mapping, it must
+interpret the font style as if the value <code>normal</code> were
+specified.</p><p>The <code>tts:fontStyle</code> style is illustrated by the following example.</p><a name="style-attribute-fontStyle-example-1" id="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"/>
+ <style tts:color="white"/>
+ <style tts:displayAlign="after"/>
+ <style tts:textAlign="center"/>
+ <style tts:fontFamily="proportionalSansSerif"/>
+</region>
+...
+<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>
+</p>
+</pre></div>
+</td></tr></tbody></table><p></p><a name="style-attribute-fontStyle-example-1-images" 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><div class="div3">
+<h4><a name="style-attribute-fontWeight" 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 name="style-property-details-fontWeight" 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 specified font weight is not available, then a
+presentation processor must attempt to map the specified font weight
+to an available font weight that has similar typographic
+characteristics, or, in the absence of such a mapping, it must
+interpret the font weight as if the value <code>normal</code> were
+specified.</p><p>The <code>tts:fontWeight</code> style is illustrated by the following example.</p><a name="style-attribute-fontWeight-example-1" id="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"/>
+ <style tts:color="white"/>
+ <style tts:displayAlign="center"/>
+ <style tts:textAlign="center"/>
+ <style tts:fontFamily="proportionalSansSerif"/>
+</region>
+...
+<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/>
+ She gave me a good character<br/>
+ <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 name="style-attribute-fontWeight-example-1-images" 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><div class="div3">
+<h4><a name="style-attribute-lineHeight" 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 name="style-property-details-lineHeight" 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
+initial value of the style property must be considered to be the same
+as the largest font size that applies to any
+descendant element.</p><p>If specified as a <a href="#style-value-length"><length></a>, then the length must
+be non-negative.</p><p>If a specified value of this attribute is not supported,
+then a presentation processor must interpret the attribute as if the
+value <code>normal</code> were specified.</p><p>The <code>tts:lineHeight</code> style is illustrated by the following example.</p><a name="style-attribute-lineHeight-example-1" id="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"/>
+ <style tts:color="white"/>
+ <style tts:displayAlign="center"/>
+ <style tts:textAlign="start"/>
+ <style tts:fontFamily="proportionalSansSerif"/>
+ <style tts:fontSize="16px"/>
+ <style <span class="strong">tts:lineHeight="32px"</span>/>
+</region>
+...
+<p region="r1">
+ He thought he saw an elephant,<br/>
+ That practised on a fife:<br/>
+ He looked again, and found it was<br/>
+ A letter from his wife.<br/>
+ "At length I realise," he said,<br/>
+ "The bitterness of Life.
+"</p>
+</pre></div>
+</td></tr></tbody></table><p></p><a name="style-attribute-lineHeight-example-1-images" 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><div class="div3">
+<h4><a name="style-attribute-opacity" 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 name="style-property-details-opacity" 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>An <a href="#style-value-alpha"><alpha></a> value greater
+than 1.0 must be considered equivalent to an <a href="#style-value-alpha"><alpha></a> value of 1.0.</p><p>The <code>tts:opacity</code> style is illustrated by the following example.</p><a name="style-attribute-opacity-example-1" id="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>/>
+ <set begin="2s" dur="1s" <span class="strong">tts:opacity="0.50"</span>/>
+ <set begin="3s" dur="1s" <span class="strong">tts:opacity="0.25"</span>/>
+ <set begin="4s" dur="1s" <span class="strong">tts:opacity="0.00"</span>/>
+ <style tts:extent="304px 77px"/>
+ <style tts:backgroundColor="black"/>
+ <style tts:color="white"/>
+ <style tts:displayAlign="after"/>
+ <style tts:textAlign="center"/>
+</region>
+...
+<p region="r1">
+ The sun was shining on the sea
+</p>
+</pre></div>
+</td></tr></tbody></table><p></p><a name="style-attribute-opacity-example-1-images" 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><div class="div3">
+<h4><a name="style-attribute-origin" 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 root container extent,
+if specified, or the external authoring context, if not specified.</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 name="style-property-details-origin" 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 root container region</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 initial value
+of the style property must be considered to be the same as the root container
+origin.</p><p>If a specified value of this attribute is not supported,
+then a presentation processor must interpret the attribute as if the
+value <code>auto</code> were specified.</p><p>The <code>tts:origin</code> style is illustrated by the following example.</p><a name="style-attribute-origin-example-1" id="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"/>
+ <style tts:backgroundColor="black"/>
+ <style tts:color="white"/>
+ <style tts:displayAlign="center"/>
+ <style tts:textAlign="center"/>
+</region>
+...
+<p region="r1">
+ "To dine!" she shrieked in dragon-wrath.<br/>
+ "To swallow wines all foam and froth!<br/>
+ To simper at a table-cloth!"
+</p>
+</pre></div>
+</td></tr></tbody></table><p></p><a name="style-attribute-origin-example-1-images" 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 name="style-attribute-overflow" 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 name="style-property-details-overflow" 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 specified value of this attribute is not supported,
+then a presentation processor must interpret the attribute as if the
+value <code>hidden</code> were specified.</p><p>The <code>tts:overflow</code> style is illustrated by the following example.</p><a name="style-attribute-overflow-example-1" id="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"/>
+ <style tts:backgroundColor="black"/>
+ <style tts:color="red"/>
+ <style tts:displayAlign="before"/>
+ <style tts:textAlign="start"/>
+ <style tts:fontFamily="proportionalSansSerif"/>
+ <style tts:fontSize="18px"/>
+ <style tts:wrapOption="noWrap"/>
+ <style <span class="strong">tts:overflow="visible"</span>/>
+</region>
+<region xml:id="r2">
+ <style tts:extent="232px 40px"/>
+ <style tts:origin="0px 43px"/>
+ <style tts:backgroundColor="black"/>
+ <style tts:color="red"/>
+ <style tts:displayAlign="before"/>
+ <style tts:textAlign="start"/>
+ <style tts:fontFamily="proportionalSansSerif"/>
+ <style tts:fontSize="18px"/>
+ <style tts:wrapOption="noWrap"/>
+ <style <span class="strong">tts:overflow="hidden"</span>/>
+</region>
+...
+<p region="r1">
+ "But wait a bit," the Oysters cried,<br/>
+ "Before we have our chat;
+</p>
+<p region="r2">
+ 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 name="style-attribute-overflow-example-1-images" 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><div class="div3">
+<h4><a name="style-attribute-padding" 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 name="style-property-details-padding" 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>If a specified value of this attribute is not supported,
+then a presentation processor must interpret the attribute as if the
+value <code>0px</code> were specified.</p><p>The <code>tts:padding</code> style is illustrated by the following example.</p><a name="style-attribute-padding-example-1" id="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"/>
+ <style tts:color="white"/>
+ <style tts:displayAlign="after"/>
+ <style tts:textAlign="center"/>
+ <style <span class="strong">tts:padding="10px 40px"</span>/>
+</region>
+...
+<p region="r1" tts:backgroundColor="red">
+ Just the place for a Snark! I have said it twice:<br/>
+ That alone should encourage the crew.<br/>
+ 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 name="style-attribute-padding-example-1-images" 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><div class="div3">
+<h4><a name="style-attribute-showBackground" 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 name="style-property-details-showBackground" 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 selected into the region.</p><p>If a specified value of this attribute is not supported,
+then a presentation processor must interpret the attribute as if the
+value <code>always</code> were specified.</p><p>The <code>tts:showBackground</code> style is illustrated by the following example.</p><a name="style-attribute-showBackground-example-1" id="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"/>
+ <style tts:backgroundColor="black"/>
+ <style <span class="strong">tts:showBackground="always"</span>/>
+ <style tts:color="white"/>
+ <style tts:displayAlign="before"/>
+ <style tts:textAlign="start"/>
+</region>
+<region xml:id="r2">
+ <style tts:origin="205px 60px"/>
+ <style tts:extent="290px 100px"/>
+ <style tts:backgroundColor="red"/>
+ <style tts:color="white"/>
+ <style tts:displayAlign="before"/>
+ <style tts:textAlign="end"/>
+ <style <span class="strong">tts:showBackground="whenActive"</span>/>
+</region>
+</pre></div>
+</td></tr></tbody></table></div><div class="div3">
+<h4><a name="style-attribute-textAlign" 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 name="style-property-details-textAlign" 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 specified value of this attribute is not supported,
+then a presentation processor must interpret the attribute as if the
+value <code>start</code> were specified.</p><p>The <code>tts:textAlign</code> style is illustrated by the following example.</p><a name="style-attribute-textAlign-example-1" id="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"/>
+ <style tts:backgroundColor="black"/>
+ <style tts:color="white"/>
+ <style <span class="strong">tts:textAlign="start"</span>/>
+</region>
+<region xml:id="r2">
+ <style tts:extent="355px 43px"/>
+ <style tts:origin="0px 47px"/>
+ <style tts:backgroundColor="black"/>
+ <style tts:color="white"/>
+ <style <span class="strong">tts:textAlign="end"</span>/>
+</region>
+...
+<p region="r1">
+ Beware the Jabberwock, my son!<br/>
+ The jaws that bite, the claws that catch!
+</p>
+<p region="r2">
+ Beware the Jubjub bird, and shun<br/>
+ The frumious Bandersnatch!
+</p>
+</pre></div>
+</td></tr></tbody></table><p></p><a name="style-attribute-textAlign-example-1-images" 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><div class="div3">
+<h4><a name="style-attribute-textDecoration" 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 name="style-property-details-textDecoration" 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 specified value of this attribute is not supported,
+then a presentation processor must interpret the attribute as if the
+value <code>none</code> were specified.</p><p>The <code>tts:textDecoration</code> style is illustrated by the following example.</p><a name="style-attribute-textDecoration-example-1" id="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"/>
+ <style tts:backgroundColor="black"/>
+ <style tts:color="white"/>
+ <style tts:padding="5px 2px"/>
+ <style <span class="strong">tts:textDecoration="underline"</span>/>
+</region>
+...
+<p region="r1">
+ 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>
+ could not see a cloud<br/>
+ Because no cloud was in the sky.
+ </span>
+</p>
+</pre></div>
+</td></tr></tbody></table><p></p><a name="style-attribute-textDecoration-example-1-images" 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><div class="div3">
+<h4><a name="style-attribute-textOutline" 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 name="style-property-details-textOutline" 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><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 root container extent 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 specified value of this attribute is not supported,
+then a presentation processor must interpret the attribute as if the
+value <code>none</code> were specified.</p><p>The <code>tts:textOutline</code> style is illustrated by the following
+example.</p><a name="style-attribute-textOutline-example-1" id="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"/>
+ <style <span class="strong">tts:textOutline="black 2px 0px"</span>/>
+ <style tts:fontFamily="proportionalSansSerif"/>
+ <style tts:fontSize="24px"/>
+</region>
+...
+<p>
+ How doth the little crocodile<br/>
+ Improve its shining tail,<br/>
+ And pour the waters of the Nile<br/>
+ On every golden scale!<br/>
+ How cheerfully he seems to grin,<br/>
+ How neatly spreads his claws,<br/>
+ And welcomes little fishes in,<br/>
+ With gently smiling jaws!
+</p>
+</pre></div>
+</td></tr></tbody></table><p></p><a name="style-attribute-textOutline-example-1-images" 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 name="style-attribute-unicodeBidi" 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 name="style-property-details-unicodeBidi" 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 specified value of this attribute is not supported,
+then a presentation processor must interpret the attribute as if the
+value <code>normal</code> were specified.</p><p>The <code>tts:unicodeBidi</code> style is illustrated by the following example.</p><a name="style-attribute-unicodeBidi-example-1" id="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"/>
+ <style tts:backgroundColor="black"/>
+ <style tts:color="white"/>
+ <style tts:displayAlign="after"/>
+ <style tts:textAlign="center"/>
+</region>
+...
+<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>
+</p>
+</pre></div>
+</td></tr></tbody></table><p></p><a name="style-attribute-unicodeBidi-example-1-images" 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><div class="div3">
+<h4><a name="style-attribute-visibility" 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 name="style-property-details-visibility" 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 specified value of this attribute is not supported,
+then a presentation processor must interpret the attribute as if the
+value <code>visible</code> were specified.</p><p>The <code>tts:visibility</code> style is illustrated by the following example.</p><a name="style-attribute-visibility-example-1" id="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"/>
+ <style tts:color="white"/>
+ <style/>
+</region>
+...
+<p region="r1" dur="4s">
+ <span <span class="strong">tts:visibility="hidden"</span>>
+ <set begin="1s" <span class="strong">tts:visibility="visible"</span>/>
+ Curiouser
+ </span>
+ <span <span class="strong">tts:visibility="hidden"</span>>
+ <set begin="2s" <span class="strong">tts:visibility="visible"</span>/>
+ and
+ </span>
+ <span <span class="strong">tts:visibility="hidden"</span>>
+ <set begin="3s" <span class="strong">tts:visibility="visible"</span>/>
+ curiouser!
+ </span>
+</p>
+</pre></div>
+</td></tr></tbody></table><p></p><a name="style-attribute-visibility-example-1-images" 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><div class="div3">
+<h4><a name="style-attribute-wrapOption" 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 name="style-property-details-wrapOption" 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 specified value of this attribute is not supported,
+then a presentation processor must interpret the attribute as if the
+value <code>wrap</code> were specified.</p><p>The <code>tts:wrapOption</code> style is illustrated by the following example.</p><a name="style-attribute-wrapOption-example-1" id="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"/>
+ <style tts:color="white"/>
+ <style tts:displayAlign="after"/>
+ <style tts:overflow="hidden"/>
+ <style <span class="strong">tts:wrapOption="noWrap"</span>/>
+</region>
+...
+<p>
+ I'll tell thee everything I can:<br/>
+ There's little to relate.<br/>
+ I saw an aged aged man,<br/>
+ A-sitting on a gate.
+</p>
+</pre></div>
+</td></tr></tbody></table><p></p><a name="style-attribute-wrapOption-example-1-images" 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><div class="div3">
+<h4><a name="style-attribute-writingMode" 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 name="style-property-details-writingMode" 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 specified value of this attribute is not supported,
+then a presentation processor must interpret the attribute as if the
+value <code>lrtb</code> were specified.</p><p>The <code>tts:writingMode</code> style is illustrated by the following example.</p><a name="style-attribute-writingMode-example-1" id="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"/>
+ <style tts:padding="10px 3px"/>
+ <style tts:backgroundColor="black"/>
+ <style tts:color="white"/>
+ <style <span class="strong">tts:writingMode="tbrl"</span>/>
+</region>
+<region xml:id="r2">
+ <style tts:extent="310px 50px"/>
+ <style tts:origin="70px 120px"/>
+ <style tts:padding="10px 3px"/>
+ <style tts:backgroundColor="black"/>
+ <style tts:color="white"/>
+ <style <span class="strong">tts:writingMode="rltb"</span>/>
+</region>
+...
+<p region="r1">
+ I sometimes dig for buttered rolls,<br/>
+ Or set limed twigs for crabs:
+</p>
+<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 name="style-attribute-writingMode-example-1-images" 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><div class="div3">
+<h4><a name="style-attribute-zIndex" 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 name="style-property-details-zIndex" 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 document
+instance.</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 specified value of this attribute is not supported,
+then a presentation processor must interpret the attribute as if the
+value <code>auto</code> were specified.</p><p>The <code>tts:zIndex</code> style is illustrated by the following example.</p><a name="style-attribute-zIndex-example-1" id="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"/>
+ <style tts:padding="5px"/>
+ <style tts:backgroundColor="black"/>
+ <style tts:color="white"/>
+ <style <span class="strong">tts:zIndex="0"</span>/>
+</region>
+<region xml:id="r2">
+ <style tts:origin="100px 60px"/>
+ <style tts:extent="400px 100px"/>
+ <style tts:padding="5px"/>
+ <style tts:backgroundColor="red"/>
+ <style tts:color="white"/>
+ <style tts:textAlign="end"/>
+ <style <span class="strong">tts:zIndex="1"</span>/>
+</region>
+<region xml:id="r3">
+ <style tts:origin="0px 120px"/>
+ <style tts:extent="400px 100px"/>
+ <style tts:padding="5px"/>
+ <style tts:backgroundColor="black"/>
+ <style tts:color="white"/>
+ <style <span class="strong">tts:zIndex="2"</span>/>
+</region>
+<region xml:id="r4">
+ <style tts:origin="100px 180px"/>
+ <style tts:extent="400px 100px"/>
+ <style tts:padding="5px"/>
+ <style tts:backgroundColor="red"/>
+ <style tts:color="white"/>
+ <style tts:textAlign="end"/>
+ <style <span class="strong">tts:zIndex="3"</span>/>
+</region>
+...
+<p region="r1">
+ I passed by his garden, and marked, with one eye,<br/>
+ How the Owl and the Panther were sharing a pie.
+</p>
+<p region="r2">
+ The Panther took pie-crust, and gravy, and meat,<br/>
+ While the Owl had the dish as its share of the treat.
+</p>
+<p region="r3">
+ When the pie was all finished, the Owl, as a boon,<br/>
+ Was kindly permitted to pocket the spoon:
+</p>
+<p region="r4">
+ While the Panther received knife and fork<br/>
+ with a growl,<br/>
+ And concluded the banquet by...
+</p>
+</pre></div>
+</td></tr></tbody></table><p></p><p></p><a name="style-attribute-zIndex-example-1-images" 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></div><div class="div2">
+<h3><a name="styling-style-value-expressions" 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-duration"><b>8.3.4 <duration></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><li><p><a href="#style-value-quotedString"><b>8.3.11 <quotedString></b></a></p></li><li><p><a href="#style-value-string"><b>8.3.12 <string></b></a></p></li></ul><div class="div3">
+<h4><a name="style-value-alpha" 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 name="alpha-style-expression-syntax" id="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>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><div class="div3">
+<h4><a name="style-value-color" 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 name="color-style-expression-syntax" id="color-style-expression-syntax"></a><table class="syntax"><caption>Syntax Representation – <color></caption><tbody><tr><td>
+<div class="exampleInner"><pre>
+<color>
+ : "#" rrggbb
+ | "#" rrggbbaa
+ | "rgb" "(" r-value "," g-value "," b-value ")"
+ | "rgba" "(" r-value "," g-value "," b-value "," a-value ")"
+ | <a href="#style-value-namedColor"><namedColor></a>
+
+rrggbb
+ : <a href="#style-value-hexDigit"><hexDigit></a>{6}
+
+rrggbbaa
+ : <a href="#style-value-hexDigit"><hexDigit></a>{8}
+
+r-value | g-value | b-value | a-value
+ : component-value
+
+component-value
+ : non-negative-integer // valid range: [0,255]
+
+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><div class="div3">
+<h4><a name="style-value-digit" 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 name="digit-style-expression-syntax" id="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 name="style-value-duration" id="style-value-duration"></a>8.3.4 <duration></h4><p>A <duration> expression is used to express a temporal duration value.</p><a name="duration-style-expression-syntax" id="duration-style-expression-syntax"></a><table class="syntax"><caption>Syntax Representation – <duration></caption><tbody><tr><td>
+<div class="exampleInner"><pre>
+<duration>
+ : <a href="#style-value-digit"><digit></a>+ ( "." <a href="#style-value-digit"><digit></a>+ )? metric
+
+metric
+ : "s" // seconds
+ | "ms" // milliseconds
+ | "f" // frames
+ | "t" // ticks
+</pre></div>
+</td></tr></tbody></table><p>It is an error to omit the metric component of a duration.</p><p>When operating with <code>smpte</code> time base and
+<code>discontinuous</code> mode, a duration expression must be
+considered to denote a duration in (local) real-time, independently of the
+governing time base.</p></div><div class="div3">
+<h4><a name="style-value-familyName" id="style-value-familyName"></a>8.3.5 <familyName></h4><p>A <familyName> expression specifies a font family name.</p><p>If the name contains a quotation delimiter character,
+then it must be expressed as a
+<quotedString>. If the name contains a
+whitespace character,
+then it should be expressed as a
+<quotedString>; however, if it is expressed as a <string>, then it
+must not contain a <code>COMMA</code> ',' character.</p><a name="familyName-style-expression-syntax" id="familyName-style-expression-syntax"></a><table class="syntax"><caption>Syntax Representation – <familyName></caption><tbody><tr><td>
+<div class="exampleInner"><pre>
+<familyName>
+ : <a href="#style-value-string"><string></a>
+ | <a href="#style-value-quotedString"><quotedString></a>
+</pre></div>
+</td></tr></tbody></table></div><div class="div3">
+<h4><a name="style-value-genericFamilyName" 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 name="genericFamilyName-style-expression-syntax" id="genericFamilyName-style-expression-syntax"></a><table class="syntax"><caption>Syntax Representation – <genericFamilyName></caption><tbody><tr><td>
+<div class="exampleInner"><pre>
+<genericFamilyName>
+ : "default"
+ | "monospace"
+ | "sansSerif"
+ | "serif"
+ | "monospaceSansSerif"
+ | "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 is 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 name="style-value-hexDigit" 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, no distinction must be made between lower and upper case.</p><a name="hexDigit-style-expression-syntax" id="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 name="style-value-integer" 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 name="integer-style-expression-syntax" id="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 name="style-value-length" 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 name="length-style-expression-syntax" id="length-style-expression-syntax"></a><table class="syntax"><caption>Syntax Representation – <length></caption><tbody><tr><td>
+<div class="exampleInner"><pre>
+<length>
+ : scalar
+ | percentage
+
+scalar
+ : number units
+
+percentage
+ : number "%"
+
+sign
+ : "+" | "-"
+
+number
+ : sign? non-negative-number
+
+non-negative-number
+ : non-negative-integer
+ | non-negative-real
+
+non-negative-integer
+ : <a href="#style-value-digit"><digit></a>+
+
+non-negative-real
+ : <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 name="style-value-namedColor" 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, no distinction must be made between lower and upper case.</p><a name="namedColor-style-expression-syntax" id="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
+ | "silver" // #c0c0c0ff
+ | "gray" // #808080ff
+ | "white" // #ffffffff
+ | "maroon" // #800000ff
+ | "red" // #ff0000ff
+ | "purple" // #800080ff
+ | "fuchsia" // #ff00ffff
+ | "magenta" // #ff00ffff (= fuchsia)
+ | "green" // #008000ff
+ | "lime" // #00ff00ff
+ | "olive" // #808000ff
+ | "yellow" // #ffff00ff
+ | "navy" // #000080ff
+ | "blue" // #0000ffff
+ | "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 name="style-value-quotedString" id="style-value-quotedString"></a>8.3.11 <quotedString></h4><p>A <quotedString> is used to express a delimited string that may contain
+a whitespace or a quotation delimiter character. Two types of quotation delimiters
+are provided in order to accommodate strings that contain the other delimiter.</p><a name="quotedString-style-expression-syntax" id="quotedString-style-expression-syntax"></a><table class="syntax"><caption>Syntax Representation – <quotedString></caption><tbody><tr><td>
+<div class="exampleInner"><pre>
+<quotedString>
+ : "\"" ( <em>char</em> - { "\"" } )* "\""
+ | "\'" ( <em>char</em> - { "\'" } )* "\'"
+</pre></div>
+</td></tr></tbody></table><p>In the above syntax representation, the syntactic element <em><code>char</code></em> must adhere to production
+[2] <code>Char</code> as defined by <a href="#xml10">[XML 1.0]</a> §
+2.2.</p></div><div class="div3">
+<h4><a name="style-value-string" id="style-value-string"></a>8.3.12 <string></h4><p>A <string> expression consists of a sequence of characters where no character
+is a quotation delimiter character.</p><a name="string-style-expression-syntax" id="string-style-expression-syntax"></a><table class="syntax"><caption>Syntax Representation – <string></caption><tbody><tr><td>
+<div class="exampleInner"><pre>
+<string>
+ : ( <em>char</em> - { "\"" | "\'" } )+
+</pre></div>
+</td></tr></tbody></table><p>In the above syntax representation, the syntactic element <em><code>char</code></em> must adhere to production
+[2] <code>Char</code> as defined by <a href="#xml10">[XML 1.0]</a> §
+2.2.</p></div></div><div class="div2">
+<h3><a name="semantics-style-resolution" 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 name="semantics-style-association" 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 name="semantics-style-association-inline" 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 name="style-association-example-1" 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 name="semantics-style-association-referential" 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 content 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 name="style-association-example-2" id="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 name="semantics-style-association-chained-referential" 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, recursively
+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 content 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 name="style-association-example-3" 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 Monospace</p>
+<p <span class="strong">style="s2"</span>>Yellow Monospace</p>
+</pre></div>
+</td></tr></tbody></table></div><div class="div4">
+<h5><a name="semantics-style-association-nested" id="semantics-style-association-nested"></a>8.4.1.4 Nested Styling</h5><p>Style properties may be expressed in an 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 name="style-association-example-4" id="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 name="semantics-style-inheritance" 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 TTML document instance 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 name="semantics-style-inheritance-content" id="semantics-style-inheritance-content"></a>8.4.2.1 Content Style Inheritance</h5><p>Style properties are inherited from ancestor content elements
+within an intermediate synchronic document
+if a style property is not associated with a content element (or
+an anonymous span) and the style property is designated as
+inheritable.</p><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 name="style-inheritance-example-2" id="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 name="semantics-style-inheritance-region" 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 content
+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 name="style-inheritance-example-3" id="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"/>
+</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 name="semantics-style-resolution-value-categories" 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 name="semantics-style-resolved-value-category-specified" 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 name="semantics-style-resolved-value-category-computed" 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 name="semantics-style-resolved-value-category-actual" 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 name="semantics-style-resolution-processing" 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 name="semantics-style-resolution-processing-definitions" 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 name="conceptual-definition-example-style-property" id="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 name="conceptual-definition-example-specified-style-set" 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>
+{
+ [
+ ["http://www.w3.org/ns/ttml#styling", "backgroundColor"],
+ ["specified", <em>color</em>, 0x00FF00 ]
+ ],
+ [
+ ["http://www.w3.org/ns/ttml#styling", "color"],
+ ["specified", <em>color</em>, "red" ]
+ ],
+ [
+ ["http://www.w3.org/ns/ttml#styling", "fontSize"],
+ ["specified", <em>length</em>, "1c" ]
+ ],
+ [
+ ["http://www.w3.org/ns/ttml#styling", "lineHeight"],
+ ["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 name="conceptual-definition-example-computed-style-set" 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>
+{
+ [
+ ["http://www.w3.org/ns/ttml#styling", "backgroundColor"],
+ ["specified", <em>color</em>, 0x00FF00 ]
+ ],
+ [
+ ["http://www.w3.org/ns/ttml#styling", "color"],
+ ["computed", <em>color</em>, 0xFF0000 ]
+ ],
+ [
+ ["http://www.w3.org/ns/ttml#styling", "fontSize"],
+ ["computed", <em>length</em>, "24px" ]
+ ],
+ [
+ ["http://www.w3.org/ns/ttml#styling", "lineHeight"],
+ ["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 name="semantics-style-resolution-processing-sss" 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 content 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 name="semantics-style-resolution-processing-css" 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 content 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 name="semantics-style-resolution-process-overall" 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
+content 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 name="layout" 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 name="layout-element-vocabulary" id="layout-element-vocabulary"></a>9.1 Layout Element Vocabulary</h3><p>The following elements specify the structure and principal layout aspects of a
+document instance:</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 name="layout-vocabulary-layout" 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 name="elt-syntax-layout" id="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>*
+</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 name="layout-vocabulary-region" id="layout-vocabulary-region"></a>9.1.2 region</h4><p>The <code>region</code> element is used to define a space or area into which content is
+to be flowed for the purpose of presentation.</p><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.</p><a name="elt-syntax-region" id="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="#style-attribute-style">style</a> = IDREFS
+ <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>*
+</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 document instance's root <code>tt</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 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 root container
+extent 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 role(s) identified
+by this attribute expresses the semantic role(s) of the region
+independently from the semantic role(s) of any content targeted to
+(associated with) the region.</p></div></div><div class="div2">
+<h3><a name="layout-attribute-vocabulary" 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 content elements.</p><div class="div3">
+<h4><a name="layout-attribute-region" 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 content element is intended to be flowed.</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 name="semantics-region-layout" 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 name="semantics-default-region" id="semantics-default-region"></a>9.3.1 Default Region</h4><p>If a TTML document instance 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 root container
+region;</p></li><li><p>the temporal interval of the default region is the same as temporal
+interval of the document instance;</p></li></ul><p>Furthermore, if no <a href="#layout-vocabulary-region"><code>region</code></a> element was
+specified, then the <a href="#layout-attribute-region"><code>region</code></a> attribute must
+not be specified on any content element in the document
+instance.</p><p>If a default region is implied for a given document instance, 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 document instance 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 name="semantics-default-region-example" id="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>
+ <region xml:id="anonymous"/>
+ </layout></span>
+ </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 name="semantics-region-layout-step-1" 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 document instance 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 document
+instance 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> , as follows:</p><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 content element, if they are temporally inactive, if they are empty,
+or if they aren't associated with region <em>R</em>;</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><p>A content 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><p>The result of performing the processing described above will be a sequence of
+<em>N</em> intermediate synchronic
+document instances,
+<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 document instances,
+<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="#cea608c">[CEA-608-C]</a>, § C.3.</p></div></div><div class="div3">
+<h4><a name="semantics-region-layout-step-2" 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 content 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 root container extent 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>, and where the region's position and extent are mapped to equivalent
+<code>top</code>, <code>left</code>, <code>width</code>, and <code>height</code>
+attributes;</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 content 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 content 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 content 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>Due to the possible presence of TTML style properties or style property values
+in a given TTML document instance 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 name="semantics-region-layout-example" 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 name="region-mapping-example-1-s" 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"
+ xmlns="http://www.w3.org/ns/ttml"
+ xmlns:tts="http://www.w3.org/ns/ttml#styling">
+ <head>
+ <layout>
+ <region xml:id="r1">
+ <style tts:origin="10px 100px"/>
+ <style tts:extent="620px 96px"/>
+ <style tts:fontSize="40px"/>
+ <style tts:fontWeight="bold"/>
+ <style tts:backgroundColor="black"/>
+ <style tts:color="red"/>
+ <style tts:textAlign="center"/>
+ <style tts:displayAlign="center"/>
+ </region>
+ <region xml:id="r2">
+ <style tts:origin="10px 300px"/>
+ <style tts:extent="620px 96px"/>
+ <style tts:fontSize="40px"/>
+ <style tts:fontWeight="bold"/>
+ <style tts:backgroundColor="black"/>
+ <style tts:color="yellow"/>
+ <style tts:textAlign="center"/>
+ <style tts:displayAlign="center"/>
+ </region>
+ </layout>
+ </head>
+ <body xml:id="b1">
+ <div xml:id="d1" begin="0s" dur="2s">
+ <p xml:id="p1" region="r1">Text 1</p>
+ <p xml:id="p2" region="r2">Text 2</p>
+ </div>
+ <div xml:id="d2" begin="1s" dur="2s">
+ <p xml:id="p3" region="r2">Text 3</p>
+ <p xml:id="p4" region="r1">Text 4</p>
+ </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 (selected into) 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 at 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 selected into 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 TTML document instances,
+but rather, are representations of possible internal processing states used for
+didactic purposes.</p></div><a name="region-mapping-example-1-i0" 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"
+ xmlns="http://www.w3.org/ns/ttml"
+ xmlns:tts="http://www.w3.org/ns/ttml#styling">
+ <head>
+ <layout>
+ <region xml:id="r1">
+ <style tts:origin="10px 100px"/>
+ <style tts:extent="620px 96px"/>
+ <style tts:fontSize="40px"/>
+ <style tts:fontWeight="bold"/>
+ <style tts:backgroundColor="black"/>
+ <style tts:color="red"/>
+ <style tts:textAlign="center"/>
+ <style tts:displayAlign="center"/>
+ <body xml:id="b1-1">
+ <div xml:id="d1-1">
+ <p xml:id="p1">Text 1</p>
+ </div>
+ </body>
+ </region>
+ <region xml:id="r2">
+ <style tts:origin="10px 300px"/>
+ <style tts:extent="620px 96px"/>
+ <style tts:fontSize="40px"/>
+ <style tts:fontWeight="bold"/>
+ <style tts:backgroundColor="black"/>
+ <style tts:color="yellow"/>
+ <style tts:textAlign="center"/>
+ <style tts:displayAlign="center"/>
+ <body xml:id="b1-2">
+ <div xml:id="d1-2">
+ <p xml:id="p2">Text 2</p>
+ </div>
+ </body>
+ </region>
+ </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 name="region-mapping-example-1-f0" 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">
+ <fo:layout-master-set>
+ <fo:simple-page-master master-name="m1"
+ page-width="640px" page-height="480px">
+ <fo:region-body/>
+ </fo:simple-page-master>
+ </fo:layout-master-set>
+ <fo:page-sequence master-reference="m1">
+ <fo:flow flow-name="xsl-region-body">
+ <!-- region (r1) -->
+ <fo:block-container id="r1" absolute-position="absolute"
+ left="10px" top="100px" width="620px" height="96px"
+ background-color="black" display-align="center">
+ <!-- body (b1) -->
+ <fo:block id="b1-1">
+ <!-- body's space (before) filler -->
+ <fo:block
+ space-after.optimum="96px"
+ space-after.maximum="96px"
+ space-after.conditionality="retain"/>
+ <!-- div (d1) -->
+ <fo:block id="d1-1">
+ <!-- p (p1) -->
+ <fo:block id="p1" text-align="center">
+ <fo:inline font-size="40px" font-weight="bold"
+ color="red">Text 1</fo:inline>
+ </fo:block>
+ </fo:block>
+ <!-- body's space (after) filler -->
+ <fo:block
+ space-after.optimum="96px"
+ space-after.maximum="96px"
+ space-after.conditionality="retain"/>
+ </fo:block>
+ </fo:block-container>
+ <!-- region (r2) -->
+ <fo:block-container id="r2" absolute-position="absolute"
+ left="10px" top="300px" width="620px" height="96px"
+ background-color="black" display-align="center">
+ <!-- body (b1) -->
+ <fo:block id="b1-2">
+ <!-- body's space (before) filler -->
+ <fo:block
+ space-after.optimum="96px"
+ space-after.maximum="96px"
+ space-after.conditionality="retain"/>
+ <!-- div (d1) -->
+ <fo:block id="d1-2">
+ <!-- p (p2) -->
+ <fo:block id="p2" text-align="center">
+ <fo:inline font-size="40px" font-weight="bold"
+ color="yellow">Text 2</fo:inline>
+ </fo:block>
+ </fo:block>
+ <!-- body's space (after) filler -->
+ <fo:block
+ space-after.optimum="96px"
+ space-after.maximum="96px"
+ space-after.conditionality="retain"/>
+ </fo:block>
+ </fo:block-container>
+ </fo:flow>
+ </fo:page-sequence>
+</fo:root>
+</pre></div>
+</td></tr></tbody></table><p>The following, second intermediate document shows the synchronic state at
+time interval [1,2), at 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 selected into region <code>r1</code>
+and paragraphs <code>p2</code> and <code>p3</code> (and their ancestors) are
+selected into region <code>r2</code>.</p><a name="region-mapping-example-1-i1" 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"
+ xmlns="http://www.w3.org/ns/ttml"
+ xmlns:tts="http://www.w3.org/ns/ttml#styling">
+ <head>
+ <layout>
+ <region xml:id="r1">
+ <style tts:origin="10px 100px"/>
+ <style tts:extent="620px 96px"/>
+ <style tts:fontSize="40px"/>
+ <style tts:fontWeight="bold"/>
+ <style tts:backgroundColor="black"/>
+ <style tts:color="red"/>
+ <style tts:textAlign="center"/>
+ <style tts:displayAlign="center"/>
+ <body xml:id="b1-1">
+ <div xml:id="d1-1">
+ <p xml:id="p1">Text 1</p>
+ </div>
+ <div xml:id="d2-1">
+ <p xml:id="p4">Text 4</p>
+ </div>
+ </body>
+ </region>
+ <region xml:id="r2">
+ <style tts:origin="10px 300px"/>
+ <style tts:extent="620px 96px"/>
+ <style tts:fontSize="40px"/>
+ <style tts:fontWeight="bold"/>
+ <style tts:backgroundColor="black"/>
+ <style tts:color="yellow"/>
+ <style tts:textAlign="center"/>
+ <style tts:displayAlign="center"/>
+ <body xml:id="b1-2">
+ <div xml:id="d1-2">
+ <p xml:id="p2">Text 2</p>
+ </div>
+ <div xml:id="d2-2">
+ <p xml:id="p3">Text 3</p>
+ </div>
+ </body>
+ </region>
+ </layout>
+ </head>
+</tt>
+</pre></div>
+</td></tr></tbody></table><p>The following, third intermediate document shows the synchronic state at time
+interval [2,3), at which time only division <code>d2</code> is temporally active,
+and where paragraphs <code>p4</code> and <code>p3</code> (and their ancestors)
+are selected into regions <code>r1</code> and <code>r2</code>, respectively.</p><a name="region-mapping-example-1-i2" 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"
+ xmlns="http://www.w3.org/ns/ttml"
+ xmlns:tts="http://www.w3.org/ns/ttml#styling">
+ <head>
+ <layout>
+ <region xml:id="r1">
+ <style tts:origin="10px 100px"/>
+ <style tts:extent="620px 96px"/>
+ <style tts:fontSize="40px"/>
+ <style tts:fontWeight="bold"/>
+ <style tts:backgroundColor="black"/>
+ <style tts:color="red"/>
+ <style tts:textAlign="center"/>
+ <style tts:displayAlign="center"/>
+ <body xml:id="b1-1">
+ <div xml:id="d2-1">
+ <p xml:id="p4">Text 4</p>
+ </div>
+ </body>
+ </region>
+ <region xml:id="r2">
+ <style tts:origin="10px 300px"/>
+ <style tts:extent="620px 96px"/>
+ <style tts:fontSize="40px"/>
+ <style tts:fontWeight="bold"/>
+ <style tts:backgroundColor="black"/>
+ <style tts:color="yellow"/>
+ <style tts:textAlign="center"/>
+ <style tts:displayAlign="center"/>
+ <body xml:id="b1-2">
+ <div xml:id="d2-2">
+ <p xml:id="p3">Text 3</p>
+ </div>
+ </body>
+ </region>
+ </layout>
+ </head>
+</tt>
+</pre></div>
+</td></tr></tbody></table></div></div><div class="div2">
+<h3><a name="semantics-line-layout" id="semantics-line-layout"></a>9.4 Line Layout</h3><p>If a profile that applies to a document instance
+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 document instance.</p></div></div><div class="div1">
+<h2><a name="timing" 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 name="timing-element-vocabulary" 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 name="timing-attribute-vocabulary" 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 name="timing-attribute-begin" 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 name="timing-attribute-end" 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 name="timing-attribute-dur" 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 TTML document instance specifies the use of the
+<code>smpte</code> time base and <code>discontinuous</code> marker
+mode, the <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 name="timing-attribute-timeContainer" 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 name="timing-time-value-expressions" 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 name="timing-value-timeExpression" id="timing-value-timeExpression"></a>10.3.1 <timeExpression></h4><p>A <timeExpression> is used to specify a coordinate along
+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-timeBase"><b>6.2.11 ttp:timeBase</b></a>, <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>, and <a href="#parameter-attribute-tickRate"><b>6.2.10 ttp:tickRate</b></a> for further information on
+explicit specification of time base, frame rate, sub-frame rate, and
+tick rate.</p></div><a name="timeExpression-syntax" id="timeExpression-syntax"></a><table class="syntax"><caption>Syntax Representation – <timeExpression></caption><tbody><tr><td>
+<div class="exampleInner"><pre>
+<timeExpression>
+ : clock-time
+ | offset-time
+
+clock-time
+ : hours ":" minutes ":" seconds ( fraction | ":" frames ( "." sub-frames )? )?
+
+offset-time
+ : 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>+
+
+minutes | seconds
+ : <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>+
+
+sub-frames
+ : <a href="#style-value-digit"><digit></a>+
+
+fraction
+ : "." <a href="#style-value-digit"><digit></a>+
+
+time-count
+ : <a href="#style-value-digit"><digit></a>+
+
+metric
+ : "h" // hours
+ | "m" // minutes
+ | "s" // seconds
+ | "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 the range
+[0…59], while seconds are constrained to [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 name="timing-time-intervals" 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 name="animation" 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 name="animation-element-vocabulary" id="animation-element-vocabulary"></a>11.1 Animation Element Vocabulary</h3><p>The following elements specify the structure and principal animation aspects of a
+document instance:</p><ul><li><p><a href="#animation-vocabulary-set"><b>11.1.1 set</b></a></p></li></ul><div class="div3">
+<h4><a name="animation-vocabulary-set" id="animation-vocabulary-set"></a>11.1.1 set</h4><p>The <code>set</code> element is used as a child element of a content
+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 name="elt-syntax-set" id="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="#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>a single 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>*
+</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 name="animation-vocabulary-set-example-1" id="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>
+<span class="strong"><set begin="2s" dur="1s" tts:color="green"/></span>
+<span class="strong"><set begin="3s" dur="1s" tts:color="red"/></span>
+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 name="animation-vocabulary-set-example-2" id="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>
+ </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 root container region 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
+root container region, 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="#smil21">[SMIL 2.1]</a>,
+§ 3.6.2.</p></div></div></div><div class="div2">
+<h3><a name="animation-attribute-vocabulary" 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 name="metadata" 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 document instance, 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 name="metadata-element-vocabulary" 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 common metadata that is expected to be commonly
+used in a document instances:
+</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 name="metadata-vocabulary-metadata" 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 by a <code>metadata</code> element
+in one of two (non-mutually exclusive) manners: (1) by specifying one
+or more metadata attributes on the <code>metadata</code>
+element, and (2) by specifying one
+or more child elements
+in the <code>metadata</code> element
+that express metadata. Both types of metadata
+are referred to in this document as <em>metadata items</em>.</p><a name="elt-syntax-metadata" id="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
+ <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 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 of where it appears. The core vocabulary catalog permits an
+arbitrary number of <code>metadata</code> element children of any
+content element type except for the
+<code>tt</code> element. 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 name="metadata-vocabulary-metadata-example-1" id="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">
+ <ttm:title>Document Metadata Example</ttm:title>
+ <ttm:desc>This document employs document metadata.</ttm:desc>
+ </metadata>
+</head>
+...
+</pre></div>
+</td></tr></tbody></table><p></p><p>The use of element metadata is illustrated by the following example.</p><a name="metadata-vocabulary-metadata-example-2" id="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">
+ <ttm:title>Chapter 6 – Sherlock Holmes Gives a Demonstration</ttm:title>
+ <ttm:desc>Holmes shows Watson how the murderer entered the window.</ttm:desc>
+ </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 name="metadata-vocabulary-metadata-example-3" 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>
+...
+<div xmlns:ext="http://foo.bar.example.org/ttaf1#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 name="metadata-vocabulary-metadata-example-4" id="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/"
+ xmlns:dcterms="http://purl.org/dc/terms/"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <dc:title>Foreign Element Metadata Example</dc:title>
+ <dc:description>Express metadata using elements in foreign namespace.</dc:description>
+ <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 name="metadata-vocabulary-title" 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 name="elt-syntax-metadata-title" id="elt-syntax-metadata-title"></a><table class="syntax"><caption>XML Representation – Element Information Item: ttm:title</caption><tbody><tr><td>
+<div class="exampleInner"><pre>
+<ttm:title
+ <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: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 name="metadata-vocabulary-desc" 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 name="elt-syntax-metadata-desc" 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>
+<ttm:desc
+ <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: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 name="metadata-vocabulary-copyright" 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 name="elt-syntax-metadata-copyright" 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>
+<ttm:copyright
+ <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: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 name="metadata-vocabulary-agent" 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 name="elt-syntax-metadata-agent" 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>
+<ttm:agent
+ <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>?
+</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 content element.</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 name="metadata-vocabulary-agent-example-1" id="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>
+ <span class="strong"><ttm:agent xml:id="connery" type="person"></span>
+ <ttm:name type="family">Connery</ttm:name>
+ <ttm:name type="given">Thomas Sean</ttm:name>
+ <ttm:name type="alias">Sean</ttm:name>
+ <ttm:name type="full">Sir Thomas Sean Connery</ttm:name>
+ <span class="strong"></ttm:agent></span>
+ <span class="strong"><ttm:agent xml:id="bond" type="character"></span>
+ <ttm:name type="family">Bond</ttm:name>
+ <ttm:name type="given">James</ttm:name>
+ <ttm:name type="alias">007</ttm:name>
+ <ttm:actor agent="connery"/>
+ <span class="strong"></ttm:agent></span>
+ </head>
+ <body>
+ <div>
+ ...
+ <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 name="metadata-vocabulary-name" 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 name="elt-syntax-metadata-name" id="elt-syntax-metadata-name"></a><table class="syntax"><caption>XML Representation – Element Information Item: ttm:name</caption><tbody><tr><td>
+<div class="exampleInner"><pre>
+<ttm:name
+ <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 name="metadata-vocabulary-actor" 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 name="elt-syntax-metadata-actor" 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>
+<ttm:actor
+ <span class="reqattr">agent</span> = IDREF
+ <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> 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 <code>ttm:agent</code> element that denotes the person,
+group, or organization 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 name="metadata-attribute-vocabulary" 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 content elements:</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 content elements. See
+the definitions of content elements to determine permissible usage.</p></div><div class="div3">
+<h4><a name="metadata-attribute-agent" 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 content 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
+<code>ttm:agent</code> element instances that appear
+as a descendent of the same document instance as
+that of the referring element.</p><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 name="metadata-attribute-role" 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 content 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 name="metadata-attribute-role-syntax" id="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 )*
+
+role
+ : "action"
+ | "caption"
+ | "description"
+ | "dialog"
+ | "expletive"
+ | "kinesic"
+ | "lyrics"
+ | "music"
+ | "narration"
+ | "quality"
+ | "sound"
+ | "source"
+ | "suppressed"
+ | "reproduction"
+ | "thought"
+ | "title"
+ | "transcription"
+ | extension-role
+
+extension-role
+ : "x-" token-char+
+
+token-char
+ : { XML NameChar } // XML 1.1 Production [4a]
+</pre></div>
+</td></tr></tbody></table><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></div></div></div><div class="back"><div class="div1">
+<h2><a name="reduced-infoset" 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 Reduced XML Infoset 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 name="reduced-infoset-document" 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 name="reduced-infoset-element" 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 name="reduced-infoset-attribute" 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 name="reduced-infoset-character" 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 name="schemas" id="schemas"></a>B Schemas</h2><p><em>This appendix is normative.</em></p><p>This appendix specifies the following schemas for use with
+DFXP Content document instances:</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 name="dfxp-schema-rnc" id="dfxp-schema-rnc"></a>B.1 Relax NG 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 name="dfxp-schema-xsd" id="dfxp-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 name="media-types-registration" 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.</p></dd><dt class="label">profile</dt><dd><p>The document profile of a TTML document 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]</a>, Section
+3.2.</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]</a>
+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 must
+expect 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/ttaf1-dfxp/">Timed Text Markup Language (TTML) 1.0</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 for television material repurposed for 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/ttaf1-dfxp/">Timed Text Markup Language (TTML) 1.0</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 name="features" 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 name="feature-designations" 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>
+feature-designation
+ : feature-namespace designation
+
+feature-namespace
+ : <em>TT Feature Namespace</em> // http://www.w3.org/ns/ttml/feature/
+
+designation
+ : "#" token-char+
+
+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 name="feature-animation" 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 name="feature-backgroundColor" 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 name="feature-backgroundColor-block" 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 name="feature-backgroundColor-inline" 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 name="feature-backgroundColor-region" 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 name="feature-bidi" 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 name="feature-cellResolution" 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 name="feature-clockMode" 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 name="feature-clockMode-gps" 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 name="feature-clockMode-local" 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 name="feature-clockMode-utc" 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 name="feature-color" 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 name="feature-content" 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 name="feature-core" 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 name="feature-direction" 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 name="feature-display" 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 name="feature-display-block" 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 name="feature-display-inline" 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 name="feature-display-region" 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 name="feature-displayAlign" 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 name="feature-dropMode" 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 name="feature-dropMode-dropNTSC" 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 name="feature-dropMode-dropPAL" 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 name="feature-dropMode-nonDrop" 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 name="feature-extent" 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 name="feature-extent-region" 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 name="feature-extent-root" 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 name="feature-fontFamily" 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 name="feature-fontFamily-generic" 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 name="feature-fontFamily-non-generic" 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 name="feature-fontSize" 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 name="feature-fontSize-anamorphic" 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 name="feature-fontSize-isomorphic" 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 name="feature-fontStyle" 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 name="feature-fontStyle-italic" 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 name="feature-fontStyle-oblique" 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 name="feature-fontWeight" 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 name="feature-fontWeight-bold" 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 name="feature-frameRate" 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 name="feature-frameRateMultiplier" 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 name="feature-layout" 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 name="feature-length" 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 name="feature-length-cell" 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 name="feature-length-em" 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 name="feature-length-integer" 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 name="feature-length-negative" 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 name="feature-length-percentage" 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 name="feature-length-pixel" 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 name="feature-length-positive" 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 name="feature-length-real" 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 name="feature-lineBreak-uax14" 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 name="feature-lineHeight" 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 name="feature-markerMode" 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 name="feature-markerMode-continuous" 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 name="feature-markerMode-discontinuous" 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 name="feature-metadata" 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 name="feature-nested-div" 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 name="feature-nested-span" 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 name="feature-opacity" 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 name="feature-origin" 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 name="feature-overflow" 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 name="feature-overflow-visible" 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 name="feature-padding" 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 name="feature-padding-1" 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 name="feature-padding-2" 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 name="feature-padding-3" 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 name="feature-padding-4" 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 name="feature-pixelAspectRatio" 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 name="feature-presentation" 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 name="feature-profile" 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 name="feature-showBackground" 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 name="feature-structure" 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 name="feature-styling" 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 name="feature-styling-chained" 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 name="feature-styling-inheritance-content" 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 name="feature-styling-inheritance-region" 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 name="feature-styling-inline" 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 name="feature-styling-nested" 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 name="feature-styling-referential" 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 name="feature-subFrameRate" 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 name="feature-textAlign" 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 name="feature-textAlign-absolute" 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 name="feature-textAlign-relative" 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 name="feature-textDecoration" 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 name="feature-textDecoration-over" 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 name="feature-textDecoration-through" 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 name="feature-textDecoration-under" 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 name="feature-textOutline" 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 name="feature-textOutline-blurred" 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 name="feature-textOutline-unblurred" 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 name="feature-tickRate" 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 name="feature-timeBase-clock" 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 name="feature-timeBase-media" 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 name="feature-timeBase-smpte" 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 name="feature-timeContainer" 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 name="feature-time-clock" 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>
+<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 name="feature-time-clock-with-frames" 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>
+<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 name="feature-time-offset" 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>
+<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 name="feature-time-offset-with-frames" 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>
+<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 name="feature-time-offset-with-ticks" 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>
+<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 name="feature-timing" 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 name="feature-transformation" 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 name="feature-unicodeBidi" 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 name="feature-visibility" 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 name="feature-visibility-block" 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 name="feature-visibility-inline" 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 name="feature-visibility-region" 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 name="feature-wrapOption" 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 name="feature-writingMode" 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 name="feature-writingMode-vertical" 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 name="feature-writingMode-horizontal" 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 name="feature-writingMode-horizontal-lr" 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 name="feature-writingMode-horizontal-rl" 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 name="feature-zIndex" 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 name="feature-support" 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 name="feature-support-table" 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 TTML Profile Definition Document 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 name="feature-transformation-mandatory-table" 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 TTML Profile Definition Document 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 name="feature-presentation-mandatory-table" 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 name="extensions" 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 name="extension-designations" 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>
+extension-designation
+ : extension-namespace designation
+
+extension-namespace
+ : <em>TT Extension Namespace</em> // http://www.w3.org/ns/ttml/extension/
+ | <em>Other Extension Namespace</em> // expressed as an absolute URI
+
+designation
+ : "#" token-char+
+
+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 name="profiles" 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>Each TTML profile is defined in terms of a TTML Profile Definition Document,
+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 name="profile-dfxp-transformation" 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"?>
+<!-- this file defines the "dfxp-transformation" profile of ttaf1 -->
+<profile xmlns="http://www.w3.org/ns/ttml#parameter">
+ <features xml:base="http://www.w3.org/ns/ttml/feature/">
+ <!-- required (mandatory) feature support -->
+ <feature value="required">#content</feature>
+ <feature value="required">#core</feature>
+ <feature value="required">#profile</feature>
+ <feature value="required">#structure</feature>
+ <feature value="required">#time-offset</feature>
+ <feature value="required">#timing</feature>
+ <feature value="required">#transformation</feature>
+ <!-- optional (voluntary) feature support -->
+ <feature value="optional">#animation</feature>
+ <feature value="optional">#backgroundColor-block</feature>
+ <feature value="optional">#backgroundColor-inline</feature>
+ <feature value="optional">#backgroundColor-region</feature>
+ <feature value="optional">#backgroundColor</feature>
+ <feature value="optional">#bidi</feature>
+ <feature value="optional">#cellResolution</feature>
+ <feature value="optional">#clockMode-gps</feature>
+ <feature value="optional">#clockMode-local</feature>
+ <feature value="optional">#clockMode-utc</feature>
+ <feature value="optional">#clockMode</feature>
+ <feature value="optional">#color</feature>
+ <feature value="optional">#direction</feature>
+ <feature value="optional">#display-block</feature>
+ <feature value="optional">#display-inline</feature>
+ <feature value="optional">#display-region</feature>
+ <feature value="optional">#display</feature>
+ <feature value="optional">#displayAlign</feature>
+ <feature value="optional">#dropMode-dropNTSC</feature>
+ <feature value="optional">#dropMode-dropPAL</feature>
+ <feature value="optional">#dropMode-nonDrop</feature>
+ <feature value="optional">#dropMode</feature>
+ <feature value="optional">#extent-region</feature>
+ <feature value="optional">#extent-root</feature>
+ <feature value="optional">#extent</feature>
+ <feature value="optional">#fontFamily-generic</feature>
+ <feature value="optional">#fontFamily-non-generic</feature>
+ <feature value="optional">#fontFamily</feature>
+ <feature value="optional">#fontSize-anamorphic</feature>
+ <feature value="optional">#fontSize-isomorphic</feature>
+ <feature value="optional">#fontSize</feature>
+ <feature value="optional">#fontStyle-italic</feature>
+ <feature value="optional">#fontStyle-oblique</feature>
+ <feature value="optional">#fontStyle</feature>
+ <feature value="optional">#fontWeight-bold</feature>
+ <feature value="optional">#fontWeight</feature>
+ <feature value="optional">#frameRate</feature>
+ <feature value="optional">#frameRateMultiplier</feature>
+ <feature value="optional">#layout</feature>
+ <feature value="optional">#length-cell</feature>
+ <feature value="optional">#length-em</feature>
+ <feature value="optional">#length-integer</feature>
+ <feature value="optional">#length-negative</feature>
+ <feature value="optional">#length-percentage</feature>
+ <feature value="optional">#length-pixel</feature>
+ <feature value="optional">#length-positive</feature>
+ <feature value="optional">#length-real</feature>
+ <feature value="optional">#length</feature>
+ <feature value="optional">#lineBreak-uax14</feature>
+ <feature value="optional">#lineHeight</feature>
+ <feature value="optional">#markerMode-continuous</feature>
+ <feature value="optional">#markerMode-discontinuous</feature>
+ <feature value="optional">#markerMode</feature>
+ <feature value="optional">#metadata</feature>
+ <feature value="optional">#nested-div</feature>
+ <feature value="optional">#nested-span</feature>
+ <feature value="optional">#opacity</feature>
+ <feature value="optional">#origin</feature>
+ <feature value="optional">#overflow-visible</feature>
+ <feature value="optional">#overflow</feature>
+ <feature value="optional">#padding-1</feature>
+ <feature value="optional">#padding-2</feature>
+ <feature value="optional">#padding-3</feature>
+ <feature value="optional">#padding-4</feature>
+ <feature value="optional">#padding</feature>
+ <feature value="optional">#pixelAspectRatio</feature>
+ <feature value="optional">#presentation</feature>
+ <feature value="optional">#showBackground</feature>
+ <feature value="optional">#styling-chained</feature>
+ <feature value="optional">#styling-inheritance-content</feature>
+ <feature value="optional">#styling-inheritance-region</feature>
+ <feature value="optional">#styling-inline</feature>
+ <feature value="optional">#styling-nested</feature>
+ <feature value="optional">#styling-referential</feature>
+ <feature value="optional">#styling</feature>
+ <feature value="optional">#subFrameRate</feature>
+ <feature value="optional">#textAlign-absolute</feature>
+ <feature value="optional">#textAlign-relative</feature>
+ <feature value="optional">#textAlign</feature>
+ <feature value="optional">#textDecoration-over</feature>
+ <feature value="optional">#textDecoration-through</feature>
+ <feature value="optional">#textDecoration-under</feature>
+ <feature value="optional">#textDecoration</feature>
+ <feature value="optional">#textOutline-blurred</feature>
+ <feature value="optional">#textOutline-unblurred</feature>
+ <feature value="optional">#textOutline</feature>
+ <feature value="optional">#tickRate</feature>
+ <feature value="optional">#time-clock-with-frames</feature>
+ <feature value="optional">#time-clock</feature>
+ <feature value="optional">#time-offset-with-frames</feature>
+ <feature value="optional">#time-offset-with-ticks</feature>
+ <feature value="optional">#timeBase-clock</feature>
+ <feature value="optional">#timeBase-media</feature>
+ <feature value="optional">#timeBase-smpte</feature>
+ <feature value="optional">#timeContainer</feature>
+ <feature value="optional">#unicodeBidi</feature>
+ <feature value="optional">#visibility-block</feature>
+ <feature value="optional">#visibility-inline</feature>
+ <feature value="optional">#visibility-region</feature>
+ <feature value="optional">#visibility</feature>
+ <feature value="optional">#wrapOption</feature>
+ <feature value="optional">#writingMode-horizontal-lr</feature>
+ <feature value="optional">#writingMode-horizontal-rl</feature>
+ <feature value="optional">#writingMode-horizontal</feature>
+ <feature value="optional">#writingMode-vertical</feature>
+ <feature value="optional">#writingMode</feature>
+ <feature value="optional">#zIndex</feature>
+ </features>
+ <extensions xml:base="http://www.w3.org/ns/ttml/extension/">
+ <!-- required (mandatory) extension support -->
+ <!-- optional (voluntary) extension support -->
+ </extensions>
+</profile>
+
+</pre></div></div><div class="div2">
+<h3><a name="profile-dfxp-presentation" 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"?>
+<!-- this file defines the "dfxp-presentation" profile of ttaf1-dfxp -->
+<profile xmlns="http://www.w3.org/ns/ttml#parameter">
+ <features xml:base="http://www.w3.org/ns/ttml/feature/">
+ <!-- required (mandatory) feature support -->
+ <feature value="required">#content</feature>
+ <feature value="required">#core</feature>
+ <feature value="required">#presentation</feature>
+ <feature value="required">#profile</feature>
+ <feature value="required">#structure</feature>
+ <feature value="required">#time-offset</feature>
+ <feature value="required">#timing</feature>
+ <!-- optional (voluntary) feature support -->
+ <feature value="optional">#animation</feature>
+ <feature value="optional">#backgroundColor-block</feature>
+ <feature value="optional">#backgroundColor-inline</feature>
+ <feature value="optional">#backgroundColor-region</feature>
+ <feature value="optional">#backgroundColor</feature>
+ <feature value="optional">#bidi</feature>
+ <feature value="optional">#cellResolution</feature>
+ <feature value="optional">#clockMode-gps</feature>
+ <feature value="optional">#clockMode-local</feature>
+ <feature value="optional">#clockMode-utc</feature>
+ <feature value="optional">#clockMode</feature>
+ <feature value="optional">#color</feature>
+ <feature value="optional">#direction</feature>
+ <feature value="optional">#display-block</feature>
+ <feature value="optional">#display-inline</feature>
+ <feature value="optional">#display-region</feature>
+ <feature value="optional">#display</feature>
+ <feature value="optional">#displayAlign</feature>
+ <feature value="optional">#dropMode-dropNTSC</feature>
+ <feature value="optional">#dropMode-dropPAL</feature>
+ <feature value="optional">#dropMode-nonDrop</feature>
+ <feature value="optional">#dropMode</feature>
+ <feature value="optional">#extent-region</feature>
+ <feature value="optional">#extent-root</feature>
+ <feature value="optional">#extent</feature>
+ <feature value="optional">#fontFamily-generic</feature>
+ <feature value="optional">#fontFamily-non-generic</feature>
+ <feature value="optional">#fontFamily</feature>
+ <feature value="optional">#fontSize-anamorphic</feature>
+ <feature value="optional">#fontSize-isomorphic</feature>
+ <feature value="optional">#fontSize</feature>
+ <feature value="optional">#fontStyle-italic</feature>
+ <feature value="optional">#fontStyle-oblique</feature>
+ <feature value="optional">#fontStyle</feature>
+ <feature value="optional">#fontWeight-bold</feature>
+ <feature value="optional">#fontWeight</feature>
+ <feature value="optional">#frameRate</feature>
+ <feature value="optional">#frameRateMultiplier</feature>
+ <feature value="optional">#layout</feature>
+ <feature value="optional">#length-cell</feature>
+ <feature value="optional">#length-em</feature>
+ <feature value="optional">#length-integer</feature>
+ <feature value="optional">#length-negative</feature>
+ <feature value="optional">#length-percentage</feature>
+ <feature value="optional">#length-pixel</feature>
+ <feature value="optional">#length-positive</feature>
+ <feature value="optional">#length-real</feature>
+ <feature value="optional">#length</feature>
+ <feature value="optional">#lineBreak-uax14</feature>
+ <feature value="optional">#lineHeight</feature>
+ <feature value="optional">#markerMode-continuous</feature>
+ <feature value="optional">#markerMode-discontinuous</feature>
+ <feature value="optional">#markerMode</feature>
+ <feature value="optional">#metadata</feature>
+ <feature value="optional">#nested-div</feature>
+ <feature value="optional">#nested-span</feature>
+ <feature value="optional">#opacity</feature>
+ <feature value="optional">#origin</feature>
+ <feature value="optional">#overflow-visible</feature>
+ <feature value="optional">#overflow</feature>
+ <feature value="optional">#padding-1</feature>
+ <feature value="optional">#padding-2</feature>
+ <feature value="optional">#padding-3</feature>
+ <feature value="optional">#padding-4</feature>
+ <feature value="optional">#padding</feature>
+ <feature value="optional">#pixelAspectRatio</feature>
+ <feature value="optional">#showBackground</feature>
+ <feature value="optional">#styling-chained</feature>
+ <feature value="optional">#styling-inheritance-content</feature>
+ <feature value="optional">#styling-inheritance-region</feature>
+ <feature value="optional">#styling-inline</feature>
+ <feature value="optional">#styling-nested</feature>
+ <feature value="optional">#styling-referential</feature>
+ <feature value="optional">#styling</feature>
+ <feature value="optional">#subFrameRate</feature>
+ <feature value="optional">#textAlign-absolute</feature>
+ <feature value="optional">#textAlign-relative</feature>
+ <feature value="optional">#textAlign</feature>
+ <feature value="optional">#textDecoration-over</feature>
+ <feature value="optional">#textDecoration-through</feature>
+ <feature value="optional">#textDecoration-under</feature>
+ <feature value="optional">#textDecoration</feature>
+ <feature value="optional">#textOutline-blurred</feature>
+ <feature value="optional">#textOutline-unblurred</feature>
+ <feature value="optional">#textOutline</feature>
+ <feature value="optional">#tickRate</feature>
+ <feature value="optional">#time-clock-with-frames</feature>
+ <feature value="optional">#time-clock</feature>
+ <feature value="optional">#time-offset-with-frames</feature>
+ <feature value="optional">#time-offset-with-ticks</feature>
+ <feature value="optional">#timeBase-clock</feature>
+ <feature value="optional">#timeBase-media</feature>
+ <feature value="optional">#timeBase-smpte</feature>
+ <feature value="optional">#timeContainer</feature>
+ <feature value="optional">#transformation</feature>
+ <feature value="optional">#unicodeBidi</feature>
+ <feature value="optional">#visibility-block</feature>
+ <feature value="optional">#visibility-inline</feature>
+ <feature value="optional">#visibility-region</feature>
+ <feature value="optional">#visibility</feature>
+ <feature value="optional">#wrapOption</feature>
+ <feature value="optional">#writingMode-horizontal-lr</feature>
+ <feature value="optional">#writingMode-horizontal-rl</feature>
+ <feature value="optional">#writingMode-horizontal</feature>
+ <feature value="optional">#writingMode-vertical</feature>
+ <feature value="optional">#writingMode</feature>
+ <feature value="optional">#zIndex</feature>
+ </features>
+ <extensions xml:base="http://www.w3.org/ns/ttml/extension/">
+ <!-- required (mandatory) extension support -->
+ <!-- optional (voluntary) extension support -->
+ </extensions>
+</profile>
+
+</pre></div></div><div class="div2">
+<h3><a name="profile-dfxp-full" 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"?>
+<!-- this file defines the "dfxp-full" profile of ttaf1-dfxp -->
+<profile xmlns="http://www.w3.org/ns/ttml#parameter">
+ <features xml:base="http://www.w3.org/ns/ttml/feature/">
+ <!-- required (mandatory) feature support -->
+ <feature value="required">#animation</feature>
+ <feature value="required">#backgroundColor-block</feature>
+ <feature value="required">#backgroundColor-inline</feature>
+ <feature value="required">#backgroundColor-region</feature>
+ <feature value="required">#backgroundColor</feature>
+ <feature value="required">#bidi</feature>
+ <feature value="required">#cellResolution</feature>
+ <feature value="required">#clockMode-gps</feature>
+ <feature value="required">#clockMode-local</feature>
+ <feature value="required">#clockMode-utc</feature>
+ <feature value="required">#clockMode</feature>
+ <feature value="required">#color</feature>
+ <feature value="required">#content</feature>
+ <feature value="required">#core</feature>
+ <feature value="required">#direction</feature>
+ <feature value="required">#display-block</feature>
+ <feature value="required">#display-inline</feature>
+ <feature value="required">#display-region</feature>
+ <feature value="required">#display</feature>
+ <feature value="required">#displayAlign</feature>
+ <feature value="required">#dropMode-dropNTSC</feature>
+ <feature value="required">#dropMode-dropPAL</feature>
+ <feature value="required">#dropMode-nonDrop</feature>
+ <feature value="required">#dropMode</feature>
+ <feature value="required">#extent-region</feature>
+ <feature value="required">#extent-root</feature>
+ <feature value="required">#extent</feature>
+ <feature value="required">#fontFamily-generic</feature>
+ <feature value="required">#fontFamily-non-generic</feature>
+ <feature value="required">#fontFamily</feature>
+ <feature value="required">#fontSize-anamorphic</feature>
+ <feature value="required">#fontSize-isomorphic</feature>
+ <feature value="required">#fontSize</feature>
+ <feature value="required">#fontStyle-italic</feature>
+ <feature value="required">#fontStyle-oblique</feature>
+ <feature value="required">#fontStyle</feature>
+ <feature value="required">#fontWeight-bold</feature>
+ <feature value="required">#fontWeight</feature>
+ <feature value="required">#frameRate</feature>
+ <feature value="required">#frameRateMultiplier</feature>
+ <feature value="required">#layout</feature>
+ <feature value="required">#length-cell</feature>
+ <feature value="required">#length-em</feature>
+ <feature value="required">#length-integer</feature>
+ <feature value="required">#length-negative</feature>
+ <feature value="required">#length-percentage</feature>
+ <feature value="required">#length-pixel</feature>
+ <feature value="required">#length-positive</feature>
+ <feature value="required">#length-real</feature>
+ <feature value="required">#length</feature>
+ <feature value="required">#lineBreak-uax14</feature>
+ <feature value="required">#lineHeight</feature>
+ <feature value="required">#markerMode-continuous</feature>
+ <feature value="required">#markerMode-discontinuous</feature>
+ <feature value="required">#markerMode</feature>
+ <feature value="required">#metadata</feature>
+ <feature value="required">#nested-div</feature>
+ <feature value="required">#nested-span</feature>
+ <feature value="required">#opacity</feature>
+ <feature value="required">#origin</feature>
+ <feature value="required">#overflow-visible</feature>
+ <feature value="required">#overflow</feature>
+ <feature value="required">#padding-1</feature>
+ <feature value="required">#padding-2</feature>
+ <feature value="required">#padding-3</feature>
+ <feature value="required">#padding-4</feature>
+ <feature value="required">#padding</feature>
+ <feature value="required">#pixelAspectRatio</feature>
+ <feature value="required">#presentation</feature>
+ <feature value="required">#profile</feature>
+ <feature value="required">#showBackground</feature>
+ <feature value="required">#structure</feature>
+ <feature value="required">#styling-chained</feature>
+ <feature value="required">#styling-inheritance-content</feature>
+ <feature value="required">#styling-inheritance-region</feature>
+ <feature value="required">#styling-inline</feature>
+ <feature value="required">#styling-nested</feature>
+ <feature value="required">#styling-referential</feature>
+ <feature value="required">#styling</feature>
+ <feature value="required">#subFrameRate</feature>
+ <feature value="required">#textAlign-absolute</feature>
+ <feature value="required">#textAlign-relative</feature>
+ <feature value="required">#textAlign</feature>
+ <feature value="required">#textDecoration-over</feature>
+ <feature value="required">#textDecoration-through</feature>
+ <feature value="required">#textDecoration-under</feature>
+ <feature value="required">#textDecoration</feature>
+ <feature value="required">#textOutline-blurred</feature>
+ <feature value="required">#textOutline-unblurred</feature>
+ <feature value="required">#textOutline</feature>
+ <feature value="required">#tickRate</feature>
+ <feature value="required">#time-clock-with-frames</feature>
+ <feature value="required">#time-clock</feature>
+ <feature value="required">#time-offset-with-frames</feature>
+ <feature value="required">#time-offset-with-ticks</feature>
+ <feature value="required">#time-offset</feature>
+ <feature value="required">#timeBase-clock</feature>
+ <feature value="required">#timeBase-media</feature>
+ <feature value="required">#timeBase-smpte</feature>
+ <feature value="required">#timeContainer</feature>
+ <feature value="required">#timing</feature>
+ <feature value="required">#transformation</feature>
+ <feature value="required">#unicodeBidi</feature>
+ <feature value="required">#visibility-block</feature>
+ <feature value="required">#visibility-inline</feature>
+ <feature value="required">#visibility-region</feature>
+ <feature value="required">#visibility</feature>
+ <feature value="required">#wrapOption</feature>
+ <feature value="required">#writingMode-horizontal-lr</feature>
+ <feature value="required">#writingMode-horizontal-rl</feature>
+ <feature value="required">#writingMode-horizontal</feature>
+ <feature value="required">#writingMode-vertical</feature>
+ <feature value="required">#writingMode</feature>
+ <feature value="required">#zIndex</feature>
+ <!-- optional (voluntary) feature support -->
+ </features>
+ <extensions xml:base="http://www.w3.org/ns/ttml/extension/">
+ <!-- required (mandatory) extension support -->
+ <!-- optional (voluntary) extension support -->
+ </extensions>
+</profile>
+
+</pre></div></div></div><div class="div1">
+<h2><a name="references" id="references"></a>G References</h2><p><em>This appendix is normative.</em></p><dl><dt class="label"><a name="css2" id="css2"></a>CSS2</dt><dd>Bert Bos et al.,
+<a href="http://www.w3.org/TR/1998/REC-CSS2-19980512/"><cite>Cascading
+Style Sheets, Level 2</cite></a>, W3C Recommendation, 12
+May 1998. (See
+<a href="http://www.w3.org/TR/1998/REC-CSS2-19980512/">http://www.w3.org/TR/1998/REC-CSS2-19980512/</a>.)
+</dd><dt class="label"><a name="gps" 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 name="media-types" 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 name="rng" 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 name="smil21" 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 name="smpte12m" 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 name="srgb" 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 name="uaag" 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 name="utc" 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 name="uax14" 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 name="wcag" 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 name="xml10" 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 name="xml11" 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 name="xmlbase" 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 name="xmlid" 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 name="xml-media" id="xml-media"></a>XML Media</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 name="infoset" 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 name="rfc3023" id="rfc3023"></a>XML Media Types</dt><dd>Makato Murata, et al.,
+<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 name="xmlns10" 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 name="xsd-1" 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 name="xsd-2" 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 name="xsl11" 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 name="other-references" id="other-references"></a>H Other References (Non-Normative)</h2><dl><dt class="label"><a name="ccreq" id="ccreq"></a>CC-DECODER-REQ</dt><dd><a href="http://www.gpo.gov/fdsys/pkg/CFR-2005-title47-vol1/xml/CFR-2005-title47-vol1-sec15-119.xml"><cite>Closed Caption Decoder
+Requirements for Analog Television</cite></a>,
+United States Code of Federal Regulations, Title 47, Volume 1, Part 15, § 15.119. (See
+<a href="http://www.gpo.gov/fdsys/pkg/CFR-2005-title47-vol1/xml/CFR-2005-title47-vol1-sec15-119.xml">http://www.gpo.gov/fdsys/pkg/CFR-2005-title47-vol1/xml/CFR-2005-title47-vol1-sec15-119.xml</a>.)
+</dd><dt class="label"><a name="cea608c" id="cea608c"></a>CEA-608-C</dt><dd>
+EIA/CEA-608-C,
+<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 name="cea708d" id="cea708d"></a>CEA-708-D</dt><dd>
+CEA-708-D,
+<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 name="css3-color" id="css3-color"></a>CSS3 Color</dt><dd>Tantek Çelik and Chris Lilley,
+<a href="http://www.w3.org/TR/2003/CR-css3-color-20030514/"><cite>CSS3 Color
+Module</cite></a>, W3C Candidate Recommendation, 14 May 2003. (See
+<a href="http://www.w3.org/TR/2003/CR-css3-color-20030514/">http://www.w3.org/TR/2003/CR-css3-color-20030514/</a>.)
+</dd><dt class="label"><a name="dcmes" 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 name="mpeg7-5" 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 name="nsstate" 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 name="qaf-sg" 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 name="smpte170m" id="smpte170m"></a>SMPTE 170M</dt><dd>ANSI/SMPTE 170M,
+<a href="http://www.smpte.org/"><cite>Television – Composite Analog Video
+Signal – NTSC for Studio Applications</cite></a>, SMPTE Standard.
+</dd><dt class="label"><a name="smpte2052" id="smpte2052"></a>SMPTE 2052-11</dt><dd>SMPTE 2052-11,
+<a href="http://www.smpte.org/"><cite>Conversion from CEA-708 Caption Data to SMPTE-TT</cite></a>,
+SMPTE Recommended Practice.
+</dd><dt class="label"><a name="svg11" 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 name="ttaf1-req" 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 name="xhtml10" 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 name="requirements" id="requirements"></a>I Requirements (Non-Normative)</h2><p>The Distribution Format Exchange Profile (DFXP) of the Timed Text Authoring
+Format (TTML) 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 name="requirements-table" 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 name="derivation" 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 name="d3e17632" id="d3e17632"></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 name="element-vocab-derivation-table" 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 content
+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 name="d3e18111" id="d3e18111"></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 name="attribute-vocab-derivation-table" 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 document instance</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-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>8</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>9</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,10,13</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>11,13</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>12</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 name="qa" 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 name="d3e18979" id="d3e18979"></a>K.1 Requirements</h3><a name="qa-framework-requirements-table" 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 name="d3e19143" id="d3e19143"></a>K.2 Guidelines</h3><a name="qa-framework-guidelines-table" 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
+<a href="#doctypes">TTML 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 name="streaming" 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 TTML document instance'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
+document instance 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 TTML document instance is
+shown in <a href="#fragment-streaming-graphic"><b>Figure 3 – Fragment Streaming</b></a>.</p><a name="fragment-streaming-graphic" 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 name="concrete-encoding" id="concrete-encoding"></a>M Concrete Encoding (Non-Normative)</h2><p>In the absence of other requirements, it is recommended that a TTML document 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><div class="div1">
+<h2><a name="time-expression-semantics" id="time-expression-semantics"></a>N Time Expression Semantics (Non-Normative)</h2><p>This appendix describes the intended semantics for interpreting time expressions in TTML documents.</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 speeding up or slowing down 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 name="time-expression-semantics-clock" 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 name="clock-time-and-real-time" 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>
+<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 name="time-expressions-and-clock-time" 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>
+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 name="clock-time-and-media-time" 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>
+<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 name="time-expression-semantics-media" 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 name="media-time-and-real-time" 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>
+<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 name="time-expressions-and-media-time" 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>
+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 = containerBegin + 3600 * hours + 60 * minutes + seconds + ((frames + (subFrames / subFrameRate)) / effectiveFrameRate)
+</code>
+<br><br>
+where <code>containerBegin</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>;
+<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 = containerBegin + ticks / tickRate
+</code>
+<br><br>
+where <code>containerBegin</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 name="time-expression-semantics-smpte" 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 name="time-expressions-and-smpte-time" 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>
+<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 name="smpte-time-and-media-time" 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>
+<code>M = containerBegin + S</code>
+<br><br>
+where <code>containerBegin</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>;
+<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 name="common-styling" 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 name="pop-on-example" 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 name="pop-on-example-1-s" 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"
+ xmlns:tts="http://www.w3.org/ns/ttml#parameter" xmlns:tts="http://www.w3.org/ns/ttml#styling">
+ <head>
+ <layout>
+ <region xml:id="r1" tts:color="white" tts:origin="10c 4c" tts:extent="40c 1c"/>
+ <region xml:id="r2" tts:color="yellow" tts:origin="10c 8c" tts:extent="40c 1c"/>
+ </layout>
+ </head>
+ <body>
+ <div timeContainer="seq">
+ <p region="r1" dur="4s">Lorem ipsum dolor sit</p
+ <p region="r2" dur="4s">Amet consectetur adipiscing elit</p>
+ <p region="r1" dur="6s">Sed do eiusmod tempor incididunt labore</p>
+ <p region="r2" dur="4s">et dolore magna aliqua</p>
+ <p region="r1" dur="7s">Ut enim ad minim veniam quis, nostrud</p>
+ </div>
+ </body>
+</tt>
+</pre></div>
+</td></tr></tbody></table></div><div class="div2">
+<h3><a name="roll-up-example" 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 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 name="roll-up-example-1-s" 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"
+ xmlns:tts="http://www.w3.org/ns/ttml#parameter" xmlns:tts="http://www.w3.org/ns/ttml#styling">
+ <head>
+ <layout>
+ <region xml:id="r1" tts:color="white" tts:origin="10c 4c" tts:extent="40c 2c"/>
+ </layout>
+ </head>
+ <body>
+ <div region="r1">
+ <p begin="0s" end="8s">Lorem ipsum dolor sit</p
+ <p begin="4s" end="12s">Amet consectetur adipiscing elit</p>
+ <p begin="8s" end="18s">Sed do eiusmod tempor incididunt labore</p>
+ <p begin="14s" end="25s">et dolore magna aliqua</p>
+ <p begin="18s" end="29s">Ut enim ad minim veniam quis, nostrud</p>
+ </div>
+ </body>
+</tt>
+</pre></div>
+</td></tr></tbody></table></div><div class="div2">
+<h3><a name="paint-on-example" 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 name="paint-on-example-1-s" 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"
+ xmlns:tts="http://www.w3.org/ns/ttml#parameter" xmlns:tts="http://www.w3.org/ns/ttml#styling">
+ <head>
+ <layout>
+ <region xml:id="r1" tts:color="white" tts:origin="10c 4c" tts:extent="40c 5c"/>
+ </layout>
+ </head>
+ <body>
+ <div begin="0s" end="25s">
+ <p>
+ <span begin="0s">Lorem</span>
+ <span begin="1s">ipsum</span>
+ <span begin="2s">dolor</span>
+ <span begin="3s">sit</span>
+ </p>
+ <p>
+ <span begin="4s">Amet</span>
+ <span begin="5s">consectetur</span>
+ <span begin="6s">adipiscing</span>
+ <span begin="7s">elit</span>
+ </p>
+ <p>
+ <span begin="8s">Sed</span>
+ <span begin="9s">do</span>
+ <span begin="10s">eiusmod</span>
+ <span begin="11s">tempor</span>
+ <span begin="12s">incididunt </span>
+ <span begin="13s">labore</span>
+ </p>
+ <p>
+ <span begin="14s">et</span>
+ <span begin="15s">dolore</span>
+ <span begin="16s">magna</span>
+ <span begin="17s">aliqua</span>
+ </p>
+ <p>
+ <span begin="18s">Ut</span>
+ <span begin="19s">enim</span>
+ <span begin="20s">ad</span>
+ <span begin="21s">minim</span>
+ <span begin="22s">veniam</span>
+ <span begin="23s">quis,</span>
+ <span begin="24s">nostrud</span>
+ </p>
+ </div>
+ </body>
+</tt>
+</pre></div>
+</td></tr></tbody></table></div></div><div class="div1">
+<h2><a name="acknowledgments" 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,
+Chris Lilley,
+Pierre-Anthony Lemieux,
+Jason Livingston,
+Monica Martin,
+Thierry Michel,
+Matthew May,
+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
--- a/ttml10/spec/review/PER-ttaf1-dfxp-20130515-for-WG-review.html Thu May 09 23:01:22 2013 -0600
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,6891 +0,0 @@
-<!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 (TTML) 1.0 (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;
- margin: 0em; padding: 0em}
-div.exampleInner { background-color: #d5dee3;
- border-top-width: 4px;
- border-top-style: double;
- border-top-color: #d3d3d3;
- border-bottom-width: 4px;
- border-bottom-style: double;
- border-bottom-color: #d3d3d3;
- padding: 4px; margin: 0em }
-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 {
- 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 {
- 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-PER.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 name="title" id="title"></a>Timed Text Markup Language (TTML) 1.0 (Second Edition)</h1>
-<h2><a name="w3c-doctype" id="w3c-doctype"></a>W3C Proposed Edited Recommendation 15 May 2013</h2><dl><dt>This version:</dt><dd>
-<a href="http://www.w3.org/TR/2013/PER-ttaf1-dfxp-20130515/">http://www.w3.org/TR/2013/PER-ttaf1-dfxp-20130515/</a>
-</dd><dt>Latest version:</dt><dd><a href="http://www.w3.org/TR/ttaf1-dfxp/">http://www.w3.org/TR/ttaf1-dfxp/</a></dd><dt>Previous version:</dt><dd>
-<a href="http://www.w3.org/TR/2010/REC-ttaf1-dfxp-20101118/">http://www.w3.org/TR/2010/REC-ttaf1-dfxp-20101118/</a>
-</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="https://dvcs.w3.org/hg/ttml/raw-file/default/ttml10/spec/ttml-issues.html">errata</a> for this document, which may
- include normative corrections.</p><p>See also <a href="http://www.w3.org/2003/03/Translations/byTechnology?technology=ttaf1-dfxp"><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 name="abstract" id="abstract"></a>Abstract</h2><p>This document specifies the Timed Text Markup Language (TTML) 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 object element in a <a href="#smil21">[SMIL 2.1]</a> document.</p></div><div>
-<h2><a name="status" 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, published on 15 May 2013,
-is a <a href="http://www.w3.org/2005/10/Process-20051014/tr.html#ProposedEditedRec">Proposed Edited Recommendation</a>
-of the W3C. This second edition is not a new version of this specification;
-its purpose is to clarify a number of issues that have become apparent since the
-first edition was published.</p><p>This document has been 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.</p><p>Publication as a Proposed Edited Recommendation does not imply endorsement by
-the W3C Membership. This is a draft document and may be updated,
-replaced or obsoleted by other documents at any time. It is
-inappropriate to cite this document as other than work in progress.</p><p>W3C Advisory Committee Members are invited to send formal review comments
-on this Proposed Edited Recommendation to the W3C Team until 15 June 2013.
-Members of the W3C Advisory Committee will find the appropriate review form
-for this document by consulting their
-<a href="http://www.w3.org/2002/09/wbs/myQuestionnaires">list
-of WBS questionnaires</a>.</p><p>This document incorporates changes made against the
-<a href="http://www.w3.org/TR/2010/REC-ttaf1-dfxp-20101118/">Recommendation</a>
-of 18 November 2010 that resolve all errata known at the date of publication.
-A list of the errata that have been applied is provided in
-<a href="https://dvcs.w3.org/hg/ttml/raw-file/default/ttml10/spec/ttml-changes.html#change-history-rec-to-2e-per">Changes
-from Recommendation to Proposed Edited Recommendation (2nd Ed.)</a>.</p><p>Please report errors in and submit comments on this document to the
-W3C Timed Text public comments mailing list,
-<a href="mailto:public-tt-comments@w3.org">public-tt-comments@w3.org</a>.
-It will be very helpful if you include the string "[TTML10SE]" in the
-subject line of your report. Each email message should contain only one
-error report. Archives of the comments and responses are available at
-<a href="http://lists.w3.org/Archives/Public/public-tt-comments/">http://lists.w3.org/Archives/Public/public-tt-comments/</a>.</p><p>The Timed Text Working Group plans to submit this specification for
-consideration as a W3C Recommendation (Second Edition) as soon as the Working
-Group has responded formally to all issues raised during the PER period
-against this document.</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">public list of any patent
-disclosures</a> made in connection with the deliverables of the Timed Text Working Group;
-those pages also include 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 name="contents" 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="#dfxp-content-doctype">DFXP 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 name="appendices" 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="#dfxp-schema-rnc">Relax NG Schema</a><br>
- B.2 <a href="#dfxp-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="#d3e17632">Element Derivation</a><br>
- J.2 <a href="#d3e18111">Attribute Derivation</a><br>
-K <a href="#qa">QA Framework Compliance</a> (Non-Normative)<br>
- K.1 <a href="#d3e18979">Requirements</a><br>
- K.2 <a href="#d3e19143">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 name="intro" 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) 1.0
-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 potential presentation.</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 was not expressly designed for direct (embedded) integration into 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 document instance. 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="div2">
-<h3><a name="model" 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 a 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.</p><a name="model-graphic" 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 name="example" id="example"></a>1.2 Document Example</h3><p>A TTML document instance 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 timing information.</p><a name="dfxp-example-document-structure" id="dfxp-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/>
- <styling/>
- <layout/>
- </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 name="dfxp-example-metadata" id="dfxp-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.</p><p>In <a href="#dfxp-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 name="dfxp-example-styling" id="dfxp-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"
- tts:color="white"
- tts:fontFamily="proportionalSansSerif"
- tts:fontSize="22px"
- tts:textAlign="center"
- />
- <!-- alternative using yellow text but otherwise the same as style s1 -->
- <style xml:id="s2" style="s1" tts:color="yellow"/>
- <!-- a style based on s1 but justified to the right -->
- <style xml:id="s1Right" style="s1" tts:textAlign="end" />
- <!-- 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="#dfxp-example-layout"><b>Example Fragment – TTML Layout</b></a>, the region definition makes
-reference to style specification <code>s1</code> which allows all 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 name="dfxp-example-layout" id="dfxp-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"
- tts:extent="560px 62px"
- tts:padding="5px 3px"
- tts:backgroundColor="black"
- tts:displayAlign="after"
- />
-</layout>
-</pre></div>
-</td></tr></tbody></table><p>The content of a TTML document instance 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="#dfxp-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 as a parallel time
-container.</p><a name="dfxp-example-body" id="dfxp-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">
- It seems a paradox, does it not,
- </p>
- <p xml:id="subtitle2" begin="5.0s" end="10.0s">
- that the image formed on<br/>
- the Retina should be inverted?
- </p>
- <p xml:id="subtitle3" begin="10.0s" end="16.0s" style="s2">
- It is puzzling, why is it<br/>
- we do not see things upside-down?
- </p>
- <p xml:id="subtitle4" begin="17.2s" end="23.0s">
- You have never heard the Theory,<br/>
- then, that the Brain also is inverted?
- </p>
- <p xml:id="subtitle5" begin="23.0s" end="27.0s" style="s2">
- No indeed! What a beautiful fact!
- </p>
- <p xml:id="subtitle6a" begin="28.0s" end="34.6s" style="s2Left">
- But how is it proved?
- </p>
- <p xml:id="subtitle6b" begin="28.0s" end="34.6s" style="s1Right">
- Thus: what we call
- </p>
- <p xml:id="subtitle7" begin="34.6s" end="45.0s" style="s1Right">
- the vertex of the Brain<br/>
- is really its base
- </p>
- <p xml:id="subtitle8" begin="45.0s" end="52.0s" style="s1Right">
- and what we call its base<br/>
- is really its vertex,
- </p>
- <p xml:id="subtitle9a" begin="53.5s" end="58.7s">
- it is simply a question of nomenclature.
- </p>
- <p xml:id="subtitle9b" begin="53.5s" end="58.7s" style="s2">
- How truly delightful!
- </p>
- </div>
-</body>
-</pre></div>
-</td></tr></tbody></table><p>The first subtitle <a href="#dfxp-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
-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><a name="dfxp-example-subtitle-1" id="dfxp-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 name="dfxp-example-subtitle-2" id="dfxp-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 name="dfxp-example-subtitle-3" id="dfxp-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 name="dfxp-example-subtitle-4" id="dfxp-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 name="dfxp-example-subtitle-5" id="dfxp-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 paragraph expressing each subtitle using a different style that overrides 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 name="dfxp-example-subtitle-6" id="dfxp-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 a paragraph right (end) justified in the
-inline progression direction.</p><a name="dfxp-example-subtitle-7" id="dfxp-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 name="dfxp-example-subtitle-8" id="dfxp-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 name="dfxp-example-subtitle-9" id="dfxp-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 document instance. 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 name="definitions" id="definitions"></a>2 Definitions</h2><div class="div2">
-<h3><a name="acronyms" 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>TT AS</b></td><td class="def"><p>Timed Text Authoring System</p></td></tr><tr><td class="label"><b>TT AF</b></td><td class="def"><p>Timed Text Authoring Format</p></td></tr><tr><td class="label"><b>TT WG</b></td><td class="def"><p>Timed Text Working Group</p></td></tr></table></div><div class="div2">
-<h3><a name="terms" 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
-Set</em>s <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">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 Profile</dt><dd><p>A collection of features and extensions that are (or may be) employed by
-Timed Text Markup Language 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 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 <em>Content Profile</em>.</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 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 content profile 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">Processor Profile</dt><dd><p>A collection of features and extensions that must or may be implemented (supported) by
-a content processor.</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 satisfieds 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 TTML document instance. For example, an aggregate audio/video media
-object for which a TTML document instance provides caption or subtitle
-information, and with which that TTML document instance is associated.</p></dd><dt class="label">Root Container Region</dt><dd><p>A logical region that establishes a coordinate system into which
-TTML document instance 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 TTML document instance 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 is 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 syncbase 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></dl></div><div class="div2">
-<h3><a name="conventions" 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>All normative syntactic definitions of XML representations and
-other related terms are depicted with a light orange background color
-and labeled as "XML Representation" or "Syntax Representation", such
-as in the following:</p><a name="elt-syntax-example" id="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>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 name="example-fragment-1" id="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/>
- <styling/>
- <layout/>
- </head>
- <body/>
-</tt>
-</pre></div>
-</td></tr></tbody></table></div></div><div class="div1">
-<h2><a name="conformance" 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 name="conformance-content" id="conformance-content"></a>3.1 Content Conformance</h3><p>A TTML document instance conforms to this specification if the following criteria are
-satisfied:</p><ol class="enumar"><li><p>When transporting a document instance in a context in which a
-Media Type <a href="#media-types">[Media Types]</a> identifies the content type of the interchanged document
-instance, then the specified media type is
-<code>application/ttml+xml</code> in conformance with <a href="#rfc3023">[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 document instance 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 document instance is or can
-be associated with one of the TTML Abstract
-Document Types defined by
-<a href="#doctypes"><b>4 Document Types</b></a>.</p></li><li><p>The Reduced XML Infoset that corresponds to the document instance is a
-Valid Abstract Document Instance of the associated
-Abstract Document Type.</p></li><li><p>The Reduced XML Infoset 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 name="conformance-processor" id="conformance-processor"></a>3.2 Processor Conformance</h3><div class="div3">
-<h4><a name="conformance-generic-processor" id="conformance-generic-processor"></a>3.2.1 Generic Processor Conformance</h4><p>A TTML processor 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 TTML document
-instance.</p></li><li><p>If a process does or can perform validation of a candidate TTML
-document instance, then it provides at least one mechanism to
-implicitly or explicitly associate the
-Reduced XML Infoset representation
-of a conformant TTML document instance with one of the
-TTML Abstract Document Types 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 TTML document instance
-unless the processor does not support some required
-(mandatory) feature specified or implied by a TTML content profile
-declared to apply to the document instance.</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 name="conformance-transformation-processor" id="conformance-transformation-processor"></a>3.2.2 Transformation Processor Conformance</h4><p>A TTML processor is a conformant TTML transformation processor 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 name="conformance-presentation-processor" id="conformance-presentation-processor"></a>3.2.3 Presentation Processor Conformance</h4><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 name="claims" id="claims"></a>3.3 Claims</h3><p>Any claim of compliance with respect to TTML content or processor
-conformance 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
-content or 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 TTML document instance 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 name="doctypes" id="doctypes"></a>4 Document Types</h2><p>This section defines the following TTML Abstract Document Types:</p><ul><li><p><a href="#dfxp-content-doctype"><b>4.1 DFXP Content</b></a></p></li></ul><p>Each abstract document type 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 Abstract Document Instance may be assessed in terms of validity,
-and is considered to be a Valid Abstract Document Instance 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 abstract document type, 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 Abstract Document Type, 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 abstract document type,
-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 abstract document type.</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 document instance that adheres to a
-supported content profile, a given document instance may be
-constrained by the author or authoring tool to satisfy a more
-restrictive definition of validity.</p></div><div class="div2">
-<h3><a name="dfxp-content-doctype" id="dfxp-content-doctype"></a>4.1 DFXP Content</h3><p>DFXP Content is an abstract document type 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 defines two types of schemas that may be used to validate a subset of
-conformant DFXP Content document instances:</p><ul><li><p><a href="#dfxp-schema-rnc"><b>B.1 Relax NG Schema</b></a></p></li><li><p><a href="#dfxp-schema-xsd"><b>B.2 XML Schema Definition (XSD) Schema</b></a></p></li></ul><p>The (root) document element of a DFXP Content document instance 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 included in this specification do not validate all syntactic constraints
-defined by this specification. In particular, performing validation with one of the above
-referenced schemas may result in a <em>false positive</em> indication of validity.
-However, with one exception, their
-use will not produce a <em>false negative</em> indication of validity
-when used with a compliant validating
-processor.</p><p>In exception to the above statement about false negatives,
-if the Relax NG schema included in this specification is used to validate a
-TTML Document containing elements in a foreign namespace and the <code>xml:id</code>
-attribute is used with any of those (foreign) elements,
-then an error will be reported even though such usage is permitted by this
-specification. In this case, the false negative arises 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 TTML Document to be
-based on an abstract document instance 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 TTML Document validity.</p></div></div></div><div class="div1">
-<h2><a name="vocabulary" id="vocabulary"></a>5 Vocabulary</h2><p>This section defines the
-namespaces, profiles, and vocabulary (as an element an 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 name="vocabulary-namespaces" id="vocabulary-namespaces"></a>5.1 Namespaces</h3><p>The Timed Text Markup Language (TTML) employs a number of
-namespaces 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 document instance, it is not required that the default
-prefixes shown below are used. Any prefix or namespace binding that satisfies the constraints
-of XML Namespaces may be used that is associated with the specified namespace URI.</p></div><a name="namespace-vocab-table" 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 name="vocabulary-profiles" 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>.</p><a name="profile-vocab-table" 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></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>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 Profile Definition Document.</p><p>The profile of TTML that must be supported by a
-TTML content processor in order to process a document
-instance is specified 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 document instance), 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 TTML document instance, then all specified profiles apply
-simultaneously. In such a case, if some feature or some extension is
-specified by one profile to be used (mandatory and enabled) and by
-another profile to be required (mandatory) or optional (voluntary),
-then that feature or extension must be considered to be used
-(mandatory and enabled); if some feature or some extension is
-specified by one profile to be merely required (mandatory) and by
-another profile to be optional (voluntary), then that feature or
-extension must be considered to be required (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 TTML document instance, and if the Document
-Interchange Context does not make an implicit or explicit
-reference to a pre-defined Content Profile or does not specify a Profile Definition
-Document 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 document instance that a <em>Content Profile</em> 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 <em>Content Profile</em> 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 TTML Profile Definition Document.
-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 document instance 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 required (mandatory) that was either not specified in the underlying, baseline
-profile or was specified as optional (voluntary) in the baseline profile.
-A predefined profile is subsetted by specifying some feature or extension to
-be optional (voluntary) that was specified as required 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 TTML document instance 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 TTML document instance 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 required or used feature
-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 required or used
-extension 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="#dfxp-example-sub-profile"><b>Example Fragment – DFXP Additive Profile</b></a>.</p><a name="dfxp-example-sub-profile" id="dfxp-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">
- <features xml:base="http://www.w3.org/ns/ttml/feature/">
- <feature value="required">#fontStyle-italic</feature>
- </features>
- </profile>
- </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 name="vocabulary-overview" 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 DFXP Content. The extension catalog
-serves as a placeholder for extensions to the core vocabulary defined
-by TTML.</p><div class="div3">
-<h4><a name="core-vocabulary-overview" 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 TTML document
-instance is enumerated in
-<a href="#element-vocab-table"><b>Table 3 – Element Vocabulary</b></a>.</p><a name="element-vocab-table" 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><td>
-Animation
-</td><td>
-<a href="#animation-vocabulary-set">set</a>
-</td></tr><tr><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><td>
-Document
-</td><td>
-<a href="#document-structure-vocabulary-tt">tt</a>
-</td></tr><tr><td>
-Head
-</td><td>
-<a href="#document-structure-vocabulary-head">head</a>
-</td></tr><tr><td>
-Layout
-</td><td>
-<a href="#layout-vocabulary-layout">layout</a>,
-<a href="#layout-vocabulary-region">region</a>
-</td></tr><tr><td>
-Metadata
-</td><td>
-<a href="#metadata-vocabulary-metadata">metadata</a>
-</td></tr><tr><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><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><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 name="element-vocab-group-table" 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 name="attribute-vocab-table" 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 name="extension-vocabulary-overview" 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 TTML
-document instance may contain arbitrary namespace qualified
-elements that reside in any namespace other than those namespaces
-defined for use with this specification. Furthermore, a conforming TTML
-document instance 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 name="parameters" 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 processing context by means
-of which TTML content can be related to an external environment.</p><div class="div2">
-<h3><a name="parameter-element-vocabulary" 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 document
-or a content processor:</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 name="parameter-vocabulary-profile" 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 TTML content processor in order to process a TTML
-document that makes use (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 document
-instance;</p></li><li><p>as the root element of a TTML Profile Definition document
-instance;</p></li></ul><p>When a <code>tt:profile</code> element appears within a TTML document
-instance, 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 document instance.</p><p>When a <code>tt:profile</code> element is used by a TTML
-Profile Definition document instance, it serves to publish a machine
-readable specification of a specific TTML content profile, of which
-this specification defines three such Profile Definition Documents 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 name="elt-syntax-parameter-profile" 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>
-<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>*
-</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
-TTML Profile Definition Document as defined by <a href="#profiles"><b>F Profiles</b></a>,
-or (2) a dereferenceable resource representing a valid TTML Profile Definition
-document 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 TTML Profile Definition Document that is not one of the
-standard, predefined profiles defined by <a href="#profiles"><b>F Profiles</b></a>. 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 TTML
-Profile Definition Document, 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 TTML document instance due to the inability to
-reference a non-standard TTML Profile Definition Document, 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 name="parameter-vocabulary-profile-example-1" id="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 name="parameter-vocabulary-features" 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 name="elt-syntax-parameter-features" 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>
-<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>*
-</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 name="parameter-vocabulary-feature" 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 name="elt-syntax-parameter-feature" 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>
-<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>.</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 if the TTML processor implementation does
-not support the 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 TTML document instance 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 document instance)
-is disallowed or otherwise prohibited.</p></div><p>The <code>ttp:feature</code> element is illustrated by the following example.</p><a name="parameter-vocabulary-feature-example-1" id="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>
- </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 name="parameter-vocabulary-extensions" 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 name="elt-syntax-parameter-extensions" 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>
-<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>*
-</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 name="parameter-vocabulary-extension" 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 name="elt-syntax-parameter-extension" 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>
-<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 if the TTML processor implementation does not support the
-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 TTML document instance 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>The <code>ttp:extension</code> element is illustrated by the following example.</p><a name="parameter-vocabulary-extension-example-1" id="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://foo.bar.example.org/ttaf1/extension/">
- <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 use an extension defined by a third party.</p></div></div></div><div class="div2">
-<h3><a name="parameter-attribute-vocabulary" 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) may
-appear between tokens of a value of a TT Parameter.</p><div class="div3">
-<h4><a name="parameter-attribute-cellResolution" 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 root container region
-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 name="parameter-attribute-cellResolution-syntax" id="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="#cea608c">[CEA-608-C]</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><div class="note"><p class="prefix"><b>Note:</b></p><p>Except where indicated otherwise, when a <a href="#style-value-length"><length></a> expressed in
-cells expresses a dimension parallel to the inline or block progression dimension,
-the cell's dimension in the inline or block progression dimension applies, respectively.
-For example, if padding (on all four edges) is specified as 0.1c, the cell resolution
-is 20 by 10, and the root container extent 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 name="parameter-attribute-clockMode" 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.</p></div><p>If specified, the value of this attribute must adhere to the following syntax:</p><a name="parameter-attribute-clockMode-syntax" id="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 name="parameter-attribute-dropMode" 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 name="parameter-attribute-dropMode-syntax" id="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 name="parameter-attribute-frameRate" 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 document instance 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 name="parameter-attribute-frameRate-syntax" id="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 document instance 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>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><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 name="parameter-attribute-frameRateMultiplier" 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 name="parameter-attribute-frameRateMultiplier-syntax" id="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 name="parameter-attribute-markerMode" 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 name="parameter-attribute-markerMode-syntax" id="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 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 name="parameter-attribute-pixelAspectRatio" 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 name="parameter-attribute-pixelAspectRatio-syntax" id="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 name="parameter-attribute-profile" 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 document instance.</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 name="parameter-attribute-subFrameRate" 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 document instance 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 name="parameter-attribute-subFrameRate-syntax" id="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 document instance 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>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><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 name="parameter-attribute-tickRate" 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 document instance 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 name="parameter-attribute-tickRate-syntax" id="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 document instance 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>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><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 name="parameter-attribute-timeBase" 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 document instance.</p><p>If specified, the value of this attribute must adhere to the following syntax:</p><a name="parameter-attribute-timeBase-syntax" id="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 document instance is to be synchronized, or it may
-be the content of a document instance 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, 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 document instance 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 document instance 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 document instance, the interpretation of time expressions
-is uniform throughout the document instance.</p></div><p>When operating with the <code>clock</code> time base,
-the expression <em>media time</em> as used in this specification is
-to be interpreted as the real-time clock selected by
-<a href="#parameter-attribute-clockMode"><b>6.2.2 ttp:clockMode</b></a>.</p></div></div></div><div class="div1">
-<h2><a name="content" 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 name="content-element-vocabulary" id="content-element-vocabulary"></a>7.1 Content Element Vocabulary</h3><p>The following elements specify the structure and principal content aspects of a
-document instance:</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 name="document-structure-vocabulary-tt" 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 document
-instance.</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 name="elt-syntax-tt" id="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
- {<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>?
-</tt>
-</pre></div>
-</td></tr></tbody></table><p>The <em>Root Temporal Extent</em>, i.e., the time interval over which a document instance is active, has an implicit duration that is equal to the
-implicit duration of the <code>body</code> element of the document, if present, or zero, if not present.</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 root container region in
-which content regions are located and presented. If no <code>tts:extent</code>
-attribute is specified, then the spatial extent of the root container region is
-considered to be determined by the external authoring or presentation
-context. The root container origin is determined by the <em>Document Processing Context</em>.</p><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 root container
-region 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="#cea708d">[CEA-708-D]</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 document instance.</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 name="document-structure-vocabulary-head" 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 document instance 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 document instance 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
-content elements.</p><p>A <code>layout</code> child element is used to specify layout constructs that
-are referenced by content elements.</p><a name="elt-syntax-head" id="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>?
-</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 name="document-structure-vocabulary-body" 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 name="elt-syntax-body" id="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="#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="#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>*
-</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 TTML document instance 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 document instance are available for style inheritance by
-descendant content 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 name="content-vocabulary-div" 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 name="elt-syntax-div" id="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="#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="#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>*
-</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 document instance
-are available for style inheritance by descendant content 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 name="content-vocabulary-p" 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
-<code>span</code> element,
-<code>br</code> element,
-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>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 name="elt-syntax-p" id="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="#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="#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>*
-</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 document instance are available for style inheritance by
-descendant content 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 name="content-vocabulary-span" 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
-<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 name="elt-syntax-span" id="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="#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="#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>*
-</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 document instance are available for style inheritance by
-descendant content 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 name="content-vocabulary-br" id="content-vocabulary-br"></a>7.1.7 br</h4><p>The <code>br</code> element denotes an explicit line break.</p><a name="elt-syntax-br" id="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
- <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>*
-</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>NL</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 name="content-attribute-vocabulary" 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 name="content-attribute-id" 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 name="content-attribute-lang" 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.</p></div><div class="div3">
-<h4><a name="content-attribute-space" 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.</p><p>The semantics of the value <code>default</code> are fixed to mean that
-when performing presentation processing of a document instance 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></div></div><div class="div1">
-<h2><a name="styling" 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 TTML documents 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 intended effect of the attributes in this section
- are to be compatible with the layout model of XSL. Presentation agents may however
- 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 name="styling-element-vocabulary" id="styling-element-vocabulary"></a>8.1 Styling Element Vocabulary</h3><p>The following elements specify the structure and principal styling aspects of a
-document instance:</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 name="styling-vocabulary-styling" 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 name="elt-syntax-styling" id="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>*
-</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 name="styling-vocabulary-style" 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><p>The <code>style</code> element accepts as its children zero or more <code>metadata</code> elements.</p><a name="elt-syntax-style" id="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
- <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> 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 name="styling-attribute-vocabulary" 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 content 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 content 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) may
-appear between tokens of a value of a TT
-Style or TT Style Extension
-Property.</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 content
-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="div3">
-<h4><a name="style-attribute-style" 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
-specified
-style 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><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 name="style-attribute-backgroundColor" 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 name="style-property-details-backgroundColor" 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 name="style-attribute-backgroundColor-example-1" id="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>/>
- <style tts:color="white"/>
- <style tts:displayAlign="after"/>
- <style tts:padding="3px 40px"/>
-</region>
-...
-<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!
-</p>
-</pre></div>
-</td></tr></tbody></table><p></p><a name="style-attribute-backgroundColor-example-1-images" 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><div class="div3">
-<h4><a name="style-attribute-color" 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 name="style-property-details-color" 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 root container region.</p><p>The <code>tts:color</code> style is illustrated by the following example.</p><a name="style-attribute-color-example-1" id="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>/>
- <style tts:displayAlign="after"/>
- <style tts:textAlign="center"/>
-</region>
-...
-<p region="r1">
- 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 name="style-attribute-color-example-1-images" 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><div class="div3">
-<h4><a name="style-attribute-direction" 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 name="style-property-details-direction" 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 specified value of this attribute is not supported,
-then a presentation processor must ignore the attribute.</p><p>The <code>tts:direction</code> style is illustrated by the following example.</p><a name="style-attribute-direction-example-1" id="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"/>
- <style tts:backgroundColor="black"/>
- <style tts:color="white"/>
- <style tts:displayAlign="after"/>
- <style tts:textAlign="center"/>
-</region>
-...
-<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>
-</p>
-</pre></div>
-</td></tr></tbody></table><p></p><a name="style-attribute-direction-example-1-images" 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><div class="div3">
-<h4><a name="style-attribute-display" 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 name="style-property-details-display" 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 name="style-attribute-display-example-1" id="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"
- tts:color="white"
- tts:displayAlign="before"
- tts:textAlign="start"/>
-</region>
-...
-<div region="r1">
- <p dur="5s">
- [[[
- <span <span class="strong">tts:display="none"</span>>
- <set begin="1s" dur="1s" <span class="strong">tts:display="auto"</span>/>
- Beautiful soup,
- </span>
- <span <span class="strong">tts:display="none"</span>>
- <set begin="2s" dur="1s" <span class="strong">tts:display="auto"</span>/>
- so rich and green,
- </span>
- <span <span class="strong">tts:display="none"</span>>
- <set begin="3s" dur="1s" <span class="strong">tts:display="auto"</span>/>
- waiting in a hot tureen!
- </span>
- ]]]
- </p>
-</div>
-</pre></div>
-</td></tr></tbody></table><p></p><a name="style-attribute-display-example-1-images" 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><div class="div3">
-<h4><a name="style-attribute-displayAlign" 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 name="style-property-details-displayAlign" 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 specified value of this attribute is not supported,
-then a presentation processor must interpret the attribute as if the
-value <code>before</code> were specified.</p><p>The <code>tts:displayAlign</code> style is illustrated by the following example.</p><a name="style-attribute-displayAlign-example-1" id="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"/>
- <style <span class="strong">tts:displayAlign="before"</span>/>
- <style tts:textAlign="start"/>
-</region>
-<region xml:id="r2">
- <style tts:extent="192px 66px" tts:origin="128px 66px"/>
- tts:backgroundColor="green" tts:color="white"/>
- <style <span class="strong">tts:displayAlign="after"</span>/>
- <style tts:textAlign="start"/>
-</region>
-<region xml:id="r3">
- <style tts:extent="128px 66px"/> style tts:origin="0px 132px"
- tts:backgroundColor="black" tts:color="white"/>
- <style <span class="strong">tts:displayAlign="before"</span>/>
- <style tts:textAlign="start"/>
-</region>
-<region xml:id="r4">
- <style tts:extent="192px 66px" tts:origin="128px 198px"/>
- tts:backgroundColor="green" tts:color="white"/>
- <style <span class="strong">tts:displayAlign="after"</span>/>
- <style tts:textAlign="start"/>
-</region>
-...
-<div>
- <p region="r1">I sent a message to the fish:</p>
- <p region="r2">I told them<br/> "This is what I wish."</p>
- <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 name="style-attribute-displayAlign-example-1-images" 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><div class="div3">
-<h4><a name="style-attribute-extent" 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 root container 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 name="style-property-details-extent" 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 root container region</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>, where, if either <em>width</em> or <em>height</em> is negative or zero, then
-extent must be considered zero in both inline and block progression dimensions.</p><p>If the value of this attribute is <code>auto</code>, then the initial value
-of the style property must be considered to be the same as the root container extent.
-</p><p>
-The root container extent is determined either by a
-<code>tts:extent</code> specified on the <code>tt</code> element, if
-present, or by the external authoring context, 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 specified value of this attribute is not supported,
-then a presentation processor must interpret the attribute as if the
-value <code>auto</code> were specified.</p><p>The <code>tts:extent</code> style is illustrated by the following example.</p><a name="style-attribute-extent-example-1" id="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"/>
- <style tts:color="white"/>
- <style tts:displayAlign="after"/>
- <style tts:textAlign="center"/>
-</region>
-...
-<p region="r1">
- 'Tis the voice of the Lobster:<br/>
- I heard him declare,<br/>
- "You have baked me too brown,<br/>
- I must sugar my hair."
-</p>
-</pre></div>
-</td></tr></tbody></table><p></p><a name="style-attribute-extent-example-1-images" 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 name="style-attribute-fontFamily" 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 name="style-property-details-fontFamily" 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 specified font family is not available, then a
-presentation processor must attempt to map the specified font family
-to an available font family that has similar typographic
-characteristics, or, in the absence of such a mapping, it must
-interpret the font family as if the value <code>default</code> were
-specified.</p><p>The <code>tts:fontFamily</code> style is illustrated by the following example.</p><a name="style-attribute-fontFamily-example-1" id="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"/>
- <style tts:color="white"/>
- <style tts:displayAlign="center"/>
- <style tts:textAlign="start"/>
- <style <span class="strong">tts:fontFamily="proportionalSansSerif"</span>/>
-</region>
-...
-<div region="r1">
- <p>
- "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>>
- Of shoes, and ships, and sealing wax,<br/>
- Of cabbages and kings,
- </p>
- <p>
- And why the sea is boiling hot,<br/>
- and whether pigs have wings."
- </p>
-</div>
-</pre></div>
-</td></tr></tbody></table><p></p><a name="style-attribute-fontFamily-example-1-images" 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><div class="div3">
-<h4><a name="style-attribute-fontSize" 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, where font size is interpreted as a
-scaling transform to the font's design EM square.</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 name="style-property-details-fontSize" 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>relative to parent element's font size</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><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 specified value of this attribute is not supported,
-then a presentation processor must interpret the attribute as if the
-value <code>1c</code> were specified.</p><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>.</p></div><p>The <code>tts:fontSize</code> style is illustrated by the following example.</p><a name="style-attribute-fontSize-example-1" id="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"/>
- <style tts:color="white"/>
- <style tts:displayAlign="center"/>
- <style tts:textAlign="center"/>
- <style tts:fontFamily="proportionalSansSerif"/>
- <style <span class="strong">tts:fontSize="18px"</span>/>
-</region>
-...
-<p region="r1">
- 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.
-</p>
-</pre></div>
-</td></tr></tbody></table><p></p><a name="style-attribute-fontSize-example-1-images" 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><div class="div3">
-<h4><a name="style-attribute-fontStyle" 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 name="style-property-details-fontStyle" 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>
-denote a shear transformation (at an unspecified
-angle) in the inline progression dimension.</p><p>If a specified font style is not available, then a
-presentation processor must attempt to map the specified font style
-to an available font style that has similar typographic
-characteristics, or, in the absence of such a mapping, it must
-interpret the font style as if the value <code>normal</code> were
-specified.</p><p>The <code>tts:fontStyle</code> style is illustrated by the following example.</p><a name="style-attribute-fontStyle-example-1" id="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"/>
- <style tts:color="white"/>
- <style tts:displayAlign="after"/>
- <style tts:textAlign="center"/>
- <style tts:fontFamily="proportionalSansSerif"/>
-</region>
-...
-<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>
-</p>
-</pre></div>
-</td></tr></tbody></table><p></p><a name="style-attribute-fontStyle-example-1-images" 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><div class="div3">
-<h4><a name="style-attribute-fontWeight" 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 name="style-property-details-fontWeight" 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 specified font weight is not available, then a
-presentation processor must attempt to map the specified font weight
-to an available font weight that has similar typographic
-characteristics, or, in the absence of such a mapping, it must
-interpret the font weight as if the value <code>normal</code> were
-specified.</p><p>The <code>tts:fontWeight</code> style is illustrated by the following example.</p><a name="style-attribute-fontWeight-example-1" id="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"/>
- <style tts:color="white"/>
- <style tts:displayAlign="center"/>
- <style tts:textAlign="center"/>
- <style tts:fontFamily="proportionalSansSerif"/>
-</region>
-...
-<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/>
- She gave me a good character<br/>
- <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 name="style-attribute-fontWeight-example-1-images" 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><div class="div3">
-<h4><a name="style-attribute-lineHeight" 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 name="style-property-details-lineHeight" 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
-initial value of the style property must be considered to be the same
-as the largest font size that applies to any
-descendant element.</p><p>If specified as a <a href="#style-value-length"><length></a>, then the length must
-be non-negative.</p><p>If a specified value of this attribute is not supported,
-then a presentation processor must interpret the attribute as if the
-value <code>normal</code> were specified.</p><p>The <code>tts:lineHeight</code> style is illustrated by the following example.</p><a name="style-attribute-lineHeight-example-1" id="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"/>
- <style tts:color="white"/>
- <style tts:displayAlign="center"/>
- <style tts:textAlign="start"/>
- <style tts:fontFamily="proportionalSansSerif"/>
- <style tts:fontSize="16px"/>
- <style <span class="strong">tts:lineHeight="32px"</span>/>
-</region>
-...
-<p region="r1">
- He thought he saw an elephant,<br/>
- That practised on a fife:<br/>
- He looked again, and found it was<br/>
- A letter from his wife.<br/>
- "At length I realise," he said,<br/>
- "The bitterness of Life.
-"</p>
-</pre></div>
-</td></tr></tbody></table><p></p><a name="style-attribute-lineHeight-example-1-images" 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><div class="div3">
-<h4><a name="style-attribute-opacity" 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 name="style-property-details-opacity" 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>An <a href="#style-value-alpha"><alpha></a> value greater
-than 1.0 must be considered equivalent to an <a href="#style-value-alpha"><alpha></a> value of 1.0.</p><p>The <code>tts:opacity</code> style is illustrated by the following example.</p><a name="style-attribute-opacity-example-1" id="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>/>
- <set begin="2s" dur="1s" <span class="strong">tts:opacity="0.50"</span>/>
- <set begin="3s" dur="1s" <span class="strong">tts:opacity="0.25"</span>/>
- <set begin="4s" dur="1s" <span class="strong">tts:opacity="0.00"</span>/>
- <style tts:extent="304px 77px"/>
- <style tts:backgroundColor="black"/>
- <style tts:color="white"/>
- <style tts:displayAlign="after"/>
- <style tts:textAlign="center"/>
-</region>
-...
-<p region="r1">
- The sun was shining on the sea
-</p>
-</pre></div>
-</td></tr></tbody></table><p></p><a name="style-attribute-opacity-example-1-images" 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><div class="div3">
-<h4><a name="style-attribute-origin" 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 root container extent,
-if specified, or the external authoring context, if not specified.</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 name="style-property-details-origin" 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 root container region</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 initial value
-of the style property must be considered to be the same as the root container
-origin.</p><p>If a specified value of this attribute is not supported,
-then a presentation processor must interpret the attribute as if the
-value <code>auto</code> were specified.</p><p>The <code>tts:origin</code> style is illustrated by the following example.</p><a name="style-attribute-origin-example-1" id="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"/>
- <style tts:backgroundColor="black"/>
- <style tts:color="white"/>
- <style tts:displayAlign="center"/>
- <style tts:textAlign="center"/>
-</region>
-...
-<p region="r1">
- "To dine!" she shrieked in dragon-wrath.<br/>
- "To swallow wines all foam and froth!<br/>
- To simper at a table-cloth!"
-</p>
-</pre></div>
-</td></tr></tbody></table><p></p><a name="style-attribute-origin-example-1-images" 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 name="style-attribute-overflow" 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 name="style-property-details-overflow" 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 specified value of this attribute is not supported,
-then a presentation processor must interpret the attribute as if the
-value <code>hidden</code> were specified.</p><p>The <code>tts:overflow</code> style is illustrated by the following example.</p><a name="style-attribute-overflow-example-1" id="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"/>
- <style tts:backgroundColor="black"/>
- <style tts:color="red"/>
- <style tts:displayAlign="before"/>
- <style tts:textAlign="start"/>
- <style tts:fontFamily="proportionalSansSerif"/>
- <style tts:fontSize="18px"/>
- <style tts:wrapOption="noWrap"/>
- <style <span class="strong">tts:overflow="visible"</span>/>
-</region>
-<region xml:id="r2">
- <style tts:extent="232px 40px"/>
- <style tts:origin="0px 43px"/>
- <style tts:backgroundColor="black"/>
- <style tts:color="red"/>
- <style tts:displayAlign="before"/>
- <style tts:textAlign="start"/>
- <style tts:fontFamily="proportionalSansSerif"/>
- <style tts:fontSize="18px"/>
- <style tts:wrapOption="noWrap"/>
- <style <span class="strong">tts:overflow="hidden"</span>/>
-</region>
-...
-<p region="r1">
- "But wait a bit," the Oysters cried,<br/>
- "Before we have our chat;
-</p>
-<p region="r2">
- 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 name="style-attribute-overflow-example-1-images" 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><div class="div3">
-<h4><a name="style-attribute-padding" 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 name="style-property-details-padding" 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>If a specified value of this attribute is not supported,
-then a presentation processor must interpret the attribute as if the
-value <code>0px</code> were specified.</p><p>The <code>tts:padding</code> style is illustrated by the following example.</p><a name="style-attribute-padding-example-1" id="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"/>
- <style tts:color="white"/>
- <style tts:displayAlign="after"/>
- <style tts:textAlign="center"/>
- <style <span class="strong">tts:padding="10px 40px"</span>/>
-</region>
-...
-<p region="r1" tts:backgroundColor="red">
- Just the place for a Snark! I have said it twice:<br/>
- That alone should encourage the crew.<br/>
- 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 name="style-attribute-padding-example-1-images" 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><div class="div3">
-<h4><a name="style-attribute-showBackground" 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 name="style-property-details-showBackground" 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 selected into the region.</p><p>If a specified value of this attribute is not supported,
-then a presentation processor must interpret the attribute as if the
-value <code>always</code> were specified.</p><p>The <code>tts:showBackground</code> style is illustrated by the following example.</p><a name="style-attribute-showBackground-example-1" id="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"/>
- <style tts:backgroundColor="black"/>
- <style <span class="strong">tts:showBackground="always"</span>/>
- <style tts:color="white"/>
- <style tts:displayAlign="before"/>
- <style tts:textAlign="start"/>
-</region>
-<region xml:id="r2">
- <style tts:origin="205px 60px"/>
- <style tts:extent="290px 100px"/>
- <style tts:backgroundColor="red"/>
- <style tts:color="white"/>
- <style tts:displayAlign="before"/>
- <style tts:textAlign="end"/>
- <style <span class="strong">tts:showBackground="whenActive"</span>/>
-</region>
-</pre></div>
-</td></tr></tbody></table></div><div class="div3">
-<h4><a name="style-attribute-textAlign" 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 name="style-property-details-textAlign" 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 specified value of this attribute is not supported,
-then a presentation processor must interpret the attribute as if the
-value <code>start</code> were specified.</p><p>The <code>tts:textAlign</code> style is illustrated by the following example.</p><a name="style-attribute-textAlign-example-1" id="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"/>
- <style tts:backgroundColor="black"/>
- <style tts:color="white"/>
- <style <span class="strong">tts:textAlign="start"</span>/>
-</region>
-<region xml:id="r2">
- <style tts:extent="355px 43px"/>
- <style tts:origin="0px 47px"/>
- <style tts:backgroundColor="black"/>
- <style tts:color="white"/>
- <style <span class="strong">tts:textAlign="end"</span>/>
-</region>
-...
-<p region="r1">
- Beware the Jabberwock, my son!<br/>
- The jaws that bite, the claws that catch!
-</p>
-<p region="r2">
- Beware the Jubjub bird, and shun<br/>
- The frumious Bandersnatch!
-</p>
-</pre></div>
-</td></tr></tbody></table><p></p><a name="style-attribute-textAlign-example-1-images" 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><div class="div3">
-<h4><a name="style-attribute-textDecoration" 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 name="style-property-details-textDecoration" 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 specified value of this attribute is not supported,
-then a presentation processor must interpret the attribute as if the
-value <code>none</code> were specified.</p><p>The <code>tts:textDecoration</code> style is illustrated by the following example.</p><a name="style-attribute-textDecoration-example-1" id="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"/>
- <style tts:backgroundColor="black"/>
- <style tts:color="white"/>
- <style tts:padding="5px 2px"/>
- <style <span class="strong">tts:textDecoration="underline"</span>/>
-</region>
-...
-<p region="r1">
- 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>
- could not see a cloud<br/>
- Because no cloud was in the sky.
- </span>
-</p>
-</pre></div>
-</td></tr></tbody></table><p></p><a name="style-attribute-textDecoration-example-1-images" 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><div class="div3">
-<h4><a name="style-attribute-textOutline" 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 name="style-property-details-textOutline" 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><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 root container extent 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 specified value of this attribute is not supported,
-then a presentation processor must interpret the attribute as if the
-value <code>none</code> were specified.</p><p>The <code>tts:textOutline</code> style is illustrated by the following
-example.</p><a name="style-attribute-textOutline-example-1" id="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"/>
- <style <span class="strong">tts:textOutline="black 2px 0px"</span>/>
- <style tts:fontFamily="proportionalSansSerif"/>
- <style tts:fontSize="24px"/>
-</region>
-...
-<p>
- How doth the little crocodile<br/>
- Improve its shining tail,<br/>
- And pour the waters of the Nile<br/>
- On every golden scale!<br/>
- How cheerfully he seems to grin,<br/>
- How neatly spreads his claws,<br/>
- And welcomes little fishes in,<br/>
- With gently smiling jaws!
-</p>
-</pre></div>
-</td></tr></tbody></table><p></p><a name="style-attribute-textOutline-example-1-images" 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 name="style-attribute-unicodeBidi" 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 name="style-property-details-unicodeBidi" 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 specified value of this attribute is not supported,
-then a presentation processor must interpret the attribute as if the
-value <code>normal</code> were specified.</p><p>The <code>tts:unicodeBidi</code> style is illustrated by the following example.</p><a name="style-attribute-unicodeBidi-example-1" id="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"/>
- <style tts:backgroundColor="black"/>
- <style tts:color="white"/>
- <style tts:displayAlign="after"/>
- <style tts:textAlign="center"/>
-</region>
-...
-<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>
-</p>
-</pre></div>
-</td></tr></tbody></table><p></p><a name="style-attribute-unicodeBidi-example-1-images" 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><div class="div3">
-<h4><a name="style-attribute-visibility" 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 name="style-property-details-visibility" 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 specified value of this attribute is not supported,
-then a presentation processor must interpret the attribute as if the
-value <code>visible</code> were specified.</p><p>The <code>tts:visibility</code> style is illustrated by the following example.</p><a name="style-attribute-visibility-example-1" id="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"/>
- <style tts:color="white"/>
- <style/>
-</region>
-...
-<p region="r1" dur="4s">
- <span <span class="strong">tts:visibility="hidden"</span>>
- <set begin="1s" <span class="strong">tts:visibility="visible"</span>/>
- Curiouser
- </span>
- <span <span class="strong">tts:visibility="hidden"</span>>
- <set begin="2s" <span class="strong">tts:visibility="visible"</span>/>
- and
- </span>
- <span <span class="strong">tts:visibility="hidden"</span>>
- <set begin="3s" <span class="strong">tts:visibility="visible"</span>/>
- curiouser!
- </span>
-</p>
-</pre></div>
-</td></tr></tbody></table><p></p><a name="style-attribute-visibility-example-1-images" 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><div class="div3">
-<h4><a name="style-attribute-wrapOption" 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 name="style-property-details-wrapOption" 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 specified value of this attribute is not supported,
-then a presentation processor must interpret the attribute as if the
-value <code>wrap</code> were specified.</p><p>The <code>tts:wrapOption</code> style is illustrated by the following example.</p><a name="style-attribute-wrapOption-example-1" id="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"/>
- <style tts:color="white"/>
- <style tts:displayAlign="after"/>
- <style tts:overflow="hidden"/>
- <style <span class="strong">tts:wrapOption="noWrap"</span>/>
-</region>
-...
-<p>
- I'll tell thee everything I can:<br/>
- There's little to relate.<br/>
- I saw an aged aged man,<br/>
- A-sitting on a gate.
-</p>
-</pre></div>
-</td></tr></tbody></table><p></p><a name="style-attribute-wrapOption-example-1-images" 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><div class="div3">
-<h4><a name="style-attribute-writingMode" 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 name="style-property-details-writingMode" 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 specified value of this attribute is not supported,
-then a presentation processor must interpret the attribute as if the
-value <code>lrtb</code> were specified.</p><p>The <code>tts:writingMode</code> style is illustrated by the following example.</p><a name="style-attribute-writingMode-example-1" id="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"/>
- <style tts:padding="10px 3px"/>
- <style tts:backgroundColor="black"/>
- <style tts:color="white"/>
- <style <span class="strong">tts:writingMode="tbrl"</span>/>
-</region>
-<region xml:id="r2">
- <style tts:extent="310px 50px"/>
- <style tts:origin="70px 120px"/>
- <style tts:padding="10px 3px"/>
- <style tts:backgroundColor="black"/>
- <style tts:color="white"/>
- <style <span class="strong">tts:writingMode="rltb"</span>/>
-</region>
-...
-<p region="r1">
- I sometimes dig for buttered rolls,<br/>
- Or set limed twigs for crabs:
-</p>
-<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 name="style-attribute-writingMode-example-1-images" 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><div class="div3">
-<h4><a name="style-attribute-zIndex" 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 name="style-property-details-zIndex" 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 document
-instance.</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 specified value of this attribute is not supported,
-then a presentation processor must interpret the attribute as if the
-value <code>auto</code> were specified.</p><p>The <code>tts:zIndex</code> style is illustrated by the following example.</p><a name="style-attribute-zIndex-example-1" id="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"/>
- <style tts:padding="5px"/>
- <style tts:backgroundColor="black"/>
- <style tts:color="white"/>
- <style <span class="strong">tts:zIndex="0"</span>/>
-</region>
-<region xml:id="r2">
- <style tts:origin="100px 60px"/>
- <style tts:extent="400px 100px"/>
- <style tts:padding="5px"/>
- <style tts:backgroundColor="red"/>
- <style tts:color="white"/>
- <style tts:textAlign="end"/>
- <style <span class="strong">tts:zIndex="1"</span>/>
-</region>
-<region xml:id="r3">
- <style tts:origin="0px 120px"/>
- <style tts:extent="400px 100px"/>
- <style tts:padding="5px"/>
- <style tts:backgroundColor="black"/>
- <style tts:color="white"/>
- <style <span class="strong">tts:zIndex="2"</span>/>
-</region>
-<region xml:id="r4">
- <style tts:origin="100px 180px"/>
- <style tts:extent="400px 100px"/>
- <style tts:padding="5px"/>
- <style tts:backgroundColor="red"/>
- <style tts:color="white"/>
- <style tts:textAlign="end"/>
- <style <span class="strong">tts:zIndex="3"</span>/>
-</region>
-...
-<p region="r1">
- I passed by his garden, and marked, with one eye,<br/>
- How the Owl and the Panther were sharing a pie.
-</p>
-<p region="r2">
- The Panther took pie-crust, and gravy, and meat,<br/>
- While the Owl had the dish as its share of the treat.
-</p>
-<p region="r3">
- When the pie was all finished, the Owl, as a boon,<br/>
- Was kindly permitted to pocket the spoon:
-</p>
-<p region="r4">
- While the Panther received knife and fork<br/>
- with a growl,<br/>
- And concluded the banquet by...
-</p>
-</pre></div>
-</td></tr></tbody></table><p></p><p></p><a name="style-attribute-zIndex-example-1-images" 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></div><div class="div2">
-<h3><a name="styling-style-value-expressions" 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-duration"><b>8.3.4 <duration></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><li><p><a href="#style-value-quotedString"><b>8.3.11 <quotedString></b></a></p></li><li><p><a href="#style-value-string"><b>8.3.12 <string></b></a></p></li></ul><div class="div3">
-<h4><a name="style-value-alpha" 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 name="alpha-style-expression-syntax" id="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>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><div class="div3">
-<h4><a name="style-value-color" 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 name="color-style-expression-syntax" id="color-style-expression-syntax"></a><table class="syntax"><caption>Syntax Representation – <color></caption><tbody><tr><td>
-<div class="exampleInner"><pre>
-<color>
- : "#" rrggbb
- | "#" rrggbbaa
- | "rgb" "(" r-value "," g-value "," b-value ")"
- | "rgba" "(" r-value "," g-value "," b-value "," a-value ")"
- | <a href="#style-value-namedColor"><namedColor></a>
-
-rrggbb
- : <a href="#style-value-hexDigit"><hexDigit></a>{6}
-
-rrggbbaa
- : <a href="#style-value-hexDigit"><hexDigit></a>{8}
-
-r-value | g-value | b-value | a-value
- : component-value
-
-component-value
- : non-negative-integer // valid range: [0,255]
-
-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><div class="div3">
-<h4><a name="style-value-digit" 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 name="digit-style-expression-syntax" id="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 name="style-value-duration" id="style-value-duration"></a>8.3.4 <duration></h4><p>A <duration> expression is used to express a temporal duration value.</p><a name="duration-style-expression-syntax" id="duration-style-expression-syntax"></a><table class="syntax"><caption>Syntax Representation – <duration></caption><tbody><tr><td>
-<div class="exampleInner"><pre>
-<duration>
- : <a href="#style-value-digit"><digit></a>+ ( "." <a href="#style-value-digit"><digit></a>+ )? metric
-
-metric
- : "s" // seconds
- | "ms" // milliseconds
- | "f" // frames
- | "t" // ticks
-</pre></div>
-</td></tr></tbody></table><p>It is an error to omit the metric component of a duration.</p><p>When operating with <code>smpte</code> time base and
-<code>discontinuous</code> mode, a duration expression must be
-considered to denote a duration in (local) real-time, independently of the
-governing time base.</p></div><div class="div3">
-<h4><a name="style-value-familyName" id="style-value-familyName"></a>8.3.5 <familyName></h4><p>A <familyName> expression specifies a font family name.</p><p>If the name contains a quotation delimiter character,
-then it must be expressed as a
-<quotedString>. If the name contains a
-whitespace character,
-then it should be expressed as a
-<quotedString>; however, if it is expressed as a <string>, then it
-must not contain a <code>COMMA</code> ',' character.</p><a name="familyName-style-expression-syntax" id="familyName-style-expression-syntax"></a><table class="syntax"><caption>Syntax Representation – <familyName></caption><tbody><tr><td>
-<div class="exampleInner"><pre>
-<familyName>
- : <a href="#style-value-string"><string></a>
- | <a href="#style-value-quotedString"><quotedString></a>
-</pre></div>
-</td></tr></tbody></table></div><div class="div3">
-<h4><a name="style-value-genericFamilyName" 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 name="genericFamilyName-style-expression-syntax" id="genericFamilyName-style-expression-syntax"></a><table class="syntax"><caption>Syntax Representation – <genericFamilyName></caption><tbody><tr><td>
-<div class="exampleInner"><pre>
-<genericFamilyName>
- : "default"
- | "monospace"
- | "sansSerif"
- | "serif"
- | "monospaceSansSerif"
- | "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 is 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 name="style-value-hexDigit" 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, no distinction must be made between lower and upper case.</p><a name="hexDigit-style-expression-syntax" id="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 name="style-value-integer" 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 name="integer-style-expression-syntax" id="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 name="style-value-length" 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 name="length-style-expression-syntax" id="length-style-expression-syntax"></a><table class="syntax"><caption>Syntax Representation – <length></caption><tbody><tr><td>
-<div class="exampleInner"><pre>
-<length>
- : scalar
- | percentage
-
-scalar
- : number units
-
-percentage
- : number "%"
-
-sign
- : "+" | "-"
-
-number
- : sign? non-negative-number
-
-non-negative-number
- : non-negative-integer
- | non-negative-real
-
-non-negative-integer
- : <a href="#style-value-digit"><digit></a>+
-
-non-negative-real
- : <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 name="style-value-namedColor" 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, no distinction must be made between lower and upper case.</p><a name="namedColor-style-expression-syntax" id="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
- | "silver" // #c0c0c0ff
- | "gray" // #808080ff
- | "white" // #ffffffff
- | "maroon" // #800000ff
- | "red" // #ff0000ff
- | "purple" // #800080ff
- | "fuchsia" // #ff00ffff
- | "magenta" // #ff00ffff (= fuchsia)
- | "green" // #008000ff
- | "lime" // #00ff00ff
- | "olive" // #808000ff
- | "yellow" // #ffff00ff
- | "navy" // #000080ff
- | "blue" // #0000ffff
- | "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 name="style-value-quotedString" id="style-value-quotedString"></a>8.3.11 <quotedString></h4><p>A <quotedString> is used to express a delimited string that may contain
-a whitespace or a quotation delimiter character. Two types of quotation delimiters
-are provided in order to accommodate strings that contain the other delimiter.</p><a name="quotedString-style-expression-syntax" id="quotedString-style-expression-syntax"></a><table class="syntax"><caption>Syntax Representation – <quotedString></caption><tbody><tr><td>
-<div class="exampleInner"><pre>
-<quotedString>
- : "\"" ( <em>char</em> - { "\"" } )* "\""
- | "\'" ( <em>char</em> - { "\'" } )* "\'"
-</pre></div>
-</td></tr></tbody></table><p>In the above syntax representation, the syntactic element <em><code>char</code></em> must adhere to production
-[2] <code>Char</code> as defined by <a href="#xml10">[XML 1.0]</a> §
-2.2.</p></div><div class="div3">
-<h4><a name="style-value-string" id="style-value-string"></a>8.3.12 <string></h4><p>A <string> expression consists of a sequence of characters where no character
-is a quotation delimiter character.</p><a name="string-style-expression-syntax" id="string-style-expression-syntax"></a><table class="syntax"><caption>Syntax Representation – <string></caption><tbody><tr><td>
-<div class="exampleInner"><pre>
-<string>
- : ( <em>char</em> - { "\"" | "\'" } )+
-</pre></div>
-</td></tr></tbody></table><p>In the above syntax representation, the syntactic element <em><code>char</code></em> must adhere to production
-[2] <code>Char</code> as defined by <a href="#xml10">[XML 1.0]</a> §
-2.2.</p></div></div><div class="div2">
-<h3><a name="semantics-style-resolution" 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 name="semantics-style-association" 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 name="semantics-style-association-inline" 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 name="style-association-example-1" 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 name="semantics-style-association-referential" 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 content 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 name="style-association-example-2" id="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 name="semantics-style-association-chained-referential" 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, recursively
-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 content 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 name="style-association-example-3" 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 Monospace</p>
-<p <span class="strong">style="s2"</span>>Yellow Monospace</p>
-</pre></div>
-</td></tr></tbody></table></div><div class="div4">
-<h5><a name="semantics-style-association-nested" id="semantics-style-association-nested"></a>8.4.1.4 Nested Styling</h5><p>Style properties may be expressed in an 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 name="style-association-example-4" id="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 name="semantics-style-inheritance" 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 TTML document instance 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 name="semantics-style-inheritance-content" id="semantics-style-inheritance-content"></a>8.4.2.1 Content Style Inheritance</h5><p>Style properties are inherited from ancestor content elements
-within an intermediate synchronic document
-if a style property is not associated with a content element (or
-an anonymous span) and the style property is designated as
-inheritable.</p><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 name="style-inheritance-example-2" id="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 name="semantics-style-inheritance-region" 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 content
-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 name="style-inheritance-example-3" id="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"/>
-</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 name="semantics-style-resolution-value-categories" 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 name="semantics-style-resolved-value-category-specified" 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 name="semantics-style-resolved-value-category-computed" 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 name="semantics-style-resolved-value-category-actual" 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 name="semantics-style-resolution-processing" 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 name="semantics-style-resolution-processing-definitions" 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 name="conceptual-definition-example-style-property" id="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 name="conceptual-definition-example-specified-style-set" 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>
-{
- [
- ["http://www.w3.org/ns/ttml#styling", "backgroundColor"],
- ["specified", <em>color</em>, 0x00FF00 ]
- ],
- [
- ["http://www.w3.org/ns/ttml#styling", "color"],
- ["specified", <em>color</em>, "red" ]
- ],
- [
- ["http://www.w3.org/ns/ttml#styling", "fontSize"],
- ["specified", <em>length</em>, "1c" ]
- ],
- [
- ["http://www.w3.org/ns/ttml#styling", "lineHeight"],
- ["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 name="conceptual-definition-example-computed-style-set" 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>
-{
- [
- ["http://www.w3.org/ns/ttml#styling", "backgroundColor"],
- ["specified", <em>color</em>, 0x00FF00 ]
- ],
- [
- ["http://www.w3.org/ns/ttml#styling", "color"],
- ["computed", <em>color</em>, 0xFF0000 ]
- ],
- [
- ["http://www.w3.org/ns/ttml#styling", "fontSize"],
- ["computed", <em>length</em>, "24px" ]
- ],
- [
- ["http://www.w3.org/ns/ttml#styling", "lineHeight"],
- ["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 name="semantics-style-resolution-processing-sss" 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 content 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 name="semantics-style-resolution-processing-css" 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 content 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 name="semantics-style-resolution-process-overall" 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
-content 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 name="layout" 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 name="layout-element-vocabulary" id="layout-element-vocabulary"></a>9.1 Layout Element Vocabulary</h3><p>The following elements specify the structure and principal layout aspects of a
-document instance:</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 name="layout-vocabulary-layout" 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 name="elt-syntax-layout" id="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>*
-</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 name="layout-vocabulary-region" id="layout-vocabulary-region"></a>9.1.2 region</h4><p>The <code>region</code> element is used to define a space or area into which content is
-to be flowed for the purpose of presentation.</p><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.</p><a name="elt-syntax-region" id="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="#style-attribute-style">style</a> = IDREFS
- <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>*
-</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 document instance's root <code>tt</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 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 root container
-extent 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 role(s) identified
-by this attribute expresses the semantic role(s) of the region
-independently from the semantic role(s) of any content targeted to
-(associated with) the region.</p></div></div><div class="div2">
-<h3><a name="layout-attribute-vocabulary" 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 content elements.</p><div class="div3">
-<h4><a name="layout-attribute-region" 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 content element is intended to be flowed.</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 name="semantics-region-layout" 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 name="semantics-default-region" id="semantics-default-region"></a>9.3.1 Default Region</h4><p>If a TTML document instance 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 root container
-region;</p></li><li><p>the temporal interval of the default region is the same as temporal
-interval of the document instance;</p></li></ul><p>Furthermore, if no <a href="#layout-vocabulary-region"><code>region</code></a> element was
-specified, then the <a href="#layout-attribute-region"><code>region</code></a> attribute must
-not be specified on any content element in the document
-instance.</p><p>If a default region is implied for a given document instance, 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 document instance 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 name="semantics-default-region-example" id="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>
- <region xml:id="anonymous"/>
- </layout></span>
- </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 name="semantics-region-layout-step-1" 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 document instance 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 document
-instance 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> , as follows:</p><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 content element, if they are temporally inactive, if they are empty,
-or if they aren't associated with region <em>R</em>;</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><p>A content 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><p>The result of performing the processing described above will be a sequence of
-<em>N</em> intermediate synchronic
-document instances,
-<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 document instances,
-<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="#cea608c">[CEA-608-C]</a>, § C.3.</p></div></div><div class="div3">
-<h4><a name="semantics-region-layout-step-2" 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 content 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 root container extent 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>, and where the region's position and extent are mapped to equivalent
-<code>top</code>, <code>left</code>, <code>width</code>, and <code>height</code>
-attributes;</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 content 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 content 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 content 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>Due to the possible presence of TTML style properties or style property values
-in a given TTML document instance 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 name="semantics-region-layout-example" 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 name="region-mapping-example-1-s" 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"
- xmlns="http://www.w3.org/ns/ttml"
- xmlns:tts="http://www.w3.org/ns/ttml#styling">
- <head>
- <layout>
- <region xml:id="r1">
- <style tts:origin="10px 100px"/>
- <style tts:extent="620px 96px"/>
- <style tts:fontSize="40px"/>
- <style tts:fontWeight="bold"/>
- <style tts:backgroundColor="black"/>
- <style tts:color="red"/>
- <style tts:textAlign="center"/>
- <style tts:displayAlign="center"/>
- </region>
- <region xml:id="r2">
- <style tts:origin="10px 300px"/>
- <style tts:extent="620px 96px"/>
- <style tts:fontSize="40px"/>
- <style tts:fontWeight="bold"/>
- <style tts:backgroundColor="black"/>
- <style tts:color="yellow"/>
- <style tts:textAlign="center"/>
- <style tts:displayAlign="center"/>
- </region>
- </layout>
- </head>
- <body xml:id="b1">
- <div xml:id="d1" begin="0s" dur="2s">
- <p xml:id="p1" region="r1">Text 1</p>
- <p xml:id="p2" region="r2">Text 2</p>
- </div>
- <div xml:id="d2" begin="1s" dur="2s">
- <p xml:id="p3" region="r2">Text 3</p>
- <p xml:id="p4" region="r1">Text 4</p>
- </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 (selected into) 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 at 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 selected into 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 TTML document instances,
-but rather, are representations of possible internal processing states used for
-didactic purposes.</p></div><a name="region-mapping-example-1-i0" 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"
- xmlns="http://www.w3.org/ns/ttml"
- xmlns:tts="http://www.w3.org/ns/ttml#styling">
- <head>
- <layout>
- <region xml:id="r1">
- <style tts:origin="10px 100px"/>
- <style tts:extent="620px 96px"/>
- <style tts:fontSize="40px"/>
- <style tts:fontWeight="bold"/>
- <style tts:backgroundColor="black"/>
- <style tts:color="red"/>
- <style tts:textAlign="center"/>
- <style tts:displayAlign="center"/>
- <body xml:id="b1-1">
- <div xml:id="d1-1">
- <p xml:id="p1">Text 1</p>
- </div>
- </body>
- </region>
- <region xml:id="r2">
- <style tts:origin="10px 300px"/>
- <style tts:extent="620px 96px"/>
- <style tts:fontSize="40px"/>
- <style tts:fontWeight="bold"/>
- <style tts:backgroundColor="black"/>
- <style tts:color="yellow"/>
- <style tts:textAlign="center"/>
- <style tts:displayAlign="center"/>
- <body xml:id="b1-2">
- <div xml:id="d1-2">
- <p xml:id="p2">Text 2</p>
- </div>
- </body>
- </region>
- </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 name="region-mapping-example-1-f0" 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">
- <fo:layout-master-set>
- <fo:simple-page-master master-name="m1"
- page-width="640px" page-height="480px">
- <fo:region-body/>
- </fo:simple-page-master>
- </fo:layout-master-set>
- <fo:page-sequence master-reference="m1">
- <fo:flow flow-name="xsl-region-body">
- <!-- region (r1) -->
- <fo:block-container id="r1" absolute-position="absolute"
- left="10px" top="100px" width="620px" height="96px"
- background-color="black" display-align="center">
- <!-- body (b1) -->
- <fo:block id="b1-1">
- <!-- body's space (before) filler -->
- <fo:block
- space-after.optimum="96px"
- space-after.maximum="96px"
- space-after.conditionality="retain"/>
- <!-- div (d1) -->
- <fo:block id="d1-1">
- <!-- p (p1) -->
- <fo:block id="p1" text-align="center">
- <fo:inline font-size="40px" font-weight="bold"
- color="red">Text 1</fo:inline>
- </fo:block>
- </fo:block>
- <!-- body's space (after) filler -->
- <fo:block
- space-after.optimum="96px"
- space-after.maximum="96px"
- space-after.conditionality="retain"/>
- </fo:block>
- </fo:block-container>
- <!-- region (r2) -->
- <fo:block-container id="r2" absolute-position="absolute"
- left="10px" top="300px" width="620px" height="96px"
- background-color="black" display-align="center">
- <!-- body (b1) -->
- <fo:block id="b1-2">
- <!-- body's space (before) filler -->
- <fo:block
- space-after.optimum="96px"
- space-after.maximum="96px"
- space-after.conditionality="retain"/>
- <!-- div (d1) -->
- <fo:block id="d1-2">
- <!-- p (p2) -->
- <fo:block id="p2" text-align="center">
- <fo:inline font-size="40px" font-weight="bold"
- color="yellow">Text 2</fo:inline>
- </fo:block>
- </fo:block>
- <!-- body's space (after) filler -->
- <fo:block
- space-after.optimum="96px"
- space-after.maximum="96px"
- space-after.conditionality="retain"/>
- </fo:block>
- </fo:block-container>
- </fo:flow>
- </fo:page-sequence>
-</fo:root>
-</pre></div>
-</td></tr></tbody></table><p>The following, second intermediate document shows the synchronic state at
-time interval [1,2), at 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 selected into region <code>r1</code>
-and paragraphs <code>p2</code> and <code>p3</code> (and their ancestors) are
-selected into region <code>r2</code>.</p><a name="region-mapping-example-1-i1" 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"
- xmlns="http://www.w3.org/ns/ttml"
- xmlns:tts="http://www.w3.org/ns/ttml#styling">
- <head>
- <layout>
- <region xml:id="r1">
- <style tts:origin="10px 100px"/>
- <style tts:extent="620px 96px"/>
- <style tts:fontSize="40px"/>
- <style tts:fontWeight="bold"/>
- <style tts:backgroundColor="black"/>
- <style tts:color="red"/>
- <style tts:textAlign="center"/>
- <style tts:displayAlign="center"/>
- <body xml:id="b1-1">
- <div xml:id="d1-1">
- <p xml:id="p1">Text 1</p>
- </div>
- <div xml:id="d2-1">
- <p xml:id="p4">Text 4</p>
- </div>
- </body>
- </region>
- <region xml:id="r2">
- <style tts:origin="10px 300px"/>
- <style tts:extent="620px 96px"/>
- <style tts:fontSize="40px"/>
- <style tts:fontWeight="bold"/>
- <style tts:backgroundColor="black"/>
- <style tts:color="yellow"/>
- <style tts:textAlign="center"/>
- <style tts:displayAlign="center"/>
- <body xml:id="b1-2">
- <div xml:id="d1-2">
- <p xml:id="p2">Text 2</p>
- </div>
- <div xml:id="d2-2">
- <p xml:id="p3">Text 3</p>
- </div>
- </body>
- </region>
- </layout>
- </head>
-</tt>
-</pre></div>
-</td></tr></tbody></table><p>The following, third intermediate document shows the synchronic state at time
-interval [2,3), at which time only division <code>d2</code> is temporally active,
-and where paragraphs <code>p4</code> and <code>p3</code> (and their ancestors)
-are selected into regions <code>r1</code> and <code>r2</code>, respectively.</p><a name="region-mapping-example-1-i2" 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"
- xmlns="http://www.w3.org/ns/ttml"
- xmlns:tts="http://www.w3.org/ns/ttml#styling">
- <head>
- <layout>
- <region xml:id="r1">
- <style tts:origin="10px 100px"/>
- <style tts:extent="620px 96px"/>
- <style tts:fontSize="40px"/>
- <style tts:fontWeight="bold"/>
- <style tts:backgroundColor="black"/>
- <style tts:color="red"/>
- <style tts:textAlign="center"/>
- <style tts:displayAlign="center"/>
- <body xml:id="b1-1">
- <div xml:id="d2-1">
- <p xml:id="p4">Text 4</p>
- </div>
- </body>
- </region>
- <region xml:id="r2">
- <style tts:origin="10px 300px"/>
- <style tts:extent="620px 96px"/>
- <style tts:fontSize="40px"/>
- <style tts:fontWeight="bold"/>
- <style tts:backgroundColor="black"/>
- <style tts:color="yellow"/>
- <style tts:textAlign="center"/>
- <style tts:displayAlign="center"/>
- <body xml:id="b1-2">
- <div xml:id="d2-2">
- <p xml:id="p3">Text 3</p>
- </div>
- </body>
- </region>
- </layout>
- </head>
-</tt>
-</pre></div>
-</td></tr></tbody></table></div></div><div class="div2">
-<h3><a name="semantics-line-layout" id="semantics-line-layout"></a>9.4 Line Layout</h3><p>If a profile that applies to a document instance
-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 document instance.</p></div></div><div class="div1">
-<h2><a name="timing" 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 name="timing-element-vocabulary" 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 name="timing-attribute-vocabulary" 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 name="timing-attribute-begin" 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 name="timing-attribute-end" 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 name="timing-attribute-dur" 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 TTML document instance specifies the use of the
-<code>smpte</code> time base and <code>discontinuous</code> marker
-mode, the <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 name="timing-attribute-timeContainer" 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 name="timing-time-value-expressions" 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 name="timing-value-timeExpression" id="timing-value-timeExpression"></a>10.3.1 <timeExpression></h4><p>A <timeExpression> is used to specify a coordinate along
-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-timeBase"><b>6.2.11 ttp:timeBase</b></a>, <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>, and <a href="#parameter-attribute-tickRate"><b>6.2.10 ttp:tickRate</b></a> for further information on
-explicit specification of time base, frame rate, sub-frame rate, and
-tick rate.</p></div><a name="timeExpression-syntax" id="timeExpression-syntax"></a><table class="syntax"><caption>Syntax Representation – <timeExpression></caption><tbody><tr><td>
-<div class="exampleInner"><pre>
-<timeExpression>
- : clock-time
- | offset-time
-
-clock-time
- : hours ":" minutes ":" seconds ( fraction | ":" frames ( "." sub-frames )? )?
-
-offset-time
- : 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>+
-
-minutes | seconds
- : <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>+
-
-sub-frames
- : <a href="#style-value-digit"><digit></a>+
-
-fraction
- : "." <a href="#style-value-digit"><digit></a>+
-
-time-count
- : <a href="#style-value-digit"><digit></a>+
-
-metric
- : "h" // hours
- | "m" // minutes
- | "s" // seconds
- | "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 the range
-[0…59], while seconds are constrained to [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 name="timing-time-intervals" 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 name="animation" 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 name="animation-element-vocabulary" id="animation-element-vocabulary"></a>11.1 Animation Element Vocabulary</h3><p>The following elements specify the structure and principal animation aspects of a
-document instance:</p><ul><li><p><a href="#animation-vocabulary-set"><b>11.1.1 set</b></a></p></li></ul><div class="div3">
-<h4><a name="animation-vocabulary-set" id="animation-vocabulary-set"></a>11.1.1 set</h4><p>The <code>set</code> element is used as a child element of a content
-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 name="elt-syntax-set" id="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="#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>a single 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>*
-</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 name="animation-vocabulary-set-example-1" id="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>
-<span class="strong"><set begin="2s" dur="1s" tts:color="green"/></span>
-<span class="strong"><set begin="3s" dur="1s" tts:color="red"/></span>
-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 name="animation-vocabulary-set-example-2" id="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>
- </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 root container region 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
-root container region, 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="#smil21">[SMIL 2.1]</a>,
-§ 3.6.2.</p></div></div></div><div class="div2">
-<h3><a name="animation-attribute-vocabulary" 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 name="metadata" 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 document instance, 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 name="metadata-element-vocabulary" 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 common metadata that is expected to be commonly
-used in a document instances:
-</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 name="metadata-vocabulary-metadata" 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 by a <code>metadata</code> element
-in one of two (non-mutually exclusive) manners: (1) by specifying one
-or more metadata attributes on the <code>metadata</code>
-element, and (2) by specifying one
-or more child elements
-in the <code>metadata</code> element
-that express metadata. Both types of metadata
-are referred to in this document as <em>metadata items</em>.</p><a name="elt-syntax-metadata" id="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
- <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 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 of where it appears. The core vocabulary catalog permits an
-arbitrary number of <code>metadata</code> element children of any
-content element type except for the
-<code>tt</code> element. 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 name="metadata-vocabulary-metadata-example-1" id="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">
- <ttm:title>Document Metadata Example</ttm:title>
- <ttm:desc>This document employs document metadata.</ttm:desc>
- </metadata>
-</head>
-...
-</pre></div>
-</td></tr></tbody></table><p></p><p>The use of element metadata is illustrated by the following example.</p><a name="metadata-vocabulary-metadata-example-2" id="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">
- <ttm:title>Chapter 6 – Sherlock Holmes Gives a Demonstration</ttm:title>
- <ttm:desc>Holmes shows Watson how the murderer entered the window.</ttm:desc>
- </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 name="metadata-vocabulary-metadata-example-3" 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>
-...
-<div xmlns:ext="http://foo.bar.example.org/ttaf1#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 name="metadata-vocabulary-metadata-example-4" id="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/"
- xmlns:dcterms="http://purl.org/dc/terms/"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
- <dc:title>Foreign Element Metadata Example</dc:title>
- <dc:description>Express metadata using elements in foreign namespace.</dc:description>
- <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 name="metadata-vocabulary-title" 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 name="elt-syntax-metadata-title" id="elt-syntax-metadata-title"></a><table class="syntax"><caption>XML Representation – Element Information Item: ttm:title</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
-<ttm:title
- <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: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 name="metadata-vocabulary-desc" 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 name="elt-syntax-metadata-desc" 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>
-<ttm:desc
- <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: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 name="metadata-vocabulary-copyright" 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 name="elt-syntax-metadata-copyright" 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>
-<ttm:copyright
- <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: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 name="metadata-vocabulary-agent" 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 name="elt-syntax-metadata-agent" 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>
-<ttm:agent
- <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>?
-</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 content element.</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 name="metadata-vocabulary-agent-example-1" id="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>
- <span class="strong"><ttm:agent xml:id="connery" type="person"></span>
- <ttm:name type="family">Connery</ttm:name>
- <ttm:name type="given">Thomas Sean</ttm:name>
- <ttm:name type="alias">Sean</ttm:name>
- <ttm:name type="full">Sir Thomas Sean Connery</ttm:name>
- <span class="strong"></ttm:agent></span>
- <span class="strong"><ttm:agent xml:id="bond" type="character"></span>
- <ttm:name type="family">Bond</ttm:name>
- <ttm:name type="given">James</ttm:name>
- <ttm:name type="alias">007</ttm:name>
- <ttm:actor agent="connery"/>
- <span class="strong"></ttm:agent></span>
- </head>
- <body>
- <div>
- ...
- <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 name="metadata-vocabulary-name" 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 name="elt-syntax-metadata-name" id="elt-syntax-metadata-name"></a><table class="syntax"><caption>XML Representation – Element Information Item: ttm:name</caption><tbody><tr><td>
-<div class="exampleInner"><pre>
-<ttm:name
- <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 name="metadata-vocabulary-actor" 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 name="elt-syntax-metadata-actor" 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>
-<ttm:actor
- <span class="reqattr">agent</span> = IDREF
- <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> 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 <code>ttm:agent</code> element that denotes the person,
-group, or organization 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 name="metadata-attribute-vocabulary" 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 content elements:</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 content elements. See
-the definitions of content elements to determine permissible usage.</p></div><div class="div3">
-<h4><a name="metadata-attribute-agent" 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 content 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
-<code>ttm:agent</code> element instances that appear
-as a descendent of the same document instance as
-that of the referring element.</p><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 name="metadata-attribute-role" 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 content 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 name="metadata-attribute-role-syntax" id="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 )*
-
-role
- : "action"
- | "caption"
- | "description"
- | "dialog"
- | "expletive"
- | "kinesic"
- | "lyrics"
- | "music"
- | "narration"
- | "quality"
- | "sound"
- | "source"
- | "suppressed"
- | "reproduction"
- | "thought"
- | "title"
- | "transcription"
- | extension-role
-
-extension-role
- : "x-" token-char+
-
-token-char
- : { XML NameChar } // XML 1.1 Production [4a]
-</pre></div>
-</td></tr></tbody></table><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></div></div></div><div class="back"><div class="div1">
-<h2><a name="reduced-infoset" 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 Reduced XML Infoset 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 name="reduced-infoset-document" 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 name="reduced-infoset-element" 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 name="reduced-infoset-attribute" 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 name="reduced-infoset-character" 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 name="schemas" id="schemas"></a>B Schemas</h2><p><em>This appendix is normative.</em></p><p>This appendix specifies the following schemas for use with
-DFXP Content document instances:</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 name="dfxp-schema-rnc" id="dfxp-schema-rnc"></a>B.1 Relax NG 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 name="dfxp-schema-xsd" id="dfxp-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 name="media-types-registration" 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.</p></dd><dt class="label">profile</dt><dd><p>The document profile of a TTML document 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]</a>, Section
-3.2.</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]</a>
-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 must
-expect 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/ttaf1-dfxp/">Timed Text Markup Language (TTML) 1.0</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 for television material repurposed for 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/ttaf1-dfxp/">Timed Text Markup Language (TTML) 1.0</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 name="features" 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 name="feature-designations" 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>
-feature-designation
- : feature-namespace designation
-
-feature-namespace
- : <em>TT Feature Namespace</em> // http://www.w3.org/ns/ttml/feature/
-
-designation
- : "#" token-char+
-
-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 name="feature-animation" 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 name="feature-backgroundColor" 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 name="feature-backgroundColor-block" 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 name="feature-backgroundColor-inline" 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 name="feature-backgroundColor-region" 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 name="feature-bidi" 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 name="feature-cellResolution" 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 name="feature-clockMode" 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 name="feature-clockMode-gps" 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 name="feature-clockMode-local" 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 name="feature-clockMode-utc" 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 name="feature-color" 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 name="feature-content" 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 name="feature-core" 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 name="feature-direction" 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 name="feature-display" 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 name="feature-display-block" 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 name="feature-display-inline" 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 name="feature-display-region" 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 name="feature-displayAlign" 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 name="feature-dropMode" 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 name="feature-dropMode-dropNTSC" 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 name="feature-dropMode-dropPAL" 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 name="feature-dropMode-nonDrop" 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 name="feature-extent" 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 name="feature-extent-region" 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 name="feature-extent-root" 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 name="feature-fontFamily" 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 name="feature-fontFamily-generic" 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 name="feature-fontFamily-non-generic" 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 name="feature-fontSize" 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 name="feature-fontSize-anamorphic" 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 name="feature-fontSize-isomorphic" 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 name="feature-fontStyle" 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 name="feature-fontStyle-italic" 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 name="feature-fontStyle-oblique" 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 name="feature-fontWeight" 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 name="feature-fontWeight-bold" 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 name="feature-frameRate" 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 name="feature-frameRateMultiplier" 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 name="feature-layout" 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 name="feature-length" 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 name="feature-length-cell" 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 name="feature-length-em" 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 name="feature-length-integer" 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 name="feature-length-negative" 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 name="feature-length-percentage" 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 name="feature-length-pixel" 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 name="feature-length-positive" 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 name="feature-length-real" 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 name="feature-lineBreak-uax14" 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 name="feature-lineHeight" 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 name="feature-markerMode" 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 name="feature-markerMode-continuous" 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 name="feature-markerMode-discontinuous" 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 name="feature-metadata" 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 name="feature-nested-div" 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 name="feature-nested-span" 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 name="feature-opacity" 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 name="feature-origin" 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 name="feature-overflow" 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 name="feature-overflow-visible" 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 name="feature-padding" 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 name="feature-padding-1" 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 name="feature-padding-2" 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 name="feature-padding-3" 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 name="feature-padding-4" 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 name="feature-pixelAspectRatio" 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 name="feature-presentation" 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 name="feature-profile" 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 name="feature-showBackground" 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 name="feature-structure" 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 name="feature-styling" 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 name="feature-styling-chained" 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 name="feature-styling-inheritance-content" 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 name="feature-styling-inheritance-region" 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 name="feature-styling-inline" 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 name="feature-styling-nested" 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 name="feature-styling-referential" 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 name="feature-subFrameRate" 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 name="feature-textAlign" 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 name="feature-textAlign-absolute" 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 name="feature-textAlign-relative" 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 name="feature-textDecoration" 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 name="feature-textDecoration-over" 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 name="feature-textDecoration-through" 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 name="feature-textDecoration-under" 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 name="feature-textOutline" 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 name="feature-textOutline-blurred" 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 name="feature-textOutline-unblurred" 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 name="feature-tickRate" 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 name="feature-timeBase-clock" 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 name="feature-timeBase-media" 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 name="feature-timeBase-smpte" 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 name="feature-timeContainer" 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 name="feature-time-clock" 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>
-<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 name="feature-time-clock-with-frames" 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>
-<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 name="feature-time-offset" 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>
-<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 name="feature-time-offset-with-frames" 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>
-<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 name="feature-time-offset-with-ticks" 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>
-<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 name="feature-timing" 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 name="feature-transformation" 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 name="feature-unicodeBidi" 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 name="feature-visibility" 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 name="feature-visibility-block" 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 name="feature-visibility-inline" 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 name="feature-visibility-region" 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 name="feature-wrapOption" 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 name="feature-writingMode" 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 name="feature-writingMode-vertical" 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 name="feature-writingMode-horizontal" 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 name="feature-writingMode-horizontal-lr" 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 name="feature-writingMode-horizontal-rl" 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 name="feature-zIndex" 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 name="feature-support" 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 name="feature-support-table" 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 TTML Profile Definition Document 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 name="feature-transformation-mandatory-table" 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 TTML Profile Definition Document 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 name="feature-presentation-mandatory-table" 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 name="extensions" 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 name="extension-designations" 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>
-extension-designation
- : extension-namespace designation
-
-extension-namespace
- : <em>TT Extension Namespace</em> // http://www.w3.org/ns/ttml/extension/
- | <em>Other Extension Namespace</em> // expressed as an absolute URI
-
-designation
- : "#" token-char+
-
-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 name="profiles" 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>Each TTML profile is defined in terms of a TTML Profile Definition Document,
-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 name="profile-dfxp-transformation" 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"?>
-<!-- this file defines the "dfxp-transformation" profile of ttaf1 -->
-<profile xmlns="http://www.w3.org/ns/ttml#parameter">
- <features xml:base="http://www.w3.org/ns/ttml/feature/">
- <!-- required (mandatory) feature support -->
- <feature value="required">#content</feature>
- <feature value="required">#core</feature>
- <feature value="required">#profile</feature>
- <feature value="required">#structure</feature>
- <feature value="required">#time-offset</feature>
- <feature value="required">#timing</feature>
- <feature value="required">#transformation</feature>
- <!-- optional (voluntary) feature support -->
- <feature value="optional">#animation</feature>
- <feature value="optional">#backgroundColor-block</feature>
- <feature value="optional">#backgroundColor-inline</feature>
- <feature value="optional">#backgroundColor-region</feature>
- <feature value="optional">#backgroundColor</feature>
- <feature value="optional">#bidi</feature>
- <feature value="optional">#cellResolution</feature>
- <feature value="optional">#clockMode-gps</feature>
- <feature value="optional">#clockMode-local</feature>
- <feature value="optional">#clockMode-utc</feature>
- <feature value="optional">#clockMode</feature>
- <feature value="optional">#color</feature>
- <feature value="optional">#direction</feature>
- <feature value="optional">#display-block</feature>
- <feature value="optional">#display-inline</feature>
- <feature value="optional">#display-region</feature>
- <feature value="optional">#display</feature>
- <feature value="optional">#displayAlign</feature>
- <feature value="optional">#dropMode-dropNTSC</feature>
- <feature value="optional">#dropMode-dropPAL</feature>
- <feature value="optional">#dropMode-nonDrop</feature>
- <feature value="optional">#dropMode</feature>
- <feature value="optional">#extent-region</feature>
- <feature value="optional">#extent-root</feature>
- <feature value="optional">#extent</feature>
- <feature value="optional">#fontFamily-generic</feature>
- <feature value="optional">#fontFamily-non-generic</feature>
- <feature value="optional">#fontFamily</feature>
- <feature value="optional">#fontSize-anamorphic</feature>
- <feature value="optional">#fontSize-isomorphic</feature>
- <feature value="optional">#fontSize</feature>
- <feature value="optional">#fontStyle-italic</feature>
- <feature value="optional">#fontStyle-oblique</feature>
- <feature value="optional">#fontStyle</feature>
- <feature value="optional">#fontWeight-bold</feature>
- <feature value="optional">#fontWeight</feature>
- <feature value="optional">#frameRate</feature>
- <feature value="optional">#frameRateMultiplier</feature>
- <feature value="optional">#layout</feature>
- <feature value="optional">#length-cell</feature>
- <feature value="optional">#length-em</feature>
- <feature value="optional">#length-integer</feature>
- <feature value="optional">#length-negative</feature>
- <feature value="optional">#length-percentage</feature>
- <feature value="optional">#length-pixel</feature>
- <feature value="optional">#length-positive</feature>
- <feature value="optional">#length-real</feature>
- <feature value="optional">#length</feature>
- <feature value="optional">#lineBreak-uax14</feature>
- <feature value="optional">#lineHeight</feature>
- <feature value="optional">#markerMode-continuous</feature>
- <feature value="optional">#markerMode-discontinuous</feature>
- <feature value="optional">#markerMode</feature>
- <feature value="optional">#metadata</feature>
- <feature value="optional">#nested-div</feature>
- <feature value="optional">#nested-span</feature>
- <feature value="optional">#opacity</feature>
- <feature value="optional">#origin</feature>
- <feature value="optional">#overflow-visible</feature>
- <feature value="optional">#overflow</feature>
- <feature value="optional">#padding-1</feature>
- <feature value="optional">#padding-2</feature>
- <feature value="optional">#padding-3</feature>
- <feature value="optional">#padding-4</feature>
- <feature value="optional">#padding</feature>
- <feature value="optional">#pixelAspectRatio</feature>
- <feature value="optional">#presentation</feature>
- <feature value="optional">#showBackground</feature>
- <feature value="optional">#styling-chained</feature>
- <feature value="optional">#styling-inheritance-content</feature>
- <feature value="optional">#styling-inheritance-region</feature>
- <feature value="optional">#styling-inline</feature>
- <feature value="optional">#styling-nested</feature>
- <feature value="optional">#styling-referential</feature>
- <feature value="optional">#styling</feature>
- <feature value="optional">#subFrameRate</feature>
- <feature value="optional">#textAlign-absolute</feature>
- <feature value="optional">#textAlign-relative</feature>
- <feature value="optional">#textAlign</feature>
- <feature value="optional">#textDecoration-over</feature>
- <feature value="optional">#textDecoration-through</feature>
- <feature value="optional">#textDecoration-under</feature>
- <feature value="optional">#textDecoration</feature>
- <feature value="optional">#textOutline-blurred</feature>
- <feature value="optional">#textOutline-unblurred</feature>
- <feature value="optional">#textOutline</feature>
- <feature value="optional">#tickRate</feature>
- <feature value="optional">#time-clock-with-frames</feature>
- <feature value="optional">#time-clock</feature>
- <feature value="optional">#time-offset-with-frames</feature>
- <feature value="optional">#time-offset-with-ticks</feature>
- <feature value="optional">#timeBase-clock</feature>
- <feature value="optional">#timeBase-media</feature>
- <feature value="optional">#timeBase-smpte</feature>
- <feature value="optional">#timeContainer</feature>
- <feature value="optional">#unicodeBidi</feature>
- <feature value="optional">#visibility-block</feature>
- <feature value="optional">#visibility-inline</feature>
- <feature value="optional">#visibility-region</feature>
- <feature value="optional">#visibility</feature>
- <feature value="optional">#wrapOption</feature>
- <feature value="optional">#writingMode-horizontal-lr</feature>
- <feature value="optional">#writingMode-horizontal-rl</feature>
- <feature value="optional">#writingMode-horizontal</feature>
- <feature value="optional">#writingMode-vertical</feature>
- <feature value="optional">#writingMode</feature>
- <feature value="optional">#zIndex</feature>
- </features>
- <extensions xml:base="http://www.w3.org/ns/ttml/extension/">
- <!-- required (mandatory) extension support -->
- <!-- optional (voluntary) extension support -->
- </extensions>
-</profile>
-
-</pre></div></div><div class="div2">
-<h3><a name="profile-dfxp-presentation" 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"?>
-<!-- this file defines the "dfxp-presentation" profile of ttaf1-dfxp -->
-<profile xmlns="http://www.w3.org/ns/ttml#parameter">
- <features xml:base="http://www.w3.org/ns/ttml/feature/">
- <!-- required (mandatory) feature support -->
- <feature value="required">#content</feature>
- <feature value="required">#core</feature>
- <feature value="required">#presentation</feature>
- <feature value="required">#profile</feature>
- <feature value="required">#structure</feature>
- <feature value="required">#time-offset</feature>
- <feature value="required">#timing</feature>
- <!-- optional (voluntary) feature support -->
- <feature value="optional">#animation</feature>
- <feature value="optional">#backgroundColor-block</feature>
- <feature value="optional">#backgroundColor-inline</feature>
- <feature value="optional">#backgroundColor-region</feature>
- <feature value="optional">#backgroundColor</feature>
- <feature value="optional">#bidi</feature>
- <feature value="optional">#cellResolution</feature>
- <feature value="optional">#clockMode-gps</feature>
- <feature value="optional">#clockMode-local</feature>
- <feature value="optional">#clockMode-utc</feature>
- <feature value="optional">#clockMode</feature>
- <feature value="optional">#color</feature>
- <feature value="optional">#direction</feature>
- <feature value="optional">#display-block</feature>
- <feature value="optional">#display-inline</feature>
- <feature value="optional">#display-region</feature>
- <feature value="optional">#display</feature>
- <feature value="optional">#displayAlign</feature>
- <feature value="optional">#dropMode-dropNTSC</feature>
- <feature value="optional">#dropMode-dropPAL</feature>
- <feature value="optional">#dropMode-nonDrop</feature>
- <feature value="optional">#dropMode</feature>
- <feature value="optional">#extent-region</feature>
- <feature value="optional">#extent-root</feature>
- <feature value="optional">#extent</feature>
- <feature value="optional">#fontFamily-generic</feature>
- <feature value="optional">#fontFamily-non-generic</feature>
- <feature value="optional">#fontFamily</feature>
- <feature value="optional">#fontSize-anamorphic</feature>
- <feature value="optional">#fontSize-isomorphic</feature>
- <feature value="optional">#fontSize</feature>
- <feature value="optional">#fontStyle-italic</feature>
- <feature value="optional">#fontStyle-oblique</feature>
- <feature value="optional">#fontStyle</feature>
- <feature value="optional">#fontWeight-bold</feature>
- <feature value="optional">#fontWeight</feature>
- <feature value="optional">#frameRate</feature>
- <feature value="optional">#frameRateMultiplier</feature>
- <feature value="optional">#layout</feature>
- <feature value="optional">#length-cell</feature>
- <feature value="optional">#length-em</feature>
- <feature value="optional">#length-integer</feature>
- <feature value="optional">#length-negative</feature>
- <feature value="optional">#length-percentage</feature>
- <feature value="optional">#length-pixel</feature>
- <feature value="optional">#length-positive</feature>
- <feature value="optional">#length-real</feature>
- <feature value="optional">#length</feature>
- <feature value="optional">#lineBreak-uax14</feature>
- <feature value="optional">#lineHeight</feature>
- <feature value="optional">#markerMode-continuous</feature>
- <feature value="optional">#markerMode-discontinuous</feature>
- <feature value="optional">#markerMode</feature>
- <feature value="optional">#metadata</feature>
- <feature value="optional">#nested-div</feature>
- <feature value="optional">#nested-span</feature>
- <feature value="optional">#opacity</feature>
- <feature value="optional">#origin</feature>
- <feature value="optional">#overflow-visible</feature>
- <feature value="optional">#overflow</feature>
- <feature value="optional">#padding-1</feature>
- <feature value="optional">#padding-2</feature>
- <feature value="optional">#padding-3</feature>
- <feature value="optional">#padding-4</feature>
- <feature value="optional">#padding</feature>
- <feature value="optional">#pixelAspectRatio</feature>
- <feature value="optional">#showBackground</feature>
- <feature value="optional">#styling-chained</feature>
- <feature value="optional">#styling-inheritance-content</feature>
- <feature value="optional">#styling-inheritance-region</feature>
- <feature value="optional">#styling-inline</feature>
- <feature value="optional">#styling-nested</feature>
- <feature value="optional">#styling-referential</feature>
- <feature value="optional">#styling</feature>
- <feature value="optional">#subFrameRate</feature>
- <feature value="optional">#textAlign-absolute</feature>
- <feature value="optional">#textAlign-relative</feature>
- <feature value="optional">#textAlign</feature>
- <feature value="optional">#textDecoration-over</feature>
- <feature value="optional">#textDecoration-through</feature>
- <feature value="optional">#textDecoration-under</feature>
- <feature value="optional">#textDecoration</feature>
- <feature value="optional">#textOutline-blurred</feature>
- <feature value="optional">#textOutline-unblurred</feature>
- <feature value="optional">#textOutline</feature>
- <feature value="optional">#tickRate</feature>
- <feature value="optional">#time-clock-with-frames</feature>
- <feature value="optional">#time-clock</feature>
- <feature value="optional">#time-offset-with-frames</feature>
- <feature value="optional">#time-offset-with-ticks</feature>
- <feature value="optional">#timeBase-clock</feature>
- <feature value="optional">#timeBase-media</feature>
- <feature value="optional">#timeBase-smpte</feature>
- <feature value="optional">#timeContainer</feature>
- <feature value="optional">#transformation</feature>
- <feature value="optional">#unicodeBidi</feature>
- <feature value="optional">#visibility-block</feature>
- <feature value="optional">#visibility-inline</feature>
- <feature value="optional">#visibility-region</feature>
- <feature value="optional">#visibility</feature>
- <feature value="optional">#wrapOption</feature>
- <feature value="optional">#writingMode-horizontal-lr</feature>
- <feature value="optional">#writingMode-horizontal-rl</feature>
- <feature value="optional">#writingMode-horizontal</feature>
- <feature value="optional">#writingMode-vertical</feature>
- <feature value="optional">#writingMode</feature>
- <feature value="optional">#zIndex</feature>
- </features>
- <extensions xml:base="http://www.w3.org/ns/ttml/extension/">
- <!-- required (mandatory) extension support -->
- <!-- optional (voluntary) extension support -->
- </extensions>
-</profile>
-
-</pre></div></div><div class="div2">
-<h3><a name="profile-dfxp-full" 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"?>
-<!-- this file defines the "dfxp-full" profile of ttaf1-dfxp -->
-<profile xmlns="http://www.w3.org/ns/ttml#parameter">
- <features xml:base="http://www.w3.org/ns/ttml/feature/">
- <!-- required (mandatory) feature support -->
- <feature value="required">#animation</feature>
- <feature value="required">#backgroundColor-block</feature>
- <feature value="required">#backgroundColor-inline</feature>
- <feature value="required">#backgroundColor-region</feature>
- <feature value="required">#backgroundColor</feature>
- <feature value="required">#bidi</feature>
- <feature value="required">#cellResolution</feature>
- <feature value="required">#clockMode-gps</feature>
- <feature value="required">#clockMode-local</feature>
- <feature value="required">#clockMode-utc</feature>
- <feature value="required">#clockMode</feature>
- <feature value="required">#color</feature>
- <feature value="required">#content</feature>
- <feature value="required">#core</feature>
- <feature value="required">#direction</feature>
- <feature value="required">#display-block</feature>
- <feature value="required">#display-inline</feature>
- <feature value="required">#display-region</feature>
- <feature value="required">#display</feature>
- <feature value="required">#displayAlign</feature>
- <feature value="required">#dropMode-dropNTSC</feature>
- <feature value="required">#dropMode-dropPAL</feature>
- <feature value="required">#dropMode-nonDrop</feature>
- <feature value="required">#dropMode</feature>
- <feature value="required">#extent-region</feature>
- <feature value="required">#extent-root</feature>
- <feature value="required">#extent</feature>
- <feature value="required">#fontFamily-generic</feature>
- <feature value="required">#fontFamily-non-generic</feature>
- <feature value="required">#fontFamily</feature>
- <feature value="required">#fontSize-anamorphic</feature>
- <feature value="required">#fontSize-isomorphic</feature>
- <feature value="required">#fontSize</feature>
- <feature value="required">#fontStyle-italic</feature>
- <feature value="required">#fontStyle-oblique</feature>
- <feature value="required">#fontStyle</feature>
- <feature value="required">#fontWeight-bold</feature>
- <feature value="required">#fontWeight</feature>
- <feature value="required">#frameRate</feature>
- <feature value="required">#frameRateMultiplier</feature>
- <feature value="required">#layout</feature>
- <feature value="required">#length-cell</feature>
- <feature value="required">#length-em</feature>
- <feature value="required">#length-integer</feature>
- <feature value="required">#length-negative</feature>
- <feature value="required">#length-percentage</feature>
- <feature value="required">#length-pixel</feature>
- <feature value="required">#length-positive</feature>
- <feature value="required">#length-real</feature>
- <feature value="required">#length</feature>
- <feature value="required">#lineBreak-uax14</feature>
- <feature value="required">#lineHeight</feature>
- <feature value="required">#markerMode-continuous</feature>
- <feature value="required">#markerMode-discontinuous</feature>
- <feature value="required">#markerMode</feature>
- <feature value="required">#metadata</feature>
- <feature value="required">#nested-div</feature>
- <feature value="required">#nested-span</feature>
- <feature value="required">#opacity</feature>
- <feature value="required">#origin</feature>
- <feature value="required">#overflow-visible</feature>
- <feature value="required">#overflow</feature>
- <feature value="required">#padding-1</feature>
- <feature value="required">#padding-2</feature>
- <feature value="required">#padding-3</feature>
- <feature value="required">#padding-4</feature>
- <feature value="required">#padding</feature>
- <feature value="required">#pixelAspectRatio</feature>
- <feature value="required">#presentation</feature>
- <feature value="required">#profile</feature>
- <feature value="required">#showBackground</feature>
- <feature value="required">#structure</feature>
- <feature value="required">#styling-chained</feature>
- <feature value="required">#styling-inheritance-content</feature>
- <feature value="required">#styling-inheritance-region</feature>
- <feature value="required">#styling-inline</feature>
- <feature value="required">#styling-nested</feature>
- <feature value="required">#styling-referential</feature>
- <feature value="required">#styling</feature>
- <feature value="required">#subFrameRate</feature>
- <feature value="required">#textAlign-absolute</feature>
- <feature value="required">#textAlign-relative</feature>
- <feature value="required">#textAlign</feature>
- <feature value="required">#textDecoration-over</feature>
- <feature value="required">#textDecoration-through</feature>
- <feature value="required">#textDecoration-under</feature>
- <feature value="required">#textDecoration</feature>
- <feature value="required">#textOutline-blurred</feature>
- <feature value="required">#textOutline-unblurred</feature>
- <feature value="required">#textOutline</feature>
- <feature value="required">#tickRate</feature>
- <feature value="required">#time-clock-with-frames</feature>
- <feature value="required">#time-clock</feature>
- <feature value="required">#time-offset-with-frames</feature>
- <feature value="required">#time-offset-with-ticks</feature>
- <feature value="required">#time-offset</feature>
- <feature value="required">#timeBase-clock</feature>
- <feature value="required">#timeBase-media</feature>
- <feature value="required">#timeBase-smpte</feature>
- <feature value="required">#timeContainer</feature>
- <feature value="required">#timing</feature>
- <feature value="required">#transformation</feature>
- <feature value="required">#unicodeBidi</feature>
- <feature value="required">#visibility-block</feature>
- <feature value="required">#visibility-inline</feature>
- <feature value="required">#visibility-region</feature>
- <feature value="required">#visibility</feature>
- <feature value="required">#wrapOption</feature>
- <feature value="required">#writingMode-horizontal-lr</feature>
- <feature value="required">#writingMode-horizontal-rl</feature>
- <feature value="required">#writingMode-horizontal</feature>
- <feature value="required">#writingMode-vertical</feature>
- <feature value="required">#writingMode</feature>
- <feature value="required">#zIndex</feature>
- <!-- optional (voluntary) feature support -->
- </features>
- <extensions xml:base="http://www.w3.org/ns/ttml/extension/">
- <!-- required (mandatory) extension support -->
- <!-- optional (voluntary) extension support -->
- </extensions>
-</profile>
-
-</pre></div></div></div><div class="div1">
-<h2><a name="references" id="references"></a>G References</h2><p><em>This appendix is normative.</em></p><dl><dt class="label"><a name="css2" id="css2"></a>CSS2</dt><dd>Bert Bos et al.,
-<a href="http://www.w3.org/TR/1998/REC-CSS2-19980512/"><cite>Cascading
-Style Sheets, Level 2</cite></a>, W3C Recommendation, 12
-May 1998. (See
-<a href="http://www.w3.org/TR/1998/REC-CSS2-19980512/">http://www.w3.org/TR/1998/REC-CSS2-19980512/</a>.)
-</dd><dt class="label"><a name="gps" 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 name="media-types" 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 name="rng" 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 name="smil21" 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 name="smpte12m" 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 name="srgb" 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 name="uaag" 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 name="utc" 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 name="uax14" 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 name="wcag" 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 name="xml10" 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 name="xml11" 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 name="xmlbase" 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 name="xmlid" 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 name="xml-media" id="xml-media"></a>XML Media</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 name="infoset" 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 name="rfc3023" id="rfc3023"></a>XML Media Types</dt><dd>Makato Murata, et al.,
-<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 name="xmlns10" 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 name="xsd-1" 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 name="xsd-2" 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 name="xsl11" 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 name="other-references" id="other-references"></a>H Other References (Non-Normative)</h2><dl><dt class="label"><a name="ccreq" id="ccreq"></a>CC-DECODER-REQ</dt><dd><a href="http://www.gpo.gov/fdsys/pkg/CFR-2005-title47-vol1/xml/CFR-2005-title47-vol1-sec15-119.xml"><cite>Closed Caption Decoder
-Requirements for Analog Television</cite></a>,
-United States Code of Federal Regulations, Title 47, Volume 1, Part 15, § 15.119. (See
-<a href="http://www.gpo.gov/fdsys/pkg/CFR-2005-title47-vol1/xml/CFR-2005-title47-vol1-sec15-119.xml">http://www.gpo.gov/fdsys/pkg/CFR-2005-title47-vol1/xml/CFR-2005-title47-vol1-sec15-119.xml</a>.)
-</dd><dt class="label"><a name="cea608c" id="cea608c"></a>CEA-608-C</dt><dd>
-EIA/CEA-608-C,
-<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 name="cea708d" id="cea708d"></a>CEA-708-D</dt><dd>
-CEA-708-D,
-<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 name="css3-color" id="css3-color"></a>CSS3 Color</dt><dd>Tantek Çelik and Chris Lilley,
-<a href="http://www.w3.org/TR/2003/CR-css3-color-20030514/"><cite>CSS3 Color
-Module</cite></a>, W3C Candidate Recommendation, 14 May 2003. (See
-<a href="http://www.w3.org/TR/2003/CR-css3-color-20030514/">http://www.w3.org/TR/2003/CR-css3-color-20030514/</a>.)
-</dd><dt class="label"><a name="dcmes" 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 name="mpeg7-5" 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 name="nsstate" 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 name="qaf-sg" 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 name="smpte170m" id="smpte170m"></a>SMPTE 170M</dt><dd>ANSI/SMPTE 170M,
-<a href="http://www.smpte.org/"><cite>Television – Composite Analog Video
-Signal – NTSC for Studio Applications</cite></a>, SMPTE Standard.
-</dd><dt class="label"><a name="smpte2052" id="smpte2052"></a>SMPTE 2052-11</dt><dd>SMPTE 2052-11,
-<a href="http://www.smpte.org/"><cite>Conversion from CEA-708 Caption Data to SMPTE-TT</cite></a>,
-SMPTE Recommended Practice.
-</dd><dt class="label"><a name="svg11" 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 name="ttaf1-req" 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 name="xhtml10" 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 name="requirements" id="requirements"></a>I Requirements (Non-Normative)</h2><p>The Distribution Format Exchange Profile (DFXP) of the Timed Text Authoring
-Format (TTML) 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 name="requirements-table" 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 name="derivation" 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 name="d3e17632" id="d3e17632"></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 name="element-vocab-derivation-table" 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 content
-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 name="d3e18111" id="d3e18111"></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 name="attribute-vocab-derivation-table" 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 document instance</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-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>8</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>9</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,10,13</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>11,13</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>12</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 name="qa" 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 name="d3e18979" id="d3e18979"></a>K.1 Requirements</h3><a name="qa-framework-requirements-table" 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 name="d3e19143" id="d3e19143"></a>K.2 Guidelines</h3><a name="qa-framework-guidelines-table" 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
-<a href="#doctypes">TTML 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 name="streaming" 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 TTML document instance'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
-document instance 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 TTML document instance is
-shown in <a href="#fragment-streaming-graphic"><b>Figure 3 – Fragment Streaming</b></a>.</p><a name="fragment-streaming-graphic" 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 name="concrete-encoding" id="concrete-encoding"></a>M Concrete Encoding (Non-Normative)</h2><p>In the absence of other requirements, it is recommended that a TTML document 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><div class="div1">
-<h2><a name="time-expression-semantics" id="time-expression-semantics"></a>N Time Expression Semantics (Non-Normative)</h2><p>This appendix describes the intended semantics for interpreting time expressions in TTML documents.</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 speeding up or slowing down 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 name="time-expression-semantics-clock" 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 name="clock-time-and-real-time" 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>
-<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 name="time-expressions-and-clock-time" 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>
-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 name="clock-time-and-media-time" 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>
-<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 name="time-expression-semantics-media" 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 name="media-time-and-real-time" 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>
-<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 name="time-expressions-and-media-time" 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>
-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 = containerBegin + 3600 * hours + 60 * minutes + seconds + ((frames + (subFrames / subFrameRate)) / effectiveFrameRate)
-</code>
-<br><br>
-where <code>containerBegin</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>;
-<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 = containerBegin + ticks / tickRate
-</code>
-<br><br>
-where <code>containerBegin</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 name="time-expression-semantics-smpte" 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 name="time-expressions-and-smpte-time" 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>
-<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 name="smpte-time-and-media-time" 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>
-<code>M = containerBegin + S</code>
-<br><br>
-where <code>containerBegin</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>;
-<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 name="common-styling" 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 name="pop-on-example" 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 name="pop-on-example-1-s" 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"
- xmlns:tts="http://www.w3.org/ns/ttml#parameter" xmlns:tts="http://www.w3.org/ns/ttml#styling">
- <head>
- <layout>
- <region xml:id="r1" tts:color="white" tts:origin="10c 4c" tts:extent="40c 1c"/>
- <region xml:id="r2" tts:color="yellow" tts:origin="10c 8c" tts:extent="40c 1c"/>
- </layout>
- </head>
- <body>
- <div timeContainer="seq">
- <p region="r1" dur="4s">Lorem ipsum dolor sit</p
- <p region="r2" dur="4s">Amet consectetur adipiscing elit</p>
- <p region="r1" dur="6s">Sed do eiusmod tempor incididunt labore</p>
- <p region="r2" dur="4s">et dolore magna aliqua</p>
- <p region="r1" dur="7s">Ut enim ad minim veniam quis, nostrud</p>
- </div>
- </body>
-</tt>
-</pre></div>
-</td></tr></tbody></table></div><div class="div2">
-<h3><a name="roll-up-example" 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 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 name="roll-up-example-1-s" 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"
- xmlns:tts="http://www.w3.org/ns/ttml#parameter" xmlns:tts="http://www.w3.org/ns/ttml#styling">
- <head>
- <layout>
- <region xml:id="r1" tts:color="white" tts:origin="10c 4c" tts:extent="40c 2c"/>
- </layout>
- </head>
- <body>
- <div region="r1">
- <p begin="0s" end="8s">Lorem ipsum dolor sit</p
- <p begin="4s" end="12s">Amet consectetur adipiscing elit</p>
- <p begin="8s" end="18s">Sed do eiusmod tempor incididunt labore</p>
- <p begin="14s" end="25s">et dolore magna aliqua</p>
- <p begin="18s" end="29s">Ut enim ad minim veniam quis, nostrud</p>
- </div>
- </body>
-</tt>
-</pre></div>
-</td></tr></tbody></table></div><div class="div2">
-<h3><a name="paint-on-example" 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 name="paint-on-example-1-s" 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"
- xmlns:tts="http://www.w3.org/ns/ttml#parameter" xmlns:tts="http://www.w3.org/ns/ttml#styling">
- <head>
- <layout>
- <region xml:id="r1" tts:color="white" tts:origin="10c 4c" tts:extent="40c 5c"/>
- </layout>
- </head>
- <body>
- <div begin="0s" end="25s">
- <p>
- <span begin="0s">Lorem</span>
- <span begin="1s">ipsum</span>
- <span begin="2s">dolor</span>
- <span begin="3s">sit</span>
- </p>
- <p>
- <span begin="4s">Amet</span>
- <span begin="5s">consectetur</span>
- <span begin="6s">adipiscing</span>
- <span begin="7s">elit</span>
- </p>
- <p>
- <span begin="8s">Sed</span>
- <span begin="9s">do</span>
- <span begin="10s">eiusmod</span>
- <span begin="11s">tempor</span>
- <span begin="12s">incididunt </span>
- <span begin="13s">labore</span>
- </p>
- <p>
- <span begin="14s">et</span>
- <span begin="15s">dolore</span>
- <span begin="16s">magna</span>
- <span begin="17s">aliqua</span>
- </p>
- <p>
- <span begin="18s">Ut</span>
- <span begin="19s">enim</span>
- <span begin="20s">ad</span>
- <span begin="21s">minim</span>
- <span begin="22s">veniam</span>
- <span begin="23s">quis,</span>
- <span begin="24s">nostrud</span>
- </p>
- </div>
- </body>
-</tt>
-</pre></div>
-</td></tr></tbody></table></div></div><div class="div1">
-<h2><a name="acknowledgments" 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,
-Chris Lilley,
-Pierre-Anthony Lemieux,
-Jason Livingston,
-Monica Martin,
-Thierry Michel,
-Matthew May,
-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