ttml10/spec/ttaf1-dfxp.xml
changeset 225 b2cfc61cf0ff
parent 222 2fbb3741d35e
child 227 5b9abdec7634
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ttml10/spec/ttaf1-dfxp.xml	Thu Feb 23 23:30:08 2012 -0700
@@ -0,0 +1,12964 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- $Id$ -->
+<!DOCTYPE spec PUBLIC "-//W3C//DTD Specification V2.10//EN" "xmlspec-ttaf1-dfxp.dtd" [
+<!ENTITY % entities SYSTEM "entities.dtd" >
+%entities;
+<!ENTITY status SYSTEM "status.xml">
+<!ENTITY document.status "Editors' copy $Date$">
+<!ENTITY title "&title;">
+<!ENTITY prevloc "http://www.w3.org/TR/2010/REC-ttaf1-dfxp-20101118/">
+<!ENTITY versionOfTT "1.0">
+<!ENTITY tbd "<phrase role='tbd'>To Be Defined</phrase>">
+<!ENTITY sp "&#x0020;">
+<!ENTITY sect "&#x00a7;">
+<!ENTITY aring "&#x00e5;">
+<!ENTITY ccedil "&#x00e7;">
+<!ENTITY Ccedil "&#x00c7;">
+<!ENTITY mult "&#x00d7;">
+<!ENTITY uuml "&#x00fc;">
+<!ENTITY nbsp "&#x00a0;">
+<!ENTITY ndash "&#x2013;">
+<!ENTITY mdash "&#x2014;">
+<!ENTITY prime "&#x2032;">
+<!ENTITY hArr "&#x21d4;">
+<!ENTITY trade "&#x2122;">
+<!ENTITY hellip "&#x2026;">
+<!ENTITY isin "&#x2208;">
+<!ENTITY minus "&#x2212;">
+<!ENTITY le "&#x2264;">
+<!ENTITY ge "&#x2265;">
+<!ENTITY plusmn "&#x00B1;">
+<!ENTITY dfxp-ex1 SYSTEM "./examples/ex1.xml.esc">
+<!ENTITY dfxp-ex1-x-0 SYSTEM "./examples/ex1-x-0.xml.esc">
+<!ENTITY dfxp-ex1-p-0 SYSTEM "./examples/ex1-p-0.xml.esc">
+<!ENTITY dfxp-ex1-x-1 SYSTEM "./examples/ex1-x-1.xml.esc">
+<!ENTITY dfxp-ex1-x-2 SYSTEM "./examples/ex1-x-2.xml.esc">
+<!ENTITY rnc-dfxp-driver SYSTEM "./rnc/ttaf1-dfxp.rnc.esc">
+<!ENTITY rnc-dfxp-animation-module SYSTEM "./rnc/ttaf1-dfxp-animation.rnc.esc">
+<!ENTITY rnc-dfxp-classes-module SYSTEM "./rnc/ttaf1-dfxp-classes.rnc.esc">
+<!ENTITY rnc-dfxp-content-module SYSTEM "./rnc/ttaf1-dfxp-content.rnc.esc">
+<!ENTITY rnc-dfxp-core-attribs-module SYSTEM "./rnc/ttaf1-dfxp-core-attribs.rnc.esc">
+<!ENTITY rnc-dfxp-datatypes-module SYSTEM "./rnc/ttaf1-dfxp-datatypes.rnc.esc">
+<!ENTITY rnc-dfxp-document-module SYSTEM "./rnc/ttaf1-dfxp-document.rnc.esc">
+<!ENTITY rnc-dfxp-head-module SYSTEM "./rnc/ttaf1-dfxp-head.rnc.esc">
+<!ENTITY rnc-dfxp-metadata-module SYSTEM "./rnc/ttaf1-dfxp-metadata.rnc.esc">
+<!ENTITY rnc-dfxp-metadata-items-module SYSTEM "./rnc/ttaf1-dfxp-metadata-items.rnc.esc">
+<!ENTITY rnc-dfxp-metadata-attribs-module SYSTEM "./rnc/ttaf1-dfxp-metadata-attribs.rnc.esc">
+<!ENTITY rnc-dfxp-parameters-module SYSTEM "./rnc/ttaf1-dfxp-parameters.rnc.esc">
+<!ENTITY rnc-dfxp-parameter-items-module SYSTEM "./rnc/ttaf1-dfxp-parameter-items.rnc.esc">
+<!ENTITY rnc-dfxp-parameter-attribs-module SYSTEM "./rnc/ttaf1-dfxp-parameter-attribs.rnc.esc">
+<!ENTITY rnc-dfxp-styling-attribs-module SYSTEM "./rnc/ttaf1-dfxp-styling-attribs.rnc.esc">
+<!ENTITY rnc-dfxp-styling-module SYSTEM "./rnc/ttaf1-dfxp-styling.rnc.esc">
+<!ENTITY rnc-dfxp-layout-module SYSTEM "./rnc/ttaf1-dfxp-layout.rnc.esc">
+<!ENTITY rnc-dfxp-timing-attribs-module SYSTEM "./rnc/ttaf1-dfxp-timing-attribs.rnc.esc">
+<!ENTITY xsd-dfxp-driver SYSTEM "./xsd/ttaf1-dfxp.xsd.esc">
+<!ENTITY xsd-dfxp-animation-module SYSTEM "./xsd/ttaf1-dfxp-animation.xsd.esc">
+<!ENTITY xsd-dfxp-content-module SYSTEM "./xsd/ttaf1-dfxp-content.xsd.esc">
+<!ENTITY xsd-dfxp-core-attribs-module SYSTEM "./xsd/ttaf1-dfxp-core-attribs.xsd.esc">
+<!ENTITY xsd-dfxp-datatypes-module SYSTEM "./xsd/ttaf1-dfxp-datatypes.xsd.esc">
+<!ENTITY xsd-dfxp-document-module SYSTEM "./xsd/ttaf1-dfxp-document.xsd.esc">
+<!ENTITY xsd-dfxp-head-module SYSTEM "./xsd/ttaf1-dfxp-head.xsd.esc">
+<!ENTITY xsd-dfxp-metadata-module SYSTEM "./xsd/ttaf1-dfxp-metadata.xsd.esc">
+<!ENTITY xsd-dfxp-metadata-items-module SYSTEM "./xsd/ttaf1-dfxp-metadata-items.xsd.esc">
+<!ENTITY xsd-dfxp-metadata-attribs-module SYSTEM "./xsd/ttaf1-dfxp-metadata-attribs.xsd.esc">
+<!ENTITY xsd-dfxp-parameters-module SYSTEM "./xsd/ttaf1-dfxp-parameters.xsd.esc">
+<!ENTITY xsd-dfxp-parameter-items-module SYSTEM "./xsd/ttaf1-dfxp-parameter-items.xsd.esc">
+<!ENTITY xsd-dfxp-parameter-attribs-module SYSTEM "./xsd/ttaf1-dfxp-parameter-attribs.xsd.esc">
+<!ENTITY xsd-dfxp-styling-attribs-module SYSTEM "./xsd/ttaf1-dfxp-styling-attribs.xsd.esc">
+<!ENTITY xsd-dfxp-styling-module SYSTEM "./xsd/ttaf1-dfxp-styling.xsd.esc">
+<!ENTITY xsd-dfxp-layout-module SYSTEM "./xsd/ttaf1-dfxp-layout.xsd.esc">
+<!ENTITY xsd-dfxp-timing-attribs-module SYSTEM "./xsd/ttaf1-dfxp-timing-attribs.xsd.esc">
+<!ENTITY xsd-dfxp-xml-attrs-module SYSTEM "./xsd/xml.xsd.esc">
+<!ENTITY profile-dfxp-presentation SYSTEM "./profiles/dfxp-presentation.xml.esc">
+<!ENTITY profile-dfxp-transformation SYSTEM "./profiles/dfxp-transformation.xml.esc">
+<!ENTITY profile-dfxp-full SYSTEM "./profiles/dfxp-full.xml.esc">
+]>
+<?xml-stylesheet type='text/xsl' href='xmlspec-ttaf1-dfxp.xsl'?>
+<spec w3c-doctype="&doctype;" role="&document.role;">
+<header>
+<title>&title;</title>
+<w3c-designation>&w3c-designation;</w3c-designation>
+<w3c-doctype>&document.status;</w3c-doctype>
+<pubdate>
+<day>&draft.day;</day>
+<month>&draft.month;</month>
+<year>&draft.year;</year>
+</pubdate>
+<publoc>
+<loc href="&w3c-designation;">&w3c-designation;</loc>
+</publoc>
+<prevlocs>
+<loc href="&prevloc;">&prevloc;</loc>
+</prevlocs>
+<latestloc>
+<loc href="&latest;">&latest;</loc>
+</latestloc>
+<authlist id="editors" role="editor">
+<author>
+<name>Glenn Adams</name>
+<affiliation>Samsung Electronics Co., Ltd.</affiliation>
+</author>
+</authlist>
+<authlist id="contributors" role="contributor">
+<author>
+<name>Mike Dolan</name>
+<affiliation>Invited Expert</affiliation>
+</author>
+<author>
+<name>Geoff Freed</name>
+<affiliation>WGBH National Center for Accessible Media</affiliation>
+</author>
+<author>
+<name>Sean Hayes</name>
+<affiliation>Microsoft</affiliation>
+</author>
+<author>
+<name>Erik Hodge</name>
+<affiliation>RealNetworks</affiliation>
+</author>
+<author>
+<name>David Kirby</name>
+<affiliation>British Broadcasting Corporation (BBC)</affiliation>
+</author>
+<author>
+<name>Thierry Michel</name>
+<affiliation>W3C</affiliation>
+</author>
+<author>
+<name>Dave Singer</name>
+<affiliation>Apple Computer</affiliation>
+</author>
+</authlist>
+<abstract id="abstract">
+<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 <el>&lt;text&gt;</el> or 
+<el>&lt;textstream&gt;</el> media object element in a <bibref
+ref="smil21"/> document.</p>
+</abstract>
+&status;
+<langusage><language id='en-us'>English</language></langusage>
+<revisiondesc><p>Last Modified: $Date$</p></revisiondesc>
+</header>
+<body>
+<div1 id="intro">
+<head>Introduction</head>
+<p><emph>Unless specified otherwise, this section and its sub-sections are non-normative.</emph></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 <bibref ref="ttaf1-req"/>, and summarized in <specref
+ref="requirements"/>. 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 <el>&lt;text&gt;</el> or 
+<el>&lt;textstream&gt;</el> media object element in a <bibref
+ref="smil21"/> document. Certain properties of TTML support
+streamability of content, as described in <specref ref="streaming"/>.</p>
+<note>
+<p>While TTML was not expressly designed for direct (embedded) integration into a
+SMIL document instance, such integration is not precluded.</p>
+</note>
+<note>
+<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>
+</note>
+<div2 id="model">
+<head>System Model</head>
+<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 <specref ref="model-graphic"/>, 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>
+<table id="model-graphic" role="example-images">
+<caption>Figure 1 &ndash; System Model</caption>
+<tbody>
+<tr>
+<td><graphic id="graphic-model" source="images/model.png" alt="System Model"/></td>
+</tr>
+</tbody>
+</table>
+</div2>
+<div2 id="example">
+<head>Document Example</head>
+<p>A TTML document instance consists of a <el>tt</el> 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>
+<table id="dfxp-example-document-structure" role="example">
+<caption>Example Fragment &ndash; TTML Document Structure</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&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;
+</eg>
+</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>
+<table id="dfxp-example-metadata" role="example">
+<caption>Example Fragment &ndash; TTML Metadata</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&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;
+</eg>
+</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 <specref ref="dfxp-example-styling"/>, four style sets of specifications
+are defined, with one set serving as a collection of default styles.</p>
+<table id="dfxp-example-styling" role="example">
+<caption>Example Fragment &ndash; TTML Styling</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&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;
+</eg>
+</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 <specref ref="dfxp-example-layout"/>, 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>
+<table id="dfxp-example-layout" role="example">
+<caption>Example Fragment &ndash; TTML Layout</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&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;  
+</eg>
+</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
+<specref ref="dfxp-example-body"/>, each paragraph (<el>p</el> 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 &mdash;
+in this case, the division parent is interpreted as a parallel time
+container.</p>
+<table id="dfxp-example-body" role="example">
+<caption>Example Fragment &ndash; TTML Body</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&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;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p>The first subtitle <specref ref="dfxp-example-subtitle-1"/> 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>
+<note role="explanation">
+<p>The notation "[<emph>X</emph>,<emph>Y</emph>]" denotes a closed
+interval from <emph>X</emph> to <emph>Y</emph>, including
+<emph>X</emph> and <emph>Y</emph>;
+"[<emph>X</emph>,<emph>Y</emph>)" denotes a right half-open
+interval from <emph>X</emph> to <emph>Y</emph>, including
+<emph>X</emph> but not including <emph>Y</emph>;
+"(<emph>X</emph>,<emph>Y</emph>]" denotes a left half-open
+interval from <emph>X</emph> to <emph>Y</emph>, not including
+<emph>X</emph> but including <emph>Y</emph>;
+"(<emph>X</emph>,<emph>Y</emph>)" denotes an open
+interval from <emph>X</emph> to <emph>Y</emph>, not including
+<emph>X</emph> or <emph>Y</emph>.
+</p>
+</note>
+<table id="dfxp-example-subtitle-1" role="example-images">
+<caption>Subtitle 1 &ndash; Time Interval [0.76, 3.45)</caption>
+<tbody>
+<tr>
+<td><graphic source="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>
+<table id="dfxp-example-subtitle-2" role="example-images">
+<caption>Subtitle 2 &ndash; Time Interval [5.0, 10.0)</caption>
+<tbody>
+<tr>
+<td><graphic source="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>
+<table id="dfxp-example-subtitle-3" role="example-images">
+<caption>Subtitle 3 &ndash; Time Interval [10.0, 16.0)</caption>
+<tbody>
+<tr>
+<td><graphic source="images/subtitle3.png" alt="Subtitle 3"/></td>
+</tr>
+</tbody>
+</table>
+<p>The fourth subtitle reverts to the default style.</p>
+<table id="dfxp-example-subtitle-4" role="example-images">
+<caption>Subtitle 4 &ndash; Time Interval [17.2, 23.0)</caption>
+<tbody>
+<tr>
+<td><graphic source="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>
+<table id="dfxp-example-subtitle-5" role="example-images">
+<caption>Subtitle 5 &ndash; Time Interval [23.0, 27.0)</caption>
+<tbody>
+<tr>
+<td><graphic source="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>
+<table id="dfxp-example-subtitle-6" role="example-images">
+<caption>Subtitles 6a and 6b &ndash; Time Interval [28.0, 34.6)</caption>
+<tbody>
+<tr>
+<td><graphic source="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>
+<table id="dfxp-example-subtitle-7" role="example-images">
+<caption>Subtitle 7 &ndash; Time Interval [34.6, 45.0)</caption>
+<tbody>
+<tr>
+<td><graphic source="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>
+<table id="dfxp-example-subtitle-8" role="example-images">
+<caption>Subtitle 8 &ndash; Time Interval [47.3, 49.0)</caption>
+<tbody>
+<tr>
+<td><graphic source="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>
+<table id="dfxp-example-subtitle-9" role="example-images">
+<caption>Subtitles 9a and 9b &ndash; Time Interval [53.5, 58.7)</caption>
+<tbody>
+<tr>
+<td><graphic source="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>
+</div2>
+</div1>
+<div1 id="definitions">
+<head>Definitions</head>
+<div2 id="acronyms">
+<head>Acronyms</head>
+<glist role="acronyms">
+<gitem>
+<label>DFXP</label>
+<def>
+<p>Distribution Format Exchange Profile</p>
+</def>
+</gitem>
+<gitem>
+<label>TT</label>
+<def>
+<p>Timed Text</p>
+</def>
+</gitem>
+  <gitem>
+    <label>TTML</label>
+    <def>
+      <p>Timed Text Markup Language</p>
+    </def>
+  </gitem>
+  <gitem>
+<label>TT AS</label>
+<def>
+<p>Timed Text Authoring System</p>
+</def>
+</gitem>
+<gitem>
+<label>TT AF</label>
+<def>
+<p>Timed Text Authoring Format</p>
+</def>
+</gitem>
+<gitem>
+<label>TT WG</label>
+<def>
+<p>Timed Text Working Group</p>
+</def>
+</gitem>
+</glist>
+</div2>
+<div2 id="terms">
+<head>Terminology</head>
+<glist>
+<gitem>
+<label>Abstract Document Instance</label>
+<def>
+<p>An instance of an abstract data set as represented by a
+<emph>Reduced XML Infoset</emph>.</p>
+</def>
+</gitem>
+<gitem>
+<label>Abstract Document Type</label>
+<def>
+<p>A set of constraints that defines a class of <emph>XML Information
+Set</emph>s <bibref ref="infoset"/>.</p>
+</def>
+</gitem>
+<gitem>
+<label>Attribute Information Item</label>
+<def>
+<p>Each specified or defaulted attribute  of an XML document corresponds with an attribute information
+item as defined by <bibref ref="infoset"/>, &sect;2.3.</p>
+</def>
+</gitem>
+<gitem>
+<label>Character Information Item</label>
+<def>
+<p>Each data character appearing in an XML document corresponds with a character information
+item as defined by <bibref ref="infoset"/>, &sect;2.6.</p>
+</def>
+</gitem>
+<gitem>
+<label>Content Processor</label>
+<def>
+<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>
+</def>
+</gitem>
+<gitem>
+<label>Content Profile</label>
+<def>
+<p>A collection of features and extensions that are (or may be) employed by
+Timed Text Markup Language content.</p>
+</def>
+</gitem>
+<gitem>
+<label>Content Region</label>
+<def>
+<p>A logical region into which rendered content is placed when modeling or
+performing presentation processing.</p>
+</def>
+</gitem>
+<gitem>
+<label>Element Information Item</label>
+<def>
+<p>Each element appearing in an XML document corresponds with an element information
+item as defined by <bibref ref="infoset"/>, &sect;2.2.</p>
+</def>
+</gitem>
+<gitem>
+<label>Exchange Profile</label>
+<def>
+<p>A content profile that serves a set of needs
+for content interchange.</p>
+</def>
+</gitem>
+<gitem>
+<label>Extension</label>
+<def>
+<p>A syntactic or semantic expression or capability that is defined and
+labeled (using a extension designation) in another (public or private)
+specification.</p>
+</def>
+</gitem>
+<gitem>
+<label>Feature</label>
+<def>
+<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>
+</def>
+</gitem>
+<gitem>
+<label>Processor</label>
+<def>
+<p>See <emph>Content Processor</emph>.</p>
+</def>
+</gitem>
+<gitem>
+<label>Processor Profile</label>
+<def>
+<p>A collection of features and extensions that must or may be implemented (supported) by
+a content processor.</p>
+</def>
+</gitem>
+<gitem>
+<label>Profile Definition Document</label>
+<def>
+<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>
+</def>
+</gitem>
+<gitem>
+<label>Region</label>
+<def>
+<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>
+</def>
+</gitem>
+<gitem>
+<label>Reduced XML Infoset</label>
+<def>
+<p>An XML Information Set <bibref ref="infoset"/> that satisfieds the
+constraints specify by <specref ref="reduced-infoset"/>.</p>
+</def>
+</gitem>
+<gitem>
+<label>Root Container Region</label>
+<def>
+<p>A logical region that establishes a coordinate system into which
+content regions are placed and optionally clipped.</p>
+</def>
+</gitem>
+<gitem>
+<label>Timed Text</label>
+<def>
+<p>Textual information that is intrinsically or extrinsically
+associated with timing information.</p>
+</def>
+</gitem>
+<gitem>
+<label>Timed Text Markup Language</label>
+<def>
+<p>A content type that represents timed text media for the purpose of
+interchange among authoring systems.</p>
+</def>
+</gitem>
+<gitem>
+<label>Timed Text Authoring System</label>
+<def>
+<p>A content authoring system capable of importing and exporting
+Timed Text Markup Language content.</p>
+</def>
+</gitem>
+</glist>
+</div2>
+<div2 id="conventions">
+<head>Documentation Conventions</head>
+<p>Within normative prose in this specification, the words
+<emph>may</emph>, <emph>should</emph>, and <emph>must</emph> are
+defined as follows:</p>
+<glist role="conformance-keywords">
+<gitem>
+<label>may</label>
+<def>
+<p>Conforming documents and/or TTML processors are permitted to,
+but need not behave as described. </p>
+</def>
+</gitem>
+<gitem>
+<label>should</label>
+<def>
+<p>Conforming documents and/or TTML processors are strongly
+recommended to, but need not behave as described.</p>
+</def>
+</gitem>
+<gitem>
+<label>must</label>
+<def>
+<p>Conforming documents and/or TTML processors are required
+to behave as described; otherwise, they are in error. </p>
+</def>
+</gitem>
+</glist>
+<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>
+<table id="elt-syntax-example" role="syntax">
+<caption>XML Representation &ndash; Element Information Item: example</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;example
+  <phrase role="reqattr">count</phrase> = integer
+  size = (<emph>large</emph>|<emph>medium</emph>|<emph>small</emph>) : medium&gt;
+  <emph>Content:</emph> (all | any*)
+&lt;/example&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p>In an XML representation, bold-face attribute names (e.g. <phrase
+role="strong">count</phrase> 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 <bibref ref="xsd-2"/>, 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 <phrase role="strong">Note</phrase> 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>
+<table id="example-fragment-1" role="example">
+<caption>Example Fragment &ndash; Sample</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&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;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+</div2>
+</div1>
+<div1 id="conformance">
+<head>Conformance</head>
+<p>This section specifies the general conformance requirements for
+TTML content and processors.</p>
+<div2 id="conformance-content">
+<head>Content Conformance</head>
+<p>A TTML document instance conforms to this specification if the following criteria are
+satisfied:</p>
+<olist>
+<item>
+<p>When transporting a document instance in a context in which a MIME
+Media Type <bibref ref="mime-media"/> identifies the content type of the interchanged document
+instance, then the specified media type is
+<code>application/ttml+xml</code> in conformance with <bibref
+ref="rfc3023"/> &sect; 7, with which an optional
+<code>profile</code> parameter may appear, the value of which
+conforms to
+a profile designator as
+defined by
+<specref ref="vocabulary-profiles"/>.</p>
+</item>
+<item>
+<p>The document instance is or can be represented as a Reduced XML
+Infoset as defined by <specref ref="reduced-infoset"/>.</p>
+</item>
+<item>
+<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
+<specref ref="doctypes"/>.</p>
+</item>
+<item>
+<p>The Reduced XML Infoset that corresponds to the document instance is a
+Valid Abstract Document Instance of the associated
+Abstract Document Type.</p>
+</item>
+<item>
+<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
+<bibref ref="wcag"/>.</p>
+</item>
+</olist>
+</div2>
+<div2 id="conformance-processor">
+<head>Processor Conformance</head>
+<div3 id="conformance-generic-processor">
+<head>Generic Processor Conformance</head>
+<p>A TTML processor conforms to this specification if the following
+generic processor criteria are
+satisfied:</p>
+<olist>
+<item>
+<p>The processor provides at least one mechanism for notionally
+instantiating a Reduced XML
+Infoset representation of a conformant TTML document
+instance.</p>
+</item>
+<item>
+<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
+<specref ref="doctypes"/>.</p>
+</item>
+<item>
+<p>The processor does not <emph>a priori</emph> 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>
+</item>
+<item>
+<p>The processor supports all mandatory processing semantics defined by this specification.</p>
+</item>
+<item>
+<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>
+</item>
+</olist>
+</div3>
+<div3 id="conformance-transformation-processor">
+<head>Transformation Processor Conformance</head>
+<p>A TTML processor is a conformant TTML transformation processor if
+the following criteria are satisfied:</p>
+<olist>
+<item>
+<p>The processor satisfies all requirements specified by
+<specref ref="conformance-generic-processor"/>.</p>
+</item>
+<item>
+<p>The processor supports the DFXP Transformation profile as specified
+by <specref ref="profile-dfxp-transformation"/>.</p>
+</item>
+</olist>
+</div3>
+<div3 id="conformance-presentation-processor">
+<head>Presentation Processor Conformance</head>
+<olist>
+<item>
+<p>The processor satisfies all requirements specified by
+<specref ref="conformance-generic-processor"/>.</p>
+</item>
+<item>
+<p>The processor supports the DFXP Presentation profile as specified
+by <specref ref="profile-dfxp-presentation"/>.</p>
+</item>
+</olist>
+</div3>
+</div2>
+<div2 id="claims">
+<head>Claims</head>
+<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 <specref ref="vocabulary-profiles"/>, 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 <att>ttp:profile</att> attribute on its root
+<el>tt</el>
+element
+as defined by <specref ref="parameter-attribute-profile"/>
+or (2)
+a <el>ttp:profile</el> element as a child of the
+<el>head</el> element as defined by
+<specref ref="parameter-vocabulary-profile"/>.</p>
+</div2>
+</div1>
+<div1 id="doctypes">
+<head>Document Types</head>
+<p>This section defines the following TTML Abstract Document Types:</p>
+<ulist>
+<item><p><specref ref="dfxp-content-doctype"/></p></item>
+</ulist>
+<p>Each abstract document type consists of the following constraints:</p>
+<ulist>
+<item><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></item>
+<item><p>a non-empty collection of element types that may appear as the document element</p></item>
+</ulist>
+<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>
+<olist>
+<item>
+<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>
+</item>
+<item>
+<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>
+</item>
+<item>
+<p>pruning all attribute
+information items having expanded names such that the namespace URI of the
+expanded names are not listed in <specref
+ref="namespace-vocab-table"/>,</p>
+</item>
+</olist>
+<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>
+<note>
+<p>While a conformant processor may not <emph>a priori</emph> 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>
+</note>
+<div2 id="dfxp-content-doctype">
+<head>DFXP Content</head>
+<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 <specref ref="vocabulary"/>.</p>
+<p>This specification defines two types of normative schemas that may be used to validate a subset of
+conformant DFXP Content document instances:</p>
+<ulist>
+<item><p><specref ref="dfxp-schema-rnc"/></p></item>
+<item><p><specref ref="dfxp-schema-xsd"/></p></item>
+</ulist>
+<p>The (root) document element of a DFXP Content document instance must be a
+<el>tt</el> element, as defined by <specref
+ref="document-structure-vocabulary-tt"/>.</p>
+<note role="clarification">
+<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 <emph>false positive</emph> indication of validity.
+However, with one exception, their
+use will not produce a <emph>false negative</emph> 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 <att>xml:id</att>
+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>
+</note>
+</div2>
+</div1>
+<div1 id="vocabulary">
+<head>Vocabulary</head>
+<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>
+<ulist>
+<item><p><specref ref="vocabulary-namespaces"/></p></item>
+<item><p><specref ref="vocabulary-profiles"/></p></item>
+<item><p><specref ref="vocabulary-overview"/></p></item>
+</ulist>
+<div2 id="vocabulary-namespaces">
+<head>Namespaces</head>
+<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>
+<note role="explanation">
+<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>
+</note>
+<table id="namespace-vocab-table" role="common">
+<caption>Table 1 &ndash; Namespaces</caption>
+<col width="30%"/>
+<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><emph>none</emph></td>
+<td><code>http://www.w3.org/ns/ttml/profile/</code></td>
+</tr>
+<tr>
+<td>TT Feature</td>
+<td><emph>none</emph></td>
+<td><code>http://www.w3.org/ns/ttml/feature/</code></td>
+</tr>
+<tr>
+<td>TT Extension</td>
+<td><emph>none</emph></td>
+<td><code>http://www.w3.org/ns/ttml/extension/</code></td>
+</tr>
+</tbody>
+</table>
+<note role="clarification">
+<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 <emph>none</emph> 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>
+</note>
+<p>All TTML Namespaces are <loc
+href="http://www.w3.org/2001/tag/doc/namespaceState#namespacedef"><emph>mutable</emph></loc>
+<bibref ref="nsstate"/>; all undefined names in these namespaces are reserved for future
+standardization by the W3C.</p>
+</div2>
+<div2 id="vocabulary-profiles">
+<head>Profiles</head>
+<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
+<specref ref="profiles"/>.</p>
+<table id="profile-vocab-table" role="common">
+<caption>Table 2 &ndash; Profiles</caption>
+<col width="25%"/>
+<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>A profile designator must adhere to the
+<code>xsd:anyURI</code> data type defined by <bibref ref="xsd-2"/>,
+&sect;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>
+<note role="example">
+<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>
+</note>
+<p>A profile designator is not restricted to the set of designators enumerated
+in <specref ref="profile-vocab-table"/>, 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
+<att>ttp:profile</att> attribute on the root <el>tt</el> element, as
+defined by <specref ref="parameter-attribute-profile"/>, or (2) by
+including one or more <el>ttp:profile</el>
+elements in the <el>head</el> element, in
+accordance with <specref ref="parameter-vocabulary-profile"/>.</p>
+<p>If a <el>ttp:profile</el> element appears as a
+descendant of the <el>tt</el> element, then the <loc
+href="#parameter-attribute-profile"><att>ttp:profile</att></loc>
+attribute should not be specified on the <el>tt</el> element. If both
+a <el>ttp:profile</el> element and a <att>ttp:profile</att>
+attribute are present (in a given document instance), then the
+<att>ttp:profile</att> attribute must be ignored for the purpose of
+determining the declared profile requirements.</p>
+<p>If more than one <el>ttp:profile</el> 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
+<loc href="#parameter-attribute-profile"><att>ttp:profile</att></loc>
+attribute nor
+<loc href="#parameter-vocabulary-profile"><el>ttp:profile</el></loc>
+element is present in a TTML document instance, and if the document
+interchange context does not specify a profile,
+then the DFXP Transformation
+profile applies.</p>
+<note role="elaboration">
+<p>It is intended that the <att>ttp:profile</att> 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 <el>ttp:profile</el> 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 <emph>subtractive</emph> profile; when modified by supersetting, the result
+is referred to as an <emph>additive</emph> profile.
+It is also possible to define a derived profile that is simultaneously subtractive
+and additive.</p>
+</note>
+<p>If a TTML document instance makes use of a feature defined by
+<specref ref="feature-designations"/> and if the intended use of the
+document requires the recognition and processing of that feature, then
+the document must include a <emph>required feature</emph> or
+a <emph>used feature</emph>
+specification in one of its declared or
+referenced profiles.  If a TTML document instance makes use
+of an extension designatable by <specref
+ref="extension-designations"/> and if the intended use of the document
+requires the recognition and processing of that extension, then the
+document must include a <emph>required extension</emph> or
+a <emph>used extension</emph> specification
+in one of its declared or referenced
+profiles.</p>
+<note role="elaboration">
+<p>A required or used feature
+specification is expressed directly (or indirectly by referring to a
+profile) by means of a <loc
+href="#parameter-vocabulary-feature"><el>ttp:feature</el></loc>
+element where the value of its <att>value</att> 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 <loc
+href="#parameter-vocabulary-extension"><el>ttp:extension</el></loc>
+element where the value of its <att>value</att> attribute is
+<code>required</code> or <code>use</code>,
+respectively.</p>
+</note>
+<p>An example of an author defined
+additive, derived profile of the DFXP Presentation
+profile is shown
+below in <specref ref="dfxp-example-sub-profile"/>.</p>
+<table id="dfxp-example-sub-profile" role="example">
+<caption>Example Fragment &ndash; DFXP Additive Profile</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&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;
+</eg>
+</td></tr>
+</tbody>
+</table>
+<note role="explanation">
+<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 <specref ref="profile-dfxp-presentation"/>). Note also the resetting of the
+default XMLNS binding on the <el>profile</el> element to the TT Parameter Namespace.</p>
+</note>
+</div2>
+<div2 id="vocabulary-overview">
+<head>Catalog</head>
+<p>The vocabulary of the Timed Text Markup Language (TTML) is
+defined in the following major catalogs (divisions of vocabulary):</p>
+<ulist>
+<item><p><specref ref="core-vocabulary-overview"/></p></item>
+<item><p><specref ref="extension-vocabulary-overview"/></p></item>
+</ulist>
+<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>
+<div3 id="core-vocabulary-overview">
+<head>Core Catalog</head>
+<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>
+<ulist>
+<item><p><specref ref="parameters"/></p></item>
+<item><p><specref ref="content"/></p></item>
+<item><p><specref ref="styling"/></p></item>
+<item><p><specref ref="layout"/></p></item>
+<item><p><specref ref="timing"/></p></item>
+<item><p><specref ref="animation"/></p></item>
+<item><p><specref ref="metadata"/></p></item>
+</ulist>
+<p>The core element vocabulary specified for use with a TTML document
+instance is enumerated in
+<specref ref="element-vocab-table"/>.</p>
+<table id="element-vocab-table" role="common">
+<caption>Table 3 &ndash; Element Vocabulary</caption>
+<col width="25%"/>
+<tbody>
+<tr>
+<th>Module</th>
+<th>Elements</th>
+</tr>
+<tr>
+<td>
+Animation
+</td>
+<td>
+<loc href="#animation-vocabulary-set">set</loc>
+</td>
+</tr>
+<tr>
+<td>
+Content
+</td>
+<td>
+<loc href="#document-structure-vocabulary-body">body</loc>,
+<loc href="#content-vocabulary-div">div</loc>,
+<loc href="#content-vocabulary-p">p</loc>,
+<loc href="#content-vocabulary-span">span</loc>,
+<loc href="#content-vocabulary-br">br</loc>
+</td>
+</tr>
+<tr>
+<td>
+Document
+</td>
+<td>
+<loc href="#document-structure-vocabulary-tt">tt</loc>
+</td>
+</tr>
+<tr>
+<td>
+Head
+</td>
+<td>
+<loc href="#document-structure-vocabulary-head">head</loc>
+</td>
+</tr>
+<tr>
+<td>
+Layout
+</td>
+<td>
+<loc href="#layout-vocabulary-layout">layout</loc>,
+<loc href="#layout-vocabulary-region">region</loc>
+</td>
+</tr>
+<tr>
+<td>
+Metadata
+</td>
+<td>
+<loc href="#metadata-vocabulary-metadata">metadata</loc>
+</td>
+</tr>
+<tr>
+<td>
+Metadata Items
+</td>
+<td>
+<loc href="#metadata-vocabulary-actor">ttm:actor</loc>,
+<loc href="#metadata-vocabulary-agent">ttm:agent</loc>,
+<loc href="#metadata-vocabulary-copyright">ttm:copyright</loc>,
+<loc href="#metadata-vocabulary-desc">ttm:desc</loc>,
+<loc href="#metadata-vocabulary-name">ttm:name</loc>,
+<loc href="#metadata-vocabulary-title">ttm:title</loc>
+</td>
+</tr>
+<tr>
+<td>Parameter Items</td>
+<td><loc href="#parameter-vocabulary-profile">ttp:profile</loc>,
+<loc href="#parameter-vocabulary-features">ttp:features</loc>,
+<loc href="#parameter-vocabulary-feature">ttp:feature</loc>,
+<loc href="#parameter-vocabulary-extensions">ttp:extensions</loc>,
+<loc href="#parameter-vocabulary-extension">ttp:extension</loc>
+</td>
+</tr>
+<tr>
+<td>
+Styling
+</td>
+<td>
+<loc href="#styling-vocabulary-styling">styling</loc>,
+<loc href="#styling-vocabulary-style">style</loc>
+</td>
+</tr>
+</tbody>
+</table>
+<p/>
+<p>Element vocabulary groups that are used in defining content models
+for TTML element types are enumerated in <specref ref="element-vocab-group-table"/>.</p>
+<table id="element-vocab-group-table" role="common">
+<caption>Table 4 &ndash; Element Vocabulary Groups</caption>
+<col width="25%"/>
+<tbody>
+<tr>
+<th>Group</th>
+<th>Elements</th>
+</tr>
+<tr>
+<td>
+Animation.class
+</td>
+<td>
+<loc href="#animation-vocabulary-set">set</loc>
+</td>
+</tr>
+<tr>
+<td>
+Block.class
+</td>
+<td>
+<loc href="#content-vocabulary-div">div</loc> |
+<loc href="#content-vocabulary-p">p</loc>
+</td>
+</tr>
+<tr>
+<td>
+Inline.class
+</td>
+<td>
+<loc href="#content-vocabulary-span">span</loc> |
+<loc href="#content-vocabulary-span">br</loc> |
+<code>#PCDATA</code>
+</td>
+</tr>
+<tr>
+<td>
+Metadata.class
+</td>
+<td>
+<loc href="#metadata-vocabulary-metadata">metadata</loc> |
+<loc href="#metadata-vocabulary-copyright">ttm:agent</loc> |
+<loc href="#metadata-vocabulary-copyright">ttm:copyright</loc> |
+<loc href="#metadata-vocabulary-desc">ttm:desc</loc> |
+<loc href="#metadata-vocabulary-title">ttm:title</loc>
+</td>
+</tr>
+<tr>
+<td>Parameters.class</td>
+<td><loc
+href="#parameter-vocabulary-profile">ttp:profile</loc></td>
+</tr>
+</tbody>
+</table>
+<p/>
+<p>The attribute vocabulary specified for use with the core vocabulary
+catalog is enumerated in
+<specref ref="attribute-vocab-table"/>.</p>
+<table id="attribute-vocab-table" role="common">
+<caption>Table 5 &ndash; Attribute Vocabulary</caption>
+<col width="25%"/>
+<tbody>
+<tr>
+<th>Module</th>
+<th>Attributes</th>
+</tr>
+<tr>
+<td>
+Core Attributes
+</td>
+<td>
+<loc href="#content-attribute-id">xml:id</loc>,
+<loc href="#content-attribute-lang">xml:lang</loc>,
+<loc href="#content-attribute-space">xml:space</loc>
+</td>
+</tr>
+<tr>
+<td>
+Layout
+</td>
+<td>
+<loc href="#layout-attribute-region">region</loc>
+</td>
+</tr>
+<tr>
+<td>
+Metadata Attributes
+</td>
+<td>
+<loc href="#metadata-attribute-agent">ttm:agent</loc>,
+<loc href="#metadata-attribute-role">ttm:role</loc>
+</td>
+</tr>
+<tr>
+<td>
+Parameter Attributes
+</td>
+<td>
+<loc href="#parameter-attribute-cellResolution">ttp:cellResolution</loc>,
+<loc href="#parameter-attribute-clockMode">ttp:clockMode</loc>,
+<loc href="#parameter-attribute-dropMode">ttp:dropMode</loc>,
+<loc href="#parameter-attribute-frameRate">ttp:frameRate</loc>,
+<loc href="#parameter-attribute-frameRateMultiplier">ttp:frameRateMultipler</loc>,
+<loc href="#parameter-attribute-markerMode">ttp:markerMode</loc>,
+<loc href="#parameter-attribute-pixelAspectRatio">ttp:pixelAspectRatio</loc>,
+<loc href="#parameter-attribute-profile">ttp:profile</loc>,
+<loc href="#parameter-attribute-subFrameRate">ttp:subFrameRate</loc>,
+<loc href="#parameter-attribute-tickRate">ttp:tickRate</loc>,
+<loc href="#parameter-attribute-timeBase">ttp:timeBase</loc>
+</td>
+</tr>
+<tr>
+<td>
+Styling
+</td>
+<td>
+<loc href="#style-attribute-style">style</loc>
+</td>
+</tr>
+<tr>
+<td>
+Styling Attributes
+</td>
+<td>
+<loc href="#style-attribute-backgroundColor">tts:backgroundColor</loc>,
+<loc href="#style-attribute-color">tts:color</loc>,
+<loc href="#style-attribute-direction">tts:direction</loc>,
+<loc href="#style-attribute-display">tts:display</loc>,
+<loc href="#style-attribute-displayAlign">tts:displayAlign</loc>,
+<loc href="#style-attribute-extent">tts:extent</loc>,
+<loc href="#style-attribute-fontFamily">tts:fontFamily</loc>,
+<loc href="#style-attribute-fontSize">tts:fontSize</loc>,
+<loc href="#style-attribute-fontStyle">tts:fontStyle</loc>,
+<loc href="#style-attribute-fontWeight">tts:fontWeight</loc>,
+<loc href="#style-attribute-lineHeight">tts:lineHeight</loc>,
+<loc href="#style-attribute-opacity">tts:opacity</loc>,
+<loc href="#style-attribute-origin">tts:origin</loc>,
+<loc href="#style-attribute-overflow">tts:overflow</loc>,
+<loc href="#style-attribute-padding">tts:padding</loc>,
+<loc href="#style-attribute-showBackground">tts:showBackground</loc>,
+<loc href="#style-attribute-textAlign">tts:textAlign</loc>,
+<loc href="#style-attribute-textDecoration">tts:textDecoration</loc>,
+<loc href="#style-attribute-textOutline">tts:textOutline</loc>,
+<loc href="#style-attribute-unicodeBidi">tts:unicodeBidi</loc>,
+<loc href="#style-attribute-visibility">tts:visibility</loc>,
+<loc href="#style-attribute-wrapOption">tts:wrapOption</loc>,
+<loc href="#style-attribute-writingMode">tts:writingMode</loc>,
+<loc href="#style-attribute-zIndex">tts:zIndex</loc>
+</td>
+</tr>
+<tr>
+<td>
+Timing Attributes
+</td>
+<td>
+<loc href="#timing-attribute-begin">begin</loc>,
+<loc href="#timing-attribute-dur">dur</loc>,
+<loc href="#timing-attribute-end">end</loc>,
+<loc href="#timing-attribute-timeContainer">timeContainer</loc>
+</td>
+</tr>
+</tbody>
+</table>
+<note role="explanation">
+<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 <specref ref="attribute-vocab-table"/> above.
+</p>
+</note>
+<note role="explanation">
+<p>All vocabulary defined by TTML consistently makes use of
+the so-called <emph>lowerCamelCase</emph> 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>
+</note>
+</div3>
+<div3 id="extension-vocabulary-overview">
+<head>Extension Catalog</head>
+<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>
+</div3>
+</div2>
+</div1>
+<div1 id="parameters">
+<head>Parameters</head>
+<p>This section specifies the <emph>parameters</emph> 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>
+<div2 id="parameter-element-vocabulary">
+<head>Parameter Element Vocabulary</head>
+<p>The following elements, all defined in the TT Parameter
+Namespace, specify parametric information that applies to a document
+or a content processor:</p>
+<ulist>
+<item><p><specref ref="parameter-vocabulary-profile"/></p></item>
+<item><p><specref ref="parameter-vocabulary-features"/></p></item>
+<item><p><specref ref="parameter-vocabulary-feature"/></p></item>
+<item><p><specref ref="parameter-vocabulary-extensions"/></p></item>
+<item><p><specref ref="parameter-vocabulary-extension"/></p></item>
+</ulist>
+<div3 id="parameter-vocabulary-profile">
+<head>ttp:profile</head>
+<p>The <el>ttp:profile</el> 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>
+<note role="clarification">
+<p>The difference between a <emph>feature</emph> and an
+<emph>extension</emph> 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 <specref ref="features"/>, 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>
+</note>
+<p>This specification defines two distinct uses of the <el>ttp:profile</el> element:</p>
+<ulist>
+<item>
+<p>as a child of the <el>head</el> element within a TTML document
+instance;</p>
+</item>
+<item>
+<p>as the root element of a TTML Profile Definition document
+instance;</p>
+</item>
+</ulist>
+<p>When a <el>tt:profile</el> 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 <el>tt:profile</el> 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 four such Profile Definition Documents in
+<specref ref="profiles"/>.</p>
+<p>The <el>ttp:profile</el> element accepts as its children zero or more
+elements in the <code>Metadata.class</code> element group, followed by
+zero or more <el>ttp:features</el> elements, followed by
+zero or more <el>ttp:extensions</el> elements.</p>
+<table id="elt-syntax-parameter-profile" role="syntax">
+<caption>XML Representation &ndash; Element Information Item: ttp:profile</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;ttp:profile
+  use = string
+  <loc href="#content-attribute-id">xml:id</loc> = ID
+  {<emph>any attribute not in default or any TT namespace</emph>}&gt;
+  <emph>Content:</emph> <loc href="#element-vocab-group-table">Metadata.class</loc>*, <loc href="#parameter-vocabulary-features">ttp:features</loc>*, <loc href="#parameter-vocabulary-extensions">ttp:extensions</loc>*
+&lt;/ttp:profile&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p>If specified, the <att>use</att> attribute must adhere to the
+<code>xsd:anyURI</code> data type defined by <bibref ref="xsd-2"/>,
+&sect;3.2.17, and, furthermore, must denote a profile designator in
+accordance with <specref ref="vocabulary-profiles"/>. In this case,
+the profile designator must refer to (1) a standard, predefined
+TTML Profile Definition Document as defined by <specref ref="profiles"/>,
+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 <el>ttp:profile</el> element.</p>
+<p>If the <att>use</att> attribute is not specified, then the baseline
+profile of the <el>ttp:profile</el> 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>
+<olist>
+<item>
+<p>initialize the features and extensions of the profile to the empty
+set;</p>
+</item>
+<item>
+<p>if a <att>use</att> attribute is present, then augment the profile
+with the set of features and extensions specified by the referenced
+baseline profile;</p>
+</item>
+<item>
+<p>for each <el>ttp:feature</el> and <el>ttp:extension</el> element
+descendant of the <el>ttp:profile</el> 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>
+</item>
+</olist>
+<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 <specref ref="profiles"/>.  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 <el>ttp:profile</el> element is illustrated by the following example.</p>
+<table id="parameter-vocabulary-profile-example-1" role="example">
+<caption>Example Fragment &ndash; ttp:profile</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&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;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<note role="explanation">
+<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>
+</note>
+</div3>
+<div3 id="parameter-vocabulary-features">
+<head>ttp:features</head>
+<p>The <el>ttp:features</el> element is a container element used to group
+infomation about feature support requirements.</p>
+<p>The <el>ttp:features</el> element accepts as its children zero or more
+elements in the <code>Metadata.class</code> element group, followed by
+zero or more <el>ttp:feature</el> elements.</p>
+<table id="elt-syntax-parameter-features" role="syntax">
+<caption>XML Representation &ndash; Element Information Item: ttp:features</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;ttp:features
+  xml:base = string : <emph>TT Feature Namespace</emph>
+  <loc href="#content-attribute-id">xml:id</loc> = ID
+  {<emph>any attribute not in default or any TT namespace</emph>}&gt;
+  <emph>Content:</emph> <loc href="#element-vocab-group-table">Metadata.class</loc>*, <loc href="#parameter-vocabulary-feature">ttp:feature</loc>*
+&lt;/ttp:features&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p>If specified, the <att>xml:base</att>
+attribute must (1) adhere to the
+<code>xsd:anyURI</code> data type defined by <bibref ref="xsd-2"/>,
+&sect;3.2.17, (2) express an absolute URI that
+adheres to <bibref ref="xmlbase"/> and,
+(3) express a feature namespace as defined by
+<specref ref="feature-designations"/>. If not specified, the
+<att>xml:base</att> attribute's default
+value applies, which is the TT Feature Namespace.</p>
+<p>The <att>xml:base</att> attribute is
+used to permit the abbreviation of feature designation URIs expressed
+by child <el>ttp:feature</el> elements.</p>
+</div3>
+<div3 id="parameter-vocabulary-feature">
+<head>ttp:feature</head>
+<p>The <el>ttp:feature</el> element is used to specify
+infomation about support requirements for a particular feature.</p>
+<p>The children of the <el>ttp:feature</el> element must express a non-empty
+sequence of character information items that adheres to the
+<code>xsd:anyURI</code> data type defined by <bibref ref="xsd-2"/>,
+&sect;3.2.17.</p>
+<table id="elt-syntax-parameter-feature" role="syntax">
+<caption>XML Representation &ndash; Element Information Item: ttp:feature</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;ttp:feature
+  value = (optional|required|use) : required
+  <loc href="#content-attribute-id">xml:id</loc> = ID
+  {<emph>any attribute not in default or any TT namespace</emph>}&gt;
+  <emph>Content:</emph> #PCDATA
+&lt;/ttp:feature&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p>If the URI expressed by the content of the <el>ttp:feature</el>
+element is a relative URI, then, when combined with the
+feature namespace value expressed by the
+<att>xml:base</att> attribute of the
+nearest ancestor <el>ttp:features</el> element, it must express an
+absolute URI.  In either case (original absolute URI or resulting
+absolutized URI), the URI expressed by the <el>ttp:feature</el>
+element must further adhere to the syntax of a feature designation as
+defined by <specref ref="feature-designations"/>.</p> <p>If
+the URI expressed by the content of the <el>ttp:feature</el> element
+is a relative URI, then an <att>xml:base</att> attribute should be
+specified on the nearest ancestor <el>ttp:features</el> element.</p>
+<p>The <att>value</att> 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 <att>value</att> 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 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) enable (activate) use of the
+feature.</p>
+
+<note role="clarification">
+<p>The default value of the <att>value</att> attribute is
+<code>required</code>, as indicated in the above element information
+item definition. Therefore, if a <att>value</att> attribute is not
+specified on a <el>ttp:feature</el> element, it is equivalent to
+specifying that support for the feature is required.</p>
+</note>
+<p>If the value of the <att>value</att> 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 <att>value</att> 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>The <el>ttp:feature</el> element is illustrated by the following example.</p>
+<table id="parameter-vocabulary-feature-example-1" role="example">
+<caption>Example Fragment &ndash; ttp:feature</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&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;
+    <phrase role="strong">&lt;ttp:feature value="required"&gt;#fontStyle-italic&lt;/ttp:feature&gt;</phrase>
+    <phrase role="strong">&lt;ttp:feature value="required"&gt;#textDecoration-under&lt;/ttp:feature&gt;</phrase>
+  &lt;/ttp:features&gt;
+&lt;/ttp:profile&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<note role="explanation">
+<p>In the above example, the DFXP presentation profile is used as the
+baseline profile. This baseline profile is then modified by two
+<el>ttp:feature</el> 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).  
+<!-- removed text:
+Note that
+the explicit specification of <code>required</code> on the
+<att>value</att> attribute on these two
+<el>ttp:feature</el> elements is not strictly
+necessary, since it is the default value of this
+attribute.--></p> 
+<p>The effect of this example is to express authorial intentions that
+italic font style and text underlining must be
+supported.</p>
+</note>
+</div3>
+<div3 id="parameter-vocabulary-extensions">
+<head>ttp:extensions</head>
+<p>The <el>ttp:extensions</el> element is a container element used to group
+infomation about extension support requirements.</p>
+<p>The <el>ttp:extensions</el> element accepts as its children zero or more
+elements in the <code>Metadata.class</code> element group, followed by
+zero or more <el>ttp:extension</el> elements.</p>
+<table id="elt-syntax-parameter-extensions" role="syntax">
+<caption>XML Representation &ndash; Element Information Item: ttp:extensions</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;ttp:extensions
+  xml:base = string : <emph>TT Extension Namespace</emph>
+  <loc href="#content-attribute-id">xml:id</loc> = ID
+  {<emph>any attribute not in default or any TT namespace</emph>}&gt;
+  <emph>Content:</emph> <loc href="#element-vocab-group-table">Metadata.class</loc>*, <loc href="#parameter-vocabulary-extension">ttp:extension</loc>*
+&lt;/ttp:extensions&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p>If specified, the <att>xml:base</att>
+attribute must (1) adhere to the
+<code>xsd:anyURI</code> data type defined by <bibref ref="xsd-2"/>,
+&sect;3.2.17, (2) express an absolute URI that
+adheres to <bibref ref="xmlbase"/> and,
+(3) express an extension namespace as defined by
+<specref ref="extension-designations"/>. If not specified, the
+<att>xml:base</att> attribute's default
+value applies, which is the TT Extension Namespace.</p>
+<p>The <att>xml:base</att> attribute is
+used to permit the abbreviation of feature designation URIs expressed
+by child <el>ttp:extension</el> elements.</p>
+</div3>
+<div3 id="parameter-vocabulary-extension">
+<head>ttp:extension</head>
+<p>The <el>ttp:extension</el> element is used to specify
+infomation about support requirements for a particular extension.</p>
+<p>The children of the <el>ttp:extension</el> element must express a non-empty
+sequence of character information items that adheres to the
+<code>xsd:anyURI</code> data type defined by <bibref ref="xsd-2"/>,
+&sect;3.2.17.</p>
+<table id="elt-syntax-parameter-extension" role="syntax">
+<caption>XML Representation &ndash; Element Information Item: ttp:extension</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;ttp:extension
+  value = (optional|required|use) : required
+  <loc href="#content-attribute-id">xml:id</loc> = ID
+  {<emph>any attribute not in default or any TT namespace</emph>}&gt;
+  <emph>Content:</emph> #PCDATA
+&lt;/ttp:extension&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p>If the URI expressed by the content of the <el>ttp:extension</el>
+element is a relative URI, then, when combined with the
+extension namespace value expressed by the
+<att>xml:base</att> attribute of the
+nearest ancestor <el>ttp:extensions</el> element, it must express an
+absolute URI.  In either case (original absolute URI or resulting
+absolutized URI), the URI expressed by the <el>ttp:extension</el>
+element must further adhere to the syntax of an extension designation
+as defined by <specref ref="extension-designations"/>.</p>
+<p>If the URI expressed by the content of the
+<el>ttp:feature</el> element is a relative URI, then an
+<att>xml:base</att> attribute should be specified on the nearest
+ancestor <el>ttp:extensions</el> element.</p>
+<p>The <att>value</att> 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 <att>value</att> 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>
+<note role="clarification">
+<p>The default value of the <att>value</att> attribute is
+<code>required</code>, as indicated in the above element information
+item definition. Therefore, if a <att>value</att> attribute is not
+specified on a <el>ttp:extension</el> element, it is equivalent to
+specifying that support for the extension is required.</p>
+</note>
+<p>If the value of the <att>value</att> 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 <att>value</att> 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 <el>ttp:extension</el> element is illustrated by the following example.</p>
+<table id="parameter-vocabulary-extension-example-1" role="example">
+<caption>Example Fragment &ndash; ttp:extension</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&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;
+    <phrase role="strong">&lt;ttp:extension value="use"&gt;#prefilter-by-language&lt;/ttp:extension&gt;</phrase>
+  &lt;/ttp:extensions&gt;
+&lt;/ttp:profile&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<note role="explanation">
+<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>
+</note>
+</div3>
+</div2>
+<div2 id="parameter-attribute-vocabulary">
+<head>Parameter Attribute Vocabulary</head>
+<p>The following attributes are defined in the TT Parameter Namespace.</p>
+<ulist>
+<item><p><specref ref="parameter-attribute-cellResolution"/></p></item>
+<item><p><specref ref="parameter-attribute-clockMode"/></p></item>
+<item><p><specref ref="parameter-attribute-dropMode"/></p></item>
+<item><p><specref ref="parameter-attribute-frameRate"/></p></item>
+<item><p><specref ref="parameter-attribute-frameRateMultiplier"/></p></item>
+<item><p><specref ref="parameter-attribute-markerMode"/></p></item>
+<item><p><specref ref="parameter-attribute-pixelAspectRatio"/></p></item>
+<item><p><specref ref="parameter-attribute-profile"/></p></item>
+<item><p><specref ref="parameter-attribute-subFrameRate"/></p></item>
+<item><p><specref ref="parameter-attribute-tickRate"/></p></item>
+<item><p><specref ref="parameter-attribute-timeBase"/></p></item>
+</ulist>
+<p>Unless explicitly stated otherwise, linear white-space (LWSP) may
+appear between tokens of a value of a TT Parameter.</p>
+<div3 id="parameter-attribute-cellResolution">
+<head>ttp:cellResolution</head>
+<p>The <att>ttp:cellResolution</att> 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>
+<table id="parameter-attribute-cellResolution-syntax" role="syntax">
+<caption>Syntax Representation &ndash; ttp:cellResolution</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+ttp:cellResolution
+  : columns rows                            // <emph>columns</emph> != 0; <emph>rows</emph> != 0
+
+columns | rows
+  : <loc href="#style-value-digit">&lt;digit&gt;</loc>+
+</eg>
+</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>
+<note role="motivation">
+<p>The choice of values 32 and 15 are based on this being the
+maximum number of columns and rows defined by <bibref
+ref="cea608c"/>.</p>
+</note>
+<p>A <att>ttp:cellResolution</att> attribute is considered to be significant only
+when specified on the <el>tt</el> element.</p>
+<note role="explanation">
+<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>
+</note>
+</div3>
+<div3 id="parameter-attribute-clockMode">
+<head>ttp:clockMode</head>
+<p>The <att>ttp:clockMode</att> 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 <specref
+ref="parameter-attribute-timeBase"/>.</p>
+<note role="explanation">
+<p>See <specref ref="timing-time-value-expressions"/> for the
+specification of time expression syntax.</p>
+</note>
+<p>If specified, the value of this attribute must adhere to the following syntax:</p>
+<table id="parameter-attribute-clockMode-syntax" role="syntax">
+<caption>Syntax Representation &ndash; ttp:clockMode</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+ttp:clockMode
+  : "local"
+  | "gps"
+  | "utc"
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p>If the time base, defined by <specref
+ref="parameter-attribute-timeBase"/>, 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
+<bibref ref="utc"/>;
+if <code>gps</code>, then time expressions are
+interpreted as GPS time coordinates
+<bibref ref="gps"/>.</p>
+<note role="explanation">
+<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 (<emph>Temp Atomique International</emph>) + <emph>leap seconds
+accumulated since 1972</emph>. TAI is maintained by the <emph>Bureau
+International des Poids et Mesures</emph> (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>
+</note>
+<p>If not specified, the value of this parameter must be considered
+to be <code>utc</code>.</p>
+<p>A <att>ttp:clockMode</att> attribute is considered to be significant only
+when specified on the <el>tt</el> element.</p>
+</div3>
+<div3 id="parameter-attribute-dropMode">
+<head>ttp:dropMode</head>
+<p>The <att>ttp:dropMode</att> attribute is used to specify
+constraints on the interpretation and use of frame counts
+that correspond with <bibref ref="smpte12m"/> time coordinates when operating
+with time base of <code>smpte</code> as defined by
+<specref ref="parameter-attribute-timeBase"/>.</p>
+<p>If specified, the value of this attribute must adhere to the following syntax:</p>
+<table id="parameter-attribute-dropMode-syntax" role="syntax">
+<caption>Syntax Representation &ndash; ttp:dropMode</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+ttp:dropMode
+  : "dropNTSC"
+  | "dropPAL"
+  | "nonDrop"
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p>If the time base, defined by <specref
+ref="parameter-attribute-timeBase"/>, 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
+<emph>N&minus;1</emph>, where <emph>N</emph> is the value specified by
+the <att>ttp:frameRate</att> parameter, but while ignoring any value
+specified by the <att>ttp:frameRateMultiplier</att> parameter.</p>
+<note role="clarification"> <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
+<att>ttp:frameRateMultiplier</att> 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></note>
+<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 <emph>N&minus;1</emph>, where <emph>N</emph> is
+the value specified by the <att>ttp:frameRate</att> parameter, but
+while ignoring any value specified by the
+<att>ttp:frameRateMultiplier</att> 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>
+<note role="example"> <p>For example, when operating in <code>dropNTSC</code>
+mode with <att>ttp:frameRate</att> 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></note>
+<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 <emph>N&minus;1</emph>, where <emph>N</emph> is
+the value specified by the <att>ttp:frameRate</att> parameter, but
+while ignoring any value specified by the
+<att>ttp:frameRateMultiplier</att> 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>
+<note role="example"><p>For example, when operating in <code>dropPAL</code>
+mode with <att>ttp:frameRate</att> 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:04</code>.</p></note>
+<note role="explanation">
+<p>The <code>dropPAL</code> mode is also known as the
+<emph>M/PAL</emph> or <emph>PAL (M)</emph> 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>
+</note>
+<p>If not specified, then <code>nonDrop</code> must be assumed to apply.</p>
+<p>A <att>ttp:dropMode</att> attribute is considered to be significant only
+when specified on the <el>tt</el> element.</p>
+</div3>
+<div3 id="parameter-attribute-frameRate">
+<head>ttp:frameRate</head>
+<p>The <att>ttp:frameRate</att> 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>
+<table id="parameter-attribute-frameRate-syntax" role="syntax">
+<caption>Syntax Representation &ndash; ttp:frameRate</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+ttp:frameRate
+  : <loc href="#style-value-digit">&lt;digit&gt;</loc>+                                // <emph>value</emph> > 0
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p>The frame rate that applies to a document instance is used to
+interpret time expressions that are expressed in <emph>frames</emph>
+as defined by <specref ref="timing-value-timeExpression"/>.</p>
+<p>A frame is interpreted as a division of a second of media
+time, such that if the frame rate is specified as <emph>F</emph>, then
+a second of media time is divided into <emph>F</emph> intervals of
+equal duration, where each interval is labeled as frame <emph>f</emph>,
+with <emph>f</emph> &isin; [0&hellip;<emph>F&minus;1</emph>].</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 <att>ttp:frameRate</att> attribute is considered to be significant only
+when specified on the <el>tt</el> element.</p>
+</div3>
+<div3 id="parameter-attribute-frameRateMultiplier">
+<head>ttp:frameRateMultiplier</head>
+<p>The <att>ttp:frameRateMultiplier</att> attribute is used to
+specify a multiplier to be applied to the frame rate specified by a
+<att>ttp:frameRate</att> 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>
+<table id="parameter-attribute-frameRateMultiplier-syntax" role="syntax">
+<caption>Syntax Representation &ndash; ttp:frameRateMultiplier</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+ttp:frameRateMultiplier
+  : numerator denominator                   // <emph>numerator</emph> != 0; <emph>denominator</emph> != 0
+
+numerator | denominator
+  : <loc href="#style-value-digit">&lt;digit&gt;</loc>+
+</eg>
+</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 <att>ttp:frameRateMultiplier</att> attribute is considered to be significant only
+when specified on the <el>tt</el> element.</p>
+<note role="example">
+<p>The frame rate multiplier used for synchronizing with NTSC <bibref
+ref="smpte170m"/>
+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&hellip;Hz (= 5.0MHz &mult; 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&hellip; (= 30 &mult; 1000/1001) frames per
+second. Other frame rate multipliers apply to different regions of
+usage and video format standards.</p>
+</note>
+<note role="example">
+<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>
+</note>
+</div3>
+<div3 id="parameter-attribute-markerMode">
+<head>ttp:markerMode</head>
+<p>The <att>ttp:markerMode</att> attribute is used to specify
+constraints on the interpretation and use of time expressions
+that correspond with <bibref ref="smpte12m"/> time coordinates when operating
+with time base of <code>smpte</code> as defined by
+<specref ref="parameter-attribute-timeBase"/>.</p>
+<p>If specified, the value of this attribute must adhere to the following syntax:</p>
+<table id="parameter-attribute-markerMode-syntax" role="syntax">
+<caption>Syntax Representation &ndash; ttp:markerMode</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+ttp:markerMode
+  : "continuous"
+  | "discontinuous"
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p>If the time base, defined by <specref
+ref="parameter-attribute-timeBase"/>, is designated as
+<code>smpte</code>, then this parameter applies as follows: if the
+parameter's value is <code>continuous</code>, then <bibref ref="smpte12m"/> 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>continuous</code>.</p>
+<p>A <att>ttp:markerMode</att> attribute is considered to be significant only
+when specified on the <el>tt</el> element.</p>
+<p>If a value of <code>discontinuous</code> applies, then time
+expressions must not be converted to either media time or 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>
+<note role="explanation">
+<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 some external synchronization
+context 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>
+</note>
+<note role="explanation">
+<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 <att>ttp:dropMode</att> parameter. In particular,
+even if the <att>ttp:dropMode</att> 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>
+</note>
+</div3>
+<div3 id="parameter-attribute-pixelAspectRatio">
+<head>ttp:pixelAspectRatio</head>
+<p>The <att>ttp:pixelAspectRatio</att> 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>
+<table id="parameter-attribute-pixelAspectRatio-syntax" role="syntax">
+<caption>Syntax Representation &ndash; ttp:pixelAspectRatio</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+ttp:pixelAspectRatio
+  : width height                            // <emph>width</emph> != 0; <emph>height</emph> != 0
+
+width | height
+  : <loc href="#style-value-digit">&lt;digit&gt;</loc>+
+</eg>
+</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 <att>ttp:pixelAspectRatio</att> attribute is considered to be significant only
+when specified on the <el>tt</el> element.</p>
+<note role="explanation">
+<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>
+</note>
+</div3>
+<div3 id="parameter-attribute-profile">
+<head>ttp:profile</head>
+<p>The <att>ttp:profile</att> 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 <bibref ref="xsd-2"/>,
+&sect;3.2.17, and, further, must specify a
+profile designator in accordance with
+<specref ref="vocabulary-profiles"/>.</p>
+<p>A <att>ttp:profile</att>
+attribute is considered to be significant only when specified on the
+<el>tt</el> element.</p>
+</div3>
+<div3 id="parameter-attribute-subFrameRate">
+<head>ttp:subFrameRate</head>
+<p>The <att>ttp:subFrameRate</att> 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>
+<table id="parameter-attribute-subFrameRate-syntax" role="syntax">
+<caption>Syntax Representation &ndash; ttp:subFrameRate</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+ttp:subFrameRate
+  : <loc href="#style-value-digit">&lt;digit&gt;</loc>+                                // <emph>value</emph> > 0
+</eg>
+</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 <emph>sub-frames</emph>
+as defined by <specref ref="timing-value-timeExpression"/>.</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 <emph>S</emph>, then
+a frame of media time is divided into <emph>S</emph> intervals of
+equal duration, where each interval is labeled as sub-frame <emph>s</emph>,
+with <emph>s</emph> &isin; [0&hellip;<emph>S&minus;1</emph>].</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 <att>ttp:subFrameRate</att> attribute is considered to be significant only
+when specified on the <el>tt</el> element.</p>
+<note role="clarification">
+<p>The sub-frame is sometimes referred to as a <emph>field</emph> in
+the context of synchronization with an interlaced video media object.</p>
+</note>
+</div3>
+<div3 id="parameter-attribute-tickRate">
+<head>ttp:tickRate</head>
+<p>The <att>ttp:tickRate</att> 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>
+<table id="parameter-attribute-tickRate-syntax" role="syntax">
+<caption>Syntax Representation &ndash; ttp:tickRate</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+ttp:tickRate
+  : <loc href="#style-value-digit">&lt;digit&gt;</loc>+                                // <emph>value</emph> > 0
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p>The tick rate that applies to a document instance is used to
+interpret time expressions that are expressed in <emph>ticks</emph> by
+using the <code>t</code> metric as defined by <specref
+ref="timing-value-timeExpression"/>.</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 <emph>T</emph>, then
+a second of media time is divided into <emph>T</emph> intervals of
+equal duration, where each interval is labeled as tick <emph>t</emph>,
+with <emph>t</emph> &isin; [0&hellip;<emph>T&minus;1</emph>].</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>
+<note role="clarification">
+<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>
+</note>
+<p>A <att>ttp:tickRate</att> attribute is considered to be significant only
+when specified on the <el>tt</el> element.</p>
+</div3>
+<div3 id="parameter-attribute-timeBase">
+<head>ttp:timeBase</head>
+<p>The <att>ttp:timeBase</att> 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>
+<table id="parameter-attribute-timeBase-syntax" role="syntax">
+<caption>Syntax Representation &ndash; ttp:timeBase</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+ttp:timeBase
+  : "media"
+  | "smpte"
+  | "clock"
+</eg>
+</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>
+<note role="explanation">
+<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>
+</note>
+<p>If the time base is designated as <code>smpte</code>,
+then a time expression denotes a <bibref ref="smpte12m"/> time
+coordinate with which the content of a document instance is to
+be synchronized.  In this case, the value of the <att>ttp:markerMode</att> 
+and <att>ttp:dropMode</att> parameters apply, as defined by <specref
+ref="parameter-attribute-markerMode"/> and <specref
+ref="parameter-attribute-dropMode"/>, respectively.</p>
+<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 <att>ttp:timeBase</att> attribute is considered to be significant only
+when specified on the <el>tt</el> 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>
+<note role="example">
+<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>
+</note>
+<p>When operating with the <code>clock</code> time base,
+the expression <emph>media time</emph> as used in this specification is
+to be interpreted as the real-time clock selected by
+<specref ref="parameter-attribute-clockMode"/>.</p>
+</div3>
+</div2>
+</div1>
+<div1 id="content">
+<head>Content</head>
+<p>This section specifies the <emph>content</emph> matter of the core
+vocabulary catalog.</p>
+<div2 id="content-element-vocabulary">
+<head>Content Element Vocabulary</head>
+<p>The following elements specify the structure and principal content aspects of a
+document instance:</p>
+<ulist>
+<item><p><specref ref="document-structure-vocabulary-tt"/></p></item>
+<item><p><specref ref="document-structure-vocabulary-head"/></p></item>
+<item><p><specref ref="document-structure-vocabulary-body"/></p></item>
+<item><p><specref ref="content-vocabulary-div"/></p></item>
+<item><p><specref ref="content-vocabulary-p"/></p></item>
+<item><p><specref ref="content-vocabulary-span"/></p></item>
+<item><p><specref ref="content-vocabulary-br"/></p></item>
+</ulist>
+<div3 id="document-structure-vocabulary-tt">
+<head>tt</head>
+<p>The <el>tt</el> element serves as the root document element of a document
+instance.</p>
+<p>The <el>tt</el> element accepts as its children zero or one <el>head</el> element followed by
+zero or one <el>body</el> element.</p>
+<table id="elt-syntax-tt" role="syntax">
+<caption>XML Representation &ndash; Element Information Item: tt</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;tt
+  <loc href="#style-attribute-extent">tts:extent</loc> = string
+  <loc href="#content-attribute-id">xml:id</loc> = ID
+  <loc href="#content-attribute-lang"><phrase role="reqattr">xml:lang</phrase></loc> = string
+  <loc href="#content-attribute-space">xml:space</loc> = (<emph>default</emph>|<emph>preserve</emph>) : default
+  {<emph>any attribute in TT Parameter namespace</emph>}
+  {<emph>any attribute not in default or any TT namespace</emph>}&gt;
+  <emph>Content:</emph> <loc href="#document-structure-vocabulary-head">head</loc>?, <loc href="#document-structure-vocabulary-body">body</loc>?
+&lt;/tt&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p>The temporal beginning and ending of a document instance represented by a
+<el>tt</el> element is defined in relationship with some external
+application or presentation context. The temporal interval defined by
+these points is referred to subsequently as the <emph>external time interval</emph>.
+</p>
+<p>A document instance has an implicit duration that is equal to the
+implicit duration of the <el>body</el> element of the document, if present, or zero,
+if not present.</p>
+<p>If the <att>tts:extent</att> attribute is specified on the <el>tt</el>
+element, then it must adhere to <specref ref="style-attribute-extent"/>, in which case it
+specifies the spatial extent of the root container region in
+which content regions are located and presented. If no <att>tts:extent</att>
+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 external
+authoring context.</p>
+<p>An <att>xml:lang</att> attribute must be specified on the <el>tt</el> 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 <att>xml:space</att> attribute is specified upon the <el>tt</el> element, then it must
+be considered as if the attribute had been specified with a value of <code>default</code>.</p>
+</div3>
+<div3 id="document-structure-vocabulary-head">
+<head>head</head>
+<p>The <el>head</el> element is a container element used to group
+header matter, including metadata,
+profile, styling, and layout information.</p>
+<p>The <el>head</el> 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 <el>styling</el> element,
+followed by zero or one <el>layout</el> 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 <el>head</el> 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 <el>head</el> element.</p>
+<p>A <el>styling</el> 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 <el>layout</el> child element is used to specify layout constructs that
+are referenced by content elements.</p>
+<table id="elt-syntax-head" role="syntax">
+<caption>XML Representation &ndash; Element Information Item: head</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;head
+  <loc href="#content-attribute-id">xml:id</loc> = ID
+  <loc href="#content-attribute-lang">xml:lang</loc> = string
+  <loc href="#content-attribute-space">xml:space</loc> = (<emph>default</emph>|<emph>preserve</emph>)
+  {<emph>any attribute not in default or any TT namespace</emph>}&gt;
+  <emph>Content:</emph> <loc href="#element-vocab-group-table">Metadata.class</loc>*, <loc href="#element-vocab-group-table">Parameters.class</loc>*, <loc href="#styling-vocabulary-styling">styling</loc>?, <loc href="#layout-vocabulary-layout">layout</loc>?
+&lt;/head&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p>To the extent that time semantics apply to the content of the
+<el>head</el> element, the implied time interval of this element is
+defined to be coterminous with the external time interval.</p>
+</div3>
+<div3 id="document-structure-vocabulary-body">
+<head>body</head>
+<p>The <el>body</el> 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 <el>body</el> 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 <el>div</el> elements.</p>
+<p>Any metadata specified by children in the <code>Metadata.class</code>
+element group applies semantically to the <el>body</el> 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 <el>body</el> element.</p>
+<table id="elt-syntax-body" role="syntax">
+<caption>XML Representation &ndash; Element Information Item: body</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;body
+  <loc href="#timing-attribute-begin">begin</loc> = <loc href="#timing-value-timeExpression">&lt;timeExpression&gt;</loc>
+  <loc href="#timing-attribute-dur">dur</loc> = <loc href="#timing-value-timeExpression">&lt;timeExpression&gt;</loc>
+  <loc href="#timing-attribute-end">end</loc> = <loc href="#timing-value-timeExpression">&lt;timeExpression&gt;</loc>
+  <loc href="#layout-attribute-region">region</loc> = IDREF
+  <loc href="#style-attribute-style">style</loc> = IDREFS
+  <loc href="#timing-attribute-timeContainer">timeContainer</loc> = (<emph>par</emph>|<emph>seq</emph>)
+  <loc href="#content-attribute-id">xml:id</loc> = ID
+  <loc href="#content-attribute-lang">xml:lang</loc> = string
+  <loc href="#content-attribute-space">xml:space</loc> = (<emph>default</emph>|<emph>preserve</emph>)
+  {<emph>any attribute in TT Metadata namespace</emph>}
+  {<emph>any attribute in TT Style namespace</emph>}
+  {<emph>any attribute not in default or any TT namespace</emph>}&gt;
+  <emph>Content:</emph> <loc href="#element-vocab-group-table">Metadata.class</loc>*, <loc href="#element-vocab-group-table">Animation.class</loc>*, <loc href="#content-vocabulary-div">div</loc>*
+&lt;/body&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p>An author may specify a temporal interval for a <el>body</el> element using
+the <att>begin</att>, <att>dur</att>, and <att>end</att> attributes. If the begin point
+of this interval remains unspecified, then the begin point is interpreted as the begin
+point of the external time interval. Similarly, if the end point of this interval remains unspecified, then the
+end point is interpreted as the end point of the external time interval.</p>
+<note role="explanation">
+<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>
+</note>
+<p>If relative begin or end times are specified on the <el>body</el>
+element, then these times are resolved by reference to the begin and
+end time of the external time interval.</p>
+<p>If the external time interval is shorter than the computed duration of the
+<el>body</el> element, then the active time interval of a document instance is
+truncated to the active end point of the external time interval.</p>
+<p>An author may associate a set of style properties with a
+<el>body</el> element by means of either the <att>style</att>
+attribute or inline style attributes or a combination thereof.</p>
+<note role="explanation">
+<p>Style properties that are associated with a <el>body</el> element
+in a document instance are available for style inheritance by
+descendant content elements such as <el>div</el>, <el>p</el>,
+<el>span</el>
+and <el>br</el>.</p>
+</note>
+<p>If no <att>timeContainer</att> attribute is specified on a
+<el>body</el> element, then it must be interpreted as having
+<emph>parallel</emph>
+time containment semantics.</p>
+</div3>
+<div3 id="content-vocabulary-div">
+<head>div</head>
+<p>The <el>div</el> 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>
+<note role="explanation">
+<p>When rendered on a continuous (non-paged) visual presentation medium,
+a <el>div</el> element is expected to generate
+one or more block
+areas
+that contain zero or more child block areas
+generated by the <el>div</el> element's
+descendant
+<el>p</el> elements.
+</p>
+<p>If some
+block area generated by a <el>div</el> element does
+not contain any child areas, then it is not expected to be presented.</p>
+</note>
+<p>The <el>div</el> 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
+<el>div</el> or 
+<el>p</el> elements.</p>
+<p>Any metadata specified by children in the <code>Metadata.class</code>
+element group applies semantically to the <el>div</el> 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 <el>div</el> element.</p>
+<table id="elt-syntax-div" role="syntax">
+<caption>XML Representation &ndash; Element Information Item: div</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;div
+  <loc href="#timing-attribute-begin">begin</loc> = <loc href="#timing-value-timeExpression">&lt;timeExpression&gt;</loc>
+  <loc href="#timing-attribute-dur">dur</loc> = <loc href="#timing-value-timeExpression">&lt;timeExpression&gt;</loc>
+  <loc href="#timing-attribute-end">end</loc> = <loc href="#timing-value-timeExpression">&lt;timeExpression&gt;</loc>
+  <loc href="#layout-attribute-region">region</loc> = IDREF
+  <loc href="#style-attribute-style">style</loc> = IDREFS
+  <loc href="#timing-attribute-timeContainer">timeContainer</loc> = (<emph>par</emph>|<emph>seq</emph>)
+  <loc href="#content-attribute-id">xml:id</loc> = ID
+  <loc href="#content-attribute-lang">xml:lang</loc> = string
+  <loc href="#content-attribute-space">xml:space</loc> = (<emph>default</emph>|<emph>preserve</emph>)
+  {<emph>any attribute in TT Metadata namespace</emph>}
+  {<emph>any attribute in TT Style namespace</emph>}
+  {<emph>any attribute not in default or any TT namespace</emph>}&gt;
+  <emph>Content:</emph> <loc
+  href="#element-vocab-group-table">Metadata.class</loc>*, <loc
+  href="#element-vocab-group-table">Animation.class</loc>*, <loc
+  href="#element-vocab-group-table">Block.class</loc>*
+&lt;/div&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p>An author may associate a set of style properties with a <el>div</el> element by means of either
+the <att>style</att> attribute or inline style attributes or a combination thereof.</p>
+<note role="explanation">
+<p>Style properties that are associated
+with
+a <el>div</el> element in a document instance
+are available for style inheritance by descendant content elements such as
+<el>div</el>, 
+<el>p</el>,
+<el>span</el>, and
+<el>br</el>.</p>
+</note>
+<p>If no <att>timeContainer</att> attribute is specified on
+a <el>div</el> element, then it must be interpreted as having
+<emph>parallel</emph> time containment semantics.</p>
+</div3>
+<div3 id="content-vocabulary-p">
+<head>p</head>
+<p>A <el>p</el> element represents a logical paragraph, serving as
+a transition between block level and inline level formatting semantics.</p>
+<p>The <el>p</el> 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 <el>p</el> 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 <el>p</el> element.</p>
+<table id="elt-syntax-p" role="syntax">
+<caption>XML Representation &ndash; Element Information Item: p</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;p
+  <loc href="#timing-attribute-begin">begin</loc> = <loc href="#timing-value-timeExpression">&lt;timeExpression&gt;</loc>
+  <loc href="#timing-attribute-dur">dur</loc> = <loc href="#timing-value-timeExpression">&lt;timeExpression&gt;</loc>
+  <loc href="#timing-attribute-end">end</loc> = <loc href="#timing-value-timeExpression">&lt;timeExpression&gt;</loc>
+  <loc href="#layout-attribute-region">region</loc> = IDREF
+  <loc href="#style-attribute-style">style</loc> = IDREFS
+  <loc href="#timing-attribute-timeContainer">timeContainer</loc> = (<emph>par</emph>|<emph>seq</emph>)
+  <loc href="#content-attribute-id">xml:id</loc> = ID
+  <loc href="#content-attribute-lang">xml:lang</loc> = string
+  <loc href="#content-attribute-space">xml:space</loc> = (<emph>default</emph>|<emph>preserve</emph>)
+  {<emph>any attribute in TT Metadata namespace</emph>}
+  {<emph>any attribute in TT Style namespace</emph>}
+  {<emph>any attribute not in default or any TT namespace</emph>}&gt;
+  <emph>Content:</emph> <loc
+  href="#element-vocab-group-table">Metadata.class</loc>*, <loc
+  href="#element-vocab-group-table">Animation.class</loc>*, <loc
+  href="#element-vocab-group-table">Inline.class</loc>*
+&lt;/p&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p>An author may associate a set of style properties with a
+<el>p</el> element by means of either the <att>style</att>
+attribute or inline style attributes or a combination thereof.</p>
+<note role="explanation">
+<p>Style properties that are associated with a <el>p</el> element
+in a document instance are available for style inheritance by
+descendant content elements such as <el>span</el> and
+<el>br</el>.</p>
+</note>
+<p>If no <att>timeContainer</att> attribute is specified on
+a <el>p</el> element, then it must be interpreted as having
+<emph>parallel</emph> time containment semantics.</p>
+<p>If a sequence of children of a <el>p</el> element
+consists solely of character information items, then that sequence must
+be considered to be an <emph>anonymous span</emph> for the purpose of
+applying style properties that apply to <el>span</el> elements.</p>
+</div3>
+<div3 id="content-vocabulary-span">
+<head>span</head>
+<p>The <el>span</el> 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 <el>span</el> element is intended to
+generate a sequence of inline areas, each containing one or more glyph areas.</p>
+<p>The <el>span</el> 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
+<el>span</el> elements,
+<el>br</el> 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 <el>span</el> 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 <el>span</el> element.</p>
+<table id="elt-syntax-span" role="syntax">
+<caption>XML Representation &ndash; Element Information Item: span</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;span
+  <loc href="#timing-attribute-begin">begin</loc> = <loc href="#timing-value-timeExpression">&lt;timeExpression&gt;</loc>
+  <loc href="#timing-attribute-dur">dur</loc> = <loc href="#timing-value-timeExpression">&lt;timeExpression&gt;</loc>
+  <loc href="#timing-attribute-end">end</loc> = <loc href="#timing-value-timeExpression">&lt;timeExpression&gt;</loc>
+  <loc href="#layout-attribute-region">region</loc> = IDREF
+  <loc href="#style-attribute-style">style</loc> = IDREFS
+  <loc href="#timing-attribute-timeContainer">timeContainer</loc> = (<emph>par</emph>|<emph>seq</emph>)
+  <loc href="#content-attribute-id">xml:id</loc> = ID
+  <loc href="#content-attribute-lang">xml:lang</loc> = string
+  <loc href="#content-attribute-space">xml:space</loc> = (<emph>default</emph>|<emph>preserve</emph>)
+  {<emph>any attribute in TT Metadata namespace</emph>}
+  {<emph>any attribute in TT Style namespace</emph>}
+  {<emph>any attribute not in default or any TT namespace</emph>}&gt;
+  <emph>Content:</emph> <loc
+  href="#element-vocab-group-table">Metadata.class</loc>*, <loc
+  href="#element-vocab-group-table">Animation.class</loc>*, <loc
+  href="#element-vocab-group-table">Inline.class</loc>*
+&lt;/span&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p>An author may associate a set of style properties with a
+<el>span</el> element by means of either the <att>style</att>
+attribute or inline style attributes or a combination thereof.</p>
+<note role="explanation">
+<p>Style properties that are associated with a <el>span</el> element
+in a document instance are available for style inheritance by
+descendant content elements such as <el>span</el> and
+<el>br</el>.</p>
+</note>
+<p>If no <att>timeContainer</att> attribute is specified on
+a <el>span</el> element, then it must be interpreted as having
+<emph>parallel</emph> time containment semantics.</p>
+</div3>
+<div3 id="content-vocabulary-br">
+<head>br</head>
+<p>The <el>br</el> element denotes an explicit line break.</p>
+<table id="elt-syntax-br" role="syntax">
+<caption>XML Representation &ndash; Element Information Item: br</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;br
+  <loc href="#style-attribute-style">style</loc> = IDREFS
+  <loc href="#content-attribute-id">xml:id</loc> = ID
+  <loc href="#content-attribute-lang">xml:lang</loc> = string
+  <loc href="#content-attribute-space">xml:space</loc> = (<emph>default</emph>|<emph>preserve</emph>)
+  {<emph>any attribute in TT Metadata namespace</emph>}
+  {<emph>any attribute in TT Style namespace</emph>}
+  {<emph>any attribute not in default or any TT namespace</emph>}&gt;
+  <emph>Content:</emph> <loc href="#element-vocab-group-table">Metadata.class</loc>*, <loc href="#element-vocab-group-table">Animation.class</loc>*
+&lt;/br&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p>When presented on a visual medium, the presence of a <el>br</el> element must be
+interpreted as a forced line break.</p>
+<note>
+<p>The visual presentation of a <el>br</el> element is
+intended to produce the same effect as the ASCII control code
+<code>CR</code>
+followed by the control code <code>NL</code> when presented on a teletype device.
+Therefore, two <el>br</el> elements in sequence will produce a
+different effect than a single <el>br</el> element.</p>
+</note>
+</div3>
+</div2>
+<div2 id="content-attribute-vocabulary">
+<head>Content Attribute Vocabulary</head>
+<p>This section defines the following common attributes used with many or all element types
+in the core vocabulary catalog:</p>
+<ulist>
+<item><p><specref ref="content-attribute-id"/></p></item>
+<item><p><specref ref="content-attribute-lang"/></p></item>
+<item><p><specref ref="content-attribute-space"/></p></item>
+</ulist>
+<div3 id="content-attribute-id">
+<head>xml:id</head>
+<p>The <att>xml:id</att> attribute is used as defined by
+<bibref ref="xmlid"/>.</p>
+<p>The <att>xml:id</att> attribute may be used with any element in the
+core vocabulary catalog.</p>
+</div3>
+<div3 id="content-attribute-lang">
+<head>xml:lang</head>
+<p>The <att>xml:lang</att> attribute is used as defined by
+<bibref ref="xml10"/>, &sect;2.12, <emph>Language Identification</emph>.</p>
+<p>The <att>xml:lang</att> attribute must be specified on the <el>tt</el>
+element and may be specified by an instance of any other element type
+in the core vocabulary catalog.</p>
+</div3>
+<div3 id="content-attribute-space">
+<head>xml:space</head>
+<p>The <att>xml:space</att> attribute is used as defined by
+<bibref ref="xml10"/>, &sect;2.10, <emph>White Space Handling</emph>.</p>
+<p>The <att>xml:space</att> attribute may be used with any element in
+the core vocabulary catalog.</p>
+<!-- OLD DEFINITION
+<p>The semantics of the value <code>default</code> are fixed to mean that
+white space that appears in element content as defined by <bibref
+ref="xml10"/>, &sect;3.2.1, must be normalized at the
+application layer during subsequent processing, such as presentation or
+transformation processing, as follows:</p>
+<olist>
+<item><p>replace each TAB character (<code>&amp;#x0009;</code>) and NEWLINE character (<code>&amp;#x000A;</code>) with a SPACE
+character (<code>&amp;#x0020;</code>);</p></item>
+<item><p>replace each sequence of two or more SPACE characters with a
+single SPACE character;</p></item>
+<item><p>for every maximum sequence of sibling character information
+items, if there is a leading or trailing SPACE character in the
+sequence, then remove the character.</p></item>
+</olist>
+-->
+<!-- NEW DEFINITION -->
+<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 <specref ref="semantics-region-layout-step-2"/>,
+processing must occur as
+if the following properties were specified on the affected
+<!-- changed for future CSS compatibility
+elements of the intermediate XSL-FO document:</p> 
+-->
+elements of an equivalent intermediate XSL-FO document:</p>
+<ulist>
+<item>
+<p><code>suppress-at-line-break="auto"</code></p>
+</item>
+<item>
+<p><code>linefeed-treatment="treat-as-space"</code></p>
+</item>
+<item>
+<p><code>white-space-collapse="true"</code></p>
+</item>
+<item>
+<p><code>white-space-treatment="ignore-if-surrounding-linefeed"</code></p>
+</item>
+</ulist>
+<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
+<!-- changed for future CSS compatibility
+elements of the intermediate XSL-FO document:</p> 
+-->
+elements of an equivalent intermediate XSL-FO document:
+</p>
+<ulist>
+<item>
+<p><code>suppress-at-line-break="retain"</code></p>
+</item>
+<item>
+<p><code>linefeed-treatment="preserve"</code></p>
+</item>
+<item>
+<p><code>white-space-collapse="false"</code></p>
+</item>
+<item>
+<p><code>white-space-treatment="preserve"</code></p>
+</item>
+</ulist>
+<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 <att>xml:space</att> attribute
+is processor dependent, but should respect the semantics described
+above if possible.</p>
+</div3>
+</div2>
+</div1>
+<div1 id="styling">
+<head>Styling</head>
+<p>This section specifies the <emph>styling</emph> 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>
+  <!-- added for future CSS compatibility -->
+  <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 <bibref ref="xsl11"/>. 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 <bibref ref="css2"/> is a subset of this model, a CSS processor may be used 
+    for the features that the models have in common.
+  </p>
+  <!-- end addition -->
+  <p>No normative use of an
+<code>&lt;?xml-stylesheet ... ?&gt;</code> processing instruction is defined
+by this specification.</p>
+<div2 id="styling-element-vocabulary">
+<head>Styling Element Vocabulary</head>
+<p>The following elements specify the structure and principal styling aspects of a
+document instance:</p>
+<ulist>
+<item><p><specref ref="styling-vocabulary-styling"/></p></item>
+<item><p><specref ref="styling-vocabulary-style"/></p></item>
+</ulist>
+<div3 id="styling-vocabulary-styling">
+<head>styling</head>
+<p>The <el>styling</el> element is a container element used to group
+styling matter, including metadata that applies to styling matter.</p>
+<p>The <el>styling</el> element accepts as its children zero or more
+elements in the <code>Metadata.class</code> element group, followed by
+zero or more <el>style</el> elements.</p>
+<table id="elt-syntax-styling" role="syntax">
+<caption>XML Representation &ndash; Element Information Item: styling</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;styling
+  <loc href="#content-attribute-id">xml:id</loc> = ID
+  <loc href="#content-attribute-lang">xml:lang</loc> = string
+  <loc href="#content-attribute-space">xml:space</loc> = (<emph>default</emph>|<emph>preserve</emph>)
+  {<emph>any attribute not in default or any TT namespace</emph>}&gt;
+  <emph>Content:</emph> <loc href="#element-vocab-group-table">Metadata.class</loc>*, <loc href="#styling-vocabulary-style">style</loc>*
+&lt;/styling&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p>To the extent that time semantics apply to the content of the
+<el>styling</el> element, the implied time interval of this element is
+defined to be coterminous with the external time interval.</p>
+</div3>
+<div3 id="styling-vocabulary-style">
+<head>style</head>
+<p>The <el>style</el> element is used to define
+a set of style specifications expressed as a
+specified style set in accordance with
+<specref ref="semantics-style-resolution-processing-sss"/>.</p>
+<p>The <el>style</el> element accepts as its children zero or more <el>metadata</el> elements.</p>
+<table id="elt-syntax-style" role="syntax">
+<caption>XML Representation &ndash; Element Information Item: style</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;style
+  <loc href="#style-attribute-style">style</loc> = IDREFS
+  <loc href="#content-attribute-id">xml:id</loc> = ID
+  <loc href="#content-attribute-lang">xml:lang</loc> = string
+  <loc href="#content-attribute-space">xml:space</loc> = (<emph>default</emph>|<emph>preserve</emph>)
+  {<emph>any attribute in TT Style namespace</emph>}
+  {<emph>any attribute not in default or any TT namespace</emph>}&gt;
+  <!-- change for future CSS compatibility
+  <emph>Content:</emph> <loc href="#element-vocab-group-table">Metadata.class</loc>*
+  -->
+  <emph>Content:</emph> EMPTY
+&lt;/style&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p>If a <el>style</el> element appears as a descendant of a
+<el>region</el> element, then the <el>style</el> element must be
+ignored for the purpose of computing referential styles as defined by
+<specref ref="semantics-style-association-referential"/> and <specref
+ref="semantics-style-association-chained-referential"/>.</p>
+<note role="explanation">
+<p>That is to say, when referential styling is used by an element to
+refer to a <el>style</el> element, then the referenced <el>style</el>
+element must appear as a descendant of the <el>styling</el> element, and
+not in any other context.</p>
+</note>
+</div3>
+</div2>
+<div2 id="styling-attribute-vocabulary">
+<head>Styling Attribute Vocabulary</head>
+<p>This section defines the <specref ref="style-attribute-style"/> 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>
+<ulist>
+<item><p><specref ref="style-attribute-backgroundColor"/></p></item>
+<item><p><specref ref="style-attribute-color"/></p></item>
+<item><p><specref ref="style-attribute-direction"/></p></item>
+<item><p><specref ref="style-attribute-display"/></p></item>
+<item><p><specref ref="style-attribute-displayAlign"/></p></item>
+<item><p><specref ref="style-attribute-extent"/></p></item>
+<item><p><specref ref="style-attribute-fontFamily"/></p></item>
+<item><p><specref ref="style-attribute-fontSize"/></p></item>
+<item><p><specref ref="style-attribute-fontStyle"/></p></item>
+<item><p><specref ref="style-attribute-fontWeight"/></p></item>
+<item><p><specref ref="style-attribute-lineHeight"/></p></item>
+<item><p><specref ref="style-attribute-opacity"/></p></item>
+<item><p><specref ref="style-attribute-origin"/></p></item>
+<item><p><specref ref="style-attribute-overflow"/></p></item>
+<item><p><specref ref="style-attribute-padding"/></p></item>
+<item><p><specref ref="style-attribute-showBackground"/></p></item>
+<item><p><specref ref="style-attribute-textAlign"/></p></item>
+<item><p><specref ref="style-attribute-textDecoration"/></p></item>
+<item><p><specref ref="style-attribute-textOutline"/></p></item>
+<item><p><specref ref="style-attribute-unicodeBidi"/></p></item>
+<item><p><specref ref="style-attribute-visibility"/></p></item>
+<item><p><specref ref="style-attribute-wrapOption"/></p></item>
+<item><p><specref ref="style-attribute-writingMode"/></p></item>
+<item><p><specref ref="style-attribute-zIndex"/></p></item>
+</ulist>
+<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>
+<note role="explanation">
+<p>This specification makes use of <emph>lowerCamelCased</emph> local
+names for style attributes that
+are based upon like-named properties defined by <bibref ref="xsl11"/>.
+This convention is likewise extended to token values of such
+properties.</p>
+</note>
+<note role="clarification">
+<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>
+</note>
+<div3 id="style-attribute-style">
+<head>style</head>
+<p>The <att>style</att> attribute is used
+by referential style association
+to reference one or more <el>style</el>
+elements each of which define a
+specified
+style set.</p>
+<p>The <att>style</att> attribute may be specified by an instance of the following
+element types:</p>
+<ulist>
+<item><p><loc href="#document-structure-vocabulary-body"><el>body</el></loc></p></item>
+<item><p><loc href="#content-vocabulary-div"><el>div</el></loc></p></item>
+<item><p><loc href="#content-vocabulary-p"><el>p</el></loc></p></item>
+<item><p><loc href="#layout-vocabulary-region"><el>region</el></loc></p></item>
+<item><p><loc href="#content-vocabulary-span"><el>span</el></loc></p></item>
+<item><p><loc href="#styling-vocabulary-style"><el>style</el></loc></p></item>
+</ulist>
+<note role="usage">
+<p>See the specific element type definitions that permit use of the
+<att>style</att> attribute, as well as <specref
+ref="semantics-style-association-referential"/> and <specref
+ref="semantics-style-association-chained-referential"/>, for
+further information on its semantics.</p>
+</note>
+</div3>
+<div3 id="style-attribute-backgroundColor">
+<head>tts:backgroundColor</head>
+<p>The <att>tts:backgroundColor</att> 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>
+<table id="style-property-details-backgroundColor" role="common">
+<col width="25%"/>
+<tbody>
+<tr>
+<td><emph>Values:</emph></td>
+<td>
+<loc href="#style-value-color">&lt;color&gt;</loc>
+</td>
+</tr>
+<tr>
+<td><emph>Initial:</emph></td>
+<td><code>transparent</code></td>
+</tr>
+<tr>
+<td><emph>Applies to:</emph></td>
+<td>
+<loc href="#document-structure-vocabulary-body"><el>body</el></loc>,
+<loc href="#content-vocabulary-div"><el>div</el></loc>,
+<loc href="#content-vocabulary-p"><el>p</el></loc>,
+<loc href="#layout-vocabulary-region"><el>region</el></loc>,
+<loc href="#content-vocabulary-span"><el>span</el></loc>
+</td>
+</tr>
+<tr>
+<td><emph>Inherited:</emph></td>
+<td>no</td>
+</tr>
+<tr>
+<td><emph>Percentages:</emph></td>
+<td>N/A</td>
+</tr>
+<tr>
+<td><emph>Animatable:</emph></td>
+<td>discrete</td>
+</tr>
+</tbody>
+</table>
+<p>For the purpose of determining applicability of this style property,
+each character child of a <el>p</el> element is considered to be enclosed in an anonymous
+span.</p>
+<p>The <att>tts:backgroundColor</att> style is illustrated by the following example.</p>
+<table id="style-attribute-backgroundColor-example-1" role="example">
+<caption>Example Fragment &ndash; Background Color</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;region xml:id="r1"&gt;
+  &lt;style tts:extent="306px 114px"/&gt;
+  &lt;style <phrase role="strong">tts:backgroundColor="red"</phrase>/&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" <phrase role="strong">tts:backgroundColor="purple"</phrase> tts:textAlign="center"&gt;
+  Twinkle, twinkle, little bat!&lt;br/&gt;
+  How &lt;span <phrase role="strong">tts:backgroundColor="green"</phrase>&gt;I wonder&lt;/span&gt; where you're at!
+&lt;/p&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p/>
+<table id="style-attribute-backgroundColor-example-1-images" role="example-images">
+<caption>Example Rendition &ndash; Background Color</caption>
+<tbody>
+<tr>
+<td><graphic source="images/backgroundColor.png" alt="TTML backgroundColor style property"/></td>
+</tr>
+</tbody>
+</table>
+  <!-- CSS compatibility - remove derivation note
+<note role="derivation">
+<p>The semantics of the style property represented by this attribute are based upon 
+that defined by <bibref ref="xsl11"/>, &sect; 7.8.2.</p>
+</note> -->
+  
+</div3>
+<div3 id="style-attribute-color">
+<head>tts:color</head>
+<p>The <att>tts:color</att> 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>
+<table id="style-property-details-color" role="common">
+<col width="25%"/>
+<tbody>
+<tr>
+<td><emph>Values:</emph></td>
+<td>
+<loc href="#style-value-color">&lt;color&gt;</loc>
+</td>
+</tr>
+<tr>
+<td><emph>Initial:</emph></td>
+<td>see prose</td>
+</tr>
+<tr>
+<td><emph>Applies to:</emph></td>
+<td>
+<loc href="#content-vocabulary-span"><el>span</el></loc>
+</td>
+</tr>
+<tr>
+<td><emph>Inherited:</emph></td>
+<td>yes</td>
+</tr>
+<tr>
+<td><emph>Percentages:</emph></td>
+<td>N/A</td>
+</tr>
+<tr>
+<td><emph>Animatable:</emph></td>
+<td>discrete</td>
+</tr>
+</tbody>
+</table>
+<p>For the purpose of determining applicability of this style property,
+each character child of a <el>p</el> element is considered to be enclosed in an anonymous
+span.</p>
+<p>The initial value of the <att>tts:color</att> 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 <att>tts:color</att> style is illustrated by the following example.</p>
+<table id="style-attribute-color-example-1" role="example">
+<caption>Example Fragment &ndash; Color</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;region xml:id="r1"&gt;
+  &lt;style tts:backgroundColor="black"/&gt;
+  &lt;style <phrase role="strong">tts:color="white"</phrase>/&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 <phrase role="strong">tts:color="green"</phrase>&gt;getting green&lt;/span&gt;,&lt;br/&gt;
+  I'll try and tell you what I mean.
+&lt;/p&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p/>
+<table id="style-attribute-color-example-1-images" role="example-images">
+<caption>Example Rendition &ndash; Color</caption>
+<tbody>
+<tr>
+<td><graphic source="images/color.png" alt="TTML color style property"/></td>
+</tr>
+</tbody>
+</table>
+  <!-- CSS compatibility - remove derivation note 
+  <note role="derivation">
+<p>The semantics of the style property
+represented by this attribute are based upon that defined by <bibref ref="xsl11"/>,
+&sect; 7.18.1.</p>
+</note>
+-->
+</div3>
+<div3 id="style-attribute-direction">
+<head>tts:direction</head>
+<p>The <att>tts:direction</att> 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>
+<table id="style-property-details-direction" role="common">
+<col width="25%"/>
+<tbody>
+<tr>
+<td><emph>Values:</emph></td>
+<td>
+<code>ltr</code> |
+<code>rtl</code>
+</td>
+</tr>
+<tr>
+<td><emph>Initial:</emph></td>
+<td>
+<code>ltr</code>
+</td>
+</tr>
+<tr>
+<td><emph>Applies to:</emph></td>
+<td>
+<loc href="#content-vocabulary-p"><el>p</el></loc>,
+<loc href="#content-vocabulary-span"><el>span</el></loc>
+</td>
+</tr>
+<tr>
+<td><emph>Inherited:</emph></td>
+<td>yes</td>
+</tr>
+<tr>
+<td><emph>Percentages:</emph></td>
+<td>N/A</td>
+</tr>
+<tr>
+<td><emph>Animatable:</emph></td>
+<td>discrete</td>
+</tr>
+</tbody>
+</table>
+<p>For the purpose of determining applicability of this style property,
+each character child of a <el>p</el> 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 <att>tts:direction</att> style is illustrated by the following example.</p>
+<table id="style-attribute-direction-example-1" role="example">
+<caption>Example Fragment &ndash; Direction</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&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" <phrase role="strong">tts:direction="rtl"</phrase>&gt;where the tourists snore.&lt;/span&gt;
+&lt;/p&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p/>
+<table id="style-attribute-direction-example-1-images" role="example-images">
+<caption>Example Rendition &ndash; Direction</caption>
+<tbody>
+<tr>
+<td>
+<graphic source="images/direction.png" alt="TTML direction style property"/>
+</td>
+</tr>
+</tbody>
+</table>
+  <!-- CSS compatibility - remove derivation note 
+  <note role="derivation">
+<p>The semantics of the style property
+represented by this attribute are based upon that defined by <bibref ref="xsl11"/>,
+&sect; 7.29.1.</p>
+</note>
+-->
+</div3>
+<div3 id="style-attribute-display">
+<head>tts:display</head>
+<p>The <att>tts:display</att> 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>
+<table id="style-property-details-display" role="common">
+<col width="25%"/>
+<tbody>
+<tr>
+<td><emph>Values:</emph></td>
+<td>
+<code>auto</code> |
+<code>none</code>
+</td>
+</tr>
+<tr>
+<td><emph>Initial:</emph></td>
+<td>
+<code>auto</code>
+</td>
+</tr>
+<tr>
+<td><emph>Applies to:</emph></td>
+<td>
+<loc href="#document-structure-vocabulary-body"><el>body</el></loc>,
+<loc href="#content-vocabulary-div"><el>div</el></loc>,
+<loc href="#content-vocabulary-p"><el>p</el></loc>,
+<loc href="#layout-vocabulary-region"><el>region</el></loc>,
+<loc href="#content-vocabulary-span"><el>span</el></loc>
+</td>
+</tr>
+<tr>
+<td><emph>Inherited:</emph></td>
+<td>no</td>
+</tr>
+<tr>
+<td><emph>Percentages:</emph></td>
+<td>N/A</td>
+</tr>
+<tr>
+<td><emph>Animatable:</emph></td>
+<td>discrete</td>
+</tr>
+</tbody>
+</table>
+<p>For the purpose of determining applicability of this style property,
+each character child of a <el>p</el> 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 <att>tts:display</att> style is illustrated by the following example.</p>
+<table id="style-attribute-display-example-1" role="example">
+<caption>Example Fragment &ndash; Display</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&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 <phrase role="strong">tts:display="none"</phrase>&gt;
+      &lt;set begin="1s" dur="1s" <phrase role="strong">tts:display="auto"</phrase>/&gt;
+      Beautiful soup,
+    &lt;/span&gt;
+    &lt;span <phrase role="strong">tts:display="none"</phrase>&gt;
+      &lt;set begin="2s" dur="1s" <phrase role="strong">tts:display="auto"</phrase>/&gt;
+      so rich and green,
+    &lt;/span&gt;
+    &lt;span <phrase role="strong">tts:display="none"</phrase>&gt;
+      &lt;set begin="3s" dur="1s" <phrase role="strong">tts:display="auto"</phrase>/&gt;
+      waiting in a hot tureen!
+    &lt;/span&gt;
+    ]]]
+  &lt;/p&gt;
+&lt;/div&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p/>
+<table id="style-attribute-display-example-1-images" role="example-images">
+<caption>Example Rendition &ndash; Display</caption>
+<tbody>
+<tr>
+<td>
+<graphic source="images/display_0.png" alt="TTML display style property - [0,1)"/>
+</td>
+</tr>
+<tr>
+<td>
+<graphic source="images/display_1.png" alt="TTML display style property - [1,2)"/>
+</td>
+</tr>
+<tr>
+<td>
+<graphic source="images/display_2.png" alt="TTML display style property - [2,3)"/>
+</td>
+</tr>
+<tr>
+<td>
+<graphic source="images/display_3.png" alt="TTML display style property - [3,4)"/>
+</td>
+</tr>
+<tr>
+<td>
+<graphic source="images/display_4.png" alt="TTML display style property - [4,5)"/>
+</td>
+</tr>
+</tbody>
+</table>
+  <!-- CSS compatibility - remove derivation note 
+  <note role="derivation">
+<p>The semantics of the style property
+represented by this attribute are based upon that defined by <bibref
+ref="css2"/>,
+&sect; 9.2.5.</p>
+</note>
+-->
+</div3>
+<div3 id="style-attribute-displayAlign">
+<head>tts:displayAlign</head>
+<p>The <att>tts:displayAlign</att> 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>
+<table id="style-property-details-displayAlign" role="common">
+<col width="25%"/>
+<tbody>
+<tr>
+<td><emph>Values:</emph></td>
+<td>
+<code>before</code> |
+<code>center</code> |
+<code>after</code>
+</td>
+</tr>
+<tr>
+<td><emph>Initial:</emph></td>
+<td>
+<code>before</code>
+</td>
+</tr>
+<tr>
+<td><emph>Applies to:</emph></td>
+<td>
+<loc href="#layout-vocabulary-region"><el>region</el></loc>
+</td>
+</tr>
+<tr>
+<td><emph>Inherited:</emph></td>
+<td>no</td>
+</tr>
+<tr>
+<td><emph>Percentages:</emph></td>
+<td>N/A</td>
+</tr>
+<tr>
+<td><emph>Animatable:</emph></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 <att>tts:displayAlign</att> style is illustrated by the following example.</p>
+<table id="style-attribute-displayAlign-example-1" role="example">
+<caption>Example Fragment &ndash; Display Align</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&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 <phrase role="strong">tts:displayAlign="before"</phrase>/&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 <phrase role="strong">tts:displayAlign="after"</phrase>/&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 <phrase role="strong">tts:displayAlign="before"</phrase>/&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 <phrase role="strong">tts:displayAlign="after"</phrase>/&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;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p/>
+<table id="style-attribute-displayAlign-example-1-images" role="example-images">
+<caption>Example Rendition &ndash; Display Align</caption>
+<tbody>
+<tr>
+<td><graphic source="images/displayAlign.png" alt="TTML displayAlign style property"/></td>
+</tr>
+</tbody>
+</table>
+<!-- CSS compatibility - remove derivation note   
+<note role="derivation">
+<p>The semantics of the style property
+represented by this attribute are based upon that defined by <bibref ref="xsl11"/>,
+&sect; 7.14.4.</p>
+</note>
+-->
+</div3>
+<div3 id="style-attribute-extent">
+<head>tts:extent</head>
+<p>The <att>tts:extent</att> attribute is used to specify the
+<emph>width</emph> and <emph>height</emph> 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>
+<table id="style-property-details-extent" role="common">
+<col width="25%"/>
+<tbody>
+<tr>
+<td><emph>Values:</emph></td>
+<td>
+<code>auto</code> |
+<loc href="#style-value-length">&lt;length&gt;</loc> <loc href="#style-value-length">&lt;length&gt;</loc>
+</td>
+</tr>
+<tr>
+<td><emph>Initial:</emph></td>
+<td><code>auto</code></td>
+</tr>
+<tr>
+<td><emph>Applies to:</emph></td>
+<td>
+<loc href="#document-structure-vocabulary-tt"><el>tt</el></loc>,
+<loc href="#layout-vocabulary-region"><el>region</el></loc>
+</td>
+</tr>
+<tr>
+<td><emph>Inherited:</emph></td>
+<td>no</td>
+</tr>
+<tr>
+<td><emph>Percentages:</emph></td>
+<td>relative to width and height of root container region</td>
+</tr>
+<tr>
+<td><emph>Animatable:</emph></td>
+<td>discrete</td>
+</tr>
+</tbody>
+</table>
+<p>If the value of this attribute consists of two <loc href="#style-value-length">&lt;length&gt;</loc>
+specifications, then they must be interpreted as <emph>width</emph>
+and <emph>height</emph>, where the first specification is the
+<emph>width</emph>, and the second specification is the
+<emph>height</emph>.</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
+<att>tts:extent</att> specified on the <el>tt</el> element, if
+present, or by the external authoring context, if not present.
+If
+<att>tts:extent</att> is specified on the <el>tt</el> element,
+then
+the width and height
+must be
+expressed in terms of two
+<loc href="#style-value-length">&lt;length&gt;</loc> 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 <att>tts:extent</att> style is illustrated by the following example.</p>
+<table id="style-attribute-extent-example-1" role="example">
+<caption>Example Fragment &ndash; Extent</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;region xml:id="r1"&gt;
+  &lt;style <phrase role="strong">tts:extent="330px 122px"</phrase>/&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;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p/>
+<table id="style-attribute-extent-example-1-images" role="example-images">
+<caption>Example Rendition &ndash; Extent</caption>
+<tbody>
+<tr>
+<td><graphic source="images/extent.png" alt="TTML extent style property"/></td>
+</tr>
+</tbody>
+</table>
+</div3>
+<div3 id="style-attribute-fontFamily">
+<head>tts:fontFamily</head>
+<p>The <att>tts:fontFamily</att> 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>
+<table id="style-property-details-fontFamily" role="common">
+<col width="25%"/>
+<tbody>
+<tr>
+<td><emph>Values:</emph></td>
+<td>
+(<loc href="#style-value-familyName">&lt;familyName&gt;</loc> | <loc href="#style-value-genericFamilyName">&lt;genericFamilyName&gt;</loc>)
+(<code>","</code>
+&nbsp;(<loc href="#style-value-familyName">&lt;familyName&gt;</loc> | <loc href="#style-value-genericFamilyName">&lt;genericFamilyName&gt;</loc>))*
+</td>
+</tr>
+<tr>
+<td><emph>Initial:</emph></td>
+<td><code>default</code></td>
+</tr>
+<tr>
+<td><emph>Applies to:</emph></td>
+<td>
+<loc href="#content-vocabulary-span"><el>span</el></loc>
+</td>
+</tr>
+<tr>
+<td><emph>Inherited:</emph></td>
+<td>yes</td>
+</tr>
+<tr>
+<td><emph>Percentages:</emph></td>
+<td>N/A</td>
+</tr>
+<tr>
+<td><emph>Animatable:</emph></td>
+<td>discrete</td>
+</tr>
+</tbody>
+</table>
+<note role="clarification">
+<p>The initial value, <code>default</code>, is a generic font family name, and is
+further described in <specref ref="style-value-genericFamilyName"/> below.</p>
+</note>
+<p>For the purpose of determining applicability of this style property,
+each character child of a <el>p</el> 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 <att>tts:fontFamily</att> style is illustrated by the following example.</p>
+<table id="style-attribute-fontFamily-example-1" role="example">
+<caption>Example Fragment &ndash; Font Family</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&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 <phrase role="strong">tts:fontFamily="proportionalSansSerif"</phrase>/&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" <phrase role="strong">tts:fontFamily="monospaceSerif"</phrase>&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;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p/>
+<table id="style-attribute-fontFamily-example-1-images" role="example-images">
+<caption>Example Rendition &ndash; Font Family</caption>
+<tbody>
+<tr>
+<td><graphic source="images/fontFamily.png" alt="TTML fontFamily style property"/></td>
+</tr>
+</tbody>
+</table>
+<!--CSS compatibility - remove derivation note
+<note role="derivation">
+<p>The semantics of the style property
+represented by this attribute are based upon that defined by <bibref ref="xsl11"/>,
+&sect; 7.9.2.</p>
+</note>
+-->
+</div3>
+<div3 id="style-attribute-fontSize">
+<head>tts:fontSize</head>
+<p>The <att>tts:fontSize</att> 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>
+<table id="style-property-details-fontSize" role="common">
+<col width="25%"/>
+<tbody>
+<tr>
+<td><emph>Values:</emph></td>
+<td>
+<loc href="#style-value-length">&lt;length&gt;</loc> <loc href="#style-value-length">&lt;length&gt;</loc>?
+</td>
+</tr>
+<tr>
+<td><emph>Initial:</emph></td>
+<td><code>1c</code></td>
+</tr>
+<tr>
+<td><emph>Applies to:</emph></td>
+<td>
+<loc href="#content-vocabulary-span"><el>span</el></loc>
+</td>
+</tr>
+<tr>
+<td><emph>Inherited:</emph></td>
+<td>yes</td>
+</tr>
+<tr>
+<td><emph>Percentages:</emph></td>
+<td>relative to parent element's font size</td>
+</tr>
+<tr>
+<td><emph>Animatable:</emph></td>
+<td>discrete</td>
+</tr>
+</tbody>
+</table>
+<p>If a single <loc href="#style-value-length">&lt;length&gt;</loc> value is specified, then this length applies
+equally to horizontal and vertical scaling of a glyph's EM square; if two
+<loc href="#style-value-length">&lt;length&gt;</loc> values are specified, then the first expresses the horizontal
+scaling and the second expresses vertical scaling.</p>
+<note role="example">
+<p>Use of independent horizontal and vertical font sizes is expected to be used
+with cell based metrics in order to denote fonts that are two rows in height and
+one column in width.</p>
+</note>
+<p>If horizontal and vertical sizes are expressed independently, then the
+metrics of the <loc href="#style-value-length">&lt;length&gt;</loc> values must be the same.</p>
+<p>The <loc href="#style-value-length">&lt;length&gt;</loc> 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 <el>p</el> 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>
+<note role="elaboration">
+<p>The expression <code>1c</code> means one cell, where <code>'c'</code> expresses
+the <emph>cell</emph> length unit as defined by <specref ref="style-value-length"/>.</p>
+</note>
+<p>The <att>tts:fontSize</att> style is illustrated by the following example.</p>
+<table id="style-attribute-fontSize-example-1" role="example">
+<caption>Example Fragment &ndash; Font Size</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&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 <phrase role="strong">tts:fontSize="18px"</phrase>/&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 <phrase role="strong">tts:fontSize="24px"</phrase>&gt;pleasant&lt;/span&gt; to drink.
+&lt;/p&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p/>
+<table id="style-attribute-fontSize-example-1-images" role="example-images">
+<caption>Example Rendition &ndash; Font Size</caption>
+<tbody>
+<tr>
+<td><graphic source="images/fontSize.png" alt="TTML fontSize style property"/></td>
+</tr>
+</tbody>
+</table>
+<!--CSS compatibility - remove derivation note
+<note role="derivation">
+<p>The semantics of the style property
+represented by this attribute are based upon that defined by <bibref ref="xsl11"/>,
+&sect; 7.9.4.</p>
+</note>
+-->  
+</div3>
+<div3 id="style-attribute-fontStyle">
+<head>tts:fontStyle</head>
+<p>The <att>tts:fontStyle</att> 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>
+<table id="style-property-details-fontStyle" role="common">
+<col width="25%"/>
+<tbody>
+<tr>
+<td><emph>Values:</emph></td>
+<td>
+<code>normal</code> |
+<code>italic</code> |
+<code>oblique</code>
+</td>
+</tr>
+<tr>
+<td><emph>Initial:</emph></td>
+<td><code>normal</code></td>
+</tr>
+<tr>
+<td><emph>Applies to:</emph></td>
+<td>
+<loc href="#content-vocabulary-span"><el>span</el></loc>
+</td>
+</tr>
+<tr>
+<td><emph>Inherited:</emph></td>
+<td>yes</td>
+</tr>
+<tr>
+<td><emph>Percentages:</emph></td>
+<td>N/A</td>
+</tr>
+<tr>
+<td><emph>Animatable:</emph></td>
+<td>discrete</td>
+</tr>
+</tbody>
+</table>
+<p>For the purpose of determining applicability of this style property,
+each character child of a <el>p</el> 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 <att>tts:fontStyle</att> style is illustrated by the following example.</p>
+<table id="style-attribute-fontStyle-example-1" role="example">
+<caption>Example Fragment &ndash; Font Style</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&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 <phrase role="strong">tts:fontStyle="italic"</phrase>&gt;write it down.&lt;/span&gt;
+&lt;/p&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p/>
+<table id="style-attribute-fontStyle-example-1-images" role="example-images">
+<caption>Example Rendition &ndash; Font Style</caption>
+<tbody>
+<tr>
+<td><graphic source="images/fontStyle.png" alt="TTML fontStyle style property"/></td>
+</tr>
+</tbody>
+</table>
+<p/>
+<!-- CSS compatibility - remove derivation note
+<note role="derivation">
+<p>The semantics of the style property
+represented by this attribute are based upon that defined by <bibref ref="xsl11"/>,
+&sect; 7.9.7.</p>
+</note>
+-->  
+</div3>
+<div3 id="style-attribute-fontWeight">
+<head>tts:fontWeight</head>
+<p>The <att>tts:fontWeight</att> 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>
+<table id="style-property-details-fontWeight" role="common">
+<col width="25%"/>
+<tbody>
+<tr>
+<td><emph>Values:</emph></td>
+<td>
+<code>normal</code> |
+<code>bold</code>
+</td>
+</tr>
+<tr>
+<td><emph>Initial:</emph></td>
+<td><code>normal</code></td>
+</tr>
+<tr>
+<td><emph>Applies to:</emph></td>
+<td>
+<loc href="#content-vocabulary-span"><el>span</el></loc>
+</td>
+</tr>
+<tr>
+<td><emph>Inherited:</emph></td>
+<td>yes</td>
+</tr>
+<tr>
+<td><emph>Percentages:</emph></td>
+<td>N/A</td>
+</tr>
+<tr>
+<td><emph>Animatable:</emph></td>
+<td>discrete</td>
+</tr>
+</tbody>
+</table>
+<p>For the purpose of determining applicability of this style property,
+each character child of a <el>p</el> 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 <att>tts:fontWeight</att> style is illustrated by the following example.</p>
+<table id="style-attribute-fontWeight-example-1" role="example">
+<caption>Example Fragment &ndash; Font Weight</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&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 <phrase role="strong">tts:fontWeight="bold"</phrase>&gt;and mentioned me to him:&lt;/span&gt;&lt;br/&gt;
+  She gave me a good character&lt;br/&gt;
+  &lt;span <phrase role="strong">tts:fontWeight="bold"</phrase>&gt;but said I could not swim.&lt;/span&gt;
+&lt;/p&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p/>
+<table id="style-attribute-fontWeight-example-1-images" role="example-images">
+<caption>Example Rendition &ndash; Font Weight</caption>
+<tbody>
+<tr>
+<td><graphic source="images/fontWeight.png" alt="TTML fontWeight style property"/></td>
+</tr>
+</tbody>
+</table>
+<!--CSS compatibility - remove derivation note
+<note role="derivation">
+<p>The semantics of the style property
+represented by this attribute are based upon that defined by <bibref ref="xsl11"/>,
+&sect; 7.9.9.</p>
+</note>
+-->
+</div3>
+<div3 id="style-attribute-lineHeight">
+<head>tts:lineHeight</head>
+<p>The <att>tts:lineHeight</att> 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>
+<table id="style-property-details-lineHeight" role="common">
+<col width="25%"/>
+<tbody>
+<tr>
+<td><emph>Values:</emph></td>
+<td>
+<code>normal</code> |
+<loc href="#style-value-length">&lt;length&gt;</loc>
+</td>
+</tr>
+<tr>
+<td><emph>Initial:</emph></td>
+<td><code>normal</code></td>
+</tr>
+<tr>
+<td><emph>Applies to:</emph></td>
+<td>
+<loc href="#content-vocabulary-p"><el>p</el></loc>
+</td>
+</tr>
+<tr>
+<td><emph>Inherited:</emph></td>
+<td>yes</td>
+</tr>
+<tr>
+<td><emph>Percentages:</emph></td>
+<td>relative to this element's font size</td>
+</tr>
+<tr>
+<td><emph>Animatable:</emph></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 <loc
+href="#style-value-length">&lt;length&gt;</loc>, 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 <att>tts:lineHeight</att> style is illustrated by the following example.</p>
+<table id="style-attribute-lineHeight-example-1" role="example">
+<caption>Example Fragment &ndash; Line Height</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&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 <phrase role="strong">tts:lineHeight="32px"</phrase>/&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;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p/>
+<table id="style-attribute-lineHeight-example-1-images" role="example-images">
+<caption>Example Rendition &ndash; Line Height</caption>
+<tbody>
+<tr>
+<td><graphic source="images/lineHeight.png" alt="TTML lineHeight style property"/></td>
+</tr>
+</tbody>
+</table>
+<p/>
+<!-- CSS compatibility - remove derivation note
+<note role="derivation">
+<p>The semantics of the style property
+represented by this attribute are based upon that defined by <bibref ref="xsl11"/>,
+&sect; 7.16.4.</p>
+</note>
+-->
+</div3>
+<div3 id="style-attribute-opacity">
+<head>tts:opacity</head>
+<p>The <att>tts:opacity</att> 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>
+<table id="style-property-details-opacity" role="common">
+<col width="25%"/>
+<tbody>
+<tr>
+<td><emph>Values:</emph></td>
+<td>
+<loc href="#style-value-alpha">&lt;alpha&gt;</loc>
+</td>
+</tr>
+<tr>
+<td><emph>Initial:</emph></td>
+<td>
+<code>1.0</code>
+</td>
+</tr>
+<tr>
+<td><emph>Applies to:</emph></td>
+<td>
+<loc href="#layout-vocabulary-region"><el>region</el></loc>
+</td>
+</tr>
+<tr>
+<td><emph>Inherited:</emph></td>
+<td>no</td>
+</tr>
+<tr>
+<td><emph>Percentages:</emph></td>
+<td>N/A</td>
+</tr>
+<tr>
+<td><emph>Animatable:</emph></td>
+<td>discrete</td>
+</tr>
+</tbody>
+</table>
+<p>An <loc href="#style-value-alpha">&lt;alpha&gt;</loc> value greater
+than 1.0 must be considered equivalent to an <loc
+href="#style-value-alpha">&lt;alpha&gt;</loc> value of 1.0.</p>
+<p>The <att>tts:opacity</att> style is illustrated by the following example.</p>
+<table id="style-attribute-opacity-example-1" role="example">
+<caption>Example Fragment &ndash; Opacity</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;region xml:id="r1" dur="5s"&gt;
+  &lt;set begin="0s" dur="1s" <phrase role="strong">tts:opacity="1.00"</phrase>/&gt;
+  &lt;set begin="1s" dur="1s" <phrase role="strong">tts:opacity="0.75"</phrase>/&gt;
+  &lt;set begin="2s" dur="1s" <phrase role="strong">tts:opacity="0.50"</phrase>/&gt;
+  &lt;set begin="3s" dur="1s" <phrase role="strong">tts:opacity="0.25"</phrase>/&gt;
+  &lt;set begin="4s" dur="1s" <phrase role="strong">tts:opacity="0.00"</phrase>/&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;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p/>
+<table id="style-attribute-opacity-example-1-images" role="example-images">
+<caption>Example Rendition &ndash; Opacity</caption>
+<tbody>
+<tr>
+<td>
+<graphic source="images/opacity_0.png" alt="TTML opacity style property - [0,1)"/>
+</td>
+</tr>
+<tr>
+<td>
+<graphic source="images/opacity_1.png" alt="TTML opacity style property - [1,2)"/>
+</td>
+</tr>
+<tr>
+<td>
+<graphic source="images/opacity_2.png" alt="TTML opacity style property - [2,3)"/>
+</td>
+</tr>
+<tr>
+<td>
+<graphic source="images/opacity_3.png" alt="TTML opacity style property - [3,4)"/>
+</td>
+</tr>
+<tr>
+<td>
+<graphic source="images/opacity_4.png" alt="TTML opacity style property - [4,5)"/>
+</td>
+</tr>
+</tbody>
+</table>
+<!--CSS compatibility - remove derivation note
+<note role="derivation">
+<p>The semantics of the style property
+represented by this attribute are based upon that defined by <bibref ref="css3-color"/>,
+&sect; 3.2.</p>
+</note>
+-->
+</div3>
+<div3 id="style-attribute-origin">
+<head>tts:origin</head>
+<p>The <att>tts:origin</att> attribute is used to specify the
+<emph>x</emph> and <emph>y</emph> 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>
+<table id="style-property-details-origin" role="common">
+<col width="25%"/>
+<tbody>
+<tr>
+<td><emph>Values:</emph></td>
+<td>
+<code>auto</code> |
+<loc href="#style-value-length">&lt;length&gt;</loc> <loc href="#style-value-length">&lt;length&gt;</loc>
+</td>
+</tr>
+<tr>
+<td><emph>Initial:</emph></td>
+<td><code>auto</code></td>
+</tr>
+<tr>
+<td><emph>Applies to:</emph></td>
+<td>
+<loc href="#layout-vocabulary-region"><el>region</el></loc>
+</td>
+</tr>
+<tr>
+<td><emph>Inherited:</emph></td>
+<td>no</td>
+</tr>
+<tr>
+<td><emph>Percentages:</emph></td>
+<td>relative to width and height of root container region</td>
+</tr>
+<tr>
+<td><emph>Animatable:</emph></td>
+<td>discrete</td>
+</tr>
+</tbody>
+</table>
+<p>If the value of this attribute consists of two <loc href="#style-value-length">&lt;length&gt;</loc> specifications,
+then they must be interpreted as <emph>x</emph> and <emph>y</emph> coordinates, where the first specification
+is the <emph>x</emph> coordinate, and the second specification is the <emph>y</emph> 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 <att>tts:origin</att> style is illustrated by the following example.</p>
+<table id="style-attribute-origin-example-1" role="example">
+<caption>Example Fragment &ndash; Origin</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;region xml:id="r1"&gt;
+  &lt;style <phrase role="strong">tts:origin="40px 40px"</phrase>/&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;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p/>
+<table id="style-attribute-origin-example-1-images" role="example-images">
+<caption>Example Rendition &ndash; Origin</caption>
+<tbody>
+<tr>
+<td><graphic source="images/origin.png" alt="TTML origin style property"/></td>
+</tr>
+</tbody>
+</table>
+</div3>
+<div3 id="style-attribute-overflow">
+<head>tts:overflow</head>
+<p>The <att>tts:overflow</att> 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>
+<table id="style-property-details-overflow" role="common">
+<col width="25%"/>
+<tbody>
+<tr>
+<td><emph>Values:</emph></td>
+<td>
+<code>visible</code> |
+<code>hidden</code>
+</td>
+</tr>
+<tr>
+<td><emph>Initial:</emph></td>
+<td><code>hidden</code></td>
+</tr>
+<tr>
+<td><emph>Applies to:</emph></td>
+<td>
+<loc href="#layout-vocabulary-region"><el>region</el></loc>
+</td>
+</tr>
+<tr>
+<td><emph>Inherited:</emph></td>
+<td>no</td>
+</tr>
+<tr>
+<td><emph>Percentages:</emph></td>
+<td>N/A</td>
+</tr>
+<tr>
+<td><emph>Animatable:</emph></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>
+<note role="explanation">
+<p>Unless a manual line break element <el>br</el> 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 <att>tts:overflow</att> style that applies to the
+region is <code>visible</code> and if the applicable <att>tts:wrapOption</att>
+style is <code>noWrap</code>.</p>
+</note>
+<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 <att>tts:overflow</att> style is illustrated by the following example.</p>
+<table id="style-attribute-overflow-example-1" role="example">
+<caption>Example Fragment &ndash; Overflow</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&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 <phrase role="strong">tts:overflow="visible"</phrase>/&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 <phrase role="strong">tts:overflow="hidden"</phrase>/&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;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p/>
+<table id="style-attribute-overflow-example-1-images" role="example-images">
+<caption>Example Rendition &ndash; Overflow</caption>
+<tbody>
+<tr>
+<td><graphic source="images/overflow.png" alt="TTML overflow style property"/></td>
+</tr>
+</tbody>
+</table>
+<note role="explanation">
+<p>In the above example, the <att>tts:noWrap</att> 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>
+</note>
+<!-- CSS compatibility - remove derivation note
+<note role="derivation">
+<p>The semantics of the style property
+represented by this attribute are based upon that defined by <bibref ref="xsl11"/>,
+&sect; 7.21.2.</p>
+</note>
+-->  
+</div3>
+<div3 id="style-attribute-padding">
+<head>tts:padding</head>
+<p>The <att>tts:padding</att> 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>
+<table id="style-property-details-padding" role="common">
+<col width="25%"/>
+<tbody>
+<tr>
+<td><emph>Values:</emph></td>
+<td>
+<loc href="#style-value-length">&lt;length&gt;</loc> |
+<loc href="#style-value-length">&lt;length&gt;</loc> <loc href="#style-value-length">&lt;length&gt;</loc> |
+<loc href="#style-value-length">&lt;length&gt;</loc> <loc href="#style-value-length">&lt;length&gt;</loc> <loc href="#style-value-length">&lt;length&gt;</loc> |
+<loc href="#style-value-length">&lt;length&gt;</loc> <loc href="#style-value-length">&lt;length&gt;</loc> <loc href="#style-value-length">&lt;length&gt;</loc> <loc href="#style-value-length">&lt;length&gt;</loc>
+</td>
+</tr>
+<tr>
+<td><emph>Initial:</emph></td>
+<td><code>0px</code></td>
+</tr>
+<tr>
+<td><emph>Applies to:</emph></td>
+<td>
+<loc href="#layout-vocabulary-region"><el>region</el></loc>
+</td>
+</tr>
+<tr>
+<td><emph>Inherited:</emph></td>
+<td>no</td>
+</tr>
+<tr>
+<td><emph>Percentages:</emph></td>
+<td>relative to width and height of region</td>
+</tr>
+<tr>
+<td><emph>Animatable:</emph></td>
+<td>discrete</td>
+</tr>
+</tbody>
+</table>
+<p>If the value of this attribute consists of one <loc href="#style-value-length">&lt;length&gt;</loc> specification,
+then that length applies to all edges of the affected areas. If the value
+consists of two <loc href="#style-value-length">&lt;length&gt;</loc> specifications, then the first applies to the
+before and after edges, and the second applies to the start and end edges.
+If three <loc href="#style-value-length">&lt;length&gt;</loc> 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 <loc href="#style-value-length">&lt;length&gt;</loc> 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 <att>tts:padding</att> style is illustrated by the following example.</p>
+<table id="style-attribute-padding-example-1" role="example">
+<caption>Example Fragment &ndash; Padding</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&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 <phrase role="strong">tts:padding="10px 40px"</phrase>/&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;
+</eg>
+</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>
+<table id="style-attribute-padding-example-1-images" role="example-images">
+<caption>Example Rendition &ndash; Padding</caption>
+<tbody>
+<tr>
+<td>
+<graphic source="images/padding.png" alt="TTML padding style property"/>
+</td>
+</tr>
+</tbody>
+</table>
+ <!-- CSS compatibility - remove derivation note
+<note role="derivation">
+<p>The semantics of the style property
+represented by this attribute are based upon that defined by <bibref ref="xsl11"/>,
+&sect; 7.31.15, except that individual shorthand values map to writing
+  mode relative padding values as defined by <bibref ref="xsl11"/>,
+&sect; 7.8.31, 7.8.32, 7.8.33, and 7.8.34.</p>
+</note>
+-->
+</div3>
+<div3 id="style-attribute-showBackground">
+<head>tts:showBackground</head>
+<p>The <att>tts:showBackground</att> 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>
+<table id="style-property-details-showBackground" role="common">
+<col width="25%"/>
+<tbody>
+<tr>
+<td><emph>Values:</emph></td>
+<td>
+<code>always</code> |
+<code>whenActive</code>
+</td>
+</tr>
+<tr>
+<td><emph>Initial:</emph></td>
+<td><code>always</code></td>
+</tr>
+<tr>
+<td><emph>Applies to:</emph></td>
+<td>
+<loc href="#layout-vocabulary-region"><el>region</el></loc>
+</td>
+</tr>
+<tr>
+<td><emph>Inherited:</emph></td>
+<td>no</td>
+</tr>
+<tr>
+<td><emph>Percentages:</emph></td>
+<td>N/A</td>
+</tr>
+<tr>
+<td><emph>Animatable:</emph></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 <att>tts:showBackground</att> style is illustrated by the following example.</p>
+<table id="style-attribute-showBackground-example-1" role="example">
+<caption>Example Fragment &ndash; Show Background</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&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 <phrase role="strong">tts:showBackground="always"</phrase>/&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 <phrase role="strong">tts:showBackground="whenActive"</phrase>/&gt;
+&lt;/region&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<!--
+<table id="style-attribute-showBackground-example-1-images" role="example-images">
+<caption>Example Rendition &ndash; Show Background</caption>
+<tbody>
+<tr>
+<td>
+<graphic source="images/showBackground.png" alt="TTML showBackground style property"/>
+</td>
+</tr>
+</tbody>
+</table>
+-->
+<!-- CSS compatibility - remove derivation note
+<note role="derivation">
+<p>The semantics of the style property
+represented by this attribute are based upon that defined by <bibref ref="smil21"/>,
+&sect; 5.3.1.</p>
+</note>
+-->
+</div3>
+<div3 id="style-attribute-textAlign">
+<head>tts:textAlign</head>
+<p>The <att>tts:textAlign</att> 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>
+<table id="style-property-details-textAlign" role="common">
+<col width="25%"/>
+<tbody>
+<tr>
+<td><emph>Values:</emph></td>
+<td>
+<code>left</code> |
+<code>center</code> |
+<code>right</code> |
+<code>start</code> |
+<code>end</code>
+</td>
+</tr>
+<tr>
+<td><emph>Initial:</emph></td>
+<td><code>start</code></td>
+</tr>
+<tr>
+<td><emph>Applies to:</emph></td>
+<td>
+<loc href="#content-vocabulary-p"><el>p</el></loc>
+</td>
+</tr>
+<tr>
+<td><emph>Inherited:</emph></td>
+<td>yes</td>
+</tr>
+<tr>
+<td><emph>Percentages:</emph></td>
+<td>N/A</td>
+</tr>
+<tr>
+<td><emph>Animatable:</emph></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 <att>tts:textAlign</att> style is illustrated by the following example.</p>
+<table id="style-attribute-textAlign-example-1" role="example">
+<caption>Example Fragment &ndash; Text Align</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&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 <phrase role="strong">tts:textAlign="start"</phrase>/&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 <phrase role="strong">tts:textAlign="end"</phrase>/&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;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p/>
+<table id="style-attribute-textAlign-example-1-images" role="example-images">
+<caption>Example Rendition &ndash; Text Align</caption>
+<tbody>
+<tr>
+<td><graphic source="images/textAlign.png" alt="TTML textAlign style property"/></td>
+</tr>
+</tbody>
+</table>
+<!--CSS compatibility - remove derivation note
+<note role="derivation">
+<p>The semantics of the style property
+represented by this attribute are based upon that defined by <bibref ref="xsl11"/>,
+&sect; 7.16.9.</p>
+</note>
+-->
+</div3>
+<div3 id="style-attribute-textDecoration">
+<head>tts:textDecoration</head>
+<p>The <att>tts:textDecoration</att> 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>
+<table id="style-property-details-textDecoration" role="common">
+<col width="25%"/>
+<tbody>
+<tr>
+<td><emph>Values:</emph></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><emph>Initial:</emph></td>
+<td><code>none</code></td>
+</tr>
+<tr>
+<td><emph>Applies to:</emph></td>
+<td><loc
+href="#content-vocabulary-span"><el>span</el></loc></td>
+</tr>
+<tr>
+<td><emph>Inherited:</emph></td>
+<td>yes</td>
+</tr>
+<tr>
+<td><emph>Percentages:</emph></td>
+<td>N/A</td>
+</tr>
+<tr>
+<td><emph>Animatable:</emph></td>
+<td>discrete</td>
+</tr>
+</tbody>
+</table>
+<p>For the purpose of determining applicability of this
+style property, each character child of a <el>p</el> 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 <att>tts:textDecoration</att> style is illustrated by the following example.</p>
+<table id="style-attribute-textDecoration-example-1" role="example">
+<caption>Example Fragment &ndash; Text Decoration</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&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 <phrase role="strong">tts:textDecoration="underline"</phrase>/&gt;
+&lt;/region&gt;
+...
+&lt;p region="r1"&gt;
+  The sea was wet&lt;span <phrase role="strong">tts:textDecoration="noUnderline"</phrase>&gt; as &lt;/span&gt;wet
+  &lt;span <phrase role="strong">tts:textDecoration="noUnderline"</phrase>&gt;
+    could be,&lt;br/&gt;
+    The sand was dry as dry.&lt;br/&gt;
+    &lt;span <phrase role="strong">tts:textDecoration="lineThrough"</phrase>&gt;There weren't any&lt;/span&gt;
+    You &lt;span <phrase role="strong">tts:textDecoration="lineThrough"</phrase>&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;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p/>
+<table id="style-attribute-textDecoration-example-1-images" role="example-images">
+<caption>Example Rendition &ndash; Text Decoration</caption>
+<tbody>
+<tr>
+<td><graphic source="images/textDecoration.png" alt="TTML textDecoration style property"/></td>
+</tr>
+</tbody>
+</table>
+<!--CSS compatibility - remove derivation note
+<note role="derivation">
+<p>The semantics of the style property
+represented by this attribute are based upon that defined by <bibref ref="xsl11"/>,
+&sect; 7.16.4.</p>
+</note>
+-->  
+</div3>
+<div3 id="style-attribute-textOutline">
+<head>tts:textOutline</head>
+<p>The <att>tts:textOutline</att> 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>
+<table id="style-property-details-textOutline" role="common">
+<col width="25%"/>
+<tbody>
+<tr>
+<td><emph>Values:</emph></td>
+<td>
+<code>none</code> |
+<loc href="#style-value-color">&lt;color&gt;</loc>?
+<loc href="#style-value-length">&lt;length&gt;</loc>
+<loc href="#style-value-length">&lt;length&gt;</loc>?
+</td>
+</tr>
+<tr>
+<td><emph>Initial:</emph></td>
+<td><code>none</code></td>
+</tr>
+<tr>
+<td><emph>Applies to:</emph></td>
+<td>
+<loc href="#content-vocabulary-span"><el>span</el></loc>
+</td>
+</tr>
+<tr>
+<td><emph>Inherited:</emph></td>
+<td>yes</td>
+</tr>
+<tr>
+<td><emph>Percentages:</emph></td>
+<td>relative to this element's font size</td>
+</tr>
+<tr>
+<td><emph>Animatable:</emph></td>
+<td>discrete</td>
+</tr>
+</tbody>
+</table>
+<p>For the purpose of determining applicability of this style property,
+each character child of a <el>p</el> element is considered to be enclosed in an anonymous
+span.</p>
+<p>The value of this attribute consists of an optional <loc href="#style-value-color">&lt;color&gt;</loc> term
+followed by one or two <loc href="#style-value-length">&lt;length&gt;</loc> terms.  If a <emph>color</emph> term is
+present, then it denotes the outline color; if no <emph>color</emph> term is
+present, the computed value of the <att>tts:color</att> applies.  The first
+<emph>length</emph> term denotes the outline thickness and the second length
+term, if present, indicates the blur radius.</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 <att>tts:textOutline</att> style is illustrated by the following
+example.</p>
+<table id="style-attribute-textOutline-example-1" role="example">
+<caption>Example Fragment &ndash; Text Outline</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;region xml:id="r1"&gt;
+  &lt;style tts:backgroundColor="transparent"/&gt;
+  &lt;style tts:color="yellow"/&gt;
+  &lt;style <phrase role="strong">tts:textOutline="black 2px 0px"</phrase>/&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;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p/>
+<table id="style-attribute-textOutline-example-1-images" role="example-images">
+<caption>Example Rendition &ndash; Text Outline</caption>
+<tbody>
+<tr>
+<td><graphic source="images/textOutline.png" alt="backgroundColor style property"/></td>
+</tr>
+</tbody>
+</table>
+</div3>
+<div3 id="style-attribute-unicodeBidi">
+<head>tts:unicodeBidi</head>
+<p>The <att>tts:unicodeBidi</att> 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>
+<table id="style-property-details-unicodeBidi" role="common">
+<col width="25%"/>
+<tbody>
+<tr>
+<td><emph>Values:</emph></td>
+<td>
+<code>normal</code> |
+<code>embed</code> |
+<code>bidiOverride</code>
+</td>
+</tr>
+<tr>
+<td><emph>Initial:</emph></td>
+<td>
+<code>normal</code>
+</td>
+</tr>
+<tr>
+<td><emph>Applies to:</emph></td>
+<td>
+<loc href="#content-vocabulary-p"><el>p</el></loc>,
+<loc href="#content-vocabulary-span"><el>span</el></loc>
+</td>
+</tr>
+<tr>
+<td><emph>Inherited:</emph></td>
+<td>no</td>
+</tr>
+<tr>
+<td><emph>Percentages:</emph></td>
+<td>N/A</td>
+</tr>
+<tr>
+<td><emph>Animatable:</emph></td>
+<td>discrete</td>
+</tr>
+</tbody>
+</table>
+<p>For the purpose of determining applicability of this style property,
+each character child of a <el>p</el> 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 <att>tts:unicodeBidi</att> style is illustrated by the following example.</p>
+<table id="style-attribute-unicodeBidi-example-1" role="example">
+<caption>Example Fragment &ndash; Unicode Bidirectionality</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&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 <phrase role="strong">tts:unicodeBidi="bidiOverride"</phrase> tts:direction="rtl"&gt;where the tourists snore.&lt;/span&gt;
+&lt;/p&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p/>
+<table id="style-attribute-unicodeBidi-example-1-images" role="example-images">
+<caption>Example Rendition &ndash; Unicode Bidirectionality</caption>
+<tbody>
+<tr>
+<td>
+<graphic source="images/unicodeBidi.png" alt="TTML unicodeBidi style property"/>
+</td>
+</tr>
+</tbody>
+</table>
+<!-- CSS compatibility - remove derivation note
+<note role="derivation">
+<p>The semantics of the style property
+represented by this attribute are based upon that defined by <bibref ref="xsl11"/>,
+&sect; 7.29.6.</p>
+</note>
+-->
+</div3>
+<div3 id="style-attribute-visibility">
+<head>tts:visibility</head>
+<p>The <att>tts:visibility</att> 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>
+<table id="style-property-details-visibility" role="common">
+<col width="25%"/>
+<tbody>
+<tr>
+<td><emph>Values:</emph></td>
+<td>
+<code>visible</code> |
+<code>hidden</code>
+</td>
+</tr>
+<tr>
+<td><emph>Initial:</emph></td>
+<td>
+<code>visible</code>
+</td>
+</tr>
+<tr>
+<td><emph>Applies to:</emph></td>
+<td>
+<loc href="#document-structure-vocabulary-body"><el>body</el></loc>,
+<loc href="#content-vocabulary-div"><el>div</el></loc>,
+<loc href="#content-vocabulary-p"><el>p</el></loc>,
+<loc href="#layout-vocabulary-region"><el>region</el></loc>,
+<loc href="#content-vocabulary-span"><el>span</el></loc>
+</td>
+</tr>
+<tr>
+<td><emph>Inherited:</emph></td>
+<td>yes</td>
+</tr>
+<tr>
+<td><emph>Percentages:</emph></td>
+<td>N/A</td>
+</tr>
+<tr>
+<td><emph>Animatable:</emph></td>
+<td>discrete</td>
+</tr>
+</tbody>
+</table>
+<p>For the purpose of determining applicability of this style property,
+each character child of a <el>p</el> element is considered to be enclosed in an anonymous
+span.</p>
+<p>The <att>tts:visibility</att> 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 <att>tts:visibility</att> style is illustrated by the following example.</p>
+<table id="style-attribute-visibility-example-1" role="example">
+<caption>Example Fragment &ndash; Visibility</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&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 <phrase role="strong">tts:visibility="hidden"</phrase>&gt;
+    &lt;set begin="1s" <phrase role="strong">tts:visibility="visible"</phrase>/&gt;
+    Curiouser
+  &lt;/span&gt;
+  &lt;span <phrase role="strong">tts:visibility="hidden"</phrase>&gt;
+    &lt;set begin="2s" <phrase role="strong">tts:visibility="visible"</phrase>/&gt;
+    and
+  &lt;/span&gt;
+  &lt;span <phrase role="strong">tts:visibility="hidden"</phrase>&gt;
+    &lt;set begin="3s" <phrase role="strong">tts:visibility="visible"</phrase>/&gt;
+    curiouser!
+  &lt;/span&gt;
+&lt;/p&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p/>
+<table id="style-attribute-visibility-example-1-images" role="example-images">
+<caption>Example Rendition &ndash; Visibility</caption>
+<tbody>
+<tr>
+<td>
+<graphic source="images/visibility_0.png" alt="TTML visibility style property - [0,1)"/>
+</td>
+</tr>
+<tr>
+<td>
+<graphic source="images/visibility_1.png" alt="TTML visibility style property - [1,2)"/>
+</td>
+</tr>
+<tr>
+<td>
+<graphic source="images/visibility_2.png" alt="TTML visibility style property - [2,3)"/>
+</td>
+</tr>
+<tr>
+<td>
+<graphic source="images/visibility_3.png" alt="TTML visibility style property - [3,4)"/>
+</td>
+</tr>
+</tbody>
+</table>
+<!-- CSS compatibility - remove derivation note
+  <note role="derivation">
+<p>The semantics of the style property
+represented by this attribute are based upon that defined by <bibref ref="xsl11"/>,
+&sect; 7.28.8.</p>
+</note>
+-->
+</div3>
+<div3 id="style-attribute-wrapOption">
+<head>tts:wrapOption</head>
+<p>The <att>tts:wrapOption</att> 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>
+<table id="style-property-details-wrapOption" role="common">
+<col width="25%"/>
+<tbody>
+<tr>
+<td><emph>Values:</emph></td>
+<td>
+<code>wrap</code> |
+<code>noWrap</code>
+</td>
+</tr>
+<tr>
+<td><emph>Initial:</emph></td>
+<td><code>wrap</code></td>
+</tr>
+<tr>
+<td><emph>Applies to:</emph></td>
+<td>
+<loc href="#content-vocabulary-span"><el>span</el></loc>
+</td>
+</tr>
+<tr>
+<td><emph>Inherited:</emph></td>
+<td>yes</td>
+</tr>
+<tr>
+<td><emph>Percentages:</emph></td>
+<td>N/A</td>
+</tr>
+<tr>
+<td><emph>Animatable:</emph></td>
+<td>discrete</td>
+</tr>
+</tbody>
+</table>
+<p>For the purpose of determining applicability of this style property,
+each character child of a <el>p</el> 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 <att>tts:wrapOption</att> style is illustrated by the following example.</p>
+<table id="style-attribute-wrapOption-example-1" role="example">
+<caption>Example Fragment &ndash; Wrap Option</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&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 <phrase role="strong">tts:wrapOption="noWrap"</phrase>/&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;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p/>
+<table id="style-attribute-wrapOption-example-1-images" role="example-images">
+<caption>Example Rendition &ndash; Wrap Option</caption>
+<tbody>
+<tr>
+<td><graphic source="images/wrapOption.png" alt="TTML wrapOption style property"/></td>
+</tr>
+</tbody>
+</table>
+  <!-- CSS compatibility - remove derivation note
+<note role="derivation">
+<p>The semantics of the style property
+represented by this attribute are based upon that defined by <bibref ref="xsl11"/>,
+&sect; 7.15.13.</p>
+</note>
+-->
+</div3>
+<div3 id="style-attribute-writingMode">
+<head>tts:writingMode</head>
+<p>The <att>tts:writingMode</att> 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>
+<table id="style-property-details-writingMode" role="common">
+<col width="25%"/>
+<tbody>
+<tr>
+<td><emph>Values:</emph></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><emph>Initial:</emph></td>
+<td><code>lrtb</code></td>
+</tr>
+<tr>
+<td><emph>Applies to:</emph></td>
+<td>
+<loc href="#layout-vocabulary-region"><el>region</el></loc>
+</td>
+</tr>
+<tr>
+<td><emph>Inherited:</emph></td>
+<td>no</td>
+</tr>
+<tr>
+<td><emph>Percentages:</emph></td>
+<td>N/A</td>
+</tr>
+<tr>
+<td><emph>Animatable:</emph></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 <att>tts:writingMode</att> style is illustrated by the following example.</p>
+<table id="style-attribute-writingMode-example-1" role="example">
+<caption>Example Fragment &ndash; Writing Mode</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&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 <phrase role="strong">tts:writingMode="tbrl"</phrase>/&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 <phrase role="strong">tts:writingMode="rltb"</phrase>/&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;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p/>
+<table id="style-attribute-writingMode-example-1-images" role="example-images">
+<caption>Example Rendition &ndash; Writing Mode</caption>
+<tbody>
+<tr>
+<td><graphic source="images/writingMode.png" alt="TTML writingMode style property"/></td>
+</tr>
+</tbody>
+</table>
+<note role="explanation">
+<p>In the second paragraph in the above example that targets region
+<code>r2</code>, the <att>tts:unicodeBidi</att> and
+<att>tts:direction</att> 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>
+</note>
+<!-- CSS compatibility - remove derivation note 
+<note role="derivation">
+<p>The semantics of the style property
+represented by this attribute are based upon that defined by <bibref ref="xsl11"/>,
+&sect; 7.27.7.</p>
+</note>
+  -->
+</div3>
+<div3 id="style-attribute-zIndex">
+<head>tts:zIndex</head>
+<p>The <att>tts:zIndex</att> 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>
+<table id="style-property-details-zIndex" role="common">
+<col width="25%"/>
+<tbody>
+<tr>
+<td><emph>Values:</emph></td>
+<td>
+<code>auto</code> |
+<loc href="#style-value-integer">&lt;integer&gt;</loc>
+</td>
+</tr>
+<tr>
+<td><emph>Initial:</emph></td>
+<td><code>auto</code></td>
+</tr>
+<tr>
+<td><emph>Applies to:</emph></td>
+<td>
+<loc href="#layout-vocabulary-region"><el>region</el></loc>
+</td>
+</tr>
+<tr>
+<td><emph>Inherited:</emph></td>
+<td>no</td>
+</tr>
+<tr>
+<td><emph>Percentages:</emph></td>
+<td>N/A</td>
+</tr>
+<tr>
+<td><emph>Animatable:</emph></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
+<bibref ref="xsl11"/>, &sect; 7.28.9, where the <el>tt</el> 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 <att>tts:zIndex</att> style is illustrated by the following example.</p>
+<table id="style-attribute-zIndex-example-1" role="example">
+<caption>Example Fragment &ndash; Z Index</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&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 <phrase role="strong">tts:zIndex="0"</phrase>/&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 <phrase role="strong">tts:zIndex="1"</phrase>/&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 <phrase role="strong">tts:zIndex="2"</phrase>/&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 <phrase role="strong">tts:zIndex="3"</phrase>/&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;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p/>
+<p/>
+<table id="style-attribute-zIndex-example-1-images" role="example-images">
+<caption>Example Rendition &ndash; Z Index</caption>
+<tbody>
+<tr>
+<td><graphic source="images/zIndex.png" alt="TTML zIndex style property"/></td>
+</tr>
+</tbody>
+</table>
+<!-- CSS compatibility - remove derivation note
+<note role="derivation">
+<p>The semantics of the style property
+represented by this attribute are based upon that defined by <bibref ref="xsl11"/>,
+&sect; 7.28.9.</p>
+</note>
+-->
+</div3>
+</div2>
+<div2 id="styling-style-value-expressions">
+<head>Style Value Expressions</head>
+<p>Style property values include the use of the following expressions:</p>
+<ulist>
+<item><p><specref ref="style-value-alpha"/></p></item>
+<item><p><specref ref="style-value-color"/></p></item>
+<item><p><specref ref="style-value-digit"/></p></item>
+<item><p><specref ref="style-value-duration"/></p></item>
+<item><p><specref ref="style-value-familyName"/></p></item>
+<item><p><specref ref="style-value-genericFamilyName"/></p></item>
+<item><p><specref ref="style-value-hexDigit"/></p></item>
+<item><p><specref ref="style-value-integer"/></p></item>
+<item><p><specref ref="style-value-length"/></p></item>
+<item><p><specref ref="style-value-namedColor"/></p></item>
+<item><p><specref ref="style-value-quotedString"/></p></item>
+<item><p><specref ref="style-value-string"/></p></item>
+</ulist>
+<div3 id="style-value-alpha">
+<head>&lt;alpha&gt;</head>
+<p>An &lt;alpha&gt; expression is used to express an opacity value,
+where	0 means fully transparent and 1 means fully opaque.</p>
+<table id="alpha-style-expression-syntax" role="syntax">
+<caption>Syntax Representation &ndash; &lt;alpha&gt;</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;alpha&gt;
+  : <emph>float</emph>
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p>In the above syntax representation, the syntactic element
+<emph><code>float</code></emph> must adhere to the lexical
+representation defined by <bibref ref="xsd-2"/>&nbsp;&sect;
+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 shall 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>
+</div3>
+<div3 id="style-value-color">
+<head>&lt;color&gt;</head>
+<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 <bibref ref="srgb"/>.</p>
+<table id="color-style-expression-syntax" role="syntax">
+<caption>Syntax Representation &ndash; &lt;color&gt;</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;color&gt;
+  : "#" rrggbb
+  | "#" rrggbbaa
+  | "rgb" "(" r-value "," g-value "," b-value ")"
+  | "rgba" "(" r-value "," g-value "," b-value "," a-value ")"
+  | <loc href="#style-value-namedColor">&lt;namedColor&gt;</loc>
+
+rrggbb
+  :  <loc href="#style-value-hexDigit">&lt;hexDigit&gt;</loc>{6}
+
+rrggbbaa
+  :  <loc href="#style-value-hexDigit">&lt;hexDigit&gt;</loc>{8}
+
+r-value | g-value | b-value | a-value
+  : component-value
+
+component-value
+  : non-negative-integer                    // valid range: [0,255]
+
+non-negative-integer
+  : <loc href="#style-value-digit">&lt;digit&gt;</loc>+
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p>When expressing RGB component values, these values are considered
+to <phrase role="strong">not</phrase> 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 <bibref ref="srgb"/> color space for both inputs and outputs of
+the composition function.</p>
+<note role="clarification">
+<p>The use of <bibref ref="srgb"/> 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>
+</note>
+<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>
+</div3>
+<div3 id="style-value-digit">
+<head>&lt;digit&gt;</head>
+<p>A &lt;digit&gt; is used to express integers and other types of numbers or tokens.</p>
+<table id="digit-style-expression-syntax" role="syntax">
+<caption>Syntax Representation &ndash; &lt;digit&gt;</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;digit&gt;
+  : "0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9"
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+</div3>
+<div3 id="style-value-duration">
+<head>&lt;duration&gt;</head>
+<p>A &lt;duration&gt; expression is used to express a temporal duration value.</p>
+<table id="duration-style-expression-syntax" role="syntax">
+<caption>Syntax Representation &ndash; &lt;duration&gt;</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;duration&gt;
+  : <loc href="#style-value-digit">&lt;digit&gt;</loc>+ ( "." <loc href="#style-value-digit">&lt;digit&gt;</loc>+ )? metric
+
+metric
+  : "s"                 // seconds
+  | "ms"                // milliseconds
+  | "f"                 // frames
+  | "t"                 // ticks
+</eg>
+</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>
+</div3>
+<div3 id="style-value-familyName">
+<head>&lt;familyName&gt;</head>
+<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>
+
+<table id="familyName-style-expression-syntax" role="syntax">
+<caption>Syntax Representation &ndash; &lt;familyName&gt;</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;familyName&gt;
+  : <loc href="#style-value-string">&lt;string&gt;</loc>
+  | <loc href="#style-value-quotedString">&lt;quotedString&gt;</loc>
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+</div3>
+<div3 id="style-value-genericFamilyName">
+<head>&lt;genericFamilyName&gt;</head>
+<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>
+<table id="genericFamilyName-style-expression-syntax" role="syntax">
+<caption>Syntax Representation &ndash; &lt;genericFamilyName&gt;</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;genericFamilyName&gt;
+  : "default"
+  | "monospace"
+  | "sansSerif"
+  | "serif"
+  | "monospaceSansSerif"
+  | "monospaceSerif"
+  | "proportionalSansSerif"
+  | "proportionalSerif"
+</eg>
+</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>
+</div3>
+<div3 id="style-value-hexDigit">
+<head>&lt;hexDigit&gt;</head>
+<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>
+<table id="hexDigit-style-expression-syntax" role="syntax">
+<caption>Syntax Representation &ndash; &lt;hexDigit&gt;</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;hexDigit&gt;
+  : <loc href="#style-value-digit">&lt;digit&gt;</loc>
+  | "a" | "b" | "c" | "d" | "e" | "f"
+  | "A" | "B" | "C" | "D" | "E" | "F"
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+</div3>
+<div3 id="style-value-integer">
+<head>&lt;integer&gt;</head>
+<p>An &lt;integer&gt; expression is used to express an arbitrary, signed integral value.</p>
+<table id="integer-style-expression-syntax" role="syntax">
+<caption>Syntax Representation &ndash; &lt;integer&gt;</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;integer&gt;
+  : ( "+" | "-" )? <loc href="#style-value-digit">&lt;digit&gt;</loc>+
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+</div3>
+<div3 id="style-value-length">
+<head>&lt;length&gt;</head>
+<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>
+<table id="length-style-expression-syntax" role="syntax">
+<caption>Syntax Representation &ndash; &lt;length&gt;</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&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
+  : <loc href="#style-value-digit">&lt;digit&gt;</loc>+
+
+non-negative-real
+  : <loc href="#style-value-digit">&lt;digit&gt;</loc>* "." <loc href="#style-value-digit">&lt;digit&gt;</loc>+
+
+units
+  : "px"
+  | "em"
+  | "c"                                     // abbreviation of "cell"
+</eg>
+</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 <bibref ref="xsl11"/>, &sect; 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 <bibref ref="xsl11"/>, &sect; 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 <specref
+ref="parameter-attribute-cellResolution"/>.</p>
+</div3>
+<div3 id="style-value-namedColor">
+<head>&lt;namedColor&gt;</head>
+<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 <bibref ref="srgb"/>.</p>
+<p>For the purpose of parsing, no distinction must be made between lower and upper case.</p>
+<table id="namedColor-style-expression-syntax" role="syntax">
+<caption>Syntax Representation &ndash; &lt;namedColor&gt;</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&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)
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<note role="clarification">
+<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 <bibref ref="svg11"/>, &sect; 4.2.</p>
+</note>
+</div3>
+<div3 id="style-value-quotedString">
+<head>&lt;quotedString&gt;</head>
+<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>
+<table id="quotedString-style-expression-syntax" role="syntax">
+<caption>Syntax Representation &ndash; &lt;quotedString&gt;</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;quotedString&gt;
+  : "\"" ( <emph>char</emph> - { "\"" } )* "\""
+  | "\'" ( <emph>char</emph> - { "\'" } )* "\'"
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p>In the above syntax representation, the syntactic element <emph><code>char</code></emph> must adhere to production
+[2] <code>Char</code> as defined by <bibref ref="xml10"/>&nbsp;&sect;
+2.2.</p>
+</div3>
+<div3 id="style-value-string">
+<head>&lt;string&gt;</head>
+<p>A &lt;string&gt; expression consists of a sequence of characters where no character
+is a quotation delimiter character.</p>
+<table id="string-style-expression-syntax" role="syntax">
+<caption>Syntax Representation &ndash; &lt;string&gt;</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;string&gt;
+  : ( <emph>char</emph> - { "\"" | "\'" } )+
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p>In the above syntax representation, the syntactic element <emph><code>char</code></emph> must adhere to production
+[2] <code>Char</code> as defined by <bibref ref="xml10"/>&nbsp;&sect;
+2.2.</p>
+</div3>
+</div2>
+<div2 id="semantics-style-resolution">
+<head>Style Resolution</head>
+<p>This section defines the semantics of style resolution in terms of
+a standard processing model as follows:</p>
+<ulist>
+<item><p><specref ref="semantics-style-association"/></p></item>
+<item><p><specref ref="semantics-style-inheritance"/></p></item>
+<item><p><specref ref="semantics-style-resolution-value-categories"/></p></item>
+<item><p><specref ref="semantics-style-resolution-processing"/></p></item>
+</ulist>
+<p>Any implementation of this model is permitted provided that the
+externally observable results are consistent with the results produced
+by this model.</p>
+<note role="derivation">
+<p>The semantics of style resolution employed here are based upon
+<bibref ref="xsl11"/>, &sect; 5.</p>
+</note>
+<div3 id="semantics-style-association">
+<head>Style Association</head>
+<p>Style association is a sub-process of <specref
+ref="semantics-style-resolution-processing"/> 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>
+<ulist>
+<item><p><loc href="#semantics-style-association-inline">inline styling</loc></p></item>
+<item><p><loc href="#semantics-style-association-referential">referential styling</loc></p></item>
+<item><p><loc href="#semantics-style-association-chained-referential">chained referential styling</loc></p></item>
+</ulist>
+<p>In addition to the above, style matter may be associated with layout matter using:</p>
+<ulist>
+<item><p><loc href="#semantics-style-association-nested">nested styling</loc></p></item>
+</ulist>
+<div4 id="semantics-style-association-inline">
+<head>Inline Styling</head>
+<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 <emph>inline styling</emph>.</p>
+<p>Style properties associated by inline styling are afforded a higher priority than all other
+forms of style association.</p>
+<table id="style-association-example-1" role="example">
+<caption>Example &ndash; Inline Styling</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;p <phrase role="strong">tts:color="white"</phrase>&gt;White 1&nbsp;&lt;span <phrase role="strong">tts:color="yellow"</phrase>&gt;Yellow&lt;/span&gt;&nbsp;White 2&lt;/p&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<note role="explanation">
+<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 <el>p</el> element as described in <specref
+ref="semantics-style-inheritance-content"/> below.  </p>
+</note>
+</div4>
+<div4 id="semantics-style-association-referential">
+<head>Referential Styling</head>
+<p>Style properties may be expressed in an out-of-line manner and referenced by the
+affected element using the <att>style</att> attribute. When expressed in this manner,
+the association of style information is referred to as <emph>referential styling</emph>.</p>
+<p>If a <att>style</att> 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 <el>style</el> element descendants of a <el>styling</el>
+element. It is considered an error to reference a <el>style</el>
+element that is a descendant of a <el>layout</el> element.</p>
+<note role="explanation">
+<p>The use of referential styling encourages the reuse of style specifications while
+sacrificing locality of reference.</p>
+</note>
+<note role="explanation">
+<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 <specref ref="semantics-style-association-inline"/>.</p>
+</note>
+<table id="style-association-example-2" role="example">
+<caption>Example &ndash; Referential Styling</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;style <phrase role="strong">xml:id="s1"</phrase> tts:color="white"/&gt;
+&lt;style <phrase role="strong">xml:id="s2"</phrase> tts:color="yellow"/&gt;
+...
+&lt;p <phrase role="strong">style="s1"</phrase>&gt;White 1&nbsp;&lt;span <phrase role="strong">style="s2"</phrase>&gt;Yellow&lt;/span&gt;&nbsp;White 2&lt;/p&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<note role="explanation">
+<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 <el>p</el> element as described in <specref
+ref="semantics-style-inheritance-content"/> below.</p>
+</note>
+</div4>
+<div4 id="semantics-style-association-chained-referential">
+<head>Chained Referential Styling</head>
+<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 <emph>chained referential styling</emph>.</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 <el>style</el> element descendants of a <el>styling</el>
+element. It is considered an error to reference a <el>style</el>
+element that is a descendant of a <el>layout</el> element.</p>
+<note role="explanation">
+<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>
+</note>
+<note role="explanation">
+<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 <specref ref="semantics-style-association-inline"/>.</p>
+</note>
+<table id="style-association-example-3" role="example">
+<caption>Example &ndash; Chained Referential Styling</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;style <phrase role="strong">xml:id="s1"</phrase> tts:color="white" tts:fontFamily="monospaceSerif"/&gt;
+&lt;style <phrase role="strong">xml:id="s2"</phrase> <phrase role="strong">style="s1"</phrase> tts:color="yellow"/&gt;
+...
+&lt;p <phrase role="strong">style="s1"</phrase>&gt;White Monospace&lt;/p&gt;
+&lt;p <phrase role="strong">style="s2"</phrase>&gt;Yellow Monospace&lt;/p&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+</div4>
+<div4 id="semantics-style-association-nested">
+<head>Nested Styling</head>
+<p>Style properties may be expressed in an nested manner by direct specification of one or
+more <el>style</el> element children of the affected element.
+When expressed in this manner, the association of style information
+is referred to as <emph>nested styling</emph>.</p>
+<p>Style properties associated by nested styling are afforded a lower priority than inline
+styling but with higher priority than referential styling.</p>
+<table id="style-association-example-4" role="example">
+<caption>Example &ndash; Nested Styling</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;region xml:id="r1"&gt;
+  <phrase role="strong">&lt;style tts:extent="128px 66px"/&gt;</phrase>
+  <phrase role="strong">&lt;style tts:origin="0px 0px"/&gt;</phrase>
+  <phrase role="strong">&lt;style tts:displayAlign="center"/&gt;</phrase>
+&lt;/region&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<note role="clarification">
+<p>In this version of this specification, nested styling applies only
+to the <el>region</el> element.</p>
+</note>
+</div4>
+</div3>
+<div3 id="semantics-style-inheritance">
+<head>Style Inheritance</head>
+<p>Style inheritance is a sub-process of <specref
+ref="semantics-style-resolution-processing"/> used to determine the
+specified style set of each content and
+layout element.</p>
+<p>Styles are further propagated to content matter
+using:
+</p>
+<ulist>
+<item><p><loc href="#semantics-style-inheritance-content">content style inheritance</loc></p></item>
+<item><p><loc href="#semantics-style-inheritance-content">region style inheritance</loc></p></item>
+</ulist>
+<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 <specref ref="semantics-region-layout-step-1"/>.</p>
+<note role="explanation">
+<p>The intermediate synchronic document form is utilized rather than
+the original form in order to facilitate region inheritance
+processing.</p>
+</note>
+<div4 id="semantics-style-inheritance-content">
+<head>Content Style Inheritance</head>
+<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>
+<table id="style-inheritance-example-2" role="example">
+<caption>Example &ndash; Content Style Inheritance</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;p <phrase role="strong">tts:fontFamily="monospaceSansSerif"</phrase>&gt;
+  &lt;span tts:color="yellow"&gt;Yellow Monospace&lt;/span&gt;
+&lt;/p&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<note role="explanation">
+<p>In the above example, the <el>span</el> element that encloses the character items
+<code>Yellow Monospace</code> is not associated with a <att>tts:fontFamily</att> style
+property and this property is inheritable; therefore, the value of the
+<att>tts:fontFamily</att> style
+is inherited from the computed style
+set of the ancestor <el>p</el> element,
+and is added to the
+specified
+style
+set of the <el>span</el> element.</p>
+</note>
+</div4>
+<div4 id="semantics-style-inheritance-region">
+<head>Region Style Inheritance</head>
+<p>Style properties are inherited from a region element in the following case:</p>
+<olist>
+<item><p>if a style property <emph>P</emph> is not associated with
+a content
+element or an anonymous span <emph>E</emph> and the style
+property is designated as inheritable, and</p></item> <item><p>if that
+style property <emph>P</emph> is in the computed style
+set of region
+<emph>R</emph>,
+and</p></item>
+<item><p>if that element <emph>E</emph> is flowed into (presented within) region
+<emph>R</emph>.</p></item>
+</olist>
+<table id="style-inheritance-example-3" role="example">
+<caption>Example &ndash; Region Style Inheritance</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;region <phrase role="strong">xml:id="r1"</phrase>&gt;
+&nbsp;&nbsp;&lt;style tts:color="yellow"/&gt;
+&nbsp;&nbsp;&lt;style tts:fontFamily="monospaceSerif"/&gt;
+&lt;/region&gt;
+...
+&lt;p <phrase role="strong">region="r1"</phrase>&gt;Yellow Monospace&lt;/p&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<note role="explanation">
+<p>In the above example, the anonymous span that encloses the character
+items <code>Yellow Monospace</code> effectively inherits the <att>tts:color</att>
+and <att>tts:fontFamily</att> styles specified on the <el>region</el>
+element into which the <el>p</el> element is flowed (presented).</p>
+</note>
+</div4>
+</div3>
+<div3 id="semantics-style-resolution-value-categories">
+<head>Style Resolution Value Categories</head>
+<p>During style resolution, layout, and presentation processing,
+three categories of style property values are distinguished as
+follows:</p>
+<ulist>
+<item><p><loc href="#semantics-style-resolved-value-category-specified">specified values</loc></p></item>
+<item><p><loc href="#semantics-style-resolved-value-category-computed">computed values</loc></p></item>
+<item><p><loc href="#semantics-style-resolved-value-category-actual">actual values</loc></p></item>
+</ulist>
+<div4 id="semantics-style-resolved-value-category-specified">
+<head>Specified Values</head>
+<p>Values of style properties that are associated with or inherited
+by an element or anonymous span are referred to as <emph>specified values</emph>. The
+set of all specified style properties of a given element is referred to
+as the <emph>specified style set</emph> of that element.</p>
+</div4>
+<div4 id="semantics-style-resolved-value-category-computed">
+<head>Computed Values</head>
+<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
+<emph>computed values</emph>. The
+set of all computed style properties of a given element is referred to
+as the <emph>computed style set</emph> 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>
+</div4>
+<div4 id="semantics-style-resolved-value-category-actual">
+<head>Actual Values</head>
+<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 <emph>actual values</emph>.  The set of all
+actual style properties of a given element is referred to as the
+<emph>actual style set</emph> of that element.</p>
+<note role="elaboration">
+<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>
+</note>
+<note role="explanation">
+<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>
+</note>
+</div4>
+</div3>
+<div3 id="semantics-style-resolution-processing">
+<head>Style Resolution Processing</head>
+<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>
+<ulist>
+<item><p><specref ref="semantics-style-resolution-processing-definitions"/></p></item>
+<item><p><specref ref="semantics-style-resolution-processing-sss"/></p></item>
+<item><p><specref ref="semantics-style-resolution-processing-css"/></p></item>
+<item><p><specref ref="semantics-style-resolution-process-overall"/></p></item>
+</ulist>
+<p>The process described here forms an integral sub-process of
+<specref ref="semantics-region-layout"/>.</p>
+<div4 id="semantics-style-resolution-processing-definitions">
+<head>Conceptual Definitions</head>
+<p>For the purpose of interpreting the style resolution processing
+model specified below, the following conceptual definitions apply:</p>
+<glist>
+<gitem>
+<label>[style property]</label>
+<def>
+<p>a style property, <emph>P</emph>, 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>
+<table id="conceptual-definition-example-style-property" role="example">
+<caption>Example &ndash; conceptual style property</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+[
+  ["http://www.w3.org/ns/ttml#styling", "color"],
+  ["specified", <emph>color</emph>, "red"]
+]
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p/>
+</def>
+</gitem>
+<gitem>
+<label>[style (property) set]</label>
+<def>
+<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 <emph>E</emph> is referred to as <emph>SSS(E)</emph>;</p>
+<table id="conceptual-definition-example-specified-style-set" role="example">
+<caption>Example &ndash; conceptual (specified) style (property) set</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+{
+  [
+    ["http://www.w3.org/ns/ttml#styling", "backgroundColor"],
+    ["specified", <emph>color</emph>, 0x00FF00 ]
+  ],
+  [
+    ["http://www.w3.org/ns/ttml#styling", "color"],
+    ["specified", <emph>color</emph>, "red" ]
+  ],
+  [
+    ["http://www.w3.org/ns/ttml#styling", "fontSize"],
+    ["specified", <emph>length</emph>, "1c" ]
+  ],
+  [
+    ["http://www.w3.org/ns/ttml#styling", "lineHeight"],
+    ["specified", <emph>length</emph>, "117%" ]
+  ]
+}
+</eg>
+</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
+<emph>E</emph> is referred to as <emph>CSS(E)</emph>;</p>
+<table id="conceptual-definition-example-computed-style-set" role="example">
+<caption>Example &ndash; conceptual (computed) style (property) set</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+{
+  [
+    ["http://www.w3.org/ns/ttml#styling", "backgroundColor"],
+    ["specified", <emph>color</emph>, 0x00FF00 ]
+  ],
+  [
+    ["http://www.w3.org/ns/ttml#styling", "color"],
+    ["computed", <emph>color</emph>, 0xFF0000 ]
+  ],
+  [
+    ["http://www.w3.org/ns/ttml#styling", "fontSize"],
+    ["computed", <emph>length</emph>, "24px" ]
+  ],
+  [
+    ["http://www.w3.org/ns/ttml#styling", "lineHeight"],
+    ["computed", <emph>length</emph>, "28px" ]
+  ]
+}
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p/>
+</def>
+</gitem>
+<gitem>
+<label>[style (property) merging]</label>
+<def>
+<p>a style property <emph>P<sub>new</sub></emph> is merged into a
+style (property) set, <emph>SS</emph>, as follows: if a style property
+<emph>P<sub>old</sub></emph> is already present in <emph>SS</emph>
+where the name of <emph>P<sub>new</sub></emph> is identical to the
+name of <emph>P<sub>old</sub></emph>, then replace
+<emph>P<sub>old</sub></emph> in <emph>SS</emph> with
+<emph>P<sub>new</sub></emph>; otherwise, add
+<emph>P<sub>new</sub></emph> to <emph>SS</emph>;</p>
+</def>
+</gitem>
+<gitem>
+<label>[style (property) set merging]</label>
+<def>
+<p>a style (property) set <emph>SS<sub>new</sub></emph> is merged into
+an existing style (property) set <emph>SS<sub>old</sub></emph> as
+follows: for each style property <emph>P<sub>new</sub></emph> in
+<emph>SS<sub>new</sub></emph>, merge <emph>P<sub>new</sub></emph> into
+<emph>SS<sub>old</sub></emph>;</p>
+</def>
+</gitem>
+</glist>
+</div4>
+<div4 id="semantics-style-resolution-processing-sss">
+<head>Specified Style Set Processing</head>
+<p>The specified style set <emph>SSS</emph> of an element or
+anonymous span <emph>E</emph>,
+<emph>SSS(E)</emph>, is determined according to the following ordered
+rules:</p>
+<olist>
+<item><p><phrase role="strong">[initialization]</phrase> initialize
+the specified style set <emph>SSS</emph> of <emph>E</emph> to the
+empty set;</p></item>
+<item><p><phrase role="strong">[referential and chained referential
+styling]</phrase> for each <el>style</el> element <emph>S<sub>REF</sub></emph>
+referenced by a <att>style</att> attribute specified on
+<emph>E</emph>, and in the order specified in the <att>style</att>
+attribute, then, if <emph>S<sub>REF</sub></emph> is a descendant
+of a <el>styling</el> element,
+merge the specified style set of
+<emph>S<sub>REF</sub></emph>, <emph>SSS(S<sub>REF</sub>)</emph>, into
+the specified style set of <emph>E</emph>,
+<emph>SSS(E)</emph>;</p></item>
+<item><p><phrase role="strong">[nested styling]</phrase> for each
+nested <el>style</el> element child <emph>S<sub>NEST</sub></emph> of
+<emph>E</emph>, and in the specified order of child elements, merge
+the specified style set of <emph>S<sub>NEST</sub></emph>,
+<emph>SSS(S<sub>NEST</sub>)</emph>, into the specified style set of
+<emph>E</emph>, <emph>SSS(E)</emph>;</p></item>
+<item><p><phrase role="strong">[inline styling]</phrase> for each
+style property <emph>P</emph> expressed as a specified styling
+attribute of <emph>E</emph>,
+merge <emph>P</emph> into the specified style
+set of <emph>E</emph>, <emph>SSS(E)</emph>;</p></item>
+<item>
+<p><phrase role="strong">[implicit inheritance]</phrase> if the
+element type of <emph>E</emph> is not the styling element type
+<el>style</el>, then for each inheritable style property
+<emph>P<sub>INH</sub></emph> in the set of style properties defined
+above in <specref ref="styling-attribute-vocabulary"/>, perform the
+following ordered sub-steps:</p>
+<olist>
+<item><p>if <emph>P<sub>INH</sub></emph> is present in the specified
+style set of <emph>E</emph>, <emph>SSS(E)</emph>, then continue to the
+next inheritable style property;</p></item>
+<item><p>if the element type of <emph>E</emph> is the layout element
+type <el>region</el>, then set <emph>P&prime;</emph> to the initial value of
+property <emph>P</emph>, where the initial value of a property is
+determined according to the specific property definition found above
+in <specref ref="styling-attribute-vocabulary"/>;</p></item>
+<item><p>if the element type of <emph>E</emph> is a content element
+type or anonymous span, then set <emph>P&prime;</emph> to the result of
+looking up the value of <emph>P</emph> in the computed style set of
+the immediate ancestor element of <emph>E</emph>, i.e.,
+<emph>CSS(PARENT(E))</emph>;</p></item>
+<item><p>if the value of <emph>P&prime;</emph> is not undefined, then merge
+<emph>P&prime;</emph> into the specified style set of <emph>E</emph>,
+<emph>SSS(E)</emph>.</p></item>
+</olist>
+</item>
+</olist>
+</div4>
+<div4 id="semantics-style-resolution-processing-css">
+<head>Computed Style Set Processing</head>
+<p>The computed style set <emph>CSS</emph> of an element or
+anonymous span <emph>E</emph>,
+<emph>CSS(E)</emph>, is determined according to the following ordered
+rules:</p>
+<olist>
+<item><p><phrase role="strong">[resolve specified styles]</phrase>
+determine (obtain) the specified style set <emph>SSS</emph> of
+<emph>E</emph>, namely, <emph>SSS(E)</emph>, in accordance with
+<specref ref="semantics-style-resolution-processing-sss"/>;</p>
+</item>
+<item><p><phrase role="strong">[initialization]</phrase>
+initialize <emph>CSS(E)</emph> to a (deep) copy of
+<emph>SSS(E)</emph>;</p></item>
+<item><p><phrase role="strong">[filter]</phrase> if
+<emph>E</emph> is a <el>style</el> element, then return
+<emph>CSS(E)</emph> as the resulting computed style set without
+further resolution; otherwise, continue with the next rule;</p></item>
+<item>
+<p><phrase role="strong">[relative value resolution]</phrase> for each
+style property <emph>P</emph> in <emph>CSS(E)</emph>, where the value
+type of <emph>P</emph> is relative, perform the following ordered
+sub-steps:</p>
+<olist>
+<item><p>replace the relative value of <emph>P</emph> with an
+equivalent, non-relative (computed) value;</p></item>
+<item><p>set the category of <emph>P</emph> to "computed";</p></item>
+</olist>
+</item>
+</olist>
+<note role="explanation">
+<p>As a result of the filtering rule above, the computed style set of
+a <el>style</el> 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 <el>style</el> element.</p>
+</note>
+</div4>
+<div4 id="semantics-style-resolution-process-overall">
+<head>Style Resolution Process</head>
+<p>The top-level style resolution process is defined as follows: using
+a preorder traversal of each element and anonymous span,
+<emph>E</emph>, of an intermediate synchronic document,
+<emph>DOC<sub>inter</sub></emph>, perform the following ordered
+sub-steps:</p>
+<olist>
+<item><p><phrase role="strong">[filter]</phrase> if the element type
+of <emph>E</emph> is not the styling element type <el>style</el>, is
+not the layout element type <el>region</el>, and is not one of the
+content element types <el>body</el>, <el>div</el>, <el>p</el>,
+<el>span</el>, <el>br</el>, or anonymous span, then continue to the
+next element in the preorder traversal;</p></item>
+<item><p> <phrase role="strong">[resolve computed styles]</phrase>
+determine (obtain) the computed style set <emph>CSS</emph> of
+<emph>E</emph>, namely, <emph>CSS(E)</emph>, in accordance with
+<specref ref="semantics-style-resolution-processing-css"/>.</p></item>
+</olist>
+</div4>
+</div3>
+</div2>
+</div1>
+<div1 id="layout">
+<head>Layout</head>
+<p>This section specifies the <emph>layout</emph> 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>
+<note role="elaboration">
+<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 &ndash; use of referential styling &ndash;
+in which the style
+matter is not embedded (inlined).</p>
+</note>
+<div2 id="layout-element-vocabulary">
+<head>Layout Element Vocabulary</head>
+<p>The following elements specify the structure and principal layout aspects of a
+document instance:</p>
+<ulist>
+<item><p><specref ref="layout-vocabulary-layout"/></p></item>
+<item><p><specref ref="layout-vocabulary-region"/></p></item>
+</ulist>
+<div3 id="layout-vocabulary-layout">
+<head>layout</head>
+<p>The <el>layout</el> element is a container element used to group
+layout matter, including metadata that applies to layout matter.</p>
+<p>The <el>layout</el> element accepts as its children zero or more
+elements in the <code>Metadata.class</code> element group, followed by
+zero or more <el>region</el> elements.</p>
+<table id="elt-syntax-layout" role="syntax">
+<caption>XML Representation &ndash; Element Information Item: layout</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;layout
+  <loc href="#content-attribute-id">xml:id</loc> = ID
+  <loc href="#content-attribute-lang">xml:lang</loc> = string
+  <loc href="#content-attribute-space">xml:space</loc> = (<emph>default</emph>|<emph>preserve</emph>)
+  {<emph>any attribute not in default or any TT namespace</emph>}&gt;
+  <emph>Content:</emph> <loc href="#element-vocab-group-table">Metadata.class</loc>*, <loc href="#layout-vocabulary-region">region</loc>*
+&lt;/layout&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p>To the extent that time semantics apply to the content of the
+<el>layout</el> element, the implied time interval of this element is
+defined to be coterminous with the external time interval.</p>
+</div3>
+<div3 id="layout-vocabulary-region">
+<head>region</head>
+<p>The <el>region</el> 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
+<specref ref="semantics-style-inheritance-region"/>, 
+the <el>region</el> element may be used to specify inheritable style properties to be
+inherited by content that is flowed into it.</p>
+<p>The <el>region</el> 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 <el>style</el> elements.</p>
+<p>Any metadata specified by children in the <code>Metadata.class</code>
+element group applies semantically to the <el>region</el> 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 <el>region</el> element.
+Any <el>style</el> child element must be considered a local style
+definition that applies only to the containing <el>region</el>
+element, i.e., does not apply for resolving referential styling.</p>
+<table id="elt-syntax-region" role="syntax">
+<caption>XML Representation &ndash; Element Information Item: region</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;region
+  <loc href="#timing-attribute-begin">begin</loc> = <loc href="#timing-value-timeExpression">&lt;timeExpression&gt;</loc>
+  <loc href="#timing-attribute-dur">dur</loc> = <loc href="#timing-value-timeExpression">&lt;timeExpression&gt;</loc>
+  <loc href="#timing-attribute-end">end</loc> = <loc href="#timing-value-timeExpression">&lt;timeExpression&gt;</loc>
+  <loc href="#style-attribute-style">style</loc> = IDREFS
+  <loc href="#timing-attribute-timeContainer">timeContainer</loc> = (<emph>par</emph>|<emph>seq</emph>)
+  <loc href="#metadata-attribute-role">ttm:role</loc> = string
+  <loc href="#content-attribute-id">xml:id</loc> = ID
+  <loc href="#content-attribute-lang">xml:lang</loc> = string
+  <loc href="#content-attribute-space">xml:space</loc> = (<emph>default</emph>|<emph>preserve</emph>)
+  {<emph>any attribute in TT Style namespace</emph>}
+  {<emph>any attribute not in default or any TT namespace</emph>}&gt;
+  <emph>Content:</emph> <loc href="#element-vocab-group-table">Metadata.class</loc>*, <loc href="#element-vocab-group-table">Animation.class</loc>*, <loc href="#styling-vocabulary-style">style</loc>*
+&lt;/region&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p>If <att>begin</att> and (or) <att>end</att> attributes are specified on a
+<el>region</el> 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 <el>region</el> element that is associated
+with a time interval is the document instance's root <el>tt</el> element.</p>
+<p>If a <att>dur</att> attribute is specified on the <el>region</el> 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>
+<note role="motivation">
+<p>A <el>region</el> 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>
+</note>
+<p>If no <att>timeContainer</att> attribute is specified on
+a <el>region</el> element, then it must be interpreted as having
+<emph>parallel</emph> time containment semantics.</p>
+<p>If a <loc
+href="#metadata-attribute-role"><att>ttm:role</att></loc> attribute is
+specified on a <el>region</el> element, then it must adhere to the
+value syntax defined by <specref
+ref="metadata-attribute-role-syntax"/>, 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>
+</div3>
+</div2>
+<div2 id="layout-attribute-vocabulary">
+<head>Layout Attribute Vocabulary</head>
+<p>This section defines the <specref ref="layout-attribute-region"/> attribute used with content elements.</p>
+<div3 id="layout-attribute-region">
+<head>region</head>
+<p>The <att>region</att> attribute is used to reference a <el>region</el>
+element which defines a space or area into which a content element is intended to be flowed.</p>
+<p>The <att>region</att> attribute may be specified by an instance of the following
+element types:</p>
+<ulist>
+<item><p><loc href="#document-structure-vocabulary-body"><el>body</el></loc></p></item>
+<item><p><loc href="#content-vocabulary-div"><el>div</el></loc></p></item>
+<item><p><loc href="#content-vocabulary-p"><el>p</el></loc></p></item>
+<item><p><loc href="#content-vocabulary-span"><el>span</el></loc></p></item>
+</ulist>
+<note role="seealso">
+<p>See <specref ref="semantics-region-layout"/> below for further information on content
+flow in a region.</p>
+</note>
+</div3>
+</div2>
+<div2 id="semantics-region-layout">
+<head>Region Layout and Presentation</head>
+<p>This section defines the semantics of region layout and
+presentation in terms of a standard processing model as
+follows:</p>
+<ulist>
+<item><p><specref ref="semantics-default-region"/></p></item>
+<item><p><specref ref="semantics-region-layout-step-1"/></p></item>
+<item><p><specref ref="semantics-region-layout-step-2"/></p></item>
+<item><p><specref ref="semantics-region-layout-example"/></p></item>
+</ulist>
+<p>Any
+implementation is permitted provided that the externally observable
+results are consistent with the results produced by this model.
+</p>
+<div3 id="semantics-default-region">
+<head>Default Region</head>
+<p>If a TTML document instance does not specify a
+<loc href="#layout-vocabulary-region"><el>region</el></loc> element,
+then a <emph>default region</emph> is implied with the following characteristics:</p>
+<ulist>
+<item>
+<p>the identity of the default region is considered to be anonymous;</p>
+</item>
+<item>
+<p>the extent of the default region is the same as the root container
+region;</p>
+</item>
+<item>
+<p>the temporal interval of the default region is the same as temporal
+interval of the document instance;</p>
+</item>
+</ulist>
+<p>Furthermore, if no <loc
+href="#layout-vocabulary-region"><el>region</el></loc> element was
+specified, then the <loc
+href="#layout-attribute-region"><att>region</att></loc> 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 <loc href="#document-structure-vocabulary-body"><el>body</el></loc> 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 <loc
+href="#layout-vocabulary-region"><el>region</el></loc> element and its
+parent <loc href="#layout-vocabulary-layout"><el>layout</el></loc>
+element were specified in a <loc
+href="#document-structure-vocabulary-head"><el>head</el></loc>
+element, and a matching <loc
+href="#layout-attribute-region"><att>region</att></loc> attribute were
+specified on the <loc
+href="#document-structure-vocabulary-body"><el>body</el></loc> element
+as shown in the following example:</p>
+<table id="semantics-default-region-example" role="example">
+<caption>Example &ndash; Implied Default Region</caption>
+<tbody>
+<tr>
+<td>
+<eg>
+&lt;tt xml:lang="" xmlns="http://www.w3.org/ns/ttml"&gt;
+  &lt;head&gt;
+    <phrase role="strong">&lt;layout&gt;
+      &lt;region xml:id="anonymous"/&gt;
+    &lt;/layout&gt;</phrase>
+  &lt;/head&gt;
+  &lt;body <phrase role="strong">region="anonymous"</phrase>/&gt;
+&lt;/tt&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<note role="explanation">
+<p>In the above example, a default <el>region</el> element and <att>region</att>
+attribute are implied. In addition, a <el>layout</el> container element is implied for
+the implied <el>region</el> element.</p>
+</note>
+</div3>
+<div3 id="semantics-region-layout-step-1">
+<head>Intermediate Synchronic Document Construction</head>
+<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, <emph>DOC<sub>source</sub></emph>, 
+to an intermediate
+synchronic document form,
+<emph>DOC<sub>inter</sub></emph>, as follows:</p>
+<olist>
+<item>
+<p>for each temporally active region <emph>R</emph>, replicate the
+sub-tree
+ of <emph>DOC<sub>source</sub></emph>
+headed by the <el>body</el> element;</p>
+</item>
+<item>
+<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 <emph>R</emph>;</p>
+</item>
+<item>
+<p>if the pruned sub-tree is non-empty, then reparent it to the <emph>R</emph>
+element;</p>
+</item>
+<item>
+<p>finally, after completing the above steps, prune the original <el>body</el>
+element from the intermediate document, then prune all <att>region</att>,
+<att>begin</att>, <att>end</att>, and <att>dur</att> attributes, which are no
+longer semantically relevant;</p>
+</item>
+</olist>
+<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>
+<olist>
+<item><p>if the element specifies a <loc
+href="#layout-attribute-region"><att>region</att></loc> attribute,
+then the element is associated with the region referenced by that
+attribute;</p></item>
+<item><p>if some ancestor of that element specifies a <loc
+href="#layout-attribute-region"><att>region</att></loc> attribute,
+then the element is associated with the region referenced by the most
+immediate ancestor that specifies this attribute;</p></item>
+<item><p> if the element contains a descendant element that
+specifies a <loc
+href="#layout-attribute-region"><att>region</att></loc> attribute,
+then the element is associated with the region referenced by that
+attribute;</p></item>
+<item><p>if a default region was implied (due to the absence of any
+<loc href="#layout-vocabulary-region"><el>region</el></loc> element),
+then the element is associated with the default region;</p></item>
+<item><p>the element is not associated with any region.</p></item>
+</olist>
+<p>The pseudo-code shown in <specref ref="content-hierarchy-region-mapping"/>
+provides one possible algorithm that implements these processing steps.</p>
+<table id="content-hierarchy-region-mapping" role="example">
+<caption>Example &ndash; Content Hierarchy Region Mapping</caption>
+<tbody>
+<tr>
+<td>
+<eg>
+PREPARE-CONTENT ( D ) := 
+  foreach R in SELECT ( D, "/tt/head/layout/region" )
+    if TEMPORALLY-ACTIVE? ( R )
+      APPEND-CHILDREN ( R, SELECT ( D, "/tt/body" ) )
+      foreach E in POSTORDER-TRAVERSE ( R )
+        if ! CONTENT-ELEMENT? ( E ) or ! TEMPORALLY-ACTIVE? ( E ) or EMPTY? ( E ) or REGION-OF ( E ) != R
+            then PRUNE ( E )
+  PRUNE ( SELECT ( D, "/tt/body" ) )
+  PRUNE ( SELECT ( D, "//*/@region" ) )
+  PRUNE ( SELECT ( D, "//*/@begin" ) )
+  PRUNE ( SELECT ( D, "//*/@end" ) )
+  PRUNE ( SELECT ( D, "//*/@dur" ) )
+ 
+REGION-OF ( E ) :=
+  if NULL? ( E )
+    return NULL
+  else if HAS-ATTRIBUTE? ( E, "region" )
+    return VALUE-OF-ATTRIBUTE ( E, "region" )
+  else
+    return REGION-OF ( PARENT-OF ( E ) )
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p>The result of performing the processing described above will be a sequence of
+<emph>N</emph> intermediate  synchronic
+document instances,
+<emph>DOC<sub><phrase>inter<sub>0</sub></phrase></sub></emph> &hellip;
+<emph>DOC<sub><phrase>inter<sub>N&minus;1</sub></phrase></sub></emph>.</p>
+</div3>
+<div3 id="semantics-region-layout-step-2">
+<head>Synchronic Flow Processing</head>
+<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
+<!-- changed for future CSS compatibility 
+represented as 
+-->
+equivalent to
+an XSL FO document instance as defined by <bibref ref="xsl11"/>,
+and semantically extended by TTML specific style properties that have no XSL
+FO counterpart.</p>
+<p>Each intermediate synchronic  document produced by <specref
+ref="semantics-region-layout-step-1"/> is mapped 
+<!-- changed for future CSS compatibility 
+to an XSL FO document instance, <emph>F</emph>, as follows:</p>
+-->
+to a styled document <emph>F</emph> consistent with an XSL FO document instance, as follows</p>
+<olist>
+<item>
+<p>perform the following ordered sub-steps to create anonymous spans:</p>
+<olist>
+<item><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></item>
+<item><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></item>
+<item><p>for each span element whose child is a single anonymous span,
+replace the anonymous span with its sequence of child text
+nodes;</p></item>
+</olist>
+</item>
+<item>
+<p>resolve styles according to <specref
+ref="semantics-style-resolution-process-overall"/>;</p>
+</item>
+<item>
+<p>map the <el>tt</el> element to be equivalent to an <el>fo:root</el> element, populated
+initially with an <el>fo:layout-master-set</el> element that contains a valid
+<el>fo:simple-page-master</el> that, in turn, contains an
+<el>fo:region-body</el> child, where the root container extent expressed on the
+<el>tt</el> element is mapped to <att>page-width</att> and
+<att>page-height</att> attributes on the <el>fo:simple-page-master</el>
+element;</p>
+</item>
+<item>
+<p>map the <el>layout</el> element to be equivalent to an <el>fo:page-sequence</el> element and a
+child <el>fo:flow</el> element that reference the page master and page region
+defined by the simple page master produced above;</p>
+</item>
+<item>
+<p>map each non-empty <el>region</el> element to be equivalent to an <el>fo:block-container</el>
+element with an <att>absolute-position</att> attribute with value
+<code>absolute</code>, and where the region's position and extent are mapped to equivalent
+<att>top</att>, <att>left</att>, <att>width</att>, and <att>height</att>
+attributes;</p>
+</item>
+<item>
+<p>for each <el>body</el>, <el>div</el>, and <el>p</el> element that is not
+associated with a <att>tts:display</att> style property with the value
+<code>none</code>, map the element to the equivalent of a distinct <el>fo:block</el> element,
+populating the style properties of <el>fo:block</el> by using the computed
+style set associated with each original TTML content element;</p>
+</item>
+<item>
+<p>for the resulting <el>fo:block</el> formatting object equivalent
+produced in the previous step that corresponds to the <el>body</el>
+element, map to be equivalent to appending to the end of its children an empty
+  <el>fo:block</el> with the following attributes:
+<att>space-after.optimum</att>, <att>space-after.maximum</att>, and
+<att>space-after.conditionality</att>, where the value of the former
+two attributes is the height or width of the containing
+<el>fo:block-container</el> element, whichever of these is designated
+as the block progression dimension, and where the value of the last is
+<code>retain</code>;</p>
+</item>
+<item>
+<p>for each <el>span</el> element that is not
+associated with a <att>tts:display</att> style property with the value
+<code>none</code> and for each anonymous
+span that is a child of a <el>p</el> or <el>span</el> element,
+map the element or
+sequence of character items to be equivalent to a distinct <el>fo:inline</el> element,
+populating the style properties of <el>fo:inline</el> by using the computed
+style set associated with each original TTML content element
+or anonymous span;</p>
+</item>
+<item>
+<p>for each <el>br</el> element that is not
+associated with a <att>tts:display</att> style property with the value
+<code>none</code>, map the element to be equivalent
+to a distinct <el>fo:character</el> element having the following
+properties:</p>
+<ulist>
+<item>
+<p><code>character="&amp;#x000A;"</code></p>
+</item>
+<item>
+<p><code>suppress-at-line-break="retain"</code></p>
+</item>
+</ulist>
+</item>
+<item>
+<p>for each TTML style property attribute in some computed
+style set that
+has no counterpart in <bibref ref="xsl11"/>, map that attribute directly through
+to the relevant formatting object produced by the input TTML content element to
+which the style property applies;</p>
+</item>
+<item>
+<p>optionally, synthesize a unique <att>id</att> attribute on each resulting
+formatting object element that relates that element to the input element that
+resulted in that formatting object element;</p>
+</item>
+</olist>
+ <!-- old definition
+ <p> For each resulting XSL FO document instance
+  <emph>DOC<sub>FO</sub></emph>,
+if processing
+requires presentation on a visual medium, then apply the formatting semantics
+prescribed by <bibref ref="xsl11"/> in order to produce an XSL FO area tree that
+may then be subsequently rendered onto the visual medium.</p>
+<note role="elaboration">
+<p>In the XSL FO area tree produced by formatting
+<emph>DOC<sub>FO</sub></emph>, 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, corresponds to the <emph>root container region</emph> defined
+above in <specref ref="definitions"/>.</p>
+</note>
+<note>
+<p>Due to the possible presence of TTML style properties
+or style property values in a given DFXP document instance for which
+there is no <bibref ref="xsl11"/> counterpart, the use of a compliant <bibref ref="xsl11"/> formatting processor
+is not necessarily sufficient to satisfy the presentation
+semantics defined by this specification.</p>
+</note>
+--> 
+  <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 <bibref ref="xsl11"/>.</p>
+<note role="elaboration">
+<p>In an XSL FO area tree produced by formatting <emph>F</emph> using 
+an <bibref ref="xsl11"/> 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 <emph>root container region</emph> defined
+above in <specref ref="definitions"/>.</p>
+</note>
+<note>
+<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 <bibref ref="xsl11"/> counterpart,
+  Implementors should recognize that it is the layout model of <bibref ref="xsl11"/> that is being referenced
+  by this specification, not the requirement to use a compliant <bibref ref="xsl11"/> 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>
+</note>
+</div3>
+<div3 id="semantics-region-layout-example">
+<head>Elaborated Example (Informative)</head>
+<p>An example of the processing steps described above is elaborated below, starting with <specref
+ref="region-mapping-example-1-s"/>.</p>
+<table id="region-mapping-example-1-s" role="example">
+<caption>Example &ndash; Sample Source Document</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">&dfxp-ex1;</eg>
+</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>
+<note>
+<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>
+</note>
+<table id="region-mapping-example-1-i0" role="example">
+<caption>Example &ndash; Intermediate Document &ndash; [0s,1s)</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">&dfxp-ex1-x-0;</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p>
+  <!-- old text 
+  An XSL FO document instance produced by performing flow processing
+  upon the first intermediate document is shown below.
+  -->
+  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>
+<table id="region-mapping-example-1-f0" role="example">
+<caption>Example &ndash; XSL FO Document &ndash; [0s,1s)</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">&dfxp-ex1-p-0;</eg>
+</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>
+<table id="region-mapping-example-1-i1" role="example">
+<caption>Example &ndash; Intermediate Document &ndash; [1s,2s)</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">&dfxp-ex1-x-1;</eg>
+</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>
+<table id="region-mapping-example-1-i2" role="example">
+<caption>Example &ndash; Intermediate Document &ndash; [2s,3s)</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">&dfxp-ex1-x-2;</eg>
+</td>
+</tr>
+</tbody>
+</table>
+</div3>
+</div2>
+<div2 id="semantics-line-layout">
+<head>Line Layout</head>
+  <!--
+<p>The semantics of line layout, including line breaking, defined by 
+<bibref ref="xsl11"/> apply to the performance of the composition and layout of
+lines for presentation processing of a document instance on a visual medium.</p>
+-->
+  
+<p>If a profile that applies to a document instance
+requires use of the <loc
+href="#feature-lineBreak-uax14">#lineBreak-uax14</loc> feature
+(i.e., the value attribute for the feature is specified as <code>use</code>), then
+the recommendations defined by <loc
+href="http://www.unicode.org/unicode/reports/tr14/#Algorithm">Line
+Breaking Algorithm</loc> <bibref ref="uax14"/> apply when performing
+line layout on the content of the document instance.</p>
+</div2>
+</div1>
+<div1 id="timing">
+<head>Timing</head>
+<p>This section specifies the <emph>timing</emph> 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>
+<div2 id="timing-element-vocabulary">
+<head>Timing Element Vocabulary</head>
+<p>No timing related element vocabulary is defined for use in the core
+vocabulary catalog.</p>
+</div2>
+<div2 id="timing-attribute-vocabulary">
+<head>Timing Attribute Vocabulary</head>
+<p>This section defines the following basic timing attributes for use with timed elements:</p>
+<ulist>
+<item><p><specref ref="timing-attribute-begin"/></p></item>
+<item><p><specref ref="timing-attribute-end"/></p></item>
+<item><p><specref ref="timing-attribute-dur"/></p></item>
+</ulist>
+<p>In addition, this section defines the <specref
+ref="timing-attribute-timeContainer"/> attribute for use with timed elements
+that serve simultaneously as timing containers.</p>
+<div3 id="timing-attribute-begin">
+<head>begin</head>
+<p>The <att>begin</att> attribute is used to specify the begin
+point of a temporal interval associated with a timed element. If
+specified, the value of a <att>begin</att> attribute must adhere to
+a &lt;timeExpression&gt; specification as defined by <specref
+ref="timing-value-timeExpression"/>.</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 <att>begin</att> attribute are those defined
+by <bibref ref="smil21"/>, &sect; 10.4.1,
+while taking into account any overriding semantics defined by this specification.</p>
+</div3>
+<div3 id="timing-attribute-end">
+<head>end</head>
+<p>The <att>end</att> attribute is used to specify the ending point
+of a temporal interval associated with a timed element. If
+specified, the value of an <att>end</att> attribute must adhere to a
+&lt;timeExpression&gt; specification as defined by <specref
+ref="timing-value-timeExpression"/>.</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>
+<note role="example">
+<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>
+</note>
+<p>The semantics of the <att>end</att> attribute are those defined
+by <bibref ref="smil21"/>, &sect; 10.4.1,
+while taking into account any overriding semantics defined by this specification.</p>
+</div3>
+<div3 id="timing-attribute-dur">
+<head>dur</head>
+<p>The <att>dur</att> attribute is used to specify the duration of a
+temporal interval associated with a timed element. If specified,
+the value of a <att>dur</att> attribute must adhere to a
+&lt;timeExpression&gt; specification as defined by <specref
+ref="timing-value-timeExpression"/>.</p>
+<note role="clarification">
+<p>When the <code>clock-time</code> form of a &lt;timeExpression&gt; specification
+is used with a <att>dur</att> attribute, it is intended to be interpreted as
+a difference between two implied clock time expressions.</p>
+</note>
+<p>When a TTML document instance specifies the use of the
+<code>smpte</code> time base and <code>discontinuous</code> marker
+mode, the <att>dur</att> attribute must not be specified on any
+element.</p>
+<p>The semantics of the <att>dur</att> attribute are those defined
+by <bibref ref="smil21"/>, &sect; 10.4.1,
+while taking into account any overriding semantics defined by this specification.</p>
+<note role="elaboration">
+<p>In the context of the subset of <bibref ref="smil21"/> semantics supported by
+this specification, the active duration of an element that specifies both
+<att>end</att> and <att>dur</att> attributes is equal to the lesser of the value of
+the <att>dur</att> attribute and the difference between the value of the
+<att>end</att> attribute and the element's begin time.</p>
+</note>
+</div3>
+<div3 id="timing-attribute-timeContainer">
+<head>timeContainer</head>
+<p>The <att>timeContainer</att> 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 <att>timeContainer</att> attribute must be one
+of the following:</p>
+<ulist>
+<item><p><code>par</code></p></item>
+<item><p><code>seq</code></p></item>
+</ulist>
+<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.</p>
+<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 <att>timeContainer</att> 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>
+<ulist>
+<item><p><loc href="#document-structure-vocabulary-body"><el>body</el></loc></p></item>
+<item><p><loc href="#content-vocabulary-div"><el>div</el></loc></p></item>
+<item><p><loc href="#content-vocabulary-p"><el>p</el></loc></p></item>
+<item><p><loc href="#layout-vocabulary-region"><el>region</el></loc></p></item>
+<item><p><loc href="#content-vocabulary-span"><el>span</el></loc></p></item>
+</ulist>
+<p>The semantics of parallel and sequential time
+containment are those defined by <bibref ref="smil21"/>, &sect; 10.3.2,
+while taking into account any overriding semantics defined by this specification.</p>
+</div3>
+</div2>
+<div2 id="timing-time-value-expressions">
+<head>Time Value Expressions</head>
+<p>Timing attribute values include the use of the following expressions:</p>
+<ulist>
+<item><p><specref ref="timing-value-timeExpression"/></p></item>
+</ulist>
+<div3 id="timing-value-timeExpression">
+<head>&lt;timeExpression&gt;</head>
+<p>A &lt;timeExpression&gt; is used to specify a coordinate along
+some time base, where the applicable time base is determined by the
+<att>ttp:timeBase</att> parameter.</p>
+<note role="example">
+<p>See <specref ref="parameter-attribute-timeBase"/>, <specref
+ref="parameter-attribute-frameRate"/>, <specref
+ref="parameter-attribute-subFrameRate"/>, and <specref
+ref="parameter-attribute-tickRate"/> for further information on
+explicit specification of time base, frame rate, sub-frame rate, and
+tick rate.</p>
+</note>
+<table id="timeExpression-syntax" role="syntax">
+<caption>Syntax Representation &ndash; &lt;timeExpression&gt;</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;timeExpression&gt;
+  : clock-time
+  | offset-time
+
+clock-time
+  : hours ":" minutes ":" seconds ( fraction | ":" frames ( "." sub-frames )? )?
+
+offset-time
+  : time-count fraction? metric
+
+hours
+  : <loc href="#style-value-digit">&lt;digit&gt;</loc> <loc href="#style-value-digit">&lt;digit&gt;</loc>
+  | <loc href="#style-value-digit">&lt;digit&gt;</loc> <loc href="#style-value-digit">&lt;digit&gt;</loc> <loc href="#style-value-digit">&lt;digit&gt;</loc>+
+
+minutes | seconds
+  : <loc href="#style-value-digit">&lt;digit&gt;</loc> <loc href="#style-value-digit">&lt;digit&gt;</loc>
+
+frames
+  : <loc href="#style-value-digit">&lt;digit&gt;</loc> <loc href="#style-value-digit">&lt;digit&gt;</loc>
+  | <loc href="#style-value-digit">&lt;digit&gt;</loc> <loc href="#style-value-digit">&lt;digit&gt;</loc> <loc href="#style-value-digit">&lt;digit&gt;</loc>+
+
+sub-frames
+  : <loc href="#style-value-digit">&lt;digit&gt;</loc>+
+
+fraction
+  : "." <loc href="#style-value-digit">&lt;digit&gt;</loc>+
+
+time-count
+  : <loc href="#style-value-digit">&lt;digit&gt;</loc>+
+
+metric
+  : "h"                 // hours
+  | "m"                 // minutes
+  | "s"                 // seconds
+  | "ms"                // milliseconds
+  | "f"                 // frames
+  | "t"                 // ticks
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<!--
+<p>If a &lt;timeExpression&gt; is expressed in terms of an
+<emph>offset-time</emph> and no <emph>metric</emph> term is specified,
+then the default metric specified by a
+<att>ttp:defaultTimeMetric</att> parameter is used. If no
+default metric is specified, then the time count must be interpreted
+as seconds.</p>
+-->
+<p>If a &lt;timeExpression&gt; is expressed in terms of a
+<emph>clock-time</emph>, then leading zeroes are used when expressing hours,
+minutes, seconds, and frames less than 10. Minutes are constrained to the range
+[0&hellip;59], while seconds are constrained to [0&hellip;60], where the value 60
+applies only to leap seconds.</p>
+<p>If a &lt;timeExpression&gt; is expressed in terms of a
+<emph>clock-time</emph> and a <emph>frames</emph> term is specified,
+then the value of this term must be constrained to the interval
+[0&hellip;<emph>F-1</emph>], where <emph>F</emph> is the frame rate
+determined by the <att>ttp:frameRate</att> parameter as defined
+by <specref ref="parameter-attribute-frameRate"/>.</p>
+<p>If a &lt;timeExpression&gt; is expressed in terms of a
+<emph>clock-time</emph> and a <emph>sub-frames</emph> term is
+specified, then the value of this term must be constrained to the
+interval [0&hellip;<emph>S-1</emph>], where <emph>S</emph> is the
+sub-frame rate determined by the <att>ttp:subFrameRate</att> parameter as defined by <specref
+ref="parameter-attribute-subFrameRate"/>.</p>
+</div3>
+</div2>
+<div2 id="timing-time-intervals">
+<head>Time Intervals</head>
+<p>The semantics of time containment, durations, and intervals defined by
+<bibref ref="smil21"/> apply to the interpretation of like-named timed elements and timing
+vocabulary defined by this specification, given the following
+constraints:</p>
+<ulist>
+<item>
+<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 <bibref ref="smil21"/>; if the
+
+anonymous span's
+
+parent time container is a sequential time container, then the
+implicit duration is equivalent to zero.</p>
+</item>
+<item>
+<p>The implicit duration of a <el>body</el>, <el>div</el>, <el>p</el>,
+or <el>span</el> element is determined in accordance to (1) whether
+the element is a parallel or sequential time container, and (2) the
+semantics of <bibref ref="smil21"/> as applied to these time
+containers.</p>
+</item>
+<item>
+<p>The implicit duration of the <el>region</el> element is defined to
+be equivalent to the <code>indefinite</code>
+duration value as defined by <bibref ref="smil21"/>.</p>
+</item>
+<item>
+<p>If the governing time mode is <code>media</code> or
+<code>smpte</code> with mode <code>continuous</code>, then time
+expressions must be interpreted as
+equivalent to offset based timing
+in <bibref ref="smil21"/>, namely, as offsets from an implicit
+syncbase.</p>
+</item>
+<item>
+<p>If the governing time mode is <code>smpte</code> with mode
+<code>discontinuous</code>, then time expressions must be interpreted
+as equivalent to marker values produced by an external marker event
+source, in which case all time expressions are equivalent to event
+based timing in <bibref ref="smil21"/>.</p>
+</item>
+<item>
+<p>If the governing time mode is <code>clock</code>, then time
+expressions must be interpreted as equivalent to wallclock time
+expressions in <bibref ref="smil21"/>, where the applicable wallclock
+used is determined by the clock mode parameter.</p>
+</item>
+</ulist>
+</div2>
+</div1>
+<div1 id="animation">
+<head>Animation</head>
+<p>This section specifies the <emph>animation</emph> 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>
+<div2 id="animation-element-vocabulary">
+<head>Animation Element Vocabulary</head>
+<p>The following elements specify the structure and principal animation aspects of a
+document instance:</p>
+<ulist>
+<item><p><specref ref="animation-vocabulary-set"/></p></item>
+</ulist>
+<div3 id="animation-vocabulary-set">
+<head>set</head>
+<p>The <el>set</el> element is used as a child element of a content
+element or a <el>region</el> element
+in order to express a discrete change of some style parameter value
+that applies over some time interval.</p>
+<p>The <el>set</el> element accepts as its children zero or more
+elements in the <code>Metadata.class</code> element group.</p>
+<table id="elt-syntax-set" role="syntax">
+<caption>XML Representation &ndash; Element Information Item: set</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;set
+  <loc href="#timing-attribute-begin">begin</loc> = <loc href="#timing-value-timeExpression">&lt;timeExpression&gt;</loc>
+  <loc href="#timing-attribute-dur">dur</loc> = <loc href="#timing-value-timeExpression">&lt;timeExpression&gt;</loc>
+  <loc href="#timing-attribute-end">end</loc> = <loc href="#timing-value-timeExpression">&lt;timeExpression&gt;</loc>
+  <loc href="#content-attribute-id">xml:id</loc> = ID
+  <loc href="#content-attribute-lang">xml:lang</loc> = string
+  <loc href="#content-attribute-space">xml:space</loc> = (<emph>default</emph>|<emph>preserve</emph>)
+  {<emph>a single attribute in TT Style namespace</emph>}
+  {<emph>any attribute not in default or any TT namespace</emph>}&gt;
+  <emph>Content:</emph> <loc href="#element-vocab-group-table">Metadata.class</loc>*
+&lt;/set&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<note role="example">
+<p>The use of multiple <el>set</el> element children may be used to effect fade and
+position transitions.</p>
+</note>
+<p>An example of using the <el>set</el> element to animate content
+styling is illustrated below:</p>
+<table id="animation-vocabulary-set-example-1" role="example">
+<caption>Example Fragment &ndash; Content Style Animation</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+...
+&lt;p dur="5s" tts:color="yellow"&gt;
+<phrase role="strong">&lt;set begin="1s" dur="1s" tts:color="red"/&gt;</phrase>
+<phrase role="strong">&lt;set begin="2s" dur="1s" tts:color="green"/&gt;</phrase>
+<phrase role="strong">&lt;set begin="3s" dur="1s" tts:color="red"/&gt;</phrase>
+Text with Flashing Colors!
+&lt;/p&gt;
+...
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<note role="explanation">
+<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>
+</note>
+
+<p>An example of using the <el>set</el> element to animate region
+styling is illustrated below:</p>
+<table id="animation-vocabulary-set-example-2" role="example">
+<caption>Example Fragment &ndash; Region Style Animation</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&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;
+	  <phrase role="strong">&lt;set dur="10s" tts:origin=" 8c 14c"/&gt;</phrase>
+	  <phrase role="strong">&lt;set dur="2s"  tts:origin=" 2c  2c"/&gt;</phrase>
+	  <phrase role="strong">&lt;set dur="3s"  tts:origin=" 8c 14c"/&gt;</phrase>
+	  <phrase role="strong">&lt;set dur="2s"  tts:origin="14c  4c"/&gt;</phrase>
+	  <phrase role="strong">&lt;set dur="10s" tts:origin=" 8c 14c"/&gt;</phrase>
+	  &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;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<note role="explanation">
+<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>
+</note>
+<note role="derivation">
+<p>The semantics of the <el>set</el> element
+are based upon that defined by <bibref ref="smil21"/>,
+&sect; 3.5.2.</p>
+</note>
+</div3>
+</div2>
+<div2 id="animation-attribute-vocabulary">
+<head>Animation Attribute Vocabulary</head>
+<p>No animation related attribute vocabulary is defined for use in the
+core vocabulary catalog.</p>
+</div2>
+</div1>
+<div1 id="metadata">
+<head>Metadata</head>
+<p>This section specifies the <emph>metadata</emph> 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>
+<div2 id="metadata-element-vocabulary">
+<head>Metadata Element Vocabulary</head>
+<p>The <specref ref="metadata-vocabulary-metadata"/> 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>
+<ulist>
+<item><p><specref ref="metadata-vocabulary-title"/></p></item>
+<item><p><specref ref="metadata-vocabulary-desc"/></p></item>
+<item><p><specref ref="metadata-vocabulary-copyright"/></p></item>
+<item><p><specref ref="metadata-vocabulary-agent"/></p></item>
+<item><p><specref ref="metadata-vocabulary-name"/></p></item>
+<item><p><specref ref="metadata-vocabulary-actor"/></p></item>
+</ulist>
+<div3 id="metadata-vocabulary-metadata">
+<head>metadata</head>
+<p>The <el>metadata</el> element functions as a generic container for metadata
+information.</p>
+<p>Metadata information may be expressed by a <el>metadata</el> element
+in one of two (non-mutually exclusive) manners: (1) by specifying one
+or more metadata attributes on the <el>metadata</el>
+element, and (2) by specifying one
+or more child elements
+in the <el>metadata</el> element
+that express metadata. Both types of metadata
+are referred to in this document as <emph>metadata items</emph>.</p>
+<table id="elt-syntax-metadata" role="syntax">
+<caption>XML Representation &ndash; Element Information Item: metadata</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;metadata
+  <loc href="#content-attribute-id">xml:id</loc> = ID
+  <loc href="#content-attribute-lang">xml:lang</loc> = string
+  <loc href="#content-attribute-space">xml:space</loc> = (<emph>default</emph>|<emph>preserve</emph>)
+  {<emph>any attribute in TT Metadata namespace</emph>}
+  {<emph>any attribute not in default or any TT namespace</emph>}&gt;
+  <emph>Content:</emph> ({<emph>any element in TT Metadata namespace</emph>}|{<emph>any element not in any TT namespace</emph>})*
+&lt;/metadata&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<note role="explanation">
+<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 <el>metadata</el> element children of any
+content element type except for the
+<el>tt</el> element. See specific element
+vocabulary definitions for any constraints that apply to such
+usage.</p>
+</note>
+<p>The use of document metadata is illustrated by the following example.</p>
+<table id="metadata-vocabulary-metadata-example-1" role="example">
+<caption>Example Fragment &ndash; Document Metadata</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+...
+&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;
+...
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p/>
+<p>The use of element metadata is illustrated by the following example.</p>
+<table id="metadata-vocabulary-metadata-example-2" role="example">
+<caption>Example Fragment &ndash; Element Metadata</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+...
+&lt;div&gt;
+  &lt;metadata xmlns:ttm="http://www.w3.org/ns/ttml#metadata"&gt;
+    &lt;ttm:title&gt;Chapter 6 &ndash; 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;
+...
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p/>
+
+<p>The use of metadata attribute items is illustrated by the following example.</p>
+<table id="metadata-vocabulary-metadata-example-3" role="example">
+<caption>Example Fragment &ndash; Foreign Metadata Attribute Items</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+...
+&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;
+...
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<note role="explanation">
+<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 <el>div</el> element. Note that the
+attribute may also be expressed directly on the <el>div</el> element;
+however, in this case the author wishes to segregate certain metadata
+attributes by expressing them indirectly on <el>metadata</el>
+elements.</p>
+</note>
+<p/>
+<p>The use of foreign element metadata is illustrated by the following example.</p>
+<table id="metadata-vocabulary-metadata-example-4" role="example">
+<caption>Example Fragment &ndash; Foreign Element Metadata</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+...
+&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;
+...
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<note role="explanation">
+<p>In the above example, a number of elements defined by the Dublin
+Core metadata vocabulary are used to express document level metadata.</p>
+</note>
+<p/>
+</div3>
+<div3 id="metadata-vocabulary-title">
+<head>ttm:title</head>
+<p>The <el>ttm:title</el> element is used to express a human-readable title of
+a specific element instance.</p>
+<table id="elt-syntax-metadata-title" role="syntax">
+<caption>XML Representation &ndash; Element Information Item: ttm:title</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;ttm:title
+  <loc href="#content-attribute-id">xml:id</loc> = ID
+  <loc href="#content-attribute-lang">xml:lang</loc> = string
+  <loc href="#content-attribute-space">xml:space</loc> = (<emph>default</emph>|<emph>preserve</emph>)
+  {<emph>any attribute not in default or any TT namespace</emph>}&gt;
+  <emph>Content:</emph> #PCDATA
+&lt;/ttm:title&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<note role="elaboration">
+<p>No specific use of the <el>ttm:title</el> element is defined by this specification.</p>
+</note>
+<p>Examples of the <att>ttm:title</att> element are shown above in
+<specref ref="metadata-vocabulary-metadata-example-1"/> and
+<specref ref="metadata-vocabulary-metadata-example-2"/>.</p>
+</div3>
+<div3 id="metadata-vocabulary-desc">
+<head>ttm:desc</head>
+<p>The <el>ttm:desc</el> element is used to express a human-readable description of
+a specific element instance.</p>
+<table id="elt-syntax-metadata-desc" role="syntax">
+<caption>XML Representation &ndash; Element Information Item: ttm:desc</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;ttm:desc
+  <loc href="#content-attribute-id">xml:id</loc> = ID
+  <loc href="#content-attribute-lang">xml:lang</loc> = string
+  <loc href="#content-attribute-space">xml:space</loc> = (<emph>default</emph>|<emph>preserve</emph>)
+  {<emph>any attribute not in default or any TT namespace</emph>}&gt;
+  <emph>Content:</emph> #PCDATA
+&lt;/ttm:desc&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<note role="elaboration">
+<p>No specific use of the <el>ttm:desc</el> element is defined by this specification.</p>
+</note>
+<p>Examples of the <att>ttm:desc</att> element are shown above in
+<specref ref="metadata-vocabulary-metadata-example-1"/> and
+<specref ref="metadata-vocabulary-metadata-example-2"/>.</p>
+</div3>
+<div3 id="metadata-vocabulary-copyright">
+<head>ttm:copyright</head>
+<p>The <el>ttm:copyright</el> 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 <el>head</el> element.</p>
+<table id="elt-syntax-metadata-copyright" role="syntax">
+<caption>XML Representation &ndash; Element Information Item: ttm:copyright</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;ttm:copyright
+  <loc href="#content-attribute-id">xml:id</loc> = ID
+  <loc href="#content-attribute-lang">xml:lang</loc> = string
+  <loc href="#content-attribute-space">xml:space</loc> = (<emph>default</emph>|<emph>preserve</emph>)
+  {<emph>any attribute not in default or any TT namespace</emph>}&gt;
+  <emph>Content:</emph> #PCDATA
+&lt;/ttm:copyright&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<note role="elaboration">
+<p>No specific use of the <el>ttm:copyright</el> element is defined by this specification.</p>
+</note>
+</div3>
+<div3 id="metadata-vocabulary-agent">
+<head>ttm:agent</head>
+<p>The <el>ttm:agent</el> 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 <el>ttm:agent</el> element accepts as its children zero or more <el>ttm:name</el> elements followed by
+zero or one <el>ttm:actor</el> element.</p>
+<p>At least one <el>ttm:name</el> 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>
+<table id="elt-syntax-metadata-agent" role="syntax">
+<caption>XML Representation &ndash; Element Information Item: ttm:agent</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;ttm:agent
+  <phrase role="reqattr">type</phrase> = (<emph>person</emph>|<emph>character</emph>|<emph>group</emph>|<emph>organization</emph>|<emph>other</emph>)
+  <loc href="#content-attribute-id">xml:id</loc> = ID
+  <loc href="#content-attribute-lang">xml:lang</loc> = string
+  <loc href="#content-attribute-space">xml:space</loc> = (<emph>default</emph>|<emph>preserve</emph>)
+  {<emph>any attribute not in default or any TT namespace</emph>}&gt;
+  <emph>Content:</emph> <loc href="#metadata-vocabulary-name">ttm:name</loc>*, <loc href="#metadata-vocabulary-actor">ttm:actor</loc>?
+&lt;/ttm:agent&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p>A <att>type</att> attribute must be specified on each <el>ttm:agent</el> element, and,
+if specified, must have one of the following values:</p>
+<ulist>
+<item><p><el>person</el></p></item>
+<item><p><el>character</el></p></item>
+<item><p><el>group</el></p></item>
+<item><p><el>organization</el></p></item>
+<item><p><el>other</el></p></item>
+</ulist>
+<p>If the value of the <att>type</att> attribute is <code>character</code>, then the
+<el>ttm:agent</el> element instance should specify a <el>ttm:actor</el> child that
+specifies the agent that plays the role of the actor.</p>
+<p>A <att>ttm:agent</att> metadata item is considered to be significant only
+when specified as a child of the <el>head</el> element or as a child of a
+<el>metadata</el> element child of the <el>head</el> element.</p>
+<note role="elaboration">
+<p>A <el>ttm:agent</el> element instance is typically referenced using a <att>ttm:agent</att>
+attribute on a content element.</p>
+</note>
+<note role="elaboration">
+<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>
+</note>
+<p>The use of agent metadata is illustrated by the following example.</p>
+<table id="metadata-vocabulary-agent-example-1" role="example">
+<caption>Example Fragment &ndash; Agent Metadata</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+
+&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;
+    <phrase role="strong">&lt;ttm:agent xml:id="connery" type="person"&gt;</phrase>
+      &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;
+    <phrase role="strong">&lt;/ttm:agent&gt;</phrase>
+    <phrase role="strong">&lt;ttm:agent xml:id="bond" type="character"&gt;</phrase>
+      &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;
+    <phrase role="strong">&lt;/ttm:agent&gt;</phrase>
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div&gt;
+      ...  
+      &lt;p <phrase role="strong">ttm:agent="bond"</phrase>&gt;I travel, a sort of licensed troubleshooter.&lt;/p&gt;
+      ...  
+    &lt;/div&gt;
+  &lt;/body&gt;
+&lt;/tt&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<note role="explanation">
+<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
+<el>ttm:actor</el> element. A reference is then made from content (the
+<el>p</el> element) to the character agent associated with
+(responsible for producing) that content. Note that in this example
+the <el>ttm:agent</el> metadata items are specified as immediate
+children of the document's <el>head</el> element rather than being
+placed in a container <el>metadata</el> element.</p>
+</note>
+</div3>
+<div3 id="metadata-vocabulary-name">
+<head>ttm:name</head>
+<p>The <el>ttm:name</el> element is used to specify a name of a person, character,
+group, or organization.</p>
+<table id="elt-syntax-metadata-name" role="syntax">
+<caption>XML Representation &ndash; Element Information Item: ttm:name</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;ttm:name
+  <phrase role="reqattr">type</phrase> = (<emph>full</emph>|<emph>family</emph>|<emph>given</emph>|<emph>alias</emph>|<emph>other</emph>)
+  <loc href="#content-attribute-id">xml:id</loc> = ID
+  <loc href="#content-attribute-lang">xml:lang</loc> = string
+  <loc href="#content-attribute-space">xml:space</loc> = (<emph>default</emph>|<emph>preserve</emph>)
+  {<emph>any attribute not in default or any TT namespace</emph>}&gt;
+  <emph>Content:</emph> #PCDATA
+&lt;/ttm:name&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p>A <att>type</att> attribute must be specified on each <el>ttm:name</el> element, and,
+if specified, must have one of the following values:</p>
+<ulist>
+<item><p><el>full</el></p></item>
+<item><p><el>family</el></p></item>
+<item><p><el>given</el></p></item>
+<item><p><el>alias</el></p></item>
+<item><p><el>other</el></p></item>
+</ulist>
+<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 <el>ttm:name</el> element are shown above in
+<specref ref="metadata-vocabulary-agent-example-1"/>.</p>
+</div3>
+<div3 id="metadata-vocabulary-actor">
+<head>ttm:actor</head>
+<p>The <el>ttm:actor</el> element is used to link the definition of a (role-based) character
+agent with another agent that portrays the character.</p>
+<table id="elt-syntax-metadata-actor" role="syntax">
+<caption>XML Representation &ndash; Element Information Item: ttm:actor</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+&lt;ttm:actor
+  <phrase role="reqattr">agent</phrase> = IDREF
+  <loc href="#content-attribute-id">xml:id</loc> = ID
+  <loc href="#content-attribute-lang">xml:lang</loc> = string
+  <loc href="#content-attribute-space">xml:space</loc> = (<emph>default</emph>|<emph>preserve</emph>)
+  {<emph>any attribute not in default or any TT namespace</emph>}&gt;
+  <emph>Content:</emph> EMPTY
+&lt;/ttm:actor&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p>The <att>agent</att> attribute of a <el>ttm:actor</el> element must
+reference a <el>ttm:agent</el> element that denotes the person,
+group, or organization acting the part of a character.</p>
+<p>An example of the <el>ttm:actor</el> element is shown above in
+<specref ref="metadata-vocabulary-agent-example-1"/>.</p>
+</div3>
+</div2>
+<div2 id="metadata-attribute-vocabulary">
+<head>Metadata Attribute Vocabulary</head>
+<p>This section specifies the following attributes in the TT Metadata Namespace
+for use with the <el>metadata</el> element and with certain content elements:</p>
+<ulist>
+<item><p><specref ref="metadata-attribute-agent"/></p></item>
+<item><p><specref ref="metadata-attribute-role"/></p></item>
+</ulist>
+<note role="explanation">
+<p>Only certain metadata item attributes may be used with content elements. See
+the definitions of content elements to determine permissible usage.</p>
+</note>
+<div3 id="metadata-attribute-agent">
+<head>ttm:agent</head>
+<p>The <att>ttm:agent</att> 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 <att>ttm:agent</att> attribute must reference
+<el>ttm:agent</el> element instances that appear
+as a descendent of the same document instance as
+that of the referring element.</p>
+<p>An example of the <att>ttm:agent</att> attribute is shown above in
+<specref ref="metadata-vocabulary-agent-example-1"/>.</p>
+</div3>
+<div3 id="metadata-attribute-role">
+<head>ttm:role</head>
+<p>The <att>ttm:role</att> 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 <emph>S</emph> must adhere to production
+[3] <code>S</code> as defined by <bibref ref="xml10"/>&nbsp;&sect;
+2.3:</p>
+<table id="metadata-attribute-role-syntax" role="syntax">
+<caption>Syntax Representation &ndash; ttm:role</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+ttm:role
+  role ( <emph>S</emph> 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]
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<note role="extensibility">
+<p>All values of <att>ttm:role</att> that do not start with the prefix
+<code>x-</code> are reserved for future standardization.</p>
+</note>
+</div3>
+</div2>
+</div1>
+</body>
+<back>
+<div1 id="reduced-infoset">
+<head>Reduced XML Infoset</head>
+<p><emph>This appendix is normative.</emph></p>
+<p>For the purposes of this specification, a Reduced XML Infoset is
+an XML Information Set <bibref ref="infoset"/> that consists of only the following information items
+and information item properties:</p>
+<div2 id="reduced-infoset-document">
+<head>Document Information Item</head>
+<ulist>
+<item><p><code>[document element]</code></p></item>
+</ulist>
+</div2>
+<div2 id="reduced-infoset-element">
+<head>Element Information Item</head>
+<ulist>
+<item><p><code>[namespace URI]</code></p></item>
+<item><p><code>[local name]</code></p></item>
+<item><p><code>[children]</code></p></item>
+<item><p><code>[attributes]</code></p></item>
+</ulist>
+<p>Child information items <code>[children]</code> are reduced to 
+only element and character information items.</p>
+</div2>
+<div2 id="reduced-infoset-attribute">
+<head>Attribute Information Item</head>
+<ulist>
+<item><p><code>[namespace URI]</code></p></item>
+<item><p><code>[local name]</code></p></item>
+<item><p><code>[normalized value]</code></p></item>
+</ulist>
+</div2>
+<div2 id="reduced-infoset-character">
+<head>Character Information Item</head>
+<ulist>
+<item><p><code>[character code]</code></p></item>
+</ulist>
+<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>
+</div2>
+</div1>
+<div1 id="schemas">
+<head>Schemas</head>
+<p><emph>This appendix is normative.</emph></p>
+<p>This appendix specifies the following schemas for use with
+DFXP Content document instances:</p>
+<ulist>
+<item><p>Relax NG, Compact Syntax (RNC) Schema</p></item>
+<item><p>XML Schema Definition (XSD) Schema</p></item>
+</ulist>
+<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>
+<div2 id="dfxp-schema-rnc">
+<head>Relax NG Schema</head>
+<p>This section specifies a Relax NG Compact Syntax (RNC) <bibref ref="rng"/> based schema
+for DFXP Content, also available in a <loc href="rnc/schema.zip">ZIP
+Archive</loc>.</p>
+<div3 id="rnc-dfxp-driver-schema">
+<head>Driver</head>
+<eg xml:space="preserve">&rnc-dfxp-driver;</eg>
+</div3>
+<div3 id="rnc-dfxp-modules">
+<head>Modules</head>
+<div4 id="rnc-dfxp-animation-module">
+<head>Animation Module</head>
+<eg xml:space="preserve">&rnc-dfxp-animation-module;</eg>
+</div4>
+<div4 id="rnc-dfxp-classes-module">
+<head>Classes Module</head>
+<eg xml:space="preserve">&rnc-dfxp-classes-module;</eg>
+</div4>
+<div4 id="rnc-dfxp-content-module">
+<head>Content Module</head>
+<eg xml:space="preserve">&rnc-dfxp-content-module;</eg>
+</div4>
+<div4 id="rnc-dfxp-core-attribs-module">
+<head>Core Attributes Module</head>
+<eg xml:space="preserve">&rnc-dfxp-core-attribs-module;</eg>
+</div4>
+<div4 id="rnc-dfxp-datatypes-module">
+<head>Data Types Module</head>
+<eg xml:space="preserve">&rnc-dfxp-datatypes-module;</eg>
+</div4>
+<div4 id="rnc-dfxp-document-module">
+<head>Document Module</head>
+<eg xml:space="preserve">&rnc-dfxp-document-module;</eg>
+</div4>
+<div4 id="rnc-dfxp-head-module">
+<head>Header Module</head>
+<eg xml:space="preserve">&rnc-dfxp-head-module;</eg>
+</div4>
+<div4 id="rnc-dfxp-layout-module">
+<head>Layout Module</head>
+<eg xml:space="preserve">&rnc-dfxp-layout-module;</eg>
+</div4>
+<div4 id="rnc-dfxp-metadata-module">
+<head>Metadata Module</head>
+<eg xml:space="preserve">&rnc-dfxp-metadata-module;</eg>
+</div4>
+<div4 id="rnc-dfxp-metadata-items-module">
+<head>Metadata Items Module</head>
+<eg xml:space="preserve">&rnc-dfxp-metadata-items-module;</eg>
+</div4>
+<div4 id="rnc-dfxp-metadata-attribs-module">
+<head>Metadata Attributes Module</head>
+<eg xml:space="preserve">&rnc-dfxp-metadata-attribs-module;</eg>
+</div4>
+<div4 id="rnc-dfxp-parameters-module">
+<head>Parameters Module</head>
+<eg xml:space="preserve">&rnc-dfxp-parameters-module;</eg>
+</div4>
+<div4 id="rnc-dfxp-parameter-items-module">
+<head>Parameter Items Module</head>
+<eg xml:space="preserve">&rnc-dfxp-parameter-items-module;</eg>
+</div4>
+<div4 id="rnc-dfxp-parameter-attribs-module">
+<head>Parameter Attributes Module</head>
+<eg xml:space="preserve">&rnc-dfxp-parameter-attribs-module;</eg>
+</div4>
+<div4 id="rnc-dfxp-styling-attribs-module">
+<head>Styling Attributes Module</head>
+<eg xml:space="preserve">&rnc-dfxp-styling-attribs-module;</eg>
+</div4>
+<div4 id="rnc-dfxp-styling-module">
+<head>Styling Module</head>
+<eg xml:space="preserve">&rnc-dfxp-styling-module;</eg>
+</div4>
+<div4 id="rnc-dfxp-timing-attribs-module">
+<head>Timing Attributes Module</head>
+<eg xml:space="preserve">&rnc-dfxp-timing-attribs-module;</eg>
+</div4>
+</div3>
+</div2>
+<div2 id="dfxp-schema-xsd">
+<head>XML Schema Definition (XSD) Schema</head>
+<p>This section specifies a W3C XML Schema Definition (XSD) <bibref ref="xsd-1"/> based schema
+for DFXP Content, also available in a <loc href="xsd/schema.zip">ZIP
+Archive</loc>.</p>
+<div3 id="xsd-dfxp-driver-schema">
+<head>Driver</head>
+<eg xml:space="preserve">&xsd-dfxp-driver;</eg>
+</div3>
+<div3 id="xsd-dfxp-modules">
+<head>Modules</head>
+<div4 id="xsd-dfxp-animation-module">
+<head>Animation Module</head>
+<eg xml:space="preserve">&xsd-dfxp-animation-module;</eg>
+</div4>
+<div4 id="xsd-dfxp-content-module">
+<head>Content Module</head>
+<eg xml:space="preserve">&xsd-dfxp-content-module;</eg>
+</div4>
+<div4 id="xsd-dfxp-core-attribs-module">
+<head>Core Attributes Module</head>
+<eg xml:space="preserve">&xsd-dfxp-core-attribs-module;</eg>
+</div4>
+<div4 id="xsd-dfxp-datatypes-module">
+<head>Data Types Module</head>
+<eg xml:space="preserve">&xsd-dfxp-datatypes-module;</eg>
+</div4>
+<div4 id="xsd-dfxp-document-module">
+<head>Document Module</head>
+<eg xml:space="preserve">&xsd-dfxp-document-module;</eg>
+</div4>
+<div4 id="xsd-dfxp-head-module">
+<head>Header Module</head>
+<eg xml:space="preserve">&xsd-dfxp-head-module;</eg>
+</div4>
+<div4 id="xsd-dfxp-layout-module">
+<head>Layout Module</head>
+<eg xml:space="preserve">&xsd-dfxp-layout-module;</eg>
+</div4>
+<div4 id="xsd-dfxp-metadata-module">
+<head>Metadata Module</head>
+<eg xml:space="preserve">&xsd-dfxp-metadata-module;</eg>
+</div4>
+<div4 id="xsd-dfxp-metadata-items-module">
+<head>Metadata Items Module</head>
+<eg xml:space="preserve">&xsd-dfxp-metadata-items-module;</eg>
+</div4>
+<div4 id="xsd-dfxp-metadata-attribs-module">
+<head>Metadata Attributes Module</head>
+<eg xml:space="preserve">&xsd-dfxp-metadata-attribs-module;</eg>
+</div4>
+<div4 id="xsd-dfxp-parameters-module">
+<head>Parameters Module</head>
+<eg xml:space="preserve">&xsd-dfxp-parameters-module;</eg>
+</div4>
+<div4 id="xsd-dfxp-parameter-items-module">
+<head>Parameter Items Module</head>
+<eg xml:space="preserve">&xsd-dfxp-parameter-items-module;</eg>
+</div4>
+<div4 id="xsd-dfxp-parameter-attribs-module">
+<head>Parameter Attributes Module</head>
+<eg xml:space="preserve">&xsd-dfxp-parameter-attribs-module;</eg>
+</div4>
+<div4 id="xsd-dfxp-styling-attribs-module">
+<head>Styling Attributes Module</head>
+<eg xml:space="preserve">&xsd-dfxp-styling-attribs-module;</eg>
+</div4>
+<div4 id="xsd-dfxp-styling-module">
+<head>Styling Module</head>
+<eg xml:space="preserve">&xsd-dfxp-styling-module;</eg>
+</div4>
+<div4 id="xsd-dfxp-timing-attribs-module">
+<head>Timing Attributes Module</head>
+<eg xml:space="preserve">&xsd-dfxp-timing-attribs-module;</eg>
+</div4>
+<div4 id="xsd-dfxp-xml-attrs-module">
+<head>XML Attributes Module</head>
+<eg xml:space="preserve">&xsd-dfxp-xml-attrs-module;</eg>
+</div4>
+</div3>
+</div2>
+</div1>
+<div1 id="media-type-registration">
+<head>Media Type Registration</head>
+<p><emph>This appendix is normative.</emph></p>
+<p>This appendix registers a new MIME media type,
+"application/ttml+xml" in conformance with
+<loc href="http://www.ietf.org/rfc/rfc4288.txt">BCP 13</loc> and
+<loc
+href="http://www.w3.org/2002/06/registering-mediatype.html">W3CRegMedia</loc>.
+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>
+<glist>
+<gitem>
+<label>Type name:</label>
+<def>
+<p>application</p>
+</def>
+</gitem>
+<gitem>
+<label>Subtype name:</label>
+<def>
+<p>ttml+xml</p>
+</def>
+</gitem>
+<gitem>
+<label>Required parameters:</label>
+<def>
+<p>None.</p>
+</def>
+</gitem>
+<gitem>
+<label>Optional parameters:</label>
+<def>
+<glist>
+<gitem>
+<label>charset</label>
+<def>
+<p>Same as application/xml media type, as specified in <bibref
+ref="rfc3023"/> or its successors.</p>
+</def>
+</gitem>
+<gitem>
+<label>profile</label>
+<def>
+<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
+<att>ttp:profile</att> parameter defined by
+Section
+<specref ref="parameter-attribute-profile"/>
+of the published specification.</p>
+</def>
+</gitem>
+</glist>
+</def>
+</gitem>
+<gitem>
+<label>Encoding considerations:</label>
+<def>
+<p>Same for application/xml. See <bibref ref="xml-media"/>, Section
+3.2.</p>
+</def>
+</gitem>
+<gitem>
+<label>Security considerations:</label>
+<def>
+<p>As with other XML types and as noted in
+<bibref ref="xml-media"/>