[ttml10se] create PER for WG review; regenerate ED
authorGlenn Adams <glenn@skynav.com>
Thu, 09 May 2013 22:50:02 -0600
changeset 379 da5da0788385
parent 378 c17ab6f3d651
child 380 538e396614e9
[ttml10se] create PER for WG review; regenerate ED
ttml10/spec/entities.dtd
ttml10/spec/review/PER-ttaf1-dfxp-20130515-for-WG-review.html
ttml10/spec/ttaf1-dfxp.html
--- a/ttml10/spec/entities.dtd	Thu May 09 22:44:14 2013 -0600
+++ b/ttml10/spec/entities.dtd	Thu May 09 22:50:02 2013 -0600
@@ -1,9 +1,9 @@
 
 <!-- comment / uncomment the appropriate entity -->
-<!-- <!ENTITY % sub.entities SYSTEM "entitiesedcopy.dtd" > -->
+<!ENTITY % sub.entities SYSTEM "entitiesedcopy.dtd" >
 <!-- <!ENTITY % sub.entities SYSTEM "entitieswd.dtd" > -->
 <!-- <!ENTITY % sub.entities SYSTEM "entitiescr.dtd" > -->
-<!ENTITY % sub.entities SYSTEM "entitiesper.dtd" >
+<!-- <!ENTITY % sub.entities SYSTEM "entitiesper.dtd" > -->
 %sub.entities;
 
 <!-- Titles -->
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ttml10/spec/review/PER-ttaf1-dfxp-20130515-for-WG-review.html	Thu May 09 22:50:02 2013 -0600
@@ -0,0 +1,6890 @@
+<!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>&nbsp;©&nbsp;2013&nbsp;<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>&lt;text&gt;</code> or 
+<code>&lt;textstream&gt;</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>
+&nbsp;&nbsp;&nbsp;&nbsp;1.1 <a href="#model">System Model</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;1.2 <a href="#example">Document Example</a><br>
+2 <a href="#definitions">Definitions</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;2.1 <a href="#acronyms">Acronyms</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;2.2 <a href="#terms">Terminology</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;2.3 <a href="#conventions">Documentation Conventions</a><br>
+3 <a href="#conformance">Conformance</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;3.1 <a href="#conformance-content">Content Conformance</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;3.2 <a href="#conformance-processor">Processor Conformance</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;3.2.1 <a href="#conformance-generic-processor">Generic Processor Conformance</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;3.2.2 <a href="#conformance-transformation-processor">Transformation Processor Conformance</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;3.2.3 <a href="#conformance-presentation-processor">Presentation Processor Conformance</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;3.3 <a href="#claims">Claims</a><br>
+4 <a href="#doctypes">Document Types</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;4.1 <a href="#dfxp-content-doctype">DFXP Content</a><br>
+5 <a href="#vocabulary">Vocabulary</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;5.1 <a href="#vocabulary-namespaces">Namespaces</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;5.2 <a href="#vocabulary-profiles">Profiles</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;5.3 <a href="#vocabulary-overview">Catalog</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;5.3.1 <a href="#core-vocabulary-overview">Core Catalog</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;5.3.2 <a href="#extension-vocabulary-overview">Extension Catalog</a><br>
+6 <a href="#parameters">Parameters</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;6.1 <a href="#parameter-element-vocabulary">Parameter Element Vocabulary</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;6.1.1 <a href="#parameter-vocabulary-profile">ttp:profile</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;6.1.2 <a href="#parameter-vocabulary-features">ttp:features</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;6.1.3 <a href="#parameter-vocabulary-feature">ttp:feature</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;6.1.4 <a href="#parameter-vocabulary-extensions">ttp:extensions</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;6.1.5 <a href="#parameter-vocabulary-extension">ttp:extension</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;6.2 <a href="#parameter-attribute-vocabulary">Parameter Attribute Vocabulary</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;6.2.1 <a href="#parameter-attribute-cellResolution">ttp:cellResolution</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;6.2.2 <a href="#parameter-attribute-clockMode">ttp:clockMode</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;6.2.3 <a href="#parameter-attribute-dropMode">ttp:dropMode</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;6.2.4 <a href="#parameter-attribute-frameRate">ttp:frameRate</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;6.2.5 <a href="#parameter-attribute-frameRateMultiplier">ttp:frameRateMultiplier</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;6.2.6 <a href="#parameter-attribute-markerMode">ttp:markerMode</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;6.2.7 <a href="#parameter-attribute-pixelAspectRatio">ttp:pixelAspectRatio</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;6.2.8 <a href="#parameter-attribute-profile">ttp:profile</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;6.2.9 <a href="#parameter-attribute-subFrameRate">ttp:subFrameRate</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;6.2.10 <a href="#parameter-attribute-tickRate">ttp:tickRate</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;6.2.11 <a href="#parameter-attribute-timeBase">ttp:timeBase</a><br>
+7 <a href="#content">Content</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;7.1 <a href="#content-element-vocabulary">Content Element Vocabulary</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;7.1.1 <a href="#document-structure-vocabulary-tt">tt</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;7.1.2 <a href="#document-structure-vocabulary-head">head</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;7.1.3 <a href="#document-structure-vocabulary-body">body</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;7.1.4 <a href="#content-vocabulary-div">div</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;7.1.5 <a href="#content-vocabulary-p">p</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;7.1.6 <a href="#content-vocabulary-span">span</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;7.1.7 <a href="#content-vocabulary-br">br</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;7.2 <a href="#content-attribute-vocabulary">Content Attribute Vocabulary</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;7.2.1 <a href="#content-attribute-id">xml:id</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;7.2.2 <a href="#content-attribute-lang">xml:lang</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;7.2.3 <a href="#content-attribute-space">xml:space</a><br>
+8 <a href="#styling">Styling</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;8.1 <a href="#styling-element-vocabulary">Styling Element Vocabulary</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.1.1 <a href="#styling-vocabulary-styling">styling</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.1.2 <a href="#styling-vocabulary-style">style</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;8.2 <a href="#styling-attribute-vocabulary">Styling Attribute Vocabulary</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.2.1 <a href="#style-attribute-style">style</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.2.2 <a href="#style-attribute-backgroundColor">tts:backgroundColor</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.2.3 <a href="#style-attribute-color">tts:color</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.2.4 <a href="#style-attribute-direction">tts:direction</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.2.5 <a href="#style-attribute-display">tts:display</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.2.6 <a href="#style-attribute-displayAlign">tts:displayAlign</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.2.7 <a href="#style-attribute-extent">tts:extent</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.2.8 <a href="#style-attribute-fontFamily">tts:fontFamily</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.2.9 <a href="#style-attribute-fontSize">tts:fontSize</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.2.10 <a href="#style-attribute-fontStyle">tts:fontStyle</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.2.11 <a href="#style-attribute-fontWeight">tts:fontWeight</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.2.12 <a href="#style-attribute-lineHeight">tts:lineHeight</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.2.13 <a href="#style-attribute-opacity">tts:opacity</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.2.14 <a href="#style-attribute-origin">tts:origin</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.2.15 <a href="#style-attribute-overflow">tts:overflow</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.2.16 <a href="#style-attribute-padding">tts:padding</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.2.17 <a href="#style-attribute-showBackground">tts:showBackground</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.2.18 <a href="#style-attribute-textAlign">tts:textAlign</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.2.19 <a href="#style-attribute-textDecoration">tts:textDecoration</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.2.20 <a href="#style-attribute-textOutline">tts:textOutline</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.2.21 <a href="#style-attribute-unicodeBidi">tts:unicodeBidi</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.2.22 <a href="#style-attribute-visibility">tts:visibility</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.2.23 <a href="#style-attribute-wrapOption">tts:wrapOption</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.2.24 <a href="#style-attribute-writingMode">tts:writingMode</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.2.25 <a href="#style-attribute-zIndex">tts:zIndex</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;8.3 <a href="#styling-style-value-expressions">Style Value Expressions</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.3.1 <a href="#style-value-alpha">&lt;alpha&gt;</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.3.2 <a href="#style-value-color">&lt;color&gt;</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.3.3 <a href="#style-value-digit">&lt;digit&gt;</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.3.4 <a href="#style-value-duration">&lt;duration&gt;</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.3.5 <a href="#style-value-familyName">&lt;familyName&gt;</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.3.6 <a href="#style-value-genericFamilyName">&lt;genericFamilyName&gt;</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.3.7 <a href="#style-value-hexDigit">&lt;hexDigit&gt;</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.3.8 <a href="#style-value-integer">&lt;integer&gt;</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.3.9 <a href="#style-value-length">&lt;length&gt;</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.3.10 <a href="#style-value-namedColor">&lt;namedColor&gt;</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.3.11 <a href="#style-value-quotedString">&lt;quotedString&gt;</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.3.12 <a href="#style-value-string">&lt;string&gt;</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;8.4 <a href="#semantics-style-resolution">Style Resolution</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.4.1 <a href="#semantics-style-association">Style Association</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.4.1.1 <a href="#semantics-style-association-inline">Inline Styling</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.4.1.2 <a href="#semantics-style-association-referential">Referential Styling</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.4.1.3 <a href="#semantics-style-association-chained-referential">Chained Referential Styling</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.4.1.4 <a href="#semantics-style-association-nested">Nested Styling</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.4.2 <a href="#semantics-style-inheritance">Style Inheritance</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.4.2.1 <a href="#semantics-style-inheritance-content">Content Style Inheritance</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.4.2.2 <a href="#semantics-style-inheritance-region">Region Style Inheritance</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.4.3 <a href="#semantics-style-resolution-value-categories">Style Resolution Value Categories</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.4.3.1 <a href="#semantics-style-resolved-value-category-specified">Specified Values</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.4.3.2 <a href="#semantics-style-resolved-value-category-computed">Computed Values</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.4.3.3 <a href="#semantics-style-resolved-value-category-actual">Actual Values</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.4.4 <a href="#semantics-style-resolution-processing">Style Resolution Processing</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.4.4.1 <a href="#semantics-style-resolution-processing-definitions">Conceptual Definitions</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.4.4.2 <a href="#semantics-style-resolution-processing-sss">Specified Style Set Processing</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.4.4.3 <a href="#semantics-style-resolution-processing-css">Computed Style Set Processing</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.4.4.4 <a href="#semantics-style-resolution-process-overall">Style Resolution Process</a><br>
+9 <a href="#layout">Layout</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;9.1 <a href="#layout-element-vocabulary">Layout Element Vocabulary</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;9.1.1 <a href="#layout-vocabulary-layout">layout</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;9.1.2 <a href="#layout-vocabulary-region">region</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;9.2 <a href="#layout-attribute-vocabulary">Layout Attribute Vocabulary</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;9.2.1 <a href="#layout-attribute-region">region</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;9.3 <a href="#semantics-region-layout">Region Layout and Presentation</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;9.3.1 <a href="#semantics-default-region">Default Region</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;9.3.2 <a href="#semantics-region-layout-step-1">Intermediate Synchronic Document Construction</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;9.3.3 <a href="#semantics-region-layout-step-2">Synchronic Flow Processing</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;9.3.4 <a href="#semantics-region-layout-example">Elaborated Example (Informative)</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;9.4 <a href="#semantics-line-layout">Line Layout</a><br>
+10 <a href="#timing">Timing</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;10.1 <a href="#timing-element-vocabulary">Timing Element Vocabulary</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;10.2 <a href="#timing-attribute-vocabulary">Timing Attribute Vocabulary</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;10.2.1 <a href="#timing-attribute-begin">begin</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;10.2.2 <a href="#timing-attribute-end">end</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;10.2.3 <a href="#timing-attribute-dur">dur</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;10.2.4 <a href="#timing-attribute-timeContainer">timeContainer</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;10.3 <a href="#timing-time-value-expressions">Time Value Expressions</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;10.3.1 <a href="#timing-value-timeExpression">&lt;timeExpression&gt;</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;10.4 <a href="#timing-time-intervals">Time Intervals</a><br>
+11 <a href="#animation">Animation</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;11.1 <a href="#animation-element-vocabulary">Animation Element Vocabulary</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;11.1.1 <a href="#animation-vocabulary-set">set</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;11.2 <a href="#animation-attribute-vocabulary">Animation Attribute Vocabulary</a><br>
+12 <a href="#metadata">Metadata</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;12.1 <a href="#metadata-element-vocabulary">Metadata Element Vocabulary</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;12.1.1 <a href="#metadata-vocabulary-metadata">metadata</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;12.1.2 <a href="#metadata-vocabulary-title">ttm:title</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;12.1.3 <a href="#metadata-vocabulary-desc">ttm:desc</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;12.1.4 <a href="#metadata-vocabulary-copyright">ttm:copyright</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;12.1.5 <a href="#metadata-vocabulary-agent">ttm:agent</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;12.1.6 <a href="#metadata-vocabulary-name">ttm:name</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;12.1.7 <a href="#metadata-vocabulary-actor">ttm:actor</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;12.2 <a href="#metadata-attribute-vocabulary">Metadata Attribute Vocabulary</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;12.2.1 <a href="#metadata-attribute-agent">ttm:agent</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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>
+&nbsp;&nbsp;&nbsp;&nbsp;A.1 <a href="#reduced-infoset-document">Document Information Item</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;A.2 <a href="#reduced-infoset-element">Element Information Item</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;A.3 <a href="#reduced-infoset-attribute">Attribute Information Item</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;A.4 <a href="#reduced-infoset-character">Character Information Item</a><br>
+B <a href="#schemas">Schemas</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;B.1 <a href="#dfxp-schema-rnc">Relax NG Schema</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;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>
+&nbsp;&nbsp;&nbsp;&nbsp;D.1 <a href="#feature-designations">Feature Designations</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.1 <a href="#feature-animation">#animation</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.2 <a href="#feature-backgroundColor">#backgroundColor</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.3 <a href="#feature-backgroundColor-block">#backgroundColor-block</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.4 <a href="#feature-backgroundColor-inline">#backgroundColor-inline</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.5 <a href="#feature-backgroundColor-region">#backgroundColor-region</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.6 <a href="#feature-bidi">#bidi</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.7 <a href="#feature-cellResolution">#cellResolution</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.8 <a href="#feature-clockMode">#clockMode</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.9 <a href="#feature-clockMode-gps">#clockMode-gps</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.10 <a href="#feature-clockMode-local">#clockMode-local</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.11 <a href="#feature-clockMode-utc">#clockMode-utc</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.12 <a href="#feature-color">#color</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.13 <a href="#feature-content">#content</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.14 <a href="#feature-core">#core</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.15 <a href="#feature-direction">#direction</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.16 <a href="#feature-display">#display</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.17 <a href="#feature-display-block">#display-block</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.18 <a href="#feature-display-inline">#display-inline</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.19 <a href="#feature-display-region">#display-region</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.20 <a href="#feature-displayAlign">#displayAlign</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.21 <a href="#feature-dropMode">#dropMode</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.22 <a href="#feature-dropMode-dropNTSC">#dropMode-dropNTSC</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.23 <a href="#feature-dropMode-dropPAL">#dropMode-dropPAL</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.24 <a href="#feature-dropMode-nonDrop">#dropMode-nonDrop</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.25 <a href="#feature-extent">#extent</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.26 <a href="#feature-extent-region">#extent-region</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.27 <a href="#feature-extent-root">#extent-root</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.28 <a href="#feature-fontFamily">#fontFamily</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.29 <a href="#feature-fontFamily-generic">#fontFamily-generic</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.30 <a href="#feature-fontFamily-non-generic">#fontFamily-non-generic</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.31 <a href="#feature-fontSize">#fontSize</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.32 <a href="#feature-fontSize-anamorphic">#fontSize-anamorphic</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.33 <a href="#feature-fontSize-isomorphic">#fontSize-isomorphic</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.34 <a href="#feature-fontStyle">#fontStyle</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.35 <a href="#feature-fontStyle-italic">#fontStyle-italic</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.36 <a href="#feature-fontStyle-oblique">#fontStyle-oblique</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.37 <a href="#feature-fontWeight">#fontWeight</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.38 <a href="#feature-fontWeight-bold">#fontWeight-bold</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.39 <a href="#feature-frameRate">#frameRate</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.40 <a href="#feature-frameRateMultiplier">#frameRateMultiplier</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.41 <a href="#feature-layout">#layout</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.42 <a href="#feature-length">#length</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.43 <a href="#feature-length-cell">#length-cell</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.44 <a href="#feature-length-em">#length-em</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.45 <a href="#feature-length-integer">#length-integer</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.46 <a href="#feature-length-negative">#length-negative</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.47 <a href="#feature-length-percentage">#length-percentage</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.48 <a href="#feature-length-pixel">#length-pixel</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.49 <a href="#feature-length-positive">#length-positive</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.50 <a href="#feature-length-real">#length-real</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.51 <a href="#feature-lineBreak-uax14">#lineBreak-uax14</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.52 <a href="#feature-lineHeight">#lineHeight</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.53 <a href="#feature-markerMode">#markerMode</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.54 <a href="#feature-markerMode-continuous">#markerMode-continuous</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.55 <a href="#feature-markerMode-discontinuous">#markerMode-discontinuous</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.56 <a href="#feature-metadata">#metadata</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.57 <a href="#feature-nested-div">#nested-div</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.58 <a href="#feature-nested-span">#nested-span</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.59 <a href="#feature-opacity">#opacity</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.60 <a href="#feature-origin">#origin</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.61 <a href="#feature-overflow">#overflow</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.62 <a href="#feature-overflow-visible">#overflow-visible</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.63 <a href="#feature-padding">#padding</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.64 <a href="#feature-padding-1">#padding-1</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.65 <a href="#feature-padding-2">#padding-2</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.66 <a href="#feature-padding-3">#padding-3</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.67 <a href="#feature-padding-4">#padding-4</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.68 <a href="#feature-pixelAspectRatio">#pixelAspectRatio</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.69 <a href="#feature-presentation">#presentation</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.70 <a href="#feature-profile">#profile</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.71 <a href="#feature-showBackground">#showBackground</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.72 <a href="#feature-structure">#structure</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.73 <a href="#feature-styling">#styling</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.74 <a href="#feature-styling-chained">#styling-chained</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.75 <a href="#feature-styling-inheritance-content">#styling-inheritance-content</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.76 <a href="#feature-styling-inheritance-region">#styling-inheritance-region</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.77 <a href="#feature-styling-inline">#styling-inline</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.78 <a href="#feature-styling-nested">#styling-nested</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.79 <a href="#feature-styling-referential">#styling-referential</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.80 <a href="#feature-subFrameRate">#subFrameRate</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.81 <a href="#feature-textAlign">#textAlign</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.82 <a href="#feature-textAlign-absolute">#textAlign-absolute</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.83 <a href="#feature-textAlign-relative">#textAlign-relative</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.84 <a href="#feature-textDecoration">#textDecoration</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.85 <a href="#feature-textDecoration-over">#textDecoration-over</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.86 <a href="#feature-textDecoration-through">#textDecoration-through</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.87 <a href="#feature-textDecoration-under">#textDecoration-under</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.88 <a href="#feature-textOutline">#textOutline</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.89 <a href="#feature-textOutline-blurred">#textOutline-blurred</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.90 <a href="#feature-textOutline-unblurred">#textOutline-unblurred</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.91 <a href="#feature-tickRate">#tickRate</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.92 <a href="#feature-timeBase-clock">#timeBase-clock</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.93 <a href="#feature-timeBase-media">#timeBase-media</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.94 <a href="#feature-timeBase-smpte">#timeBase-smpte</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.95 <a href="#feature-timeContainer">#timeContainer</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.96 <a href="#feature-time-clock">#time-clock</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.97 <a href="#feature-time-clock-with-frames">#time-clock-with-frames</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.98 <a href="#feature-time-offset">#time-offset</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.99 <a href="#feature-time-offset-with-frames">#time-offset-with-frames</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.100 <a href="#feature-time-offset-with-ticks">#time-offset-with-ticks</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.101 <a href="#feature-timing">#timing</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.102 <a href="#feature-transformation">#transformation</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.103 <a href="#feature-unicodeBidi">#unicodeBidi</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.104 <a href="#feature-visibility">#visibility</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.105 <a href="#feature-visibility-block">#visibility-block</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.106 <a href="#feature-visibility-inline">#visibility-inline</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.107 <a href="#feature-visibility-region">#visibility-region</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.108 <a href="#feature-wrapOption">#wrapOption</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.109 <a href="#feature-writingMode">#writingMode</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.110 <a href="#feature-writingMode-vertical">#writingMode-vertical</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.111 <a href="#feature-writingMode-horizontal">#writingMode-horizontal</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.112 <a href="#feature-writingMode-horizontal-lr">#writingMode-horizontal-lr</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.113 <a href="#feature-writingMode-horizontal-rl">#writingMode-horizontal-rl</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.1.114 <a href="#feature-zIndex">#zIndex</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;D.2 <a href="#feature-support">Feature Support</a><br>
+E <a href="#extensions">Extensions</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;E.1 <a href="#extension-designations">Extension Designations</a><br>
+F <a href="#profiles">Profiles</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;F.1 <a href="#profile-dfxp-transformation">DFXP Transformation Profile</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;F.2 <a href="#profile-dfxp-presentation">DFXP Presentation Profile</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;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>
+&nbsp;&nbsp;&nbsp;&nbsp;J.1 <a href="#d3e17629">Element Derivation</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;J.2 <a href="#d3e18108">Attribute Derivation</a><br>
+K <a href="#qa">QA Framework Compliance</a> (Non-Normative)<br>
+&nbsp;&nbsp;&nbsp;&nbsp;K.1 <a href="#d3e18976">Requirements</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;K.2 <a href="#d3e19140">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>
+&nbsp;&nbsp;&nbsp;&nbsp;N.1 <a href="#time-expression-semantics-clock">Clock Time Base</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;N.2 <a href="#time-expression-semantics-media">Media Time Base</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;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>
+&nbsp;&nbsp;&nbsp;&nbsp;O.1 <a href="#pop-on-example">Pop-On Caption Example</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;O.2 <a href="#roll-up-example">Roll-Up Caption Example</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;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>&lt;track&gt;</code>
+element in an HTML5 document, or a <code>&lt;text&gt;</code> or 
+<code>&lt;textstream&gt;</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>
+&lt;tt xml:lang="" xmlns="http://www.w3.org/ns/ttml"&gt;
+  &lt;head&gt;
+    &lt;metadata/&gt;
+    &lt;styling/&gt;
+    &lt;layout/&gt;
+  &lt;/head&gt;
+  &lt;body/&gt;
+&lt;/tt&gt;
+</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>
+&lt;metadata xmlns:ttm="http://www.w3.org/ns/ttml#metadata"&gt;
+  &lt;ttm:title&gt;Timed Text TTML Example&lt;/ttm:title&gt;
+  &lt;ttm:copyright&gt;The Authors (c) 2006&lt;/ttm:copyright&gt;
+&lt;/metadata&gt;
+</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>
+&lt;styling xmlns:tts="http://www.w3.org/ns/ttml#styling"&gt;
+  &lt;!-- s1 specifies default color, font, and text alignment --&gt;
+  &lt;style xml:id="s1"
+    tts:color="white"
+    tts:fontFamily="proportionalSansSerif"
+    tts:fontSize="22px"
+    tts:textAlign="center"
+  /&gt;
+  &lt;!-- alternative using yellow text but otherwise the same as style s1 --&gt;
+  &lt;style xml:id="s2" style="s1" tts:color="yellow"/&gt;
+  &lt;!-- a style based on s1 but justified to the right --&gt;
+  &lt;style xml:id="s1Right" style="s1" tts:textAlign="end" /&gt;     
+  &lt;!-- a style based on s2 but justified to the left --&gt;
+  &lt;style xml:id="s2Left" style="s2" tts:textAlign="start" /&gt;
+&lt;/styling&gt;
+</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>
+&lt;layout xmlns:tts="http://www.w3.org/ns/ttml#styling"&gt;
+  &lt;region xml:id="subtitleArea"
+    style="s1"
+    tts:extent="560px 62px"
+    tts:padding="5px 3px"
+    tts:backgroundColor="black"
+    tts:displayAlign="after"
+  /&gt;
+&lt;/layout&gt;  
+</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>
+&lt;body region="subtitleArea"&gt;
+  &lt;div&gt;
+    &lt;p xml:id="subtitle1" begin="0.76s" end="3.45s"&gt;
+      It seems a paradox, does it not,
+    &lt;/p&gt;
+    &lt;p xml:id="subtitle2" begin="5.0s" end="10.0s"&gt;
+      that the image formed on&lt;br/&gt;
+      the Retina should be inverted?
+    &lt;/p&gt;
+    &lt;p xml:id="subtitle3" begin="10.0s" end="16.0s" style="s2"&gt;
+      It is puzzling, why is it&lt;br/&gt;
+      we do not see things upside-down?
+    &lt;/p&gt;
+    &lt;p xml:id="subtitle4" begin="17.2s" end="23.0s"&gt;
+      You have never heard the Theory,&lt;br/&gt;
+      then, that the Brain also is inverted?
+    &lt;/p&gt;
+    &lt;p xml:id="subtitle5" begin="23.0s" end="27.0s" style="s2"&gt;
+      No indeed! What a beautiful fact!
+    &lt;/p&gt;
+    &lt;p xml:id="subtitle6a" begin="28.0s" end="34.6s" style="s2Left"&gt;
+      But how is it proved?
+    &lt;/p&gt;
+    &lt;p xml:id="subtitle6b" begin="28.0s" end="34.6s" style="s1Right"&gt;
+      Thus: what we call
+    &lt;/p&gt;
+    &lt;p xml:id="subtitle7" begin="34.6s" end="45.0s" style="s1Right"&gt;
+      the vertex of the Brain&lt;br/&gt;
+      is really its base
+    &lt;/p&gt;
+    &lt;p xml:id="subtitle8" begin="45.0s" end="52.0s" style="s1Right"&gt;
+      and what we call its base&lt;br/&gt;
+      is really its vertex,
+    &lt;/p&gt;
+    &lt;p xml:id="subtitle9a" begin="53.5s" end="58.7s"&gt;
+      it is simply a question of nomenclature.
+    &lt;/p&gt;
+    &lt;p xml:id="subtitle9b" begin="53.5s" end="58.7s" style="s2"&gt;
+      How truly delightful!
+    &lt;/p&gt;
+  &lt;/div&gt;    
+&lt;/body&gt;
+</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>
+&lt;example
+  <span class="reqattr">count</span> = integer
+  size = (<em>large</em>|<em>medium</em>|<em>small</em>) : medium&gt;
+  <em>Content:</em> (all | any*)
+&lt;/example&gt;
+</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>
+&lt;tt xml:lang="" xmlns="http://www.w3.org/ns/ttml"&gt;
+  &lt;head&gt;
+    &lt;metadata/&gt;
+    &lt;styling/&gt;
+    &lt;layout/&gt;
+  &lt;/head&gt;
+  &lt;body/&gt;
+&lt;/tt&gt;
+</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>
+&lt;tt xml:lang="" xmlns="http://www.w3.org/ns/ttml"&gt;
+ &lt;head&gt;
+   &lt;profile use="dfxp-presentation" xmlns="http://www.w3.org/ns/ttml#parameter"&gt;
+     &lt;features xml:base="http://www.w3.org/ns/ttml/feature/"&gt;
+       &lt;feature value="required"&gt;#fontStyle-italic&lt;/feature&gt;
+     &lt;/features&gt;
+   &lt;/profile&gt;
+ &lt;/head&gt;
+ &lt;body/&gt;
+&lt;/tt&gt;
+</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>
+&lt;ttp:profile
+  use = string
+  <a href="#content-attribute-id">xml:id</a> = ID
+  {<em>any attribute not in default or any TT namespace</em>}&gt;
+  <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>*
+&lt;/ttp:profile&gt;
+</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>
+&lt;ttp:profile use="dfxp-presentation"&gt;
+  &lt;ttp:features xml:base="http://www.w3.org/ns/ttml/feature/"&gt;
+    &lt;ttp:feature&gt;#text-outline&lt;/ttp:feature&gt;
+  &lt;/ttp:features&gt;
+&lt;/ttp:profile&gt;
+</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>
+&lt;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>}&gt;
+  <em>Content:</em> <a href="#element-vocab-group-table">Metadata.class</a>*, <a href="#parameter-vocabulary-feature">ttp:feature</a>*
+&lt;/ttp:features&gt;
+</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>
+&lt;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>}&gt;
+  <em>Content:</em> #PCDATA
+&lt;/ttp:feature&gt;
+</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>
+&lt;ttp:profile use="http://www.w3.org/ns/ttml/profile/dfxp-presentation"&gt;
+  &lt;ttp:features xml:base="http://www.w3.org/ns/ttml/feature/"&gt;
+    <span class="strong">&lt;ttp:feature value="required"&gt;#fontStyle-italic&lt;/ttp:feature&gt;</span>
+    <span class="strong">&lt;ttp:feature value="required"&gt;#textDecoration-under&lt;/ttp:feature&gt;</span>
+  &lt;/ttp:features&gt;
+&lt;/ttp:profile&gt;
+</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>
+&lt;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>}&gt;
+  <em>Content:</em> <a href="#element-vocab-group-table">Metadata.class</a>*, <a href="#parameter-vocabulary-extension">ttp:extension</a>*
+&lt;/ttp:extensions&gt;
+</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>
+&lt;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>}&gt;
+  <em>Content:</em> #PCDATA
+&lt;/ttp:extension&gt;
+</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>
+&lt;ttp:profile use="http://www.w3.org/ns/ttml/profile/dfxp-transformation"&gt;
+  &lt;ttp:extensions xml:base="http://foo.bar.example.org/ttaf1/extension/"&gt;
+    <span class="strong">&lt;ttp:extension value="use"&gt;#prefilter-by-language&lt;/ttp:extension&gt;</span>
+  &lt;/ttp:extensions&gt;
+&lt;/ttp:profile&gt;
+</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">&lt;digit&gt;</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">&lt;length&gt;</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">&lt;digit&gt;</a>+                                // <em>value</em> &gt; 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 &lt;timeExpression&gt;</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">&lt;digit&gt;</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">&lt;digit&gt;</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">&lt;digit&gt;</a>+                                // <em>value</em> &gt; 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 &lt;timeExpression&gt;</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">&lt;digit&gt;</a>+                                // <em>value</em> &gt; 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 &lt;timeExpression&gt;</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>
+&lt;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>}&gt;
+  <em>Content:</em> <a href="#document-structure-vocabulary-head">head</a>?, <a href="#document-structure-vocabulary-body">body</a>?
+&lt;/tt&gt;
+</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>
+&lt;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>}&gt;
+  <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>?
+&lt;/head&gt;
+</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>
+&lt;body
+  <a href="#timing-attribute-begin">begin</a> = <a href="#timing-value-timeExpression">&lt;timeExpression&gt;</a>
+  <a href="#timing-attribute-dur">dur</a> = <a href="#timing-value-timeExpression">&lt;timeExpression&gt;</a>
+  <a href="#timing-attribute-end">end</a> = <a href="#timing-value-timeExpression">&lt;timeExpression&gt;</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>}&gt;
+  <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>*
+&lt;/body&gt;
+</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>
+&lt;div
+  <a href="#timing-attribute-begin">begin</a> = <a href="#timing-value-timeExpression">&lt;timeExpression&gt;</a>
+  <a href="#timing-attribute-dur">dur</a> = <a href="#timing-value-timeExpression">&lt;timeExpression&gt;</a>
+  <a href="#timing-attribute-end">end</a> = <a href="#timing-value-timeExpression">&lt;timeExpression&gt;</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>}&gt;
+  <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>*
+&lt;/div&gt;
+</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>
+&lt;p
+  <a href="#timing-attribute-begin">begin</a> = <a href="#timing-value-timeExpression">&lt;timeExpression&gt;</a>
+  <a href="#timing-attribute-dur">dur</a> = <a href="#timing-value-timeExpression">&lt;timeExpression&gt;</a>
+  <a href="#timing-attribute-end">end</a> = <a href="#timing-value-timeExpression">&lt;timeExpression&gt;</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>}&gt;
+  <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>*
+&lt;/p&gt;
+</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>
+&lt;span
+  <a href="#timing-attribute-begin">begin</a> = <a href="#timing-value-timeExpression">&lt;timeExpression&gt;</a>
+  <a href="#timing-attribute-dur">dur</a> = <a href="#timing-value-timeExpression">&lt;timeExpression&gt;</a>
+  <a href="#timing-attribute-end">end</a> = <a href="#timing-value-timeExpression">&lt;timeExpression&gt;</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>}&gt;
+  <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>*
+&lt;/span&gt;
+</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>
+&lt;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>}&gt;
+  <em>Content:</em> <a href="#element-vocab-group-table">Metadata.class</a>*, <a href="#element-vocab-group-table">Animation.class</a>*
+&lt;/br&gt;
+</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>&lt;?xml-stylesheet ... ?&gt;</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>
+&lt;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>}&gt;
+  <em>Content:</em> <a href="#element-vocab-group-table">Metadata.class</a>*, <a href="#styling-vocabulary-style">style</a>*
+&lt;/styling&gt;
+</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>
+&lt;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>}&gt;
+  
+  <em>Content:</em> EMPTY
+&lt;/style&gt;
+</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">&lt;color&gt;</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>
+&lt;region xml:id="r1"&gt;
+  &lt;style tts:extent="306px 114px"/&gt;
+  &lt;style <span class="strong">tts:backgroundColor="red"</span>/&gt;
+  &lt;style tts:color="white"/&gt;
+  &lt;style tts:displayAlign="after"/&gt;
+  &lt;style tts:padding="3px 40px"/&gt;
+&lt;/region&gt;
+...
+&lt;p region="r1" <span class="strong">tts:backgroundColor="purple"</span> tts:textAlign="center"&gt;
+  Twinkle, twinkle, little bat!&lt;br/&gt;
+  How &lt;span <span class="strong">tts:backgroundColor="green"</span>&gt;I wonder&lt;/span&gt; where you're at!
+&lt;/p&gt;
+</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">&lt;color&gt;</a>
+</td></tr><tr><td><em>Initial:</em></td><td>see prose</td></tr><tr><td><em>Applies to:</em></td><td>
+<a href="#content-vocabulary-span"><code>span</code></a>
+</td></tr><tr><td><em>Inherited:</em></td><td>yes</td></tr><tr><td><em>Percentages:</em></td><td>N/A</td></tr><tr><td><em>Animatable:</em></td><td>discrete</td></tr></tbody></table><p>For the purpose of determining applicability of this style property,
+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>
+&lt;region xml:id="r1"&gt;
+  &lt;style tts:backgroundColor="black"/&gt;
+  &lt;style <span class="strong">tts:color="white"</span>/&gt;
+  &lt;style tts:displayAlign="after"/&gt;
+  &lt;style tts:textAlign="center"/&gt;
+&lt;/region&gt;
+...
+&lt;p region="r1"&gt;
+  In spring, when woods are &lt;span <span class="strong">tts:color="green"</span>&gt;getting green&lt;/span&gt;,&lt;br/&gt;
+  I'll try and tell you what I mean.
+&lt;/p&gt;
+</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>
+&lt;region xml:id="r1"&gt;
+  &lt;style tts:extent="265px 84px"/&gt;
+  &lt;style tts:padding="5px"/&gt;
+  &lt;style tts:backgroundColor="black"/&gt;
+  &lt;style tts:color="white"/&gt;
+  &lt;style tts:displayAlign="after"/&gt;
+  &lt;style tts:textAlign="center"/&gt;
+&lt;/region&gt;
+...
+&lt;p region="r1"&gt;
+  Little birds are playing&lt;br/&gt;
+  Bagpipes on the shore,&lt;br/&gt;
+  &lt;span tts:unicodeBidi="bidiOverride" <span class="strong">tts:direction="rtl"</span>&gt;where the tourists snore.&lt;/span&gt;
+&lt;/p&gt;
+</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>
+&lt;region xml:id="r1"&gt;
+  &lt;style tts:extent="369px 119px"
+            tts:backgroundColor="black"
+            tts:color="white"
+            tts:displayAlign="before"
+            tts:textAlign="start"/&gt;
+&lt;/region&gt;
+...
+&lt;div region="r1"&gt;
+  &lt;p dur="5s"&gt;
+    [[[
+    &lt;span <span class="strong">tts:display="none"</span>&gt;
+      &lt;set begin="1s" dur="1s" <span class="strong">tts:display="auto"</span>/&gt;
+      Beautiful soup,
+    &lt;/span&gt;
+    &lt;span <span class="strong">tts:display="none"</span>&gt;
+      &lt;set begin="2s" dur="1s" <span class="strong">tts:display="auto"</span>/&gt;
+      so rich and green,
+    &lt;/span&gt;
+    &lt;span <span class="strong">tts:display="none"</span>&gt;
+      &lt;set begin="3s" dur="1s" <span class="strong">tts:display="auto"</span>/&gt;
+      waiting in a hot tureen!
+    &lt;/span&gt;
+    ]]]
+  &lt;/p&gt;
+&lt;/div&gt;
+</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>
+&lt;region xml:id="r1"&gt;
+  &lt;style tts:extent="128px 66px" tts:origin="0px 0px"
+       tts:backgroundColor="black" tts:color="white"/&gt;
+  &lt;style <span class="strong">tts:displayAlign="before"</span>/&gt;
+  &lt;style tts:textAlign="start"/&gt;
+&lt;/region&gt;
+&lt;region xml:id="r2"&gt;
+  &lt;style tts:extent="192px 66px" tts:origin="128px 66px"/&gt;
+       tts:backgroundColor="green" tts:color="white"/&gt;
+  &lt;style <span class="strong">tts:displayAlign="after"</span>/&gt;
+  &lt;style tts:textAlign="start"/&gt;
+&lt;/region&gt;
+&lt;region xml:id="r3"&gt;
+  &lt;style tts:extent="128px 66px"/&gt; style tts:origin="0px 132px"
+       tts:backgroundColor="black" tts:color="white"/&gt;
+  &lt;style <span class="strong">tts:displayAlign="before"</span>/&gt;
+  &lt;style tts:textAlign="start"/&gt;
+&lt;/region&gt;
+&lt;region xml:id="r4"&gt;
+  &lt;style tts:extent="192px 66px" tts:origin="128px 198px"/&gt;
+       tts:backgroundColor="green" tts:color="white"/&gt;
+  &lt;style <span class="strong">tts:displayAlign="after"</span>/&gt;
+  &lt;style tts:textAlign="start"/&gt;
+&lt;/region&gt;
+...
+&lt;div&gt;
+  &lt;p region="r1"&gt;I sent a message to the fish:&lt;/p&gt;
+  &lt;p region="r2"&gt;I told them&lt;br/&gt; "This is what I wish."&lt;/p&gt;
+  &lt;p region="r3"&gt;The little fishes of the sea,&lt;/p&gt;
+  &lt;p region="r4"&gt;They sent an&lt;br/&gt; answer back to me.&lt;/p&gt;
+&lt;/div&gt;
+</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">&lt;length&gt;</a> <a href="#style-value-length">&lt;length&gt;</a>
+</td></tr><tr><td><em>Initial:</em></td><td><code>auto</code></td></tr><tr><td><em>Applies to:</em></td><td>
+<a href="#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">&lt;length&gt;</a>
+specifications, then they must be interpreted as <em>width</em>
+and <em>height</em>, where the first specification is the
+<em>width</em>, and the second specification is the
+<em>height</em>, 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">&lt;length&gt;</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>
+&lt;region xml:id="r1"&gt;
+  &lt;style <span class="strong">tts:extent="330px 122px"</span>/&gt;
+  &lt;style tts:backgroundColor="black"/&gt;
+  &lt;style tts:color="white"/&gt;
+  &lt;style tts:displayAlign="after"/&gt;
+  &lt;style tts:textAlign="center"/&gt;
+&lt;/region&gt;
+...
+&lt;p region="r1"&gt;
+  'Tis the voice of the Lobster:&lt;br/&gt;
+  I heard him declare,&lt;br/&gt;
+  "You have baked me too brown,&lt;br/&gt;
+  I must sugar my hair."
+&lt;/p&gt;
+</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">&lt;familyName&gt;</a> | <a href="#style-value-genericFamilyName">&lt;genericFamilyName&gt;</a>)
+(<code>","</code>
+&nbsp;(<a href="#style-value-familyName">&lt;familyName&gt;</a> | <a href="#style-value-genericFamilyName">&lt;genericFamilyName&gt;</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 &lt;genericFamilyName&gt;</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>
+&lt;region xml:id="r1"&gt;
+  &lt;style tts:extent="474px 146px"/&gt;
+  &lt;style tts:backgroundColor="black"/&gt;
+  &lt;style tts:color="white"/&gt;
+  &lt;style tts:displayAlign="center"/&gt;
+  &lt;style tts:textAlign="start"/&gt;
+  &lt;style <span class="strong">tts:fontFamily="proportionalSansSerif"</span>/&gt;
+&lt;/region&gt;
+...
+&lt;div region="r1"&gt;
+  &lt;p&gt;
+    "The time has come," the Walrus said,&lt;br/&gt;
+    "to talk of many things:
+  &lt;/p&gt;
+  &lt;p tts:textAlign="end" <span class="strong">tts:fontFamily="monospaceSerif"</span>&gt;
+    Of shoes, and ships, and sealing wax,&lt;br/&gt;
+    Of cabbages and kings,
+  &lt;/p&gt;
+  &lt;p&gt;
+    And why the sea is boiling hot,&lt;br/&gt;
+    and whether pigs have wings."
+  &lt;/p&gt;
+&lt;/div&gt;
+</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">&lt;length&gt;</a> <a href="#style-value-length">&lt;length&gt;</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">&lt;length&gt;</a> value is specified, then this length applies
+equally to horizontal and vertical scaling of a glyph's EM square; if two
+<a href="#style-value-length">&lt;length&gt;</a> values are specified, then the first expresses the horizontal
+scaling and the second expresses vertical scaling.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>Use of independent horizontal and vertical font sizes is expected to be used
+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">&lt;length&gt;</a> values must be the same.</p><p>The <a href="#style-value-length">&lt;length&gt;</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 &lt;length&gt;</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>
+&lt;region xml:id="r1"&gt;
+  &lt;style tts:extent="299px 97px"/&gt;
+  &lt;style tts:backgroundColor="black"/&gt;
+  &lt;style tts:color="white"/&gt;
+  &lt;style tts:displayAlign="center"/&gt;
+  &lt;style tts:textAlign="center"/&gt;
+  &lt;style tts:fontFamily="proportionalSansSerif"/&gt;
+  &lt;style <span class="strong">tts:fontSize="18px"</span>/&gt;
+&lt;/region&gt;
+...
+&lt;p region="r1"&gt;
+  Then fill up the glasses&lt;br/&gt;
+  with treacle and ink,&lt;br/&gt;
+  Or anything else&lt;br/&gt;
+  that is &lt;span <span class="strong">tts:fontSize="24px"</span>&gt;pleasant&lt;/span&gt; to drink.
+&lt;/p&gt;
+</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>
+&lt;region xml:id="r1"&gt;
+  &lt;style tts:extent="331px 84px"/&gt;
+  &lt;style tts:backgroundColor="black"/&gt;
+  &lt;style tts:color="white"/&gt;
+  &lt;style tts:displayAlign="after"/&gt;
+  &lt;style tts:textAlign="center"/&gt;
+  &lt;style tts:fontFamily="proportionalSansSerif"/&gt;
+&lt;/region&gt;
+...
+&lt;p region="r1"&gt;
+  In autumn, when the leaves are brown,&lt;br/&gt;
+  Take pen and ink, and &lt;span <span class="strong">tts:fontStyle="italic"</span>&gt;write it down.&lt;/span&gt;
+&lt;/p&gt;
+</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>
+&lt;region xml:id="r1"&gt;
+  &lt;style tts:extent="376px 95px"/&gt;
+  &lt;style tts:backgroundColor="black"/&gt;
+  &lt;style tts:color="white"/&gt;
+  &lt;style tts:displayAlign="center"/&gt;
+  &lt;style tts:textAlign="center"/&gt;
+  &lt;style tts:fontFamily="proportionalSansSerif"/&gt;
+&lt;/region&gt;
+...
+&lt;p region="r1"&gt;
+  They told me you had been to her,&lt;br/&gt;
+  &lt;span <span class="strong">tts:fontWeight="bold"</span>&gt;and mentioned me to him:&lt;/span&gt;&lt;br/&gt;
+  She gave me a good character&lt;br/&gt;
+  &lt;span <span class="strong">tts:fontWeight="bold"</span>&gt;but said I could not swim.&lt;/span&gt;
+&lt;/p&gt;
+</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">&lt;length&gt;</a>
+</td></tr><tr><td><em>Initial:</em></td><td><code>normal</code></td></tr><tr><td><em>Applies to:</em></td><td>
+<a href="#content-vocabulary-p"><code>p</code></a>
+</td></tr><tr><td><em>Inherited:</em></td><td>yes</td></tr><tr><td><em>Percentages:</em></td><td>relative to this element's font size</td></tr><tr><td><em>Animatable:</em></td><td>discrete</td></tr></tbody></table><p>If the value of this attribute is <code>normal</code>, then the
+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">&lt;length&gt;</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>
+&lt;region xml:id="r1"&gt;
+  &lt;style tts:extent="255px 190px"/&gt;
+  &lt;style tts:backgroundColor="black"/&gt;
+  &lt;style tts:color="white"/&gt;
+  &lt;style tts:displayAlign="center"/&gt;
+  &lt;style tts:textAlign="start"/&gt;
+  &lt;style tts:fontFamily="proportionalSansSerif"/&gt;
+  &lt;style tts:fontSize="16px"/&gt;
+  &lt;style <span class="strong">tts:lineHeight="32px"</span>/&gt;
+&lt;/region&gt;
+...
+&lt;p region="r1"&gt;
+  He thought he saw an elephant,&lt;br/&gt;
+  That practised on a fife:&lt;br/&gt;
+  He looked again, and found it was&lt;br/&gt;
+  A letter from his wife.&lt;br/&gt;
+  "At length I realise," he said,&lt;br/&gt;
+  "The bitterness of Life.
+"&lt;/p&gt;
+</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">&lt;alpha&gt;</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">&lt;alpha&gt;</a> value greater
+than 1.0 must be considered equivalent to an <a href="#style-value-alpha">&lt;alpha&gt;</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>
+&lt;region xml:id="r1" dur="5s"&gt;
+  &lt;set begin="0s" dur="1s" <span class="strong">tts:opacity="1.00"</span>/&gt;
+  &lt;set begin="1s" dur="1s" <span class="strong">tts:opacity="0.75"</span>/&gt;
+  &lt;set begin="2s" dur="1s" <span class="strong">tts:opacity="0.50"</span>/&gt;
+  &lt;set begin="3s" dur="1s" <span class="strong">tts:opacity="0.25"</span>/&gt;
+  &lt;set begin="4s" dur="1s" <span class="strong">tts:opacity="0.00"</span>/&gt;
+  &lt;style tts:extent="304px 77px"/&gt;
+  &lt;style tts:backgroundColor="black"/&gt;
+  &lt;style tts:color="white"/&gt;
+  &lt;style tts:displayAlign="after"/&gt;
+  &lt;style tts:textAlign="center"/&gt;
+&lt;/region&gt;
+...
+&lt;p region="r1"&gt;
+  The sun was shining on the sea
+&lt;/p&gt;
+</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">&lt;length&gt;</a> <a href="#style-value-length">&lt;length&gt;</a>
+</td></tr><tr><td><em>Initial:</em></td><td><code>auto</code></td></tr><tr><td><em>Applies to:</em></td><td>
+<a href="#layout-vocabulary-region"><code>region</code></a>
+</td></tr><tr><td><em>Inherited:</em></td><td>no</td></tr><tr><td><em>Percentages:</em></td><td>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">&lt;length&gt;</a> specifications,
+then they must be interpreted as <em>x</em> and <em>y</em> coordinates, where the first specification
+is the <em>x</em> coordinate, and the second specification is the <em>y</em> coordinate.</p><p>If the value of this attribute is <code>auto</code>, then the 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>
+&lt;region xml:id="r1"&gt;
+  &lt;style <span class="strong">tts:origin="40px 40px"</span>/&gt;
+  &lt;style tts:extent="308px 92px"/&gt;
+  &lt;style tts:backgroundColor="black"/&gt;
+  &lt;style tts:color="white"/&gt;
+  &lt;style tts:displayAlign="center"/&gt;
+  &lt;style tts:textAlign="center"/&gt;
+&lt;/region&gt;
+...
+&lt;p region="r1"&gt;
+  "To dine!" she shrieked in dragon-wrath.&lt;br/&gt;
+  "To swallow wines all foam and froth!&lt;br/&gt;
+   To simper at a table-cloth!"
+&lt;/p&gt;
+</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>
+&lt;region xml:id="r1"&gt;
+  &lt;style tts:extent="232px 40px"/&gt;
+  &lt;style tts:origin="0px 0px"/&gt;
+  &lt;style tts:backgroundColor="black"/&gt;
+  &lt;style tts:color="red"/&gt;
+  &lt;style tts:displayAlign="before"/&gt;
+  &lt;style tts:textAlign="start"/&gt;
+  &lt;style tts:fontFamily="proportionalSansSerif"/&gt;
+  &lt;style tts:fontSize="18px"/&gt;
+  &lt;style tts:wrapOption="noWrap"/&gt;
+  &lt;style <span class="strong">tts:overflow="visible"</span>/&gt;
+&lt;/region&gt;
+&lt;region xml:id="r2"&gt;
+  &lt;style tts:extent="232px 40px"/&gt;
+  &lt;style tts:origin="0px 43px"/&gt;
+  &lt;style tts:backgroundColor="black"/&gt;
+  &lt;style tts:color="red"/&gt;
+  &lt;style tts:displayAlign="before"/&gt;
+  &lt;style tts:textAlign="start"/&gt;
+  &lt;style tts:fontFamily="proportionalSansSerif"/&gt;
+  &lt;style tts:fontSize="18px"/&gt;
+  &lt;style tts:wrapOption="noWrap"/&gt;
+  &lt;style <span class="strong">tts:overflow="hidden"</span>/&gt;
+&lt;/region&gt;
+...
+&lt;p region="r1"&gt;
+  "But wait a bit," the Oysters cried,&lt;br/&gt;
+  "Before we have our chat;
+&lt;/p&gt;
+&lt;p region="r2"&gt;
+  For some of us are out of breath,&lt;br/&gt;
+  And all of us are fat!"
+&lt;/p&gt;
+</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">&lt;length&gt;</a> |
+<a href="#style-value-length">&lt;length&gt;</a> <a href="#style-value-length">&lt;length&gt;</a> |
+<a href="#style-value-length">&lt;length&gt;</a> <a href="#style-value-length">&lt;length&gt;</a> <a href="#style-value-length">&lt;length&gt;</a> |
+<a href="#style-value-length">&lt;length&gt;</a> <a href="#style-value-length">&lt;length&gt;</a> <a href="#style-value-length">&lt;length&gt;</a> <a href="#style-value-length">&lt;length&gt;</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">&lt;length&gt;</a> specification,
+then that length applies to all edges of the affected areas. If the value
+consists of two <a href="#style-value-length">&lt;length&gt;</a> specifications, then the first applies to the
+before and after edges, and the second applies to the start and end edges.
+If three <a href="#style-value-length">&lt;length&gt;</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">&lt;length&gt;</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>
+&lt;region xml:id="r1"&gt;
+  &lt;style tts:extent="446px 104px"/&gt;
+  &lt;style tts:backgroundColor="black"/&gt;
+  &lt;style tts:color="white"/&gt;
+  &lt;style tts:displayAlign="after"/&gt;
+  &lt;style tts:textAlign="center"/&gt;
+  &lt;style <span class="strong">tts:padding="10px 40px"</span>/&gt;
+&lt;/region&gt;
+...
+&lt;p region="r1" tts:backgroundColor="red"&gt;
+  Just the place for a Snark! I have said it twice:&lt;br/&gt;
+  That alone should encourage the crew.&lt;br/&gt;
+  Just the place for a Snark! I have said it thrice:&lt;br/&gt;
+  What I tell you three times is true.
+&lt;/p&gt;
+</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>
+&lt;region xml:id="r1"&gt;
+  &lt;style tts:origin="0px 0px"/&gt;
+  &lt;style tts:extent="265px 100px"/&gt;
+  &lt;style tts:backgroundColor="black"/&gt;
+  &lt;style <span class="strong">tts:showBackground="always"</span>/&gt;
+  &lt;style tts:color="white"/&gt;
+  &lt;style tts:displayAlign="before"/&gt;
+  &lt;style tts:textAlign="start"/&gt;
+&lt;/region&gt;
+&lt;region xml:id="r2"&gt;
+  &lt;style tts:origin="205px 60px"/&gt;
+  &lt;style tts:extent="290px 100px"/&gt;
+  &lt;style tts:backgroundColor="red"/&gt;
+  &lt;style tts:color="white"/&gt;
+  &lt;style tts:displayAlign="before"/&gt;
+  &lt;style tts:textAlign="end"/&gt;
+  &lt;style <span class="strong">tts:showBackground="whenActive"</span>/&gt;
+&lt;/region&gt;
+</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>
+&lt;region xml:id="r1"&gt;
+  &lt;style tts:extent="355px 43px"/&gt;
+  &lt;style tts:origin="0px 0px"/&gt;
+  &lt;style tts:backgroundColor="black"/&gt;
+  &lt;style tts:color="white"/&gt;
+  &lt;style <span class="strong">tts:textAlign="start"</span>/&gt;
+&lt;/region&gt;
+&lt;region xml:id="r2"&gt;
+  &lt;style tts:extent="355px 43px"/&gt;
+  &lt;style tts:origin="0px 47px"/&gt;
+  &lt;style tts:backgroundColor="black"/&gt;
+  &lt;style tts:color="white"/&gt;
+  &lt;style <span class="strong">tts:textAlign="end"</span>/&gt;
+&lt;/region&gt;
+...
+&lt;p region="r1"&gt;
+  Beware the Jabberwock, my son!&lt;br/&gt;
+  The jaws that bite, the claws that catch!
+&lt;/p&gt;
+&lt;p region="r2"&gt;
+  Beware the Jubjub bird, and shun&lt;br/&gt;
+  The frumious Bandersnatch!
+&lt;/p&gt;
+</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>
+&lt;region xml:id="r1"&gt;
+  &lt;style tts:extent="385px 82px"/&gt;
+  &lt;style tts:origin="0px 0px"/&gt;
+  &lt;style tts:backgroundColor="black"/&gt;
+  &lt;style tts:color="white"/&gt;
+  &lt;style tts:padding="5px 2px"/&gt;
+  &lt;style <span class="strong">tts:textDecoration="underline"</span>/&gt;
+&lt;/region&gt;
+...
+&lt;p region="r1"&gt;
+  The sea was wet&lt;span <span class="strong">tts:textDecoration="noUnderline"</span>&gt; as &lt;/span&gt;wet
+  &lt;span <span class="strong">tts:textDecoration="noUnderline"</span>&gt;
+    could be,&lt;br/&gt;
+    The sand was dry as dry.&lt;br/&gt;
+    &lt;span <span class="strong">tts:textDecoration="lineThrough"</span>&gt;There weren't any&lt;/span&gt;
+    You &lt;span <span class="strong">tts:textDecoration="lineThrough"</span>&gt;couldn't&lt;/span&gt;
+    could not see a cloud&lt;br/&gt;
+    Because no cloud was in the sky.
+  &lt;/span&gt;
+&lt;/p&gt;
+</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">&lt;color&gt;</a>?
+<a href="#style-value-length">&lt;length&gt;</a>
+<a href="#style-value-length">&lt;length&gt;</a>?
+</td></tr><tr><td><em>Initial:</em></td><td><code>none</code></td></tr><tr><td><em>Applies to:</em></td><td>
+<a href="#content-vocabulary-span"><code>span</code></a>
+</td></tr><tr><td><em>Inherited:</em></td><td>yes</td></tr><tr><td><em>Percentages:</em></td><td>relative to this element's font size</td></tr><tr><td><em>Animatable:</em></td><td>discrete</td></tr></tbody></table><p>For the purpose of determining applicability of this style property,
+each character child of a <code>p</code> element is considered to be enclosed in an anonymous
+span.</p><p>The value of this attribute consists of an optional <a href="#style-value-color">&lt;color&gt;</a> term
+followed by one or two <a href="#style-value-length">&lt;length&gt;</a> terms.  If a <em>color</em> term is
+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">&lt;length&gt;</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>
+&lt;region xml:id="r1"&gt;
+  &lt;style tts:backgroundColor="transparent"/&gt;
+  &lt;style tts:color="yellow"/&gt;
+  &lt;style <span class="strong">tts:textOutline="black 2px 0px"</span>/&gt;
+  &lt;style tts:fontFamily="proportionalSansSerif"/&gt;
+  &lt;style tts:fontSize="24px"/&gt;
+&lt;/region&gt;
+...
+&lt;p&gt;
+  How doth the little crocodile&lt;br/&gt;
+  Improve its shining tail,&lt;br/&gt;
+  And pour the waters of the Nile&lt;br/&gt;
+  On every golden scale!&lt;br/&gt;
+  How cheerfully he seems to grin,&lt;br/&gt;
+  How neatly spreads his claws,&lt;br/&gt;
+  And welcomes little fishes in,&lt;br/&gt;
+  With gently smiling jaws!
+&lt;/p&gt;
+</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>
+&lt;region xml:id="r1"&gt;
+  &lt;style tts:extent="265px 84px"/&gt;
+  &lt;style tts:padding="5px"/&gt;
+  &lt;style tts:backgroundColor="black"/&gt;
+  &lt;style tts:color="white"/&gt;
+  &lt;style tts:displayAlign="after"/&gt;
+  &lt;style tts:textAlign="center"/&gt;
+&lt;/region&gt;
+...
+&lt;p region="r1"&gt;
+  Little birds are playing&lt;br/&gt;
+  Bagpipes on the shore,&lt;br/&gt;
+  &lt;span <span class="strong">tts:unicodeBidi="bidiOverride"</span> tts:direction="rtl"&gt;where the tourists snore.&lt;/span&gt;
+&lt;/p&gt;
+</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>
+&lt;region xml:id="r1"&gt;
+  &lt;style tts:extent="398px 121px"/&gt;
+  &lt;style tts:backgroundColor="black"/&gt;
+  &lt;style tts:color="white"/&gt;
+  &lt;style/&gt;
+&lt;/region&gt;
+...
+&lt;p region="r1" dur="4s"&gt;
+  &lt;span <span class="strong">tts:visibility="hidden"</span>&gt;
+    &lt;set begin="1s" <span class="strong">tts:visibility="visible"</span>/&gt;
+    Curiouser
+  &lt;/span&gt;
+  &lt;span <span class="strong">tts:visibility="hidden"</span>&gt;
+    &lt;set begin="2s" <span class="strong">tts:visibility="visible"</span>/&gt;
+    and
+  &lt;/span&gt;
+  &lt;span <span class="strong">tts:visibility="hidden"</span>&gt;
+    &lt;set begin="3s" <span class="strong">tts:visibility="visible"</span>/&gt;
+    curiouser!
+  &lt;/span&gt;
+&lt;/p&gt;
+</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>
+&lt;region xml:id="r1"&gt;
+  &lt;style tts:extent="192px 117px"/&gt;
+  &lt;style tts:backgroundColor="black"/&gt;
+  &lt;style tts:color="white"/&gt;
+  &lt;style tts:displayAlign="after"/&gt;
+  &lt;style tts:overflow="hidden"/&gt;
+  &lt;style <span class="strong">tts:wrapOption="noWrap"</span>/&gt;
+&lt;/region&gt;
+...
+&lt;p&gt;
+  I'll tell thee everything I can:&lt;br/&gt;
+  There's little to relate.&lt;br/&gt;
+  I saw an aged aged man,&lt;br/&gt;
+  A-sitting on a gate.
+&lt;/p&gt;
+</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>
+&lt;region xml:id="r1"&gt;
+  &lt;style tts:extent="50px 570px"/&gt;
+  &lt;style tts:origin="0px 0px"/&gt;
+  &lt;style tts:padding="10px 3px"/&gt;
+  &lt;style tts:backgroundColor="black"/&gt;
+  &lt;style tts:color="white"/&gt;
+  &lt;style <span class="strong">tts:writingMode="tbrl"</span>/&gt;
+&lt;/region&gt;
+&lt;region xml:id="r2"&gt;
+  &lt;style tts:extent="310px 50px"/&gt;
+  &lt;style tts:origin="70px 120px"/&gt;
+  &lt;style tts:padding="10px 3px"/&gt;
+  &lt;style tts:backgroundColor="black"/&gt;
+  &lt;style tts:color="white"/&gt;
+  &lt;style <span class="strong">tts:writingMode="rltb"</span>/&gt;
+&lt;/region&gt;
+...
+&lt;p region="r1"&gt;
+  I sometimes dig for buttered rolls,&lt;br/&gt;
+  Or set limed twigs for crabs:
+&lt;/p&gt;
+&lt;p region="r2" tts:direction="rtl" tts:unicodeBidi="bidiOverride"&gt;
+  I sometimes search the grassy knolls for the wheels of Hansom-cabs.
+&lt;/p&gt;
+</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">&lt;integer&gt;</a>
+</td></tr><tr><td><em>Initial:</em></td><td><code>auto</code></td></tr><tr><td><em>Applies to:</em></td><td>
+<a href="#layout-vocabulary-region"><code>region</code></a>
+</td></tr><tr><td><em>Inherited:</em></td><td>no</td></tr><tr><td><em>Percentages:</em></td><td>N/A</td></tr><tr><td><em>Animatable:</em></td><td>discrete</td></tr></tbody></table><p>If two areas are associated with the same Z-index value, then, if those areas
+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>
+&lt;region xml:id="r1"&gt;
+  &lt;style tts:origin="0px 0px"/&gt;
+  &lt;style tts:extent="400px 100px"/&gt;
+  &lt;style tts:padding="5px"/&gt;
+  &lt;style tts:backgroundColor="black"/&gt;
+  &lt;style tts:color="white"/&gt;
+  &lt;style <span class="strong">tts:zIndex="0"</span>/&gt;
+&lt;/region&gt;
+&lt;region xml:id="r2"&gt;
+  &lt;style tts:origin="100px 60px"/&gt;
+  &lt;style tts:extent="400px 100px"/&gt;
+  &lt;style tts:padding="5px"/&gt;
+  &lt;style tts:backgroundColor="red"/&gt;
+  &lt;style tts:color="white"/&gt;
+  &lt;style tts:textAlign="end"/&gt;
+  &lt;style <span class="strong">tts:zIndex="1"</span>/&gt;
+&lt;/region&gt;
+&lt;region xml:id="r3"&gt;
+  &lt;style tts:origin="0px 120px"/&gt;
+  &lt;style tts:extent="400px 100px"/&gt;
+  &lt;style tts:padding="5px"/&gt;
+  &lt;style tts:backgroundColor="black"/&gt;
+  &lt;style tts:color="white"/&gt;
+  &lt;style <span class="strong">tts:zIndex="2"</span>/&gt;
+&lt;/region&gt;
+&lt;region xml:id="r4"&gt;
+  &lt;style tts:origin="100px 180px"/&gt;
+  &lt;style tts:extent="400px 100px"/&gt;
+  &lt;style tts:padding="5px"/&gt;
+  &lt;style tts:backgroundColor="red"/&gt;
+  &lt;style tts:color="white"/&gt;
+  &lt;style tts:textAlign="end"/&gt;
+  &lt;style <span class="strong">tts:zIndex="3"</span>/&gt;
+&lt;/region&gt;
+...
+&lt;p region="r1"&gt;
+  I passed by his garden, and marked, with one eye,&lt;br/&gt;
+  How the Owl and the Panther were sharing a pie.
+&lt;/p&gt;
+&lt;p region="r2"&gt;
+  The Panther took pie-crust, and gravy, and meat,&lt;br/&gt;
+  While the Owl had the dish as its share of the treat.
+&lt;/p&gt;
+&lt;p region="r3"&gt;
+  When the pie was all finished, the Owl, as a boon,&lt;br/&gt;
+  Was kindly permitted to pocket the spoon:
+&lt;/p&gt;
+&lt;p region="r4"&gt;
+  While the Panther received knife and fork&lt;br/&gt;
+  with a growl,&lt;br/&gt;
+  And concluded the banquet by...
+&lt;/p&gt;
+</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 &lt;alpha&gt;</b></a></p></li><li><p><a href="#style-value-color"><b>8.3.2 &lt;color&gt;</b></a></p></li><li><p><a href="#style-value-digit"><b>8.3.3 &lt;digit&gt;</b></a></p></li><li><p><a href="#style-value-duration"><b>8.3.4 &lt;duration&gt;</b></a></p></li><li><p><a href="#style-value-familyName"><b>8.3.5 &lt;familyName&gt;</b></a></p></li><li><p><a href="#style-value-genericFamilyName"><b>8.3.6 &lt;genericFamilyName&gt;</b></a></p></li><li><p><a href="#style-value-hexDigit"><b>8.3.7 &lt;hexDigit&gt;</b></a></p></li><li><p><a href="#style-value-integer"><b>8.3.8 &lt;integer&gt;</b></a></p></li><li><p><a href="#style-value-length"><b>8.3.9 &lt;length&gt;</b></a></p></li><li><p><a href="#style-value-namedColor"><b>8.3.10 &lt;namedColor&gt;</b></a></p></li><li><p><a href="#style-value-quotedString"><b>8.3.11 &lt;quotedString&gt;</b></a></p></li><li><p><a href="#style-value-string"><b>8.3.12 &lt;string&gt;</b></a></p></li></ul><div class="div3">
+<h4><a name="style-value-alpha" id="style-value-alpha"></a>8.3.1 &lt;alpha&gt;</h4><p>An &lt;alpha&gt; 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 – &lt;alpha&gt;</caption><tbody><tr><td>
+<div class="exampleInner"><pre>
+&lt;alpha&gt;
+  : <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>&nbsp;§
+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 &lt;color&gt;</h4><p>A &lt;color&gt; 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 – &lt;color&gt;</caption><tbody><tr><td>
+<div class="exampleInner"><pre>
+&lt;color&gt;
+  : "#" rrggbb
+  | "#" rrggbbaa
+  | "rgb" "(" r-value "," g-value "," b-value ")"
+  | "rgba" "(" r-value "," g-value "," b-value "," a-value ")"
+  | <a href="#style-value-namedColor">&lt;namedColor&gt;</a>
+
+rrggbb
+  :  <a href="#style-value-hexDigit">&lt;hexDigit&gt;</a>{6}
+
+rrggbbaa
+  :  <a href="#style-value-hexDigit">&lt;hexDigit&gt;</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">&lt;digit&gt;</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 &lt;digit&gt;</h4><p>A &lt;digit&gt; 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 – &lt;digit&gt;</caption><tbody><tr><td>
+<div class="exampleInner"><pre>
+&lt;digit&gt;
+  : "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 &lt;duration&gt;</h4><p>A &lt;duration&gt; 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 – &lt;duration&gt;</caption><tbody><tr><td>
+<div class="exampleInner"><pre>
+&lt;duration&gt;
+  : <a href="#style-value-digit">&lt;digit&gt;</a>+ ( "." <a href="#style-value-digit">&lt;digit&gt;</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 &lt;familyName&gt;</h4><p>A &lt;familyName&gt; expression specifies a font family name.</p><p>If the name contains a quotation delimiter character,
+then it must be expressed as a
+&lt;quotedString&gt;. If the name contains a
+whitespace character,
+then it should be expressed as a
+&lt;quotedString&gt;; however, if it is expressed as a &lt;string&gt;, 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 – &lt;familyName&gt;</caption><tbody><tr><td>
+<div class="exampleInner"><pre>
+&lt;familyName&gt;
+  : <a href="#style-value-string">&lt;string&gt;</a>
+  | <a href="#style-value-quotedString">&lt;quotedString&gt;</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 &lt;genericFamilyName&gt;</h4><p>A &lt;genericFamilyName&gt; 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 – &lt;genericFamilyName&gt;</caption><tbody><tr><td>
+<div class="exampleInner"><pre>
+&lt;genericFamilyName&gt;
+  : "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 &lt;hexDigit&gt;</h4><p>A &lt;hexDigit&gt; 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 – &lt;hexDigit&gt;</caption><tbody><tr><td>
+<div class="exampleInner"><pre>
+&lt;hexDigit&gt;
+  : <a href="#style-value-digit">&lt;digit&gt;</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 &lt;integer&gt;</h4><p>An &lt;integer&gt; 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 – &lt;integer&gt;</caption><tbody><tr><td>
+<div class="exampleInner"><pre>
+&lt;integer&gt;
+  : ( "+" | "-" )? <a href="#style-value-digit">&lt;digit&gt;</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 &lt;length&gt;</h4><p>A &lt;length&gt; 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 – &lt;length&gt;</caption><tbody><tr><td>
+<div class="exampleInner"><pre>
+&lt;length&gt;
+  : 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">&lt;digit&gt;</a>+
+
+non-negative-real
+  : <a href="#style-value-digit">&lt;digit&gt;</a>* "." <a href="#style-value-digit">&lt;digit&gt;</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 &lt;namedColor&gt;</h4><p>A &lt;namedColor&gt; 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 – &lt;namedColor&gt;</caption><tbody><tr><td>
+<div class="exampleInner"><pre>
+&lt;namedColor&gt;
+  : "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 &lt;quotedString&gt;</h4><p>A &lt;quotedString&gt; 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 – &lt;quotedString&gt;</caption><tbody><tr><td>
+<div class="exampleInner"><pre>
+&lt;quotedString&gt;
+  : "\"" ( <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>&nbsp;§
+2.2.</p></div><div class="div3">
+<h4><a name="style-value-string" id="style-value-string"></a>8.3.12 &lt;string&gt;</h4><p>A &lt;string&gt; 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 – &lt;string&gt;</caption><tbody><tr><td>
+<div class="exampleInner"><pre>
+&lt;string&gt;
+  : ( <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>&nbsp;§
+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>
+&lt;p <span class="strong">tts:color="white"</span>&gt;White 1&nbsp;&lt;span <span class="strong">tts:color="yellow"</span>&gt;Yellow&lt;/span&gt;&nbsp;White 2&lt;/p&gt;
+</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>
+&lt;style <span class="strong">xml:id="s1"</span> tts:color="white"/&gt;
+&lt;style <span class="strong">xml:id="s2"</span> tts:color="yellow"/&gt;
+...
+&lt;p <span class="strong">style="s1"</span>&gt;White 1&nbsp;&lt;span <span class="strong">style="s2"</span>&gt;Yellow&lt;/span&gt;&nbsp;White 2&lt;/p&gt;
+</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>
+&lt;style <span class="strong">xml:id="s1"</span> tts:color="white" tts:fontFamily="monospaceSerif"/&gt;
+&lt;style <span class="strong">xml:id="s2"</span> <span class="strong">style="s1"</span> tts:color="yellow"/&gt;
+...
+&lt;p <span class="strong">style="s1"</span>&gt;White Monospace&lt;/p&gt;
+&lt;p <span class="strong">style="s2"</span>&gt;Yellow Monospace&lt;/p&gt;
+</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>
+&lt;region xml:id="r1"&gt;
+  <span class="strong">&lt;style tts:extent="128px 66px"/&gt;</span>
+  <span class="strong">&lt;style tts:origin="0px 0px"/&gt;</span>
+  <span class="strong">&lt;style tts:displayAlign="center"/&gt;</span>
+&lt;/region&gt;
+</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>
+&lt;p <span class="strong">tts:fontFamily="monospaceSansSerif"</span>&gt;
+  &lt;span tts:color="yellow"&gt;Yellow Monospace&lt;/span&gt;
+&lt;/p&gt;
+</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>
+&lt;region <span class="strong">xml:id="r1"</span>&gt;
+&nbsp;&nbsp;&lt;style tts:color="yellow"/&gt;
+&nbsp;&nbsp;&lt;style tts:fontFamily="monospaceSerif"/&gt;
+&lt;/region&gt;
+...
+&lt;p <span class="strong">region="r1"</span>&gt;Yellow Monospace&lt;/p&gt;
+</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>
+&lt;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>}&gt;
+  <em>Content:</em> <a href="#element-vocab-group-table">Metadata.class</a>*, <a href="#layout-vocabulary-region">region</a>*
+&lt;/layout&gt;
+</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>
+&lt;region
+  <a href="#timing-attribute-begin">begin</a> = <a href="#timing-value-timeExpression">&lt;timeExpression&gt;</a>
+  <a href="#timing-attribute-dur">dur</a> = <a href="#timing-value-timeExpression">&lt;timeExpression&gt;</a>
+  <a href="#timing-attribute-end">end</a> = <a href="#timing-value-timeExpression">&lt;timeExpression&gt;</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>}&gt;
+  <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>*
+&lt;/region&gt;
+</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>
+&lt;tt xml:lang="" xmlns="http://www.w3.org/ns/ttml"&gt;
+  &lt;head&gt;
+    <span class="strong">&lt;layout&gt;
+      &lt;region xml:id="anonymous"/&gt;
+    &lt;/layout&gt;</span>
+  &lt;/head&gt;
+  &lt;body <span class="strong">region="anonymous"</span>/&gt;
+&lt;/tt&gt;
+</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="&amp;#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>&lt;tt tts:extent="640px 480px" xml:lang="en"
+  xmlns="http://www.w3.org/ns/ttml"
+  xmlns:tts="http://www.w3.org/ns/ttml#styling"&gt;
+  &lt;head&gt;
+    &lt;layout&gt;
+      &lt;region xml:id="r1"&gt;
+        &lt;style tts:origin="10px 100px"/&gt;
+        &lt;style tts:extent="620px 96px"/&gt;
+        &lt;style tts:fontSize="40px"/&gt;
+        &lt;style tts:fontWeight="bold"/&gt;
+        &lt;style tts:backgroundColor="black"/&gt;
+        &lt;style tts:color="red"/&gt;
+        &lt;style tts:textAlign="center"/&gt;
+        &lt;style tts:displayAlign="center"/&gt;
+      &lt;/region&gt;
+      &lt;region xml:id="r2"&gt;
+        &lt;style tts:origin="10px 300px"/&gt;
+        &lt;style tts:extent="620px 96px"/&gt;
+        &lt;style tts:fontSize="40px"/&gt;
+        &lt;style tts:fontWeight="bold"/&gt;
+        &lt;style tts:backgroundColor="black"/&gt;
+        &lt;style tts:color="yellow"/&gt;
+        &lt;style tts:textAlign="center"/&gt;
+        &lt;style tts:displayAlign="center"/&gt;
+      &lt;/region&gt;
+    &lt;/layout&gt;
+  &lt;/head&gt;
+  &lt;body xml:id="b1"&gt;
+    &lt;div xml:id="d1" begin="0s" dur="2s"&gt;
+      &lt;p xml:id="p1" region="r1"&gt;Text 1&lt;/p&gt;
+      &lt;p xml:id="p2" region="r2"&gt;Text 2&lt;/p&gt;
+    &lt;/div&gt;
+    &lt;div xml:id="d2" begin="1s" dur="2s"&gt;
+      &lt;p xml:id="p3" region="r2"&gt;Text 3&lt;/p&gt;
+      &lt;p xml:id="p4" region="r1"&gt;Text 4&lt;/p&gt;
+    &lt;/div&gt;
+  &lt;/body&gt;
+&lt;/tt&gt;
+</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>&lt;tt tts:extent="640px 480px" xml:lang="en"
+  xmlns="http://www.w3.org/ns/ttml"
+  xmlns:tts="http://www.w3.org/ns/ttml#styling"&gt;
+  &lt;head&gt;
+    &lt;layout&gt;
+      &lt;region xml:id="r1"&gt;
+        &lt;style tts:origin="10px 100px"/&gt;
+        &lt;style tts:extent="620px 96px"/&gt;
+        &lt;style tts:fontSize="40px"/&gt;
+        &lt;style tts:fontWeight="bold"/&gt;
+        &lt;style tts:backgroundColor="black"/&gt;
+        &lt;style tts:color="red"/&gt;
+        &lt;style tts:textAlign="center"/&gt;
+        &lt;style tts:displayAlign="center"/&gt;
+        &lt;body xml:id="b1-1"&gt;
+          &lt;div xml:id="d1-1"&gt;
+            &lt;p xml:id="p1"&gt;Text 1&lt;/p&gt;
+          &lt;/div&gt;
+        &lt;/body&gt;
+      &lt;/region&gt;
+      &lt;region xml:id="r2"&gt;
+        &lt;style tts:origin="10px 300px"/&gt;
+        &lt;style tts:extent="620px 96px"/&gt;
+        &lt;style tts:fontSize="40px"/&gt;
+        &lt;style tts:fontWeight="bold"/&gt;
+        &lt;style tts:backgroundColor="black"/&gt;
+        &lt;style tts:color="yellow"/&gt;
+        &lt;style tts:textAlign="center"/&gt;
+        &lt;style tts:displayAlign="center"/&gt;
+        &lt;body xml:id="b1-2"&gt;
+          &lt;div xml:id="d1-2"&gt;
+            &lt;p xml:id="p2"&gt;Text 2&lt;/p&gt;
+          &lt;/div&gt;
+        &lt;/body&gt;
+      &lt;/region&gt;
+    &lt;/layout&gt;
+  &lt;/head&gt;
+&lt;/tt&gt;
+</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>&lt;fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"&gt;
+  &lt;fo:layout-master-set&gt;
+    &lt;fo:simple-page-master master-name="m1"
+      page-width="640px" page-height="480px"&gt;
+      &lt;fo:region-body/&gt;
+    &lt;/fo:simple-page-master&gt;
+  &lt;/fo:layout-master-set&gt;
+  &lt;fo:page-sequence master-reference="m1"&gt;
+    &lt;fo:flow flow-name="xsl-region-body"&gt;
+      &lt;!-- region (r1) --&gt;
+      &lt;fo:block-container id="r1" absolute-position="absolute"
+        left="10px" top="100px" width="620px" height="96px"
+        background-color="black" display-align="center"&gt;
+        &lt;!-- body (b1) --&gt;
+        &lt;fo:block id="b1-1"&gt;
+          &lt;!-- body's space (before) filler --&gt;
+          &lt;fo:block
+            space-after.optimum="96px"
+            space-after.maximum="96px"
+            space-after.conditionality="retain"/&gt;
+          &lt;!-- div (d1) --&gt;
+          &lt;fo:block id="d1-1"&gt;
+            &lt;!-- p (p1) --&gt;
+            &lt;fo:block id="p1" text-align="center"&gt;
+              &lt;fo:inline font-size="40px" font-weight="bold"
+              color="red"&gt;Text 1&lt;/fo:inline&gt;
+            &lt;/fo:block&gt;
+          &lt;/fo:block&gt;
+          &lt;!-- body's space (after) filler --&gt;
+          &lt;fo:block
+            space-after.optimum="96px"
+            space-after.maximum="96px"
+            space-after.conditionality="retain"/&gt;
+        &lt;/fo:block&gt;
+      &lt;/fo:block-container&gt;
+      &lt;!-- region (r2) --&gt;
+      &lt;fo:block-container id="r2" absolute-position="absolute"
+        left="10px" top="300px" width="620px" height="96px"
+        background-color="black" display-align="center"&gt;
+        &lt;!-- body (b1) --&gt;
+        &lt;fo:block id="b1-2"&gt;
+          &lt;!-- body's space (before) filler --&gt;
+          &lt;fo:block
+            space-after.optimum="96px"
+            space-after.maximum="96px"
+            space-after.conditionality="retain"/&gt;
+          &lt;!-- div (d1) --&gt;
+          &lt;fo:block id="d1-2"&gt;
+            &lt;!-- p (p2) --&gt;
+            &lt;fo:block id="p2" text-align="center"&gt;
+              &lt;fo:inline font-size="40px" font-weight="bold"
+              color="yellow"&gt;Text 2&lt;/fo:inline&gt;
+            &lt;/fo:block&gt;
+          &lt;/fo:block&gt;
+          &lt;!-- body's space (after) filler --&gt;
+          &lt;fo:block
+            space-after.optimum="96px"
+            space-after.maximum="96px"
+            space-after.conditionality="retain"/&gt;
+        &lt;/fo:block&gt;
+      &lt;/fo:block-container&gt;
+    &lt;/fo:flow&gt;
+  &lt;/fo:page-sequence&gt;
+&lt;/fo:root&gt;
+</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>&lt;tt tts:extent="640px 480px" xml:lang="en"
+  xmlns="http://www.w3.org/ns/ttml"
+  xmlns:tts="http://www.w3.org/ns/ttml#styling"&gt;
+  &lt;head&gt;
+    &lt;layout&gt;
+      &lt;region xml:id="r1"&gt;
+        &lt;style tts:origin="10px 100px"/&gt;
+        &lt;style tts:extent="620px 96px"/&gt;
+        &lt;style tts:fontSize="40px"/&gt;
+        &lt;style tts:fontWeight="bold"/&gt;
+        &lt;style tts:backgroundColor="black"/&gt;
+        &lt;style tts:color="red"/&gt;
+        &lt;style tts:textAlign="center"/&gt;
+        &lt;style tts:displayAlign="center"/&gt;
+        &lt;body xml:id="b1-1"&gt;
+          &lt;div xml:id="d1-1"&gt;
+            &lt;p xml:id="p1"&gt;Text 1&lt;/p&gt;
+          &lt;/div&gt;
+          &lt;div xml:id="d2-1"&gt;
+            &lt;p xml:id="p4"&gt;Text 4&lt;/p&gt;
+          &lt;/div&gt;
+        &lt;/body&gt;
+      &lt;/region&gt;
+      &lt;region xml:id="r2"&gt;
+        &lt;style tts:origin="10px 300px"/&gt;
+        &lt;style tts:extent="620px 96px"/&gt;
+        &lt;style tts:fontSize="40px"/&gt;
+        &lt;style tts:fontWeight="bold"/&gt;
+        &lt;style tts:backgroundColor="black"/&gt;
+        &lt;style tts:color="yellow"/&gt;
+        &lt;style tts:textAlign="center"/&gt;
+        &lt;style tts:displayAlign="center"/&gt;
+        &lt;body xml:id="b1-2"&gt;
+          &lt;div xml:id="d1-2"&gt;
+            &lt;p xml:id="p2"&gt;Text 2&lt;/p&gt;
+          &lt;/div&gt;
+          &lt;div xml:id="d2-2"&gt;
+            &lt;p xml:id="p3"&gt;Text 3&lt;/p&gt;
+          &lt;/div&gt;
+        &lt;/body&gt;
+      &lt;/region&gt;
+    &lt;/layout&gt;
+  &lt;/head&gt;
+&lt;/tt&gt;
+</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>&lt;tt tts:extent="640px 480px" xml:lang="en"
+  xmlns="http://www.w3.org/ns/ttml"
+  xmlns:tts="http://www.w3.org/ns/ttml#styling"&gt;
+  &lt;head&gt;
+    &lt;layout&gt;
+      &lt;region xml:id="r1"&gt;
+        &lt;style tts:origin="10px 100px"/&gt;
+        &lt;style tts:extent="620px 96px"/&gt;
+        &lt;style tts:fontSize="40px"/&gt;
+        &lt;style tts:fontWeight="bold"/&gt;
+        &lt;style tts:backgroundColor="black"/&gt;
+        &lt;style tts:color="red"/&gt;
+        &lt;style tts:textAlign="center"/&gt;
+        &lt;style tts:displayAlign="center"/&gt;
+        &lt;body xml:id="b1-1"&gt;
+          &lt;div xml:id="d2-1"&gt;
+            &lt;p xml:id="p4"&gt;Text 4&lt;/p&gt;
+          &lt;/div&gt;
+        &lt;/body&gt;
+      &lt;/region&gt;
+      &lt;region xml:id="r2"&gt;
+        &lt;style tts:origin="10px 300px"/&gt;
+        &lt;style tts:extent="620px 96px"/&gt;
+        &lt;style tts:fontSize="40px"/&gt;
+        &lt;style tts:fontWeight="bold"/&gt;
+        &lt;style tts:backgroundColor="black"/&gt;
+        &lt;style tts:color="yellow"/&gt;
+        &lt;style tts:textAlign="center"/&gt;
+        &lt;style tts:displayAlign="center"/&gt;
+        &lt;body xml:id="b1-2"&gt;
+          &lt;div xml:id="d2-2"&gt;
+            &lt;p xml:id="p3"&gt;Text 3&lt;/p&gt;
+          &lt;/div&gt;
+        &lt;/body&gt;
+      &lt;/region&gt;
+    &lt;/layout&gt;
+  &lt;/head&gt;
+&lt;/tt&gt;
+</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 &lt;timeExpression&gt; specification as defined by <a href="#timing-value-timeExpression"><b>10.3.1 &lt;timeExpression&gt;</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
+&lt;timeExpression&gt; specification as defined by <a href="#timing-value-timeExpression"><b>10.3.1 &lt;timeExpression&gt;</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
+&lt;timeExpression&gt; specification as defined by <a href="#timing-value-timeExpression"><b>10.3.1 &lt;timeExpression&gt;</b></a>.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>When the <code>clock-time</code> form of a &lt;timeExpression&gt; 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 &lt;timeExpression&gt;</b></a></p></li></ul><div class="div3">
+<h4><a name="timing-value-timeExpression" id="timing-value-timeExpression"></a>10.3.1 &lt;timeExpression&gt;</h4><p>A &lt;timeExpression&gt; 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 – &lt;timeExpression&gt;</caption><tbody><tr><td>
+<div class="exampleInner"><pre>
+&lt;timeExpression&gt;
+  : 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">&lt;digit&gt;</a> <a href="#style-value-digit">&lt;digit&gt;</a>
+  | <a href="#style-value-digit">&lt;digit&gt;</a> <a href="#style-value-digit">&lt;digit&gt;</a> <a href="#style-value-digit">&lt;digit&gt;</a>+
+
+minutes | seconds
+  : <a href="#style-value-digit">&lt;digit&gt;</a> <a href="#style-value-digit">&lt;digit&gt;</a>
+
+frames
+  : <a href="#style-value-digit">&lt;digit&gt;</a> <a href="#style-value-digit">&lt;digit&gt;</a>
+  | <a href="#style-value-digit">&lt;digit&gt;</a> <a href="#style-value-digit">&lt;digit&gt;</a> <a href="#style-value-digit">&lt;digit&gt;</a>+
+
+sub-frames
+  : <a href="#style-value-digit">&lt;digit&gt;</a>+
+
+fraction
+  : "." <a href="#style-value-digit">&lt;digit&gt;</a>+
+
+time-count
+  : <a href="#style-value-digit">&lt;digit&gt;</a>+
+
+metric
+  : "h"                 // hours
+  | "m"                 // minutes
+  | "s"                 // seconds
+  | "ms"                // milliseconds
+  | "f"                 // frames
+  | "t"                 // ticks
+</pre></div>
+</td></tr></tbody></table><p>If a &lt;timeExpression&gt; 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 &lt;timeExpression&gt; 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 &lt;timeExpression&gt; 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>
+&lt;set
+  <a href="#timing-attribute-begin">begin</a> = <a href="#timing-value-timeExpression">&lt;timeExpression&gt;</a>
+  <a href="#timing-attribute-dur">dur</a> = <a href="#timing-value-timeExpression">&lt;timeExpression&gt;</a>
+  <a href="#timing-attribute-end">end</a> = <a href="#timing-value-timeExpression">&lt;timeExpression&gt;</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>}&gt;
+  <em>Content:</em> <a href="#element-vocab-group-table">Metadata.class</a>*
+&lt;/set&gt;
+</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>
+...
+&lt;p dur="5s" tts:color="yellow"&gt;
+<span class="strong">&lt;set begin="1s" dur="1s" tts:color="red"/&gt;</span>
+<span class="strong">&lt;set begin="2s" dur="1s" tts:color="green"/&gt;</span>
+<span class="strong">&lt;set begin="3s" dur="1s" tts:color="red"/&gt;</span>
+Text with Flashing Colors!
+&lt;/p&gt;
+...
+</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>
+&lt;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"&gt;
+    &lt;head&gt;
+      &lt;layout&gt;
+	&lt;region xml:id="r1" timeContainer="seq"&gt;
+	  <span class="strong">&lt;set dur="10s" tts:origin=" 8c 14c"/&gt;</span>
+	  <span class="strong">&lt;set dur="2s"  tts:origin=" 2c  2c"/&gt;</span>
+	  <span class="strong">&lt;set dur="3s"  tts:origin=" 8c 14c"/&gt;</span>
+	  <span class="strong">&lt;set dur="2s"  tts:origin="14c  4c"/&gt;</span>
+	  <span class="strong">&lt;set dur="10s" tts:origin=" 8c 14c"/&gt;</span>
+	  &lt;style tts:extent="24c 2c"/&gt;
+	&lt;/region&gt;
+      &lt;/layout&gt;
+    &lt;/head&gt;
+    &lt;body region="r1"&gt;...&lt;/body&gt;
+&lt;/tt&gt;
+</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>
+&lt;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>}&gt;
+  <em>Content:</em> ({<em>any element in TT Metadata namespace</em>}|{<em>any element not in any TT namespace</em>})*
+&lt;/metadata&gt;
+</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>
+...
+&lt;head&gt;
+  &lt;metadata xmlns:ttm="http://www.w3.org/ns/ttml#metadata"&gt;
+    &lt;ttm:title&gt;Document Metadata Example&lt;/ttm:title&gt;
+    &lt;ttm:desc&gt;This document employs document metadata.&lt;/ttm:desc&gt;
+  &lt;/metadata&gt;
+&lt;/head&gt;
+...
+</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>
+...
+&lt;div&gt;
+  &lt;metadata xmlns:ttm="http://www.w3.org/ns/ttml#metadata"&gt;
+    &lt;ttm:title&gt;Chapter 6 – Sherlock Holmes Gives a Demonstration&lt;/ttm:title&gt;
+    &lt;ttm:desc&gt;Holmes shows Watson how the murderer entered the window.&lt;/ttm:desc&gt;
+  &lt;/metadata&gt;
+&lt;/div&gt;
+...
+</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>
+...
+&lt;div xmlns:ext="http://foo.bar.example.org/ttaf1#metadata"&gt;
+  &lt;metadata ext:ednote="remove this division prior to publishing"/&gt;
+&lt;/div&gt;
+...
+</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>
+...
+&lt;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"&gt;
+  &lt;dc:title&gt;Foreign Element Metadata Example&lt;/dc:title&gt;
+  &lt;dc:description&gt;Express metadata using elements in foreign namespace.&lt;/dc:description&gt;
+  &lt;dc:format xsi:type="dcterms:IMT"&gt;application/ttml+xml&lt;/dc:format&gt;
+&lt;/metadata&gt;
+...
+</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>
+&lt;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>}&gt;
+  <em>Content:</em> #PCDATA
+&lt;/ttm:title&gt;
+</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>
+&lt;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>}&gt;
+  <em>Content:</em> #PCDATA
+&lt;/ttm:desc&gt;
+</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>
+&lt;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>}&gt;
+  <em>Content:</em> #PCDATA
+&lt;/ttm:copyright&gt;
+</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>
+&lt;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>}&gt;
+  <em>Content:</em> <a href="#metadata-vocabulary-name">ttm:name</a>*, <a href="#metadata-vocabulary-actor">ttm:actor</a>?
+&lt;/ttm:agent&gt;
+</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>
+
+&lt;tt xml:lang="en" xmlns="http://www.w3.org/ns/ttml" xmlns:ttm="http://www.w3.org/ns/ttml#metadata"&gt;
+  &lt;head&gt;
+    <span class="strong">&lt;ttm:agent xml:id="connery" type="person"&gt;</span>
+      &lt;ttm:name type="family"&gt;Connery&lt;/ttm:name&gt;
+      &lt;ttm:name type="given"&gt;Thomas Sean&lt;/ttm:name&gt;
+      &lt;ttm:name type="alias"&gt;Sean&lt;/ttm:name&gt;
+      &lt;ttm:name type="full"&gt;Sir Thomas Sean Connery&lt;/ttm:name&gt;
+    <span class="strong">&lt;/ttm:agent&gt;</span>
+    <span class="strong">&lt;ttm:agent xml:id="bond" type="character"&gt;</span>
+      &lt;ttm:name type="family"&gt;Bond&lt;/ttm:name&gt;
+      &lt;ttm:name type="given"&gt;James&lt;/ttm:name&gt;
+      &lt;ttm:name type="alias"&gt;007&lt;/ttm:name&gt;
+      &lt;ttm:actor agent="connery"/&gt;
+    <span class="strong">&lt;/ttm:agent&gt;</span>
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div&gt;
+      ...  
+      &lt;p <span class="strong">ttm:agent="bond"</span>&gt;I travel, a sort of licensed troubleshooter.&lt;/p&gt;
+      ...  
+    &lt;/div&gt;
+  &lt;/body&gt;
+&lt;/tt&gt;
+</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>
+&lt;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>}&gt;
+  <em>Content:</em> #PCDATA
+&lt;/ttm:name&gt;
+</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>
+&lt;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>}&gt;
+  <em>Content:</em> EMPTY
+&lt;/ttm:actor&gt;
+</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>&nbsp;§
+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 &amp; 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">&lt;genericFamilyName&gt;</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">&lt;genericFamilyName&gt;</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">&lt;familyName&gt;</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">&lt;familyName&gt;</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">&lt;length&gt;</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">&lt;length&gt;</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">&lt;length&gt;</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">&lt;length&gt;</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">&lt;length&gt;</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">&lt;length&gt;</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">&lt;length&gt;</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">&lt;length&gt;</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">&lt;length&gt;</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">&lt;length&gt;</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">&lt;length&gt;</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">&lt;length&gt;</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">&lt;length&gt;</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">&lt;length&gt;</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">&lt;length&gt;</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">&lt;length&gt;</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">&lt;length&gt;</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">&lt;length&gt;</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">&lt;length&gt;</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">&lt;length&gt;</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">&lt;length&gt;</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">&lt;length&gt;</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">&lt;length&gt;</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">&lt;length&gt;</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">&lt;length&gt;</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">&lt;length&gt;</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">&lt;length&gt;</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">&lt;length&gt;</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">&lt;length&gt;</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">&lt;length&gt;</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">&lt;length&gt;</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">&lt;length&gt;</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">&lt;timeExpression&gt;</a> that
+satisfy the following subset of time expression syntax:</p><div class="exampleInner"><pre>
+&lt;timeExpression&gt;
+  : 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">&lt;timeExpression&gt;</a> that
+satisfy the following subset of time expression syntax:</p><div class="exampleInner"><pre>
+&lt;timeExpression&gt;
+  : 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">&lt;timeExpression&gt;</a> that
+satisfy the following subset of time expression syntax:</p><div class="exampleInner"><pre>
+&lt;timeExpression&gt;
+  : 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">&lt;timeExpression&gt;</a> that
+satisfy the following subset of time expression syntax:</p><div class="exampleInner"><pre>
+&lt;timeExpression&gt;
+  : 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">&lt;timeExpression&gt;</a> that
+satisfy the following subset of time expression syntax:</p><div class="exampleInner"><pre>
+&lt;timeExpression&gt;
+  : 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=&quo