--- a/ttml11/spec/ttml11.xml Tue Jul 09 11:28:27 2013 -0600
+++ b/ttml11/spec/ttml11.xml Tue Jul 09 14:39:28 2013 -0600
@@ -1,12974 +1,13566 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- $Id$ -->
-<!DOCTYPE spec PUBLIC "-//W3C//DTD Specification V2.10//EN" "xmlspec-ttml11.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 " ">
-<!ENTITY sect "§">
-<!ENTITY aring "å">
-<!ENTITY ccedil "ç">
-<!ENTITY Ccedil "Ç">
-<!ENTITY mult "×">
-<!ENTITY uuml "ü">
-<!ENTITY nbsp " ">
-<!ENTITY ndash "–">
-<!ENTITY mdash "—">
-<!ENTITY prime "′">
-<!ENTITY hArr "⇔">
-<!ENTITY trade "™">
-<!ENTITY hellip "…">
-<!ENTITY isin "∈">
-<!ENTITY minus "−">
-<!ENTITY le "≤">
-<!ENTITY ge "≥">
-<!ENTITY plusmn "±">
-<!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/ttml11.rnc.esc">
-<!ENTITY rnc-dfxp-animation-module SYSTEM "./rnc/ttml11-animation.rnc.esc">
-<!ENTITY rnc-dfxp-classes-module SYSTEM "./rnc/ttml11-classes.rnc.esc">
-<!ENTITY rnc-dfxp-content-module SYSTEM "./rnc/ttml11-content.rnc.esc">
-<!ENTITY rnc-dfxp-core-attribs-module SYSTEM "./rnc/ttml11-core-attribs.rnc.esc">
-<!ENTITY rnc-dfxp-datatypes-module SYSTEM "./rnc/ttml11-datatypes.rnc.esc">
-<!ENTITY rnc-dfxp-document-module SYSTEM "./rnc/ttml11-document.rnc.esc">
-<!ENTITY rnc-dfxp-head-module SYSTEM "./rnc/ttml11-head.rnc.esc">
-<!ENTITY rnc-dfxp-metadata-module SYSTEM "./rnc/ttml11-metadata.rnc.esc">
-<!ENTITY rnc-dfxp-metadata-items-module SYSTEM "./rnc/ttml11-metadata-items.rnc.esc">
-<!ENTITY rnc-dfxp-metadata-attribs-module SYSTEM "./rnc/ttml11-metadata-attribs.rnc.esc">
-<!ENTITY rnc-dfxp-parameters-module SYSTEM "./rnc/ttml11-parameters.rnc.esc">
-<!ENTITY rnc-dfxp-parameter-items-module SYSTEM "./rnc/ttml11-parameter-items.rnc.esc">
-<!ENTITY rnc-dfxp-parameter-attribs-module SYSTEM "./rnc/ttml11-parameter-attribs.rnc.esc">
-<!ENTITY rnc-dfxp-styling-attribs-module SYSTEM "./rnc/ttml11-styling-attribs.rnc.esc">
-<!ENTITY rnc-dfxp-styling-module SYSTEM "./rnc/ttml11-styling.rnc.esc">
-<!ENTITY rnc-dfxp-layout-module SYSTEM "./rnc/ttml11-layout.rnc.esc">
-<!ENTITY rnc-dfxp-timing-attribs-module SYSTEM "./rnc/ttml11-timing-attribs.rnc.esc">
-<!ENTITY xsd-dfxp-driver SYSTEM "./xsd/ttml11.xsd.esc">
-<!ENTITY xsd-dfxp-animation-module SYSTEM "./xsd/ttml11-animation.xsd.esc">
-<!ENTITY xsd-dfxp-content-module SYSTEM "./xsd/ttml11-content.xsd.esc">
-<!ENTITY xsd-dfxp-core-attribs-module SYSTEM "./xsd/ttml11-core-attribs.xsd.esc">
-<!ENTITY xsd-dfxp-datatypes-module SYSTEM "./xsd/ttml11-datatypes.xsd.esc">
-<!ENTITY xsd-dfxp-document-module SYSTEM "./xsd/ttml11-document.xsd.esc">
-<!ENTITY xsd-dfxp-head-module SYSTEM "./xsd/ttml11-head.xsd.esc">
-<!ENTITY xsd-dfxp-metadata-module SYSTEM "./xsd/ttml11-metadata.xsd.esc">
-<!ENTITY xsd-dfxp-metadata-items-module SYSTEM "./xsd/ttml11-metadata-items.xsd.esc">
-<!ENTITY xsd-dfxp-metadata-attribs-module SYSTEM "./xsd/ttml11-metadata-attribs.xsd.esc">
-<!ENTITY xsd-dfxp-parameters-module SYSTEM "./xsd/ttml11-parameters.xsd.esc">
-<!ENTITY xsd-dfxp-parameter-items-module SYSTEM "./xsd/ttml11-parameter-items.xsd.esc">
-<!ENTITY xsd-dfxp-parameter-attribs-module SYSTEM "./xsd/ttml11-parameter-attribs.xsd.esc">
-<!ENTITY xsd-dfxp-styling-attribs-module SYSTEM "./xsd/ttml11-styling-attribs.xsd.esc">
-<!ENTITY xsd-dfxp-styling-module SYSTEM "./xsd/ttml11-styling.xsd.esc">
-<!ENTITY xsd-dfxp-layout-module SYSTEM "./xsd/ttml11-layout.xsd.esc">
-<!ENTITY xsd-dfxp-timing-attribs-module SYSTEM "./xsd/ttml11-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-ttml11.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>Cox Communications, Inc.</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><text></el> or
-<el><textstream></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><text></el> or
-<el><textstream></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 – 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 – TTML Document Structure</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<tt xml:lang="" xmlns="http://www.w3.org/ns/ttml">
- <head>
- <metadata/>
- <styling/>
- <layout/>
- </head>
- <body/>
-</tt>
-</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 – TTML Metadata</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<metadata xmlns:ttm="http://www.w3.org/ns/ttml#metadata">
- <ttm:title>Timed Text TTML Example</ttm:title>
- <ttm:copyright>The Authors (c) 2006</ttm:copyright>
-</metadata>
-</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 – TTML Styling</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<styling xmlns:tts="http://www.w3.org/ns/ttml#styling">
- <!-- s1 specifies default color, font, and text alignment -->
- <style xml:id="s1"
- tts:color="white"
- tts:fontFamily="proportionalSansSerif"
- tts:fontSize="22px"
- tts:textAlign="center"
- />
- <!-- alternative using yellow text but otherwise the same as style s1 -->
- <style xml:id="s2" style="s1" tts:color="yellow"/>
- <!-- a style based on s1 but justified to the right -->
- <style xml:id="s1Right" style="s1" tts:textAlign="end" />
- <!-- a style based on s2 but justified to the left -->
- <style xml:id="s2Left" style="s2" tts:textAlign="start" />
-</styling>
-</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 – TTML Layout</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<layout xmlns:tts="http://www.w3.org/ns/ttml#styling">
- <region xml:id="subtitleArea"
- style="s1"
- tts:extent="560px 62px"
- tts:padding="5px 3px"
- tts:backgroundColor="black"
- tts:displayAlign="after"
- />
-</layout>
-</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 —
-in this case, the division parent is interpreted as a parallel time
-container.</p>
-<table id="dfxp-example-body" role="example">
-<caption>Example Fragment – TTML Body</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<body region="subtitleArea">
- <div>
- <p xml:id="subtitle1" begin="0.76s" end="3.45s">
- It seems a paradox, does it not,
- </p>
- <p xml:id="subtitle2" begin="5.0s" end="10.0s">
- that the image formed on<br/>
- the Retina should be inverted?
- </p>
- <p xml:id="subtitle3" begin="10.0s" end="16.0s" style="s2">
- It is puzzling, why is it<br/>
- we do not see things upside-down?
- </p>
- <p xml:id="subtitle4" begin="17.2s" end="23.0s">
- You have never heard the Theory,<br/>
- then, that the Brain also is inverted?
- </p>
- <p xml:id="subtitle5" begin="23.0s" end="27.0s" style="s2">
- No indeed! What a beautiful fact!
- </p>
- <p xml:id="subtitle6a" begin="28.0s" end="34.6s" style="s2Left">
- But how is it proved?
- </p>
- <p xml:id="subtitle6b" begin="28.0s" end="34.6s" style="s1Right">
- Thus: what we call
- </p>
- <p xml:id="subtitle7" begin="34.6s" end="45.0s" style="s1Right">
- the vertex of the Brain<br/>
- is really its base
- </p>
- <p xml:id="subtitle8" begin="45.0s" end="52.0s" style="s1Right">
- and what we call its base<br/>
- is really its vertex,
- </p>
- <p xml:id="subtitle9a" begin="53.5s" end="58.7s">
- it is simply a question of nomenclature.
- </p>
- <p xml:id="subtitle9b" begin="53.5s" end="58.7s" style="s2">
- How truly delightful!
- </p>
- </div>
-</body>
-</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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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 – 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"/>, §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"/>, §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"/>, §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 – Element Information Item: example</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<example
- <phrase role="reqattr">count</phrase> = integer
- size = (<emph>large</emph>|<emph>medium</emph>|<emph>small</emph>) : medium>
- <emph>Content:</emph> (all | any*)
-</example>
-</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 – Sample</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<tt xml:lang="" xmlns="http://www.w3.org/ns/ttml">
- <head>
- <metadata/>
- <styling/>
- <layout/>
- </head>
- <body/>
-</tt>
-</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"/> § 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 – 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 – 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"/>,
-§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 – DFXP Additive Profile</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<tt xml:lang="" xmlns="http://www.w3.org/ns/ttml">
- <head>
- <profile use="dfxp-presentation" xmlns="http://www.w3.org/ns/ttml#parameter">
- <features xml:base="http://www.w3.org/ns/ttml/feature/">
- <feature value="required">#fontStyle-italic</feature>
- </features>
- </profile>
- </head>
- <body/>
-</tt>
-</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 – 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 – 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 – 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 three 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 – Element Information Item: ttp:profile</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<ttp:profile
- use = string
- <loc href="#content-attribute-id">xml:id</loc> = ID
- {<emph>any attribute not in default or any TT namespace</emph>}>
- <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>*
-</ttp:profile>
-</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"/>,
-§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 – ttp:profile</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<ttp:profile use="dfxp-presentation">
- <ttp:features xml:base="http://www.w3.org/ns/ttml/feature/">
- <ttp:feature>#text-outline</ttp:feature>
- </ttp:features>
-</ttp:profile>
-</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 – Element Information Item: ttp:features</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<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>}>
- <emph>Content:</emph> <loc href="#element-vocab-group-table">Metadata.class</loc>*, <loc href="#parameter-vocabulary-feature">ttp:feature</loc>*
-</ttp:features>
-</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"/>,
-§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"/>,
-§3.2.17.</p>
-<table id="elt-syntax-parameter-feature" role="syntax">
-<caption>XML Representation – Element Information Item: ttp:feature</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<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>}>
- <emph>Content:</emph> #PCDATA
-</ttp:feature>
-</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 – ttp:feature</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<ttp:profile use="http://www.w3.org/ns/ttml/profile/dfxp-presentation">
- <ttp:features xml:base="http://www.w3.org/ns/ttml/feature/">
- <phrase role="strong"><ttp:feature value="required">#fontStyle-italic</ttp:feature></phrase>
- <phrase role="strong"><ttp:feature value="required">#textDecoration-under</ttp:feature></phrase>
- </ttp:features>
-</ttp:profile>
-</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 – Element Information Item: ttp:extensions</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<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>}>
- <emph>Content:</emph> <loc href="#element-vocab-group-table">Metadata.class</loc>*, <loc href="#parameter-vocabulary-extension">ttp:extension</loc>*
-</ttp:extensions>
-</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"/>,
-§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"/>,
-§3.2.17.</p>
-<table id="elt-syntax-parameter-extension" role="syntax">
-<caption>XML Representation – Element Information Item: ttp:extension</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<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>}>
- <emph>Content:</emph> #PCDATA
-</ttp:extension>
-</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 – ttp:extension</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<ttp:profile use="http://www.w3.org/ns/ttml/profile/dfxp-transformation">
- <ttp:extensions xml:base="http://foo.bar.example.org/ttaf1/extension/">
- <phrase role="strong"><ttp:extension value="use">#prefilter-by-language</ttp:extension></phrase>
- </ttp:extensions>
-</ttp:profile>
-</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 – 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"><digit></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 – 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 – 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−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−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−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 – ttp:frameRate</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-ttp:frameRate
- : <loc href="#style-value-digit"><digit></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> ∈ [0…<emph>F−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 – 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"><digit></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…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… (= 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 – 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 – 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"><digit></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"/>,
-§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 – ttp:subFrameRate</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-ttp:subFrameRate
- : <loc href="#style-value-digit"><digit></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> ∈ [0…<emph>S−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 – ttp:tickRate</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-ttp:tickRate
- : <loc href="#style-value-digit"><digit></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> ∈ [0…<emph>T−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 – 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 – Element Information Item: tt</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<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>}>
- <emph>Content:</emph> <loc href="#document-structure-vocabulary-head">head</loc>?, <loc href="#document-structure-vocabulary-body">body</loc>?
-</tt>
-</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 – Element Information Item: head</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<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>}>
- <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>?
-</head>
-</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 – Element Information Item: body</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<body
- <loc href="#timing-attribute-begin">begin</loc> = <loc href="#timing-value-timeExpression"><timeExpression></loc>
- <loc href="#timing-attribute-dur">dur</loc> = <loc href="#timing-value-timeExpression"><timeExpression></loc>
- <loc href="#timing-attribute-end">end</loc> = <loc href="#timing-value-timeExpression"><timeExpression></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>}>
- <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>*
-</body>
-</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 – Element Information Item: div</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<div
- <loc href="#timing-attribute-begin">begin</loc> = <loc href="#timing-value-timeExpression"><timeExpression></loc>
- <loc href="#timing-attribute-dur">dur</loc> = <loc href="#timing-value-timeExpression"><timeExpression></loc>
- <loc href="#timing-attribute-end">end</loc> = <loc href="#timing-value-timeExpression"><timeExpression></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>}>
- <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>*
-</div>
-</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 – Element Information Item: p</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<p
- <loc href="#timing-attribute-begin">begin</loc> = <loc href="#timing-value-timeExpression"><timeExpression></loc>
- <loc href="#timing-attribute-dur">dur</loc> = <loc href="#timing-value-timeExpression"><timeExpression></loc>
- <loc href="#timing-attribute-end">end</loc> = <loc href="#timing-value-timeExpression"><timeExpression></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>}>
- <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>*
-</p>
-</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 – Element Information Item: span</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<span
- <loc href="#timing-attribute-begin">begin</loc> = <loc href="#timing-value-timeExpression"><timeExpression></loc>
- <loc href="#timing-attribute-dur">dur</loc> = <loc href="#timing-value-timeExpression"><timeExpression></loc>
- <loc href="#timing-attribute-end">end</loc> = <loc href="#timing-value-timeExpression"><timeExpression></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>}>
- <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>*
-</span>
-</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 – Element Information Item: br</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<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>}>
- <emph>Content:</emph> <loc href="#element-vocab-group-table">Metadata.class</loc>*, <loc href="#element-vocab-group-table">Animation.class</loc>*
-</br>
-</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"/>, §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"/>, §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"/>, §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>&#x0009;</code>) and NEWLINE character (<code>&#x000A;</code>) with a SPACE
-character (<code>&#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><?xml-stylesheet ... ?></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 – Element Information Item: styling</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<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>}>
- <emph>Content:</emph> <loc href="#element-vocab-group-table">Metadata.class</loc>*, <loc href="#styling-vocabulary-style">style</loc>*
-</styling>
-</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 – Element Information Item: style</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<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>}>
- <!-- change for future CSS compatibility
- <emph>Content:</emph> <loc href="#element-vocab-group-table">Metadata.class</loc>*
- -->
- <emph>Content:</emph> EMPTY
-</style>
-</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"><color></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 – Background Color</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<region xml:id="r1">
- <style tts:extent="306px 114px"/>
- <style <phrase role="strong">tts:backgroundColor="red"</phrase>/>
- <style tts:color="white"/>
- <style tts:displayAlign="after"/>
- <style tts:padding="3px 40px"/>
-</region>
-...
-<p region="r1" <phrase role="strong">tts:backgroundColor="purple"</phrase> tts:textAlign="center">
- Twinkle, twinkle, little bat!<br/>
- How <span <phrase role="strong">tts:backgroundColor="green"</phrase>>I wonder</span> where you're at!
-</p>
-</eg>
-</td>
-</tr>
-</tbody>
-</table>
-<p/>
-<table id="style-attribute-backgroundColor-example-1-images" role="example-images">
-<caption>Example Rendition – 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"/>, § 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"><color></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 – Color</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<region xml:id="r1">
- <style tts:backgroundColor="black"/>
- <style <phrase role="strong">tts:color="white"</phrase>/>
- <style tts:displayAlign="after"/>
- <style tts:textAlign="center"/>
-</region>
-...
-<p region="r1">
- In spring, when woods are <span <phrase role="strong">tts:color="green"</phrase>>getting green</span>,<br/>
- I'll try and tell you what I mean.
-</p>
-</eg>
-</td>
-</tr>
-</tbody>
-</table>
-<p/>
-<table id="style-attribute-color-example-1-images" role="example-images">
-<caption>Example Rendition – 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"/>,
-§ 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 – Direction</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<region xml:id="r1">
- <style tts:extent="265px 84px"/>
- <style tts:padding="5px"/>
- <style tts:backgroundColor="black"/>
- <style tts:color="white"/>
- <style tts:displayAlign="after"/>
- <style tts:textAlign="center"/>
-</region>
-...
-<p region="r1">
- Little birds are playing<br/>
- Bagpipes on the shore,<br/>
- <span tts:unicodeBidi="bidiOverride" <phrase role="strong">tts:direction="rtl"</phrase>>where the tourists snore.</span>
-</p>
-</eg>
-</td>
-</tr>
-</tbody>
-</table>
-<p/>
-<table id="style-attribute-direction-example-1-images" role="example-images">
-<caption>Example Rendition – 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"/>,
-§ 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 – Display</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<region xml:id="r1">
- <style tts:extent="369px 119px"
- tts:backgroundColor="black"
- tts:color="white"
- tts:displayAlign="before"
- tts:textAlign="start"/>
-</region>
-...
-<div region="r1">
- <p dur="5s">
- [[[
- <span <phrase role="strong">tts:display="none"</phrase>>
- <set begin="1s" dur="1s" <phrase role="strong">tts:display="auto"</phrase>/>
- Beautiful soup,
- </span>
- <span <phrase role="strong">tts:display="none"</phrase>>
- <set begin="2s" dur="1s" <phrase role="strong">tts:display="auto"</phrase>/>
- so rich and green,
- </span>
- <span <phrase role="strong">tts:display="none"</phrase>>
- <set begin="3s" dur="1s" <phrase role="strong">tts:display="auto"</phrase>/>
- waiting in a hot tureen!
- </span>
- ]]]
- </p>
-</div>
-</eg>
-</td>
-</tr>
-</tbody>
-</table>
-<p/>
-<table id="style-attribute-display-example-1-images" role="example-images">
-<caption>Example Rendition – 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"/>,
-§ 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 – Display Align</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<region xml:id="r1">
- <style tts:extent="128px 66px" tts:origin="0px 0px"
- tts:backgroundColor="black" tts:color="white"/>
- <style <phrase role="strong">tts:displayAlign="before"</phrase>/>
- <style tts:textAlign="start"/>
-</region>
-<region xml:id="r2">
- <style tts:extent="192px 66px" tts:origin="128px 66px"/>
- tts:backgroundColor="green" tts:color="white"/>
- <style <phrase role="strong">tts:displayAlign="after"</phrase>/>
- <style tts:textAlign="start"/>
-</region>
-<region xml:id="r3">
- <style tts:extent="128px 66px"/> style tts:origin="0px 132px"
- tts:backgroundColor="black" tts:color="white"/>
- <style <phrase role="strong">tts:displayAlign="before"</phrase>/>
- <style tts:textAlign="start"/>
-</region>
-<region xml:id="r4">
- <style tts:extent="192px 66px" tts:origin="128px 198px"/>
- tts:backgroundColor="green" tts:color="white"/>
- <style <phrase role="strong">tts:displayAlign="after"</phrase>/>
- <style tts:textAlign="start"/>
-</region>
-...
-<div>
- <p region="r1">I sent a message to the fish:</p>
- <p region="r2">I told them<br/> "This is what I wish."</p>
- <p region="r3">The little fishes of the sea,</p>
- <p region="r4">They sent an<br/> answer back to me.</p>
-</div>
-</eg>
-</td>
-</tr>
-</tbody>
-</table>
-<p/>
-<table id="style-attribute-displayAlign-example-1-images" role="example-images">
-<caption>Example Rendition – 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"/>,
-§ 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"><length></loc> <loc href="#style-value-length"><length></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"><length></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"><length></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 – Extent</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<region xml:id="r1">
- <style <phrase role="strong">tts:extent="330px 122px"</phrase>/>
- <style tts:backgroundColor="black"/>
- <style tts:color="white"/>
- <style tts:displayAlign="after"/>
- <style tts:textAlign="center"/>
-</region>
-...
-<p region="r1">
- 'Tis the voice of the Lobster:<br/>
- I heard him declare,<br/>
- "You have baked me too brown,<br/>
- I must sugar my hair."
-</p>
-</eg>
-</td>
-</tr>
-</tbody>
-</table>
-<p/>
-<table id="style-attribute-extent-example-1-images" role="example-images">
-<caption>Example Rendition – 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"><familyName></loc> | <loc href="#style-value-genericFamilyName"><genericFamilyName></loc>)
-(<code>","</code>
- (<loc href="#style-value-familyName"><familyName></loc> | <loc href="#style-value-genericFamilyName"><genericFamilyName></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 – Font Family</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<region xml:id="r1">
- <style tts:extent="474px 146px"/>
- <style tts:backgroundColor="black"/>
- <style tts:color="white"/>
- <style tts:displayAlign="center"/>
- <style tts:textAlign="start"/>
- <style <phrase role="strong">tts:fontFamily="proportionalSansSerif"</phrase>/>
-</region>
-...
-<div region="r1">
- <p>
- "The time has come," the Walrus said,<br/>
- "to talk of many things:
- </p>
- <p tts:textAlign="end" <phrase role="strong">tts:fontFamily="monospaceSerif"</phrase>>
- Of shoes, and ships, and sealing wax,<br/>
- Of cabbages and kings,
- </p>
- <p>
- And why the sea is boiling hot,<br/>
- and whether pigs have wings."
- </p>
-</div>
-</eg>
-</td>
-</tr>
-</tbody>
-</table>
-<p/>
-<table id="style-attribute-fontFamily-example-1-images" role="example-images">
-<caption>Example Rendition – 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"/>,
-§ 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"><length></loc> <loc href="#style-value-length"><length></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"><length></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"><length></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 units 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
-units of the <loc href="#style-value-length"><length></loc> values must be the same.</p>
-<p>The <loc href="#style-value-length"><length></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 – Font Size</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<region xml:id="r1">
- <style tts:extent="299px 97px"/>
- <style tts:backgroundColor="black"/>
- <style tts:color="white"/>
- <style tts:displayAlign="center"/>
- <style tts:textAlign="center"/>
- <style tts:fontFamily="proportionalSansSerif"/>
- <style <phrase role="strong">tts:fontSize="18px"</phrase>/>
-</region>
-...
-<p region="r1">
- Then fill up the glasses<br/>
- with treacle and ink,<br/>
- Or anything else<br/>
- that is <span <phrase role="strong">tts:fontSize="24px"</phrase>>pleasant</span> to drink.
-</p>
-</eg>
-</td>
-</tr>
-</tbody>
-</table>
-<p/>
-<table id="style-attribute-fontSize-example-1-images" role="example-images">
-<caption>Example Rendition – 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"/>,
-§ 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 – Font Style</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<region xml:id="r1">
- <style tts:extent="331px 84px"/>
- <style tts:backgroundColor="black"/>
- <style tts:color="white"/>
- <style tts:displayAlign="after"/>
- <style tts:textAlign="center"/>
- <style tts:fontFamily="proportionalSansSerif"/>
-</region>
-...
-<p region="r1">
- In autumn, when the leaves are brown,<br/>
- Take pen and ink, and <span <phrase role="strong">tts:fontStyle="italic"</phrase>>write it down.</span>
-</p>
-</eg>
-</td>
-</tr>
-</tbody>
-</table>
-<p/>
-<table id="style-attribute-fontStyle-example-1-images" role="example-images">
-<caption>Example Rendition – 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"/>,
-§ 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 – Font Weight</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<region xml:id="r1">
- <style tts:extent="376px 95px"/>
- <style tts:backgroundColor="black"/>
- <style tts:color="white"/>
- <style tts:displayAlign="center"/>
- <style tts:textAlign="center"/>
- <style tts:fontFamily="proportionalSansSerif"/>
-</region>
-...
-<p region="r1">
- They told me you had been to her,<br/>
- <span <phrase role="strong">tts:fontWeight="bold"</phrase>>and mentioned me to him:</span><br/>
- She gave me a good character<br/>
- <span <phrase role="strong">tts:fontWeight="bold"</phrase>>but said I could not swim.</span>
-</p>
-</eg>
-</td>
-</tr>
-</tbody>
-</table>
-<p/>
-<table id="style-attribute-fontWeight-example-1-images" role="example-images">
-<caption>Example Rendition – 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"/>,
-§ 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"><length></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"><length></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 – Line Height</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<region xml:id="r1">
- <style tts:extent="255px 190px"/>
- <style tts:backgroundColor="black"/>
- <style tts:color="white"/>
- <style tts:displayAlign="center"/>
- <style tts:textAlign="start"/>
- <style tts:fontFamily="proportionalSansSerif"/>
- <style tts:fontSize="16px"/>
- <style <phrase role="strong">tts:lineHeight="32px"</phrase>/>
-</region>
-...
-<p region="r1">
- He thought he saw an elephant,<br/>
- That practised on a fife:<br/>
- He looked again, and found it was<br/>
- A letter from his wife.<br/>
- "At length I realise," he said,<br/>
- "The bitterness of Life.
-"</p>
-</eg>
-</td>
-</tr>
-</tbody>
-</table>
-<p/>
-<table id="style-attribute-lineHeight-example-1-images" role="example-images">
-<caption>Example Rendition – 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"/>,
-§ 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"><alpha></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"><alpha></loc> value greater
-than 1.0 must be considered equivalent to an <loc
-href="#style-value-alpha"><alpha></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 – Opacity</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<region xml:id="r1" dur="5s">
- <set begin="0s" dur="1s" <phrase role="strong">tts:opacity="1.00"</phrase>/>
- <set begin="1s" dur="1s" <phrase role="strong">tts:opacity="0.75"</phrase>/>
- <set begin="2s" dur="1s" <phrase role="strong">tts:opacity="0.50"</phrase>/>
- <set begin="3s" dur="1s" <phrase role="strong">tts:opacity="0.25"</phrase>/>
- <set begin="4s" dur="1s" <phrase role="strong">tts:opacity="0.00"</phrase>/>
- <style tts:extent="304px 77px"/>
- <style tts:backgroundColor="black"/>
- <style tts:color="white"/>
- <style tts:displayAlign="after"/>
- <style tts:textAlign="center"/>
-</region>
-...
-<p region="r1">
- The sun was shining on the sea
-</p>
-</eg>
-</td>
-</tr>
-</tbody>
-</table>
-<p/>
-<table id="style-attribute-opacity-example-1-images" role="example-images">
-<caption>Example Rendition – 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"/>,
-§ 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"><length></loc> <loc href="#style-value-length"><length></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"><length></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 – Origin</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<region xml:id="r1">
- <style <phrase role="strong">tts:origin="40px 40px"</phrase>/>
- <style tts:extent="308px 92px"/>
- <style tts:backgroundColor="black"/>
- <style tts:color="white"/>
- <style tts:displayAlign="center"/>
- <style tts:textAlign="center"/>
-</region>
-...
-<p region="r1">
- "To dine!" she shrieked in dragon-wrath.<br/>
- "To swallow wines all foam and froth!<br/>
- To simper at a table-cloth!"
-</p>
-</eg>
-</td>
-</tr>
-</tbody>
-</table>
-<p/>
-<table id="style-attribute-origin-example-1-images" role="example-images">
-<caption>Example Rendition – 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 – Overflow</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<region xml:id="r1">
- <style tts:extent="232px 40px"/>
- <style tts:origin="0px 0px"/>
- <style tts:backgroundColor="black"/>
- <style tts:color="red"/>
- <style tts:displayAlign="before"/>
- <style tts:textAlign="start"/>
- <style tts:fontFamily="proportionalSansSerif"/>
- <style tts:fontSize="18px"/>
- <style tts:wrapOption="noWrap"/>
- <style <phrase role="strong">tts:overflow="visible"</phrase>/>
-</region>
-<region xml:id="r2">
- <style tts:extent="232px 40px"/>
- <style tts:origin="0px 43px"/>
- <style tts:backgroundColor="black"/>
- <style tts:color="red"/>
- <style tts:displayAlign="before"/>
- <style tts:textAlign="start"/>
- <style tts:fontFamily="proportionalSansSerif"/>
- <style tts:fontSize="18px"/>
- <style tts:wrapOption="noWrap"/>
- <style <phrase role="strong">tts:overflow="hidden"</phrase>/>
-</region>
-...
-<p region="r1">
- "But wait a bit," the Oysters cried,<br/>
- "Before we have our chat;
-</p>
-<p region="r2">
- For some of us are out of breath,<br/>
- And all of us are fat!"
-</p>
-</eg>
-</td>
-</tr>
-</tbody>
-</table>
-<p/>
-<table id="style-attribute-overflow-example-1-images" role="example-images">
-<caption>Example Rendition – 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"/>,
-§ 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"><length></loc> |
-<loc href="#style-value-length"><length></loc> <loc href="#style-value-length"><length></loc> |
-<loc href="#style-value-length"><length></loc> <loc href="#style-value-length"><length></loc> <loc href="#style-value-length"><length></loc> |
-<loc href="#style-value-length"><length></loc> <loc href="#style-value-length"><length></loc> <loc href="#style-value-length"><length></loc> <loc href="#style-value-length"><length></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"><length></loc> specification,
-then that length applies to all edges of the affected areas. If the value
-consists of two <loc href="#style-value-length"><length></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"><length></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"><length></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 – Padding</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<region xml:id="r1">
- <style tts:extent="446px 104px"/>
- <style tts:backgroundColor="black"/>
- <style tts:color="white"/>
- <style tts:displayAlign="after"/>
- <style tts:textAlign="center"/>
- <style <phrase role="strong">tts:padding="10px 40px"</phrase>/>
-</region>
-...
-<p region="r1" tts:backgroundColor="red">
- Just the place for a Snark! I have said it twice:<br/>
- That alone should encourage the crew.<br/>
- Just the place for a Snark! I have said it thrice:<br/>
- What I tell you three times is true.
-</p>
-</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 – 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"/>,
-§ 7.31.15, except that individual shorthand values map to writing
- mode relative padding values as defined by <bibref ref="xsl11"/>,
-§ 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 – Show Background</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<region xml:id="r1">
- <style tts:origin="0px 0px"/>
- <style tts:extent="265px 100px"/>
- <style tts:backgroundColor="black"/>
- <style <phrase role="strong">tts:showBackground="always"</phrase>/>
- <style tts:color="white"/>
- <style tts:displayAlign="before"/>
- <style tts:textAlign="start"/>
-</region>
-<region xml:id="r2">
- <style tts:origin="205px 60px"/>
- <style tts:extent="290px 100px"/>
- <style tts:backgroundColor="red"/>
- <style tts:color="white"/>
- <style tts:displayAlign="before"/>
- <style tts:textAlign="end"/>
- <style <phrase role="strong">tts:showBackground="whenActive"</phrase>/>
-</region>
-</eg>
-</td>
-</tr>
-</tbody>
-</table>
-<!--
-<table id="style-attribute-showBackground-example-1-images" role="example-images">
-<caption>Example Rendition – 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"/>,
-§ 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 – Text Align</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<region xml:id="r1">
- <style tts:extent="355px 43px"/>
- <style tts:origin="0px 0px"/>
- <style tts:backgroundColor="black"/>
- <style tts:color="white"/>
- <style <phrase role="strong">tts:textAlign="start"</phrase>/>
-</region>
-<region xml:id="r2">
- <style tts:extent="355px 43px"/>
- <style tts:origin="0px 47px"/>
- <style tts:backgroundColor="black"/>
- <style tts:color="white"/>
- <style <phrase role="strong">tts:textAlign="end"</phrase>/>
-</region>
-...
-<p region="r1">
- Beware the Jabberwock, my son!<br/>
- The jaws that bite, the claws that catch!
-</p>
-<p region="r2">
- Beware the Jubjub bird, and shun<br/>
- The frumious Bandersnatch!
-</p>
-</eg>
-</td>
-</tr>
-</tbody>
-</table>
-<p/>
-<table id="style-attribute-textAlign-example-1-images" role="example-images">
-<caption>Example Rendition – 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"/>,
-§ 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 – Text Decoration</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<region xml:id="r1">
- <style tts:extent="385px 82px"/>
- <style tts:origin="0px 0px"/>
- <style tts:backgroundColor="black"/>
- <style tts:color="white"/>
- <style tts:padding="5px 2px"/>
- <style <phrase role="strong">tts:textDecoration="underline"</phrase>/>
-</region>
-...
-<p region="r1">
- The sea was wet<span <phrase role="strong">tts:textDecoration="noUnderline"</phrase>> as </span>wet
- <span <phrase role="strong">tts:textDecoration="noUnderline"</phrase>>
- could be,<br/>
- The sand was dry as dry.<br/>
- <span <phrase role="strong">tts:textDecoration="lineThrough"</phrase>>There weren't any</span>
- You <span <phrase role="strong">tts:textDecoration="lineThrough"</phrase>>couldn't</span>
- could not see a cloud<br/>
- Because no cloud was in the sky.
- </span>
-</p>
-</eg>
-</td>
-</tr>
-</tbody>
-</table>
-<p/>
-<table id="style-attribute-textDecoration-example-1-images" role="example-images">
-<caption>Example Rendition – 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"/>,
-§ 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"><color></loc>?
-<loc href="#style-value-length"><length></loc>
-<loc href="#style-value-length"><length></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"><color></loc> term
-followed by one or two <loc href="#style-value-length"><length></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 – Text Outline</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<region xml:id="r1">
- <style tts:backgroundColor="transparent"/>
- <style tts:color="yellow"/>
- <style <phrase role="strong">tts:textOutline="black 2px 0px"</phrase>/>
- <style tts:fontFamily="proportionalSansSerif"/>
- <style tts:fontSize="24px"/>
-</region>
-...
-<p>
- How doth the little crocodile<br/>
- Improve its shining tail,<br/>
- And pour the waters of the Nile<br/>
- On every golden scale!<br/>
- How cheerfully he seems to grin,<br/>
- How neatly spreads his claws,<br/>
- And welcomes little fishes in,<br/>
- With gently smiling jaws!
-</p>
-</eg>
-</td>
-</tr>
-</tbody>
-</table>
-<p/>
-<table id="style-attribute-textOutline-example-1-images" role="example-images">
-<caption>Example Rendition – 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 – Unicode Bidirectionality</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<region xml:id="r1">
- <style tts:extent="265px 84px"/>
- <style tts:padding="5px"/>
- <style tts:backgroundColor="black"/>
- <style tts:color="white"/>
- <style tts:displayAlign="after"/>
- <style tts:textAlign="center"/>
-</region>
-...
-<p region="r1">
- Little birds are playing<br/>
- Bagpipes on the shore,<br/>
- <span <phrase role="strong">tts:unicodeBidi="bidiOverride"</phrase> tts:direction="rtl">where the tourists snore.</span>
-</p>
-</eg>
-</td>
-</tr>
-</tbody>
-</table>
-<p/>
-<table id="style-attribute-unicodeBidi-example-1-images" role="example-images">
-<caption>Example Rendition – 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"/>,
-§ 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 – Visibility</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<region xml:id="r1">
- <style tts:extent="398px 121px"/>
- <style tts:backgroundColor="black"/>
- <style tts:color="white"/>
- <style/>
-</region>
-...
-<p region="r1" dur="4s">
- <span <phrase role="strong">tts:visibility="hidden"</phrase>>
- <set begin="1s" <phrase role="strong">tts:visibility="visible"</phrase>/>
- Curiouser
- </span>
- <span <phrase role="strong">tts:visibility="hidden"</phrase>>
- <set begin="2s" <phrase role="strong">tts:visibility="visible"</phrase>/>
- and
- </span>
- <span <phrase role="strong">tts:visibility="hidden"</phrase>>
- <set begin="3s" <phrase role="strong">tts:visibility="visible"</phrase>/>
- curiouser!
- </span>
-</p>
-</eg>
-</td>
-</tr>
-</tbody>
-</table>
-<p/>
-<table id="style-attribute-visibility-example-1-images" role="example-images">
-<caption>Example Rendition – 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"/>,
-§ 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 – Wrap Option</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<region xml:id="r1">
- <style tts:extent="192px 117px"/>
- <style tts:backgroundColor="black"/>
- <style tts:color="white"/>
- <style tts:displayAlign="after"/>
- <style tts:overflow="hidden"/>
- <style <phrase role="strong">tts:wrapOption="noWrap"</phrase>/>
-</region>
-...
-<p>
- I'll tell thee everything I can:<br/>
- There's little to relate.<br/>
- I saw an aged aged man,<br/>
- A-sitting on a gate.
-</p>
-</eg>
-</td>
-</tr>
-</tbody>
-</table>
-<p/>
-<table id="style-attribute-wrapOption-example-1-images" role="example-images">
-<caption>Example Rendition – 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"/>,
-§ 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 – Writing Mode</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<region xml:id="r1">
- <style tts:extent="50px 570px"/>
- <style tts:origin="0px 0px"/>
- <style tts:padding="10px 3px"/>
- <style tts:backgroundColor="black"/>
- <style tts:color="white"/>
- <style <phrase role="strong">tts:writingMode="tbrl"</phrase>/>
-</region>
-<region xml:id="r2">
- <style tts:extent="310px 50px"/>
- <style tts:origin="70px 120px"/>
- <style tts:padding="10px 3px"/>
- <style tts:backgroundColor="black"/>
- <style tts:color="white"/>
- <style <phrase role="strong">tts:writingMode="rltb"</phrase>/>
-</region>
-...
-<p region="r1">
- I sometimes dig for buttered rolls,<br/>
- Or set limed twigs for crabs:
-</p>
-<p region="r2" tts:direction="rtl" tts:unicodeBidi="bidiOverride">
- I sometimes search the grassy knolls for the wheels of Hansom-cabs.
-</p>
-</eg>
-</td>
-</tr>
-</tbody>
-</table>
-<p/>
-<table id="style-attribute-writingMode-example-1-images" role="example-images">
-<caption>Example Rendition – 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"/>,
-§ 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"><integer></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"/>, § 7.30.18, 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 – Z Index</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<region xml:id="r1">
- <style tts:origin="0px 0px"/>
- <style tts:extent="400px 100px"/>
- <style tts:padding="5px"/>
- <style tts:backgroundColor="black"/>
- <style tts:color="white"/>
- <style <phrase role="strong">tts:zIndex="0"</phrase>/>
-</region>
-<region xml:id="r2">
- <style tts:origin="100px 60px"/>
- <style tts:extent="400px 100px"/>
- <style tts:padding="5px"/>
- <style tts:backgroundColor="red"/>
- <style tts:color="white"/>
- <style tts:textAlign="end"/>
- <style <phrase role="strong">tts:zIndex="1"</phrase>/>
-</region>
-<region xml:id="r3">
- <style tts:origin="0px 120px"/>
- <style tts:extent="400px 100px"/>
- <style tts:padding="5px"/>
- <style tts:backgroundColor="black"/>
- <style tts:color="white"/>
- <style <phrase role="strong">tts:zIndex="2"</phrase>/>
-</region>
-<region xml:id="r4">
- <style tts:origin="100px 180px"/>
- <style tts:extent="400px 100px"/>
- <style tts:padding="5px"/>
- <style tts:backgroundColor="red"/>
- <style tts:color="white"/>
- <style tts:textAlign="end"/>
- <style <phrase role="strong">tts:zIndex="3"</phrase>/>
-</region>
-...
-<p region="r1">
- I passed by his garden, and marked, with one eye,<br/>
- How the Owl and the Panther were sharing a pie.
-</p>
-<p region="r2">
- The Panther took pie-crust, and gravy, and meat,<br/>
- While the Owl had the dish as its share of the treat.
-</p>
-<p region="r3">
- When the pie was all finished, the Owl, as a boon,<br/>
- Was kindly permitted to pocket the spoon:
-</p>
-<p region="r4">
- While the Panther received knife and fork<br/>
- with a growl,<br/>
- And concluded the banquet by...
-</p>
-</eg>
-</td>
-</tr>
-</tbody>
-</table>
-<p/>
-<p/>
-<table id="style-attribute-zIndex-example-1-images" role="example-images">
-<caption>Example Rendition – 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"/>,
-§ 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><alpha></head>
-<p>An <alpha> 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 – <alpha></caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<alpha>
- : <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"/> §
-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><color></head>
-<p>A <color> expression is used to specify a named color, exact RGB color triple,
-or exact RGBA color tuple, where the alpha component, if expressed,
-is maximum (255) at 100% opacity
-and minimum (0) at 0% opacity, and where the applicable color space is
-defined by <bibref ref="srgb"/>.</p>
-<table id="color-style-expression-syntax" role="syntax">
-<caption>Syntax Representation – <color></caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<color>
- : "#" rrggbb
- | "#" rrggbbaa
- | "rgb" "(" r-value "," g-value "," b-value ")"
- | "rgba" "(" r-value "," g-value "," b-value "," a-value ")"
- | <loc href="#style-value-namedColor"><namedColor></loc>
-
-rrggbb
- : <loc href="#style-value-hexDigit"><hexDigit></loc>{6}
-
-rrggbbaa
- : <loc href="#style-value-hexDigit"><hexDigit></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"><digit></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><digit></head>
-<p>A <digit> is used to express integers and other types of numbers or tokens.</p>
-<table id="digit-style-expression-syntax" role="syntax">
-<caption>Syntax Representation – <digit></caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<digit>
- : "0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9"
-</eg>
-</td>
-</tr>
-</tbody>
-</table>
-</div3>
-<div3 id="style-value-duration">
-<head><duration></head>
-<p>A <duration> expression is used to express a temporal duration value.</p>
-<table id="duration-style-expression-syntax" role="syntax">
-<caption>Syntax Representation – <duration></caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<duration>
- : <loc href="#style-value-digit"><digit></loc>+ ( "." <loc href="#style-value-digit"><digit></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><familyName></head>
-<p>A <familyName> expression specifies a font family name.</p>
-<p>If the name contains a quotation delimiter character,
-then it must be expressed as a
-<quotedString>. If the name contains a
-whitespace character,
-then it should be expressed as a
-<quotedString>; however, if it is expressed as a <string>, then it
-must not contain a <code>COMMA</code> ',' character.</p>
-
-<table id="familyName-style-expression-syntax" role="syntax">
-<caption>Syntax Representation – <familyName></caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<familyName>
- : <loc href="#style-value-string"><string></loc>
- | <loc href="#style-value-quotedString"><quotedString></loc>
-</eg>
-</td>
-</tr>
-</tbody>
-</table>
-</div3>
-<div3 id="style-value-genericFamilyName">
-<head><genericFamilyName></head>
-<p>A <genericFamilyName> expression specifies a font family using a general
-token that indicates a class of font families.</p>
-<p>The resolution of a generic family name to a concrete font instance is considered to
-be implementation dependent, both in the case of content authoring and content interpretation.</p>
-<table id="genericFamilyName-style-expression-syntax" role="syntax">
-<caption>Syntax Representation – <genericFamilyName></caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<genericFamilyName>
- : "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><hexDigit></head>
-<p>A <hexDigit> is used to express integers and other types of numbers or tokens
-that employ base 16 arithmetic.</p>
-<p>For the purpose of parsing, no distinction must be made between lower and upper case.</p>
-<table id="hexDigit-style-expression-syntax" role="syntax">
-<caption>Syntax Representation – <hexDigit></caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<hexDigit>
- : <loc href="#style-value-digit"><digit></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><integer></head>
-<p>An <integer> expression is used to express an arbitrary, signed integral value.</p>
-<table id="integer-style-expression-syntax" role="syntax">
-<caption>Syntax Representation – <integer></caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<integer>
- : ( "+" | "-" )? <loc href="#style-value-digit"><digit></loc>+
-</eg>
-</td>
-</tr>
-</tbody>
-</table>
-</div3>
-<div3 id="style-value-length">
-<head><length></head>
-<p>A <length> expression is used to express either a coordinate component of point
-in a cartesian space or a distance between two points in a cartesian space.</p>
-<table id="length-style-expression-syntax" role="syntax">
-<caption>Syntax Representation – <length></caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<length>
- : scalar
- | percentage
-
-scalar
- : number units
-
-percentage
- : number "%"
-
-sign
- : "+" | "-"
-
-number
- : sign? non-negative-number
-
-non-negative-number
- : non-negative-integer
- | non-negative-real
-
-non-negative-integer
- : <loc href="#style-value-digit"><digit></loc>+
-
-non-negative-real
- : <loc href="#style-value-digit"><digit></loc>* "." <loc href="#style-value-digit"><digit></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"/>, § 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"/>, § 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><namedColor></head>
-<p>A <namedColor> 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 – <namedColor></caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<namedColor>
- : "transparent" // #00000000
- | "black" // #000000ff
- | "silver" // #c0c0c0ff
- | "gray" // #808080ff
- | "white" // #ffffffff
- | "maroon" // #800000ff
- | "red" // #ff0000ff
- | "purple" // #800080ff
- | "fuchsia" // #ff00ffff
- | "magenta" // #ff00ffff (= fuchsia)
- | "green" // #008000ff
- | "lime" // #00ff00ff
- | "olive" // #808000ff
- | "yellow" // #ffff00ff
- | "navy" // #000080ff
- | "blue" // #0000ffff
- | "teal" // #008080ff
- | "aqua" // #00ffffff
- | "cyan" // #00ffffff (= aqua)
-</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"/>, § 4.2.</p>
-</note>
-</div3>
-<div3 id="style-value-quotedString">
-<head><quotedString></head>
-<p>A <quotedString> is used to express a delimited string that may contain
-a whitespace or a quotation delimiter character. Two types of quotation delimiters
-are provided in order to accommodate strings that contain the other delimiter.</p>
-<table id="quotedString-style-expression-syntax" role="syntax">
-<caption>Syntax Representation – <quotedString></caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<quotedString>
- : "\"" ( <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"/> §
-2.2.</p>
-</div3>
-<div3 id="style-value-string">
-<head><string></head>
-<p>A <string> 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 – <string></caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<string>
- : ( <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"/> §
-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"/>, § 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 – Inline Styling</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<p <phrase role="strong">tts:color="white"</phrase>>White 1 <span <phrase role="strong">tts:color="yellow"</phrase>>Yellow</span> White 2</p>
-</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 – Referential Styling</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<style <phrase role="strong">xml:id="s1"</phrase> tts:color="white"/>
-<style <phrase role="strong">xml:id="s2"</phrase> tts:color="yellow"/>
-...
-<p <phrase role="strong">style="s1"</phrase>>White 1 <span <phrase role="strong">style="s2"</phrase>>Yellow</span> White 2</p>
-</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 – Chained Referential Styling</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<style <phrase role="strong">xml:id="s1"</phrase> tts:color="white" tts:fontFamily="monospaceSerif"/>
-<style <phrase role="strong">xml:id="s2"</phrase> <phrase role="strong">style="s1"</phrase> tts:color="yellow"/>
-...
-<p <phrase role="strong">style="s1"</phrase>>White Monospace</p>
-<p <phrase role="strong">style="s2"</phrase>>Yellow Monospace</p>
-</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 – Nested Styling</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<region xml:id="r1">
- <phrase role="strong"><style tts:extent="128px 66px"/></phrase>
- <phrase role="strong"><style tts:origin="0px 0px"/></phrase>
- <phrase role="strong"><style tts:displayAlign="center"/></phrase>
-</region>
-</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 – Content Style Inheritance</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<p <phrase role="strong">tts:fontFamily="monospaceSansSerif"</phrase>>
- <span tts:color="yellow">Yellow Monospace</span>
-</p>
-</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 – Region Style Inheritance</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<region <phrase role="strong">xml:id="r1"</phrase>>
- <style tts:color="yellow"/>
- <style tts:fontFamily="monospaceSerif"/>
-</region>
-...
-<p <phrase role="strong">region="r1"</phrase>>Yellow Monospace</p>
-</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 – 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 – 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 – 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′</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′</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′</emph> is not undefined, then merge
-<emph>P′</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 – use of referential styling –
-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 – Element Information Item: layout</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<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>}>
- <emph>Content:</emph> <loc href="#element-vocab-group-table">Metadata.class</loc>*, <loc href="#layout-vocabulary-region">region</loc>*
-</layout>
-</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 – Element Information Item: region</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<region
- <loc href="#timing-attribute-begin">begin</loc> = <loc href="#timing-value-timeExpression"><timeExpression></loc>
- <loc href="#timing-attribute-dur">dur</loc> = <loc href="#timing-value-timeExpression"><timeExpression></loc>
- <loc href="#timing-attribute-end">end</loc> = <loc href="#timing-value-timeExpression"><timeExpression></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>}>
- <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>*
-</region>
-</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 – Implied Default Region</caption>
-<tbody>
-<tr>
-<td>
-<eg>
-<tt xml:lang="" xmlns="http://www.w3.org/ns/ttml">
- <head>
- <phrase role="strong"><layout>
- <region xml:id="anonymous"/>
- </layout></phrase>
- </head>
- <body <phrase role="strong">region="anonymous"</phrase>/>
-</tt>
-</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 – 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> …
-<emph>DOC<sub><phrase>inter<sub>N−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 represented as
-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>
-<note>
-<p>In this section, the use of XSL FO is intended to be conceptual only, employed
-solely for the purpose of defining the normative presentation semantics of
-TTML. An actual implementation of this algorithm is not required to create or process
-XSL FO representations. In particular, it is possible to implement these semantics
-using alternative presentation models, such as Cascading Style Sheets (CSS).</p>
-</note>
-<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 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 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 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 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
-produced in the previous step that corresponds to the <el>body</el>
-element, synthesize and append 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 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
-a distinct <el>fo:character</el> element having the following
-properties:</p>
-<ulist>
-<item>
-<p><code>character="&#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 – 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 – Intermediate Document – [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 – XSL FO Document – [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 – Intermediate Document – [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 – Intermediate Document – [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 <timeExpression> 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"/>, § 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
-<timeExpression> 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"/>, § 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
-<timeExpression> specification as defined by <specref
-ref="timing-value-timeExpression"/>.</p>
-<note role="clarification">
-<p>When the <code>clock-time</code> form of a <timeExpression> 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"/>, § 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"/>, § 10.4.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><timeExpression></head>
-<p>A <timeExpression> 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 – <timeExpression></caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<timeExpression>
- : 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"><digit></loc> <loc href="#style-value-digit"><digit></loc>
- | <loc href="#style-value-digit"><digit></loc> <loc href="#style-value-digit"><digit></loc> <loc href="#style-value-digit"><digit></loc>+
-
-minutes | seconds
- : <loc href="#style-value-digit"><digit></loc> <loc href="#style-value-digit"><digit></loc>
-
-frames
- : <loc href="#style-value-digit"><digit></loc> <loc href="#style-value-digit"><digit></loc>
- | <loc href="#style-value-digit"><digit></loc> <loc href="#style-value-digit"><digit></loc> <loc href="#style-value-digit"><digit></loc>+
-
-sub-frames
- : <loc href="#style-value-digit"><digit></loc>+
-
-fraction
- : "." <loc href="#style-value-digit"><digit></loc>+
-
-time-count
- : <loc href="#style-value-digit"><digit></loc>+
-
-metric
- : "h" // hours
- | "m" // minutes
- | "s" // seconds
- | "ms" // milliseconds
- | "f" // frames
- | "t" // ticks
-</eg>
-</td>
-</tr>
-</tbody>
-</table>
-<!--
-<p>If a <timeExpression> 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 <timeExpression> 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…59], while seconds are constrained to [0…60], where the value 60
-applies only to leap seconds.</p>
-<p>If a <timeExpression> is expressed in terms of a
-<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…<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 <timeExpression> 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…<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 – Element Information Item: set</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<set
- <loc href="#timing-attribute-begin">begin</loc> = <loc href="#timing-value-timeExpression"><timeExpression></loc>
- <loc href="#timing-attribute-dur">dur</loc> = <loc href="#timing-value-timeExpression"><timeExpression></loc>
- <loc href="#timing-attribute-end">end</loc> = <loc href="#timing-value-timeExpression"><timeExpression></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>}>
- <emph>Content:</emph> <loc href="#element-vocab-group-table">Metadata.class</loc>*
-</set>
-</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 – Content Style Animation</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-...
-<p dur="5s" tts:color="yellow">
-<phrase role="strong"><set begin="1s" dur="1s" tts:color="red"/></phrase>
-<phrase role="strong"><set begin="2s" dur="1s" tts:color="green"/></phrase>
-<phrase role="strong"><set begin="3s" dur="1s" tts:color="red"/></phrase>
-Text with Flashing Colors!
-</p>
-...
-</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 – Region Style Animation</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<tt xml:lang="" xmlns="http://www.w3.org/ns/ttml"
- xmlns:ttp="http://www.w3.org/ns/ttml#parameter"
- xmlns:tts="http://www.w3.org/ns/ttml#styling"
- ttp:cellResolution="40 16">
- <head>
- <layout>
- <region xml:id="r1" timeContainer="seq">
- <phrase role="strong"><set dur="10s" tts:origin=" 8c 14c"/></phrase>
- <phrase role="strong"><set dur="2s" tts:origin=" 2c 2c"/></phrase>
- <phrase role="strong"><set dur="3s" tts:origin=" 8c 14c"/></phrase>
- <phrase role="strong"><set dur="2s" tts:origin="14c 4c"/></phrase>
- <phrase role="strong"><set dur="10s" tts:origin=" 8c 14c"/></phrase>
- <style tts:extent="24c 2c"/>
- </region>
- </layout>
- </head>
- <body region="r1">...</body>
-</tt>
-</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"/>,
-§ 3.6.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 – Element Information Item: metadata</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<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>}>
- <emph>Content:</emph> ({<emph>any element in TT Metadata namespace</emph>}|{<emph>any element not in any TT namespace</emph>})*
-</metadata>
-</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 – Document Metadata</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-...
-<head>
- <metadata xmlns:ttm="http://www.w3.org/ns/ttml#metadata">
- <ttm:title>Document Metadata Example</ttm:title>
- <ttm:desc>This document employs document metadata.</ttm:desc>
- </metadata>
-</head>
-...
-</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 – Element Metadata</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-...
-<div>
- <metadata xmlns:ttm="http://www.w3.org/ns/ttml#metadata">
- <ttm:title>Chapter 6 – Sherlock Holmes Gives a Demonstration</ttm:title>
- <ttm:desc>Holmes shows Watson how the murderer entered the window.</ttm:desc>
- </metadata>
-</div>
-...
-</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 – Foreign Metadata Attribute Items</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-...
-<div xmlns:ext="http://foo.bar.example.org/ttaf1#metadata">
- <metadata ext:ednote="remove this division prior to publishing"/>
-</div>
-...
-</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 – Foreign Element Metadata</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-...
-<metadata
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:dcterms="http://purl.org/dc/terms/"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
- <dc:title>Foreign Element Metadata Example</dc:title>
- <dc:description>Express metadata using elements in foreign namespace.</dc:description>
- <dc:format xsi:type="dcterms:IMT">application/ttml+xml</dc:format>
-</metadata>
-...
-</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 – Element Information Item: ttm:title</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<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>}>
- <emph>Content:</emph> #PCDATA
-</ttm:title>
-</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 – Element Information Item: ttm:desc</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<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>}>
- <emph>Content:</emph> #PCDATA
-</ttm:desc>
-</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 – Element Information Item: ttm:copyright</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<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>}>
- <emph>Content:</emph> #PCDATA
-</ttm:copyright>
-</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 – Element Information Item: ttm:agent</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<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>}>
- <emph>Content:</emph> <loc href="#metadata-vocabulary-name">ttm:name</loc>*, <loc href="#metadata-vocabulary-actor">ttm:actor</loc>?
-</ttm:agent>
-</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 – Agent Metadata</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-
-<tt xml:lang="en" xmlns="http://www.w3.org/ns/ttml" xmlns:ttm="http://www.w3.org/ns/ttml#metadata">
- <head>
- <phrase role="strong"><ttm:agent xml:id="connery" type="person"></phrase>
- <ttm:name type="family">Connery</ttm:name>
- <ttm:name type="given">Thomas Sean</ttm:name>
- <ttm:name type="alias">Sean</ttm:name>
- <ttm:name type="full">Sir Thomas Sean Connery</ttm:name>
- <phrase role="strong"></ttm:agent></phrase>
- <phrase role="strong"><ttm:agent xml:id="bond" type="character"></phrase>
- <ttm:name type="family">Bond</ttm:name>
- <ttm:name type="given">James</ttm:name>
- <ttm:name type="alias">007</ttm:name>
- <ttm:actor agent="connery"/>
- <phrase role="strong"></ttm:agent></phrase>
- </head>
- <body>
- <div>
- ...
- <p <phrase role="strong">ttm:agent="bond"</phrase>>I travel, a sort of licensed troubleshooter.</p>
- ...
- </div>
- </body>
-</tt>
-</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 – Element Information Item: ttm:name</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<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>}>
- <emph>Content:</emph> #PCDATA
-</ttm:name>
-</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 – Element Information Item: ttm:actor</caption>
-<tbody>
-<tr>
-<td>
-<eg xml:space="preserve">
-<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>}>
- <emph>Content:</emph> EMPTY
-</ttm:actor>
-</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"/> §
-2.3:</p>
-<table id="metadata-attribute-role-syntax" role="syntax">
-<caption>Syntax Representation – 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"/>
-Section 10, repeated expansion of maliciously constructed XML entities
-can be used to consume large amounts of memory, which may cause XML
-processors in constrained environments to fail.</p>
-<p>In addition, because of the extensibility features for TTML and of XML
-in general, it is possible that "application/ttml+xml" may describe content
-that has security implications beyond those described here. However,
-if the processor follows only the normative semantics of the published
-specification, this content will be outside TTML namespaces and
-may be ignored. Only in the case where the processor recognizes and
-processes the additional content, or where further processing of that
-content is dispatched to other processors, would security issues
-potentially arise. And in that case, they would fall outside the
-domain of this registration document.</p>
-</def>
-</gitem>
-<gitem>
-<label>Interoperability considerations:</label>
-<def>
-<p>The published specification describes processing semantics that dictate
-behavior that must be followed when dealing with, among other things,
-unrecognized elements and attributes, both in TTML namespaces and in
-other namespaces.</p>
-<p>Because TTML is extensible, conformant "application/ttml+xml" processors must
-expect that content received is well-formed XML, but it cannot be
-guaranteed that the content is valid to a particular DTD or Schema or
-that the processor will recognize all of the elements and attributes
-in the document.</p>
-<p></p>
-</def>
-</gitem>
-<gitem>
-<label>Published specification:</label>
-<def>
-<p><loc
-href="http://www.w3.org/TR/ttml11/">Timed Text Markup Language (TTML) 1.0</loc>.</p>
-</def>
-</gitem>
-<gitem>
-<label>Applications that use this media type:</label>
-<def>
-<p> TTML is used in the television industry for the purpose of authoring, transcoding and exchanging timed text information and for delivering captions for television material repurposed for the internet.</p>
-<p>There is partial and full support of TTML in components used by several Web browsers plugins, and in a number of caption authoring tools.</p>
-</def>
-</gitem>
-<gitem>
-<label>Additional information:</label>
-<def>
-<glist>
-<gitem>
- <label>Magic number(s):</label>
- <def></def>
-</gitem>
-<gitem>
- <label>File extension(s):</label>
- <def><p>.ttml</p></def>
-</gitem>
-<gitem>
- <label>Macintosh file type code(s):</label>
- <def><p>"TTML"</p></def>
-</gitem>
-<gitem>
-<label>Fragment identifiers:</label>
-<def><p>For documents labeled as application/ttml+xml, the fragment identifier notation is intended to be used with xml:id attributes, as described in section 7.2.1 of the <loc
-href="http://www.w3.org/TR/ttml11/">Timed Text Markup Language (TTML) 1.0</loc> specification.</p></def>
-</gitem>
-</glist>
-</def>
-</gitem>
-<gitem>
-<label>Person & email address to contact for further information:</label>
-<def>
-<p>Timed Text Working Group (public-tt@w3.org)</p>
-</def>
-</gitem>
-<gitem>
-<label>Intended usage:</label>
-<def>
-<p>COMMON</p>
-</def>
-</gitem>
-<gitem>
-<label>Restrictions on usage:</label>
-<def>
-<p>None</p>
-</def>
-</gitem>
-<gitem>
-<label>Author:</label>
-<def>
-<p>The published specification is a work product of the World Wide Web
-Consortium's Timed Text (TT) Working Group.</p>
-</def>
-</gitem>
-<gitem>
-<label>Change controller:</label>
-<def>
-<p>The W3C has change control over this specification.</p>
-</def>
-</gitem>
-</glist>
-</div1>
-<div1 id="features">
-<head>Features</head>
-<p><emph>This appendix is normative.</emph></p>
-<p>This appendix specifies (1) a set of feature designations, each of which
-labels one or more syntactic and/or semantic features defined by this
-specification, and (2) for each designated feature, whether the feature is mandatory
-or optional for a transformation or presentation processor.</p>
-<note>
-<p>A TTML processor is said to <emph>implement the transformation semantics</emph> or
-<emph>implement the presentation semantics</emph> of feature designation <emph>F</emph>
-if it satisfies the requirements of this appendix with respect to the definition of
-feature designation <emph>F</emph> as pertains to transformation or
-presentation processing, respectively.</p>
-</note>
-<div2 id="feature-designations">
-<head>Feature Designations</head>
-<p>A feature designation is expressed as a string that adheres to the following
-form:</p>
-<eg xml:space="preserve">
-feature-designation
- : feature-namespace designation
-
-feature-namespace
- : <emph>TT Feature Namespace</emph> // http://www.w3.org/ns/ttml/feature/
-
-designation
- : "#" token-char+
-
-token-char
- : { XML NameChar } // XML 1.1 Production [4a]
-</eg>
-<p>All values of <code>feature-designation</code> not defined by this specification are reserved
-for future standardization.</p>
-<p>The following sub-sections define all feature designations, expressed
-as relative URIs (fragment identifiers) with respect to the
-TT Feature Namespace base URI.</p>
-<div3 id="feature-animation">
-<head>#animation</head>
-<p>A TTML transformation processor supports the <code>#animation</code>
-feature if it recognizes and is capable of transforming the following
-vocabulary defined by <specref ref="animation"/>:</p>
-<ulist>
-<item><p><loc href="#animation-vocabulary-set"><el>set</el></loc></p></item>
-</ulist>
-<p>A TTML presentation processor supports the <code>#animation</code>
-feature if it implements presentation semantic support for the
-same vocabulary enumerated above.</p>
-</div3>
-<div3 id="feature-backgroundColor">
-<head>#backgroundColor</head>
-<p>A TTML transformation processor supports the
-<code>#backgroundColor</code> feature if it recognizes and is capable of
-transforming the <loc
-href="#style-attribute-backgroundColor"><att>tts:backgroundColor</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#backgroundColor</code> feature if it (1) implements presentation semantic support
-for the <loc
-href="#style-attribute-backgroundColor"><att>tts:backgroundColor</att></loc>
-attribute
-and (2) is capable of displaying or generating an output display
-signal that distinguishes between at least sixteen (16) values of color,
-including all primary and secondary colors of the SRGB color space.</p>
-</div3>
-<div3 id="feature-backgroundColor-block">
-<head>#backgroundColor-block</head>
-<p>A TTML transformation processor supports the
-<code>#backgroundColor-block</code> feature if it recognizes and is
-capable of transforming all defined values of the <loc
-href="#style-attribute-backgroundColor"><att>tts:backgroundColor</att></loc>
-attribute when applied to a content element that would generate a
-block area during presentation processing.</p>
-<p>A TTML presentation processor supports the
-<code>#backgroundColor-block</code> feature if it (1) implements presentation semantic
-support for the <loc
-href="#style-attribute-backgroundColor"><att>tts:backgroundColor</att></loc>
-attribute when applied to a content element that generates a
-block area
-and (2) is capable of displaying or generating an output display
-signal that distinguishes between at least sixteen (16) values of color,
-including all primary and secondary colors of the SRGB color space.</p>
-</div3>
-<div3 id="feature-backgroundColor-inline">
-<head>#backgroundColor-inline</head>
-<p>A TTML transformation processor supports the
-<code>#backgroundColor-inline</code> feature if it recognizes and is
-capable of transforming all defined values of the <loc
-href="#style-attribute-backgroundColor"><att>tts:backgroundColor</att></loc>
-attribute when applied to a content element that would generate an
-inline area during presentation processing.</p>
-<p>A TTML presentation processor supports the
-<code>#backgroundColor-inline</code> feature if it (1) implements presentation semantic
-support for the <loc
-href="#style-attribute-backgroundColor"><att>tts:backgroundColor</att></loc>
-attribute when applied to a content element that generates an
-inline area
-and (2) is capable of displaying or generating an output display
-signal that distinguishes between at least sixteen (16) values of color,
-including all primary and secondary colors of the SRGB color space.</p>
-</div3>
-<div3 id="feature-backgroundColor-region">
-<head>#backgroundColor-region</head>
-<p>A TTML transformation processor supports the
-<code>#backgroundColor-region</code> feature if it recognizes and is
-capable of transforming all defined values of the <loc
-href="#style-attribute-backgroundColor"><att>tts:backgroundColor</att></loc>
-attribute when applied to a <loc
-href="#layout-vocabulary-region"><el>region</el></loc> element.</p>
-<p>A TTML presentation processor supports the
-<code>#backgroundColor-region</code> feature if it (1) implements presentation semantic
-support for the <loc
-href="#style-attribute-backgroundColor"><att>tts:backgroundColor</att></loc>
-attribute when applied to a <loc
-href="#layout-vocabulary-region"><el>region</el></loc> element
-and (2) is capable of displaying or generating an output display
-signal that distinguishes between at least sixteen (16) values of color,
-including all primary and secondary colors of the SRGB color space
-.</p>
-</div3>
-<div3 id="feature-bidi">
-<head>#bidi</head>
-<p>A TTML processor supports the <code>#bidi</code> feature if it
-supports the following features:</p>
-<ulist>
-<item><p><loc
-href="#feature-direction"><code>#direction</code></loc></p></item>
-<item><p><loc
-href="#feature-unicodeBidi"><code>#unicodeBidi</code></loc></p></item>
-<item><p><loc
-href="#feature-writingMode-horizontal"><code>#writingMode-horizontal</code></loc></p></item>
-</ulist>
-</div3>
-<div3 id="feature-cellResolution">
-<head>#cellResolution</head>
-<p>A TTML transformation processor supports the
-<code>#cellResolution</code> feature if it recognizes and is capable of
-transforming the <loc
-href="#parameter-attribute-cellResolution"><att>ttp:cellResolution</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#cellResolution</code> feature if it implements presentation semantic support
-for the <loc
-href="#parameter-attribute-cellResolution"><att>ttp:cellResolution</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-clockMode">
-<head>#clockMode</head>
-<p>A TTML transformation processor supports the
-<code>#clockMode</code> feature if it recognizes and is capable of
-transforming the <loc
-href="#parameter-attribute-clockMode"><att>ttp:clockMode</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#clockMode</code> feature if it implements presentation semantic support
-for the <loc
-href="#parameter-attribute-clockMode"><att>ttp:clockMode</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-clockMode-gps">
-<head>#clockMode-gps</head>
-<p>A TTML transformation processor supports the
-<code>#clockMode-gps</code> feature if it recognizes and is capable of
-transforming the <code>gps</code> value of the <loc
-href="#parameter-attribute-clockMode"><att>ttp:clockMode</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#clockMode-gps</code> feature if it implements presentation semantic support
-for the <code>gps</code> value of the <loc
-href="#parameter-attribute-clockMode"><att>ttp:clockMode</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-clockMode-local">
-<head>#clockMode-local</head>
-<p>A TTML transformation processor supports the
-<code>#clockMode-local</code> feature if it recognizes and is capable of
-transforming the <code>local</code> value of the <loc
-href="#parameter-attribute-clockMode"><att>ttp:clockMode</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#clockMode-local</code> feature if it implements presentation semantic support
-for the <code>local</code> value of the <loc
-href="#parameter-attribute-clockMode"><att>ttp:clockMode</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-clockMode-utc">
-<head>#clockMode-utc</head>
-<p>A TTML transformation processor supports the
-<code>#clockMode-utc</code> feature if it recognizes and is capable of
-transforming the <code>utc</code> value of the <loc
-href="#parameter-attribute-clockMode"><att>ttp:clockMode</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#clockMode-utc</code> feature if it implements presentation semantic support
-for the <code>utc</code> value of the <loc
-href="#parameter-attribute-clockMode"><att>ttp:clockMode</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-color">
-<head>#color</head>
-<p>A TTML transformation processor supports the
-<code>#color</code> feature if it recognizes and is capable of
-transforming the <loc
-href="#style-attribute-color"><att>tts:color</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#color</code> feature if it (1) implements presentation semantic support
-for the <loc
-href="#style-attribute-color"><att>tts:color</att></loc>
-attribute
-and (2) is capable of displaying or generating an output display
-signal that distinguishes between at least sixteen (16) values of color,
-including all primary and secondary colors of the SRGB color space.</p>
-</div3>
-<div3 id="feature-content">
-<head>#content</head>
-<p>A TTML transformation processor supports the <code>#content</code>
-feature if it recognizes and is capable of transforming the following
-vocabulary defined by <specref ref="content"/>:</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>
-<item><p><loc href="#content-vocabulary-br"><el>br</el></loc></p></item>
-</ulist>
-<p>A TTML presentation processor supports the <code>#content</code>
-feature if it implements presentation semantic support for the
-same vocabulary enumerated above.</p>
-</div3>
-<div3 id="feature-core">
-<head>#core</head>
-<p>A TTML transformation processor supports the <code>#core</code>
-feature if it recognizes and is capable of transforming the following
-core attributes vocabulary defined by <specref ref="content"/>:</p>
-<ulist>
-<item><p><loc href="#content-attribute-id">@<att>xml:id</att></loc></p></item>
-<item><p><loc href="#content-attribute-id">@<att>xml:lang</att></loc></p></item>
-<item><p><loc href="#content-attribute-id">@<att>xml:space</att></loc></p></item>
-</ulist>
-<p>A TTML presentation processor supports the <code>#core</code>
-feature if it implements presentation semantic support for the
-same vocabulary enumerated above.</p>
-</div3>
-<div3 id="feature-direction">
-<head>#direction</head>
-<p>A TTML transformation processor supports the
-<code>#direction</code> feature if it recognizes and is capable of
-transforming all defined values of the <loc
-href="#style-attribute-direction"><att>tts:direction</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#direction</code> feature if it implements presentation semantic support
-for all defined values of the <loc
-href="#style-attribute-direction"><att>tts:direction</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-display">
-<head>#display</head>
-<p>A TTML transformation processor supports the
-<code>#display</code> feature if it recognizes and is capable of
-transforming all defined values of the <loc
-href="#style-attribute-display"><att>tts:display</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#display</code> feature if it implements presentation semantic support
-for all defined values of the <loc
-href="#style-attribute-display"><att>tts:display</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-display-block">
-<head>#display-block</head>
-<p>A TTML transformation processor supports the
-<code>#display-block</code> feature if it recognizes and is
-capable of transforming all defined values of the <loc
-href="#style-attribute-display"><att>tts:display</att></loc>
-attribute when applied to a content element that would generate a
-block area during presentation processing.</p>
-<p>A TTML presentation processor supports the
-<code>#display-block</code> feature if it implements presentation semantic
-support for all defined values of the <loc
-href="#style-attribute-display"><att>tts:display</att></loc>
-attribute when applied to a content element that generates a
-block area.</p>
-</div3>
-<div3 id="feature-display-inline">
-<head>#display-inline</head>
-<p>A TTML transformation processor supports the
-<code>#display-inline</code> feature if it recognizes and is
-capable of transforming all defined values of the <loc
-href="#style-attribute-display"><att>tts:display</att></loc>
-attribute when applied to a content element that would generate an
-inline area during presentation processing.</p>
-<p>A TTML presentation processor supports the
-<code>#display-inline</code> feature if it implements presentation semantic
-support for all defined values of the <loc
-href="#style-attribute-display"><att>tts:display</att></loc>
-attribute when applied to a content element that generates an
-inline area.</p>
-</div3>
-<div3 id="feature-display-region">
-<head>#display-region</head>
-<p>A TTML transformation processor supports the
-<code>#display-region</code> feature if it recognizes and is
-capable of transforming all defined values of the <loc
-href="#style-attribute-display"><att>tts:display</att></loc>
-attribute when applied to a <loc
-href="#layout-vocabulary-region"><el>region</el></loc> element.</p>
-<p>A TTML presentation processor supports the
-<code>#display-region</code> feature if it implements presentation semantic
-support for all defined values of the <loc
-href="#style-attribute-display"><att>tts:display</att></loc>
-attribute when applied to a <loc
-href="#layout-vocabulary-region"><el>region</el></loc> element.</p>
-</div3>
-<div3 id="feature-displayAlign">
-<head>#displayAlign</head>
-<p>A TTML transformation processor supports the
-<code>#displayAlign</code> feature if it recognizes and is capable of
-transforming all defined values of the <loc
-href="#style-attribute-displayAlign"><att>tts:displayAlign</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#displayAlign</code> feature if it implements presentation semantic support
-for all defined values of the <loc
-href="#style-attribute-displayAlign"><att>tts:displayAlign</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-dropMode">
-<head>#dropMode</head>
-<p>A TTML transformation processor supports the
-<code>#dropMode</code> feature if it recognizes and is capable of
-transforming the <loc
-href="#parameter-attribute-dropMode"><att>ttp:dropMode</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#dropMode</code> feature if it implements presentation semantic support
-for the <loc
-href="#parameter-attribute-dropMode"><att>ttp:dropMode</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-dropMode-dropNTSC">
-<head>#dropMode-dropNTSC</head>
-<p>A TTML transformation processor supports the
-<code>#dropMode-dropNTSC</code> feature if it recognizes and is capable of
-transforming the <code>dropNTSC</code> value of the <loc
-href="#parameter-attribute-dropMode"><att>ttp:dropMode</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#dropMode-dropNTSC</code> feature if it implements presentation semantic support
-for the <code>dropNTSC</code> value of the <loc
-href="#parameter-attribute-dropMode"><att>ttp:dropMode</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-dropMode-dropPAL">
-<head>#dropMode-dropPAL</head>
-<p>A TTML transformation processor supports the
-<code>#dropMode-dropPAL</code> feature if it recognizes and is capable of
-transforming the <code>dropPAL</code> value of the <loc
-href="#parameter-attribute-dropMode"><att>ttp:dropMode</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#dropMode-dropPAL</code> feature if it implements presentation semantic support
-for the <code>dropPAL</code> value of the <loc
-href="#parameter-attribute-dropMode"><att>ttp:dropMode</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-dropMode-nonDrop">
-<head>#dropMode-nonDrop</head>
-<p>A TTML transformation processor supports the
-<code>#dropMode-nonDrop</code> feature if it recognizes and is capable of
-transforming the <code>nonDrop</code> value of the <loc
-href="#parameter-attribute-dropMode"><att>ttp:dropMode</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#dropMode-nonDrop</code> feature if it implements presentation semantic support
-for the <code>nonDrop</code> value of the <loc
-href="#parameter-attribute-dropMode"><att>ttp:dropMode</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-extent">
-<head>#extent</head>
-<p>A TTML transformation processor supports the
-<code>#extent</code> feature if it recognizes and is capable of
-transforming the <loc
-href="#style-attribute-extent"><att>tts:extent</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#extent</code> feature if it implements presentation semantic support for
-the <loc
-href="#style-attribute-extent"><att>tts:extent</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-extent-region">
-<head>#extent-region</head>
-<p>A TTML transformation processor supports the
-<code>#extent-region</code> feature if it recognizes and is capable of
-transforming the <loc
-href="#style-attribute-extent"><att>tts:extent</att></loc>
-attribute when applied to a <loc
-href="#layout-vocabulary-region"><el>region</el></loc> element.</p>
-<p>A TTML presentation processor supports the
-<code>#extent-region</code> feature if it implements presentation semantic support for
-the <loc
-href="#style-attribute-extent"><att>tts:extent</att></loc>
-attribute when applied to a <loc
-href="#layout-vocabulary-region"><el>region</el></loc> element.</p>
-</div3>
-<div3 id="feature-extent-root">
-<head>#extent-root</head>
-<p>A TTML transformation processor supports the
-<code>#extent-root</code> feature if it recognizes and is capable of
-transforming the <loc
-href="#style-attribute-extent"><att>tts:extent</att></loc>
-attribute when applied to the <loc
-href="#document-structure-vocabulary-tt"><el>tt</el></loc> element.</p>
-<p>A TTML presentation processor supports the
-<code>#extent-root</code> feature if it implements presentation semantic support for
-the <loc
-href="#style-attribute-extent"><att>tts:extent</att></loc>
-attribute when applied to a <loc
-href="#document-structure-vocabulary-tt"><el>tt</el></loc> element.</p>
-</div3>
-<div3 id="feature-fontFamily">
-<head>#fontFamily</head>
-<p>A TTML transformation processor supports the
-<code>#fontFamily</code> feature if it recognizes and is capable of
-transforming the <loc
-href="#style-attribute-fontFamily"><att>tts:fontFamily</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#fontFamily</code> feature if it implements presentation semantic support
-for the <loc
-href="#style-attribute-fontFamily"><att>tts:fontFamily</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-fontFamily-generic">
-<head>#fontFamily-generic</head>
-<p>A TTML transformation processor supports the
-<code>#fontFamily-generic</code> feature if it recognizes and is
-capable of transforming <loc
-href="#style-value-genericFamilyName"><genericFamilyName></loc>
-values when used with the <loc
-href="#style-attribute-fontFamily"><att>tts:fontFamily</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#fontFamily-generic</code> feature if it implements presentation semantic
-support for <loc
-href="#style-value-genericFamilyName"><genericFamilyName></loc>
-values when used with the <loc
-href="#style-attribute-fontFamily"><att>tts:fontFamily</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-fontFamily-non-generic">
-<head>#fontFamily-non-generic</head>
-<p>A TTML transformation processor supports the
-<code>#fontFamily-non-generic</code> feature if it recognizes and is
-capable of transforming <loc
-href="#style-value-familyName"><familyName></loc>
-values when used with the <loc
-href="#style-attribute-fontFamily"><att>tts:fontFamily</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#fontFamily-non-generic</code> feature if it implements presentation semantic
-support for <loc
-href="#style-value-familyName"><familyName></loc>
-values when used with the <loc
-href="#style-attribute-fontFamily"><att>tts:fontFamily</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-fontSize">
-<head>#fontSize</head>
-<p>A TTML transformation processor supports the
-<code>#fontSize</code> feature if it recognizes and is capable of
-transforming the <loc
-href="#style-attribute-fontSize"><att>tts:fontSize</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#fontSize</code> feature if it implements presentation semantic support
-for the <loc
-href="#style-attribute-fontSize"><att>tts:fontSize</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-fontSize-anamorphic">
-<head>#fontSize-anamorphic</head>
-<p>A TTML transformation processor supports the
-<code>#fontSize-anamorphic</code> feature if it recognizes and is
-capable of transforming values of the <loc
-href="#style-attribute-fontSize"><att>tts:fontSize</att></loc>
-attribute that consist of two <loc
-href="#style-value-length"><length></loc> specifications.</p>
-<p>A TTML presentation processor supports the
-<code>#fontSize-anamorphic</code> feature if it implements presentation semantic
-support for defined values of the <loc
-href="#style-attribute-fontSize"><att>tts:fontSize</att></loc>
-attribute that consist of two <loc
-href="#style-value-length"><length></loc> specifications.</p>
-</div3>
-<div3 id="feature-fontSize-isomorphic">
-<head>#fontSize-isomorphic</head>
-<p>A TTML transformation processor supports the
-<code>#fontSize-isomorphic</code> feature if it recognizes and is
-capable of transforming values of the <loc
-href="#style-attribute-fontSize"><att>tts:fontSize</att></loc>
-attribute that consist of a single <loc
-href="#style-value-length"><length></loc> specification.</p>
-<p>A TTML presentation processor supports the
-<code>#fontSize-isomorphic</code> feature if it implements presentation semantic
-support for defined values of the <loc
-href="#style-attribute-fontSize"><att>tts:fontSize</att></loc>
-attribute that consist of a single <loc
-href="#style-value-length"><length></loc> specification.</p>
-</div3>
-<div3 id="feature-fontStyle">
-<head>#fontStyle</head>
-<p>A TTML transformation processor supports the
-<code>#fontStyle</code> feature if it recognizes and is capable of
-transforming all defined values of the <loc
-href="#style-attribute-fontStyle"><att>tts:fontStyle</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#fontStyle</code> feature if it implements presentation semantic support
-for all defined values of the <loc
-href="#style-attribute-fontStyle"><att>tts:fontStyle</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-fontStyle-italic">
-<head>#fontStyle-italic</head>
-<p>A TTML transformation processor supports the
-<code>#fontStyle-italic</code> feature if it recognizes and is
-capable of transforming the <code>italic</code> value of the <loc
-href="#style-attribute-fontStyle"><att>tts:fontStyle</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#fontStyle-italic</code> feature if it implements presentation semantic
-support for the <code>italic</code> of the <loc
-href="#style-attribute-fontStyle"><att>tts:fontStyle</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-fontStyle-oblique">
-<head>#fontStyle-oblique</head>
-<p>A TTML transformation processor supports the
-<code>#fontStyle-oblique</code> feature if it recognizes and is
-capable of transforming the <code>oblique</code> value of the <loc
-href="#style-attribute-fontStyle"><att>tts:fontStyle</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#fontStyle-oblique</code> feature if it implements presentation semantic
-support for the <code>oblique</code> of the <loc
-href="#style-attribute-fontStyle"><att>tts:fontStyle</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-fontWeight">
-<head>#fontWeight</head>
-<p>A TTML transformation processor supports the
-<code>#fontWeight</code> feature if it recognizes and is capable of
-transforming all defined values of the <loc
-href="#style-attribute-fontWeight"><att>tts:fontWeight</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#fontWeight</code> feature if it implements presentation semantic support
-for all defined values of the <loc
-href="#style-attribute-fontWeight"><att>tts:fontWeight</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-fontWeight-bold">
-<head>#fontWeight-bold</head>
-<p>A TTML transformation processor supports the
-<code>#fontWeight-bold</code> feature if it recognizes and is
-capable of transforming <code>bold</code> value of the <loc
-href="#style-attribute-fontWeight"><att>tts:fontWeight</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#fontWeight-bold</code> feature if it implements presentation semantic
-support for the <code>bold</code> of the <loc
-href="#style-attribute-fontWeight"><att>tts:fontWeight</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-frameRate">
-<head>#frameRate</head>
-<p>A TTML transformation processor supports the
-<code>#frameRate</code> feature if it recognizes and is capable of
-transforming the <loc
-href="#parameter-attribute-frameRate"><att>ttp:frameRate</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#frameRate</code> feature if it implements presentation semantic support
-for the <loc
-href="#parameter-attribute-frameRate"><att>ttp:frameRate</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-frameRateMultiplier">
-<head>#frameRateMultiplier</head>
-<p>A TTML transformation processor supports the
-<code>#frameRateMultiplier</code> feature if it recognizes and is capable of
-transforming the <loc
-href="#parameter-attribute-frameRateMultiplier"><att>ttp:frameRateMultiplier</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#frameRateMultiplier</code> feature if it implements presentation semantic support
-for the <loc
-href="#parameter-attribute-frameRateMultiplier"><att>ttp:frameRateMultiplier</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-layout">
-<head>#layout</head>
-<p>A TTML transformation processor supports the <code>#layout</code>
-feature if it (1) recognizes and is capable of transforming the following
-vocabulary defined by <specref ref="layout"/>:</p>
-<ulist>
-<item><p><loc href="#layout-vocabulary-layout"><el>layout</el></loc></p></item>
-<item><p><loc href="#layout-vocabulary-region"><el>region</el></loc></p></item>
-<item><p><loc href="#layout-attribute-region">@<att>region</att></loc></p></item>
-</ulist>
-<p>and (2) supports the following attributes when applied to the
-<loc href="#layout-vocabulary-region"><el>region</el></loc> element:</p>
-<ulist>
-<item><p><loc
-href="#style-attribute-extent"><att>tts:extent</att></loc></p></item>
-<item><p><loc
-href="#style-attribute-origin"><att>tts:origin</att></loc></p></item>
-</ulist>
-<p>A TTML presentation processor supports the <code>#layout</code>
-feature if it implements presentation semantic support for the
-same vocabulary and features enumerated above.</p>
-</div3>
-<div3 id="feature-length">
-<head>#length</head>
-<p>A TTML transformation processor supports the <code>#length</code>
-feature if it recognizes and is capable of transforming all defined
-values of the <loc href="#style-value-length"><length></loc>
-style value expression.</p>
-<p>A TTML presentation processor supports the <code>#length</code>
-feature if it implements presentation semantic support for all defined values of
-the <loc href="#style-value-length"><length></loc> style value
-expression.</p>
-</div3>
-<div3 id="feature-length-cell">
-<head>#length-cell</head>
-<p>A TTML transformation processor supports the
-<code>#length-cell</code> feature if it recognizes and is capable of
-transforming scalar values of the <loc
-href="#style-value-length"><length></loc> style value expression
-that use <code>c</code> (cell) units.</p>
-<p>A TTML presentation processor supports the
-<code>#length-cell</code> feature if it implements presentation semantic support
-for scalar values of the <loc
-href="#style-value-length"><length></loc> style value expression
-that use <code>c</code> (cell) units.</p>
-</div3>
-<div3 id="feature-length-em">
-<head>#length-em</head>
-<p>A TTML transformation processor supports the
-<code>#length-em</code> feature if it recognizes and is capable of
-transforming scalar values of the <loc
-href="#style-value-length"><length></loc> style value expression
-that use <code>em</code> (EM) units.</p>
-<p>A TTML presentation processor supports the
-<code>#length-em</code> feature if it implements presentation semantic support
-for scalar values of the <loc
-href="#style-value-length"><length></loc> style value expression
-that use <code>em</code> (EM) units.</p>
-</div3>
-<div3 id="feature-length-integer">
-<head>#length-integer</head>
-<p>A TTML transformation processor supports the
-<code>#length-integer</code> feature if it recognizes and is
-capable of transforming integer values of the <loc
-href="#style-value-length"><length></loc> style value
-expression.</p>
-<p>A TTML presentation processor supports the
-<code>#length-integer</code> feature if it implements presentation semantic
-support for integer values of the <loc
-href="#style-value-length"><length></loc> style value
-expression.
-</p>
-</div3>
-<div3 id="feature-length-negative">
-<head>#length-negative</head>
-<p>A TTML transformation processor supports the
-<code>#length-negative</code> feature if it recognizes and is
-capable of transforming negative values of the <loc
-href="#style-value-length"><length></loc> style value
-expression.</p>
-<p>A TTML presentation processor supports the
-<code>#length-negative</code> feature if it implements presentation semantic
-support for negative values of the <loc
-href="#style-value-length"><length></loc> style value
-expression.
-</p>
-</div3>
-<div3 id="feature-length-percentage">
-<head>#length-percentage</head>
-<p>A TTML transformation processor supports the
-<code>#length-percentage</code> feature if it recognizes and is
-capable of transforming percentage values of the <loc
-href="#style-value-length"><length></loc> style value
-expression.</p>
-<p>A TTML presentation processor supports the
-<code>#length-percentage</code> feature if it implements presentation semantic
-support for percentage values of the <loc
-href="#style-value-length"><length></loc> style value
-expression.
-</p>
-</div3>
-<div3 id="feature-length-pixel">
-<head>#length-pixel</head>
-<p>A TTML transformation processor supports the
-<code>#length-pixel</code> feature if it recognizes and is capable of
-transforming scalar values of the <loc
-href="#style-value-length"><length></loc> style value expression
-that use <code>px</code> (pixel) units.</p>
-<p>A TTML presentation processor supports the
-<code>#length-pixel</code> feature if it implements presentation semantic support
-for scalar values of the <loc
-href="#style-value-length"><length></loc> style value expression
-that use <code>px</code> (pixel) units.</p>
-</div3>
-<div3 id="feature-length-positive">
-<head>#length-positive</head>
-<p>A TTML transformation processor supports the
-<code>#length-positive</code> feature if it recognizes and is
-capable of transforming positive values of the <loc
-href="#style-value-length"><length></loc> style value
-expression.</p>
-<p>A TTML presentation processor supports the
-<code>#length-positive</code> feature if it implements presentation semantic
-support for positive values of the <loc
-href="#style-value-length"><length></loc> style value
-expression.
-</p>
-</div3>
-<div3 id="feature-length-real">
-<head>#length-real</head>
-<p>A TTML transformation processor supports the
-<code>#length-real</code> feature if it recognizes and is
-capable of transforming real values of the <loc
-href="#style-value-length"><length></loc> style value
-expression.</p>
-<p>A TTML presentation processor supports the
-<code>#length-real</code> feature if it implements presentation semantic
-support for real values of the <loc
-href="#style-value-length"><length></loc> style value
-expression.
-</p>
-</div3>
-<div3 id="feature-lineBreak-uax14">
-<head>#lineBreak-uax14</head>
-<p>A TTML transformation processor supports the
-<code>#lineBreak-uax14</code> feature if it recognizes and is capable of
-transforming requirements expressed by <bibref ref="uax14"/> into its
-target document space.</p>
-<p>A TTML presentation processor supports the
-<code>#lineBreak-uax14</code> feature if it implements presentation semantic support
-for <bibref ref="uax14"/> as applies to line breaking.</p>
-</div3>
-<div3 id="feature-lineHeight">
-<head>#lineHeight</head>
-<p>A TTML transformation processor supports the
-<code>#lineHeight</code> feature if it recognizes and is capable of
-transforming the <loc
-href="#style-attribute-lineHeight"><att>tts:lineHeight</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#lineHeight</code> feature if it implements presentation semantic support for
-the <loc
-href="#style-attribute-lineHeight"><att>tts:lineHeight</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-markerMode">
-<head>#markerMode</head>
-<p>A TTML transformation processor supports the
-<code>#markerMode</code> feature if it recognizes and is capable of
-transforming the <loc
-href="#parameter-attribute-markerMode"><att>ttp:markerMode</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#markerMode</code> feature if it implements presentation semantic support
-for the <loc
-href="#parameter-attribute-markerMode"><att>ttp:markerMode</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-markerMode-continuous">
-<head>#markerMode-continuous</head>
-<p>A TTML transformation processor supports the
-<code>#markerMode-continuous</code> feature if it recognizes and is capable of
-transforming the <code>continuous</code> value of the <loc
-href="#parameter-attribute-markerMode"><att>ttp:markerMode</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#markerMode-continuous</code> feature if it implements presentation semantic support
-for the <code>continuous</code> value of the <loc
-href="#parameter-attribute-markerMode"><att>ttp:markerMode</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-markerMode-discontinuous">
-<head>#markerMode-discontinuous</head>
-<p>A TTML transformation processor supports the
-<code>#markerMode-discontinuous</code> feature if it recognizes and is capable of
-transforming the <code>discontinuous</code> value of the <loc
-href="#parameter-attribute-markerMode"><att>ttp:markerMode</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#markerMode-discontinuous</code> feature if it implements presentation semantic support
-for the <code>discontinuous</code> value of the <loc
-href="#parameter-attribute-markerMode"><att>ttp:markerMode</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-metadata">
-<head>#metadata</head>
-<p>A TTML transformation processor supports the <code>#metadata</code>
-feature if it recognizes and is capable of transforming the following
-vocabulary defined by <specref ref="metadata"/>:</p>
-<ulist>
-<item><p><loc href="#metadata-vocabulary-metadata"><el>metadata</el></loc></p></item>
-<item><p><loc href="#metadata-vocabulary-title"><el>ttm:title</el></loc></p></item>
-<item><p><loc href="#metadata-vocabulary-title"><el>ttm:desc</el></loc></p></item>
-<item><p><loc href="#metadata-vocabulary-title"><el>ttm:copyright</el></loc></p></item>
-<item><p><loc href="#metadata-vocabulary-title"><el>ttm:agent</el></loc></p></item>
-<item><p><loc href="#metadata-vocabulary-title"><el>ttm:name</el></loc></p></item>
-<item><p><loc href="#metadata-vocabulary-title"><el>ttm:actor</el></loc></p></item>
-<item><p><loc href="#metadata-attribute-agent">@<att>ttm:agent</att></loc></p></item>
-<item><p><loc href="#metadata-attribute-role">@<att>ttm:role</att></loc></p></item>
-</ulist>
-<p>A TTML presentation processor supports the <code>#metadata</code>
-feature if it recognizes and is capable of presenting the information
-expressed by the same vocabulary enumerated above.</p>
-<note role="clarification">
-<p>This specification does not define a standardized form for the
-presentation of metadata information. The presentation or ability to
-present metadata information is considered to be implementation
-dependent.</p>
-</note>
-</div3>
-<div3 id="feature-nested-div">
-<head>#nested-div</head>
-<p>A TTML transformation processor supports the <code>#nested-div</code>
-feature if it recognizes and is capable of transforming nested
-<loc href="#content-vocabulary-div"><el>div</el></loc> elements.</p>
-<p>A TTML presentation processor supports the <code>#nested-div</code>
-feature if it implements presentation semantic support for nested
-<loc href="#content-vocabulary-div"><el>div</el></loc> elements.</p>
-</div3>
-<div3 id="feature-nested-span">
-<head>#nested-span</head>
-<p>A TTML transformation processor supports the <code>#nested-span</code>
-feature if it recognizes and is capable of transforming nested
-<loc href="#content-vocabulary-span"><el>span</el></loc> elements.</p>
-<p>A TTML presentation processor supports the <code>#nested-span</code>
-feature if it implements presentation semantic support for nested
-<loc href="#content-vocabulary-span"><el>span</el></loc> elements.</p>
-</div3>
-<div3 id="feature-opacity">
-<head>#opacity</head>
-<p>A TTML transformation processor supports the
-<code>#opacity</code> feature if it recognizes and is capable of
-transforming the <loc
-href="#style-attribute-opacity"><att>tts:opacity</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#opacity</code> feature if it (1) implements presentation semantic support for
-the <loc
-href="#style-attribute-opacity"><att>tts:opacity</att></loc>
-attribute and (2) is capable of displaying or generating an output display
-signal that distinguishes between at least eight (8) values of opacity.</p>
-</div3>
-<div3 id="feature-origin">
-<head>#origin</head>
-<p>A TTML transformation processor supports the
-<code>#origin</code> feature if it recognizes and is capable of
-transforming the <loc
-href="#style-attribute-origin"><att>tts:origin</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#origin</code> feature if it implements presentation semantic support for
-the <loc
-href="#style-attribute-origin"><att>tts:origin</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-overflow">
-<head>#overflow</head>
-<p>A TTML transformation processor supports the
-<code>#overflow</code> feature if it recognizes and is capable of
-transforming all defined values of the <loc
-href="#style-attribute-overflow"><att>tts:overflow</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#overflow</code> feature if it implements presentation semantic support for
-all defined values of the <loc
-href="#style-attribute-overflow"><att>tts:overflow</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-overflow-visible">
-<head>#overflow-visible</head>
-<p>A TTML transformation processor supports the
-<code>#overflow-visible</code> feature if it recognizes and is capable of
-transforming the <code>visible</code> value of the <loc
-href="#style-attribute-overflow"><att>tts:overflow</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#overflow-visible</code> feature if it implements presentation semantic support for
-the <code>visible</code> value of the <loc
-href="#style-attribute-overflow"><att>tts:overflow</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-padding">
-<head>#padding</head>
-<p>A TTML transformation processor supports the
-<code>#padding</code> feature if it recognizes and is capable of
-transforming the <loc
-href="#style-attribute-padding"><att>tts:padding</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#padding</code> feature if it implements presentation semantic support for
-the <loc
-href="#style-attribute-padding"><att>tts:padding</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-padding-1">
-<head>#padding-1</head>
-<p>A TTML transformation processor supports the
-<code>#padding-1</code> feature if it recognizes and is capable of
-transforming values of the <loc
-href="#style-attribute-padding"><att>tts:padding</att></loc> attribute
-that consist of one <loc
-href="#style-value-length"><length></loc> specification.</p>
-<p>A TTML presentation processor supports the <code>#padding-1</code>
-feature if it implements presentation semantic support for values of the <loc
-href="#style-attribute-padding"><att>tts:padding</att></loc> attribute
-that consist of one <loc
-href="#style-value-length"><length></loc> specification.</p>
-</div3>
-<div3 id="feature-padding-2">
-<head>#padding-2</head>
-<p>A TTML transformation processor supports the
-<code>#padding-2</code> feature if it recognizes and is capable of
-transforming values of the <loc
-href="#style-attribute-padding"><att>tts:padding</att></loc> attribute
-that consist of two <loc
-href="#style-value-length"><length></loc> specification.</p>
-<p>A TTML presentation processor supports the <code>#padding-2</code>
-feature if it implements presentation semantic support for values of the <loc
-href="#style-attribute-padding"><att>tts:padding</att></loc> attribute
-that consist of two <loc
-href="#style-value-length"><length></loc> specification.</p>
-</div3>
-<div3 id="feature-padding-3">
-<head>#padding-3</head>
-<p>A TTML transformation processor supports the
-<code>#padding-3</code> feature if it recognizes and is capable of
-transforming values of the <loc
-href="#style-attribute-padding"><att>tts:padding</att></loc> attribute
-that consist of three <loc
-href="#style-value-length"><length></loc> specification.</p>
-<p>A TTML presentation processor supports the <code>#padding-3</code>
-feature if it implements presentation semantic support for values of the <loc
-href="#style-attribute-padding"><att>tts:padding</att></loc> attribute
-that consist of three <loc
-href="#style-value-length"><length></loc> specification.</p>
-</div3>
-<div3 id="feature-padding-4">
-<head>#padding-4</head>
-<p>A TTML transformation processor supports the
-<code>#padding-4</code> feature if it recognizes and is capable of
-transforming values of the <loc
-href="#style-attribute-padding"><att>tts:padding</att></loc> attribute
-that consist of four <loc
-href="#style-value-length"><length></loc> specification.</p>
-<p>A TTML presentation processor supports the <code>#padding-4</code>
-feature if it implements presentation semantic support for values of the <loc
-href="#style-attribute-padding"><att>tts:padding</att></loc> attribute
-that consist of four <loc
-href="#style-value-length"><length></loc> specification.</p>
-</div3>
-<div3 id="feature-pixelAspectRatio">
-<head>#pixelAspectRatio</head>
-<p>A TTML transformation processor supports the
-<code>#pixelAspectRatio</code> feature if it recognizes and is capable of
-transforming the <loc
-href="#parameter-attribute-pixelAspectRatio"><att>ttp:pixelAspectRatio</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#pixelAspectRatio</code> feature if it implements presentation semantic support
-for the <loc
-href="#parameter-attribute-pixelAspectRatio"><att>ttp:pixelAspectRatio</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-presentation">
-<head>#presentation</head>
-<p>A TTML processor supports the
-<code>#presentation</code> feature if it
-(1) satisfies the generic processor criteria defined by
-<specref ref="conformance-generic-processor"/>,
-(2) implements support for the region and line layout
-semantics defined by <specref ref="semantics-region-layout"/> and
-<specref ref="semantics-line-layout"/>, respectively, and
-(3) implements presentation semantics for the following features:</p>
-<ulist>
-<item><p><loc href="#content"><code>#content</code></loc></p></item>
-<item><p><loc href="#feature-core"><code>#core</code></loc></p></item>
-<item><p><loc href="#feature-profile"><code>#profile</code></loc></p></item>
-<item><p><loc href="#feature-structure"><code>#structure</code></loc></p></item>
-<item><p><loc href="#feature-time-offset"><code>#time-offset</code></loc></p></item>
-<item><p><loc href="#timing"><code>#timing</code></loc></p></item>
-</ulist>
-<p>
-In addition, a TTML processor that supports the
-<code>#presentation</code> feature should satisfy the user agent
-accessibility guidelines specified by <bibref ref="uaag"/>.</p>
-</div3>
-<div3 id="feature-profile">
-<head>#profile</head>
-<p>A TTML transformation processor supports the <code>#profile</code>
-feature if it recognizes and is capable of transforming the
-<loc href="#parameter-attribute-profile"><att>ttp:profile</att></loc>
-attribute on the <loc
-href="#document-structure-vocabulary-tt"><el>tt</el></loc> element and
-transforming the following vocabulary defined by
-<specref ref="parameter-element-vocabulary"/>:</p>
-<ulist>
-<item><p><loc
-href="#parameter-vocabulary-profile"><el>ttp:profile</el></loc></p></item>
-<item><p><loc
-href="#parameter-vocabulary-features"><el>ttp:features</el></loc></p></item>
-<item><p><loc
-href="#parameter-vocabulary-feature"><el>ttp:feature</el></loc></p></item>
-<item><p><loc
-href="#parameter-vocabulary-extensions"><el>ttp:extensions</el></loc></p></item>
-<item><p><loc
-href="#parameter-vocabulary-extension"><el>ttp:extension</el></loc></p></item>
-</ulist>
-<p>A TTML presentation processor supports the
-<code>#profile</code> feature if it implements presentation semantic support
-for the same vocabulary specified above.</p>
-</div3>
-<div3 id="feature-showBackground">
-<head>#showBackground</head>
-<p>A TTML transformation processor supports the
-<code>#showBackground</code> feature if it recognizes and is capable
-of transforming all defined values of the <loc
-href="#style-attribute-showBackground"><att>tts:showBackground</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#showBackground</code> feature if it implements presentation semantic support
-for all defined values of the <loc
-href="#style-attribute-showBackground"><att>tts:showBackground</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-structure">
-<head>#structure</head>
-<p>A TTML transformation processor supports the <code>#structure</code>
-feature if it recognizes and is capable of transforming the following
-vocabulary defined by <specref ref="content"/>:</p>
-<ulist>
-<item><p><loc href="#document-structure-vocabulary-tt"><el>tt</el></loc></p></item>
-<item><p><loc href="#document-structure-vocabulary-head"><el>head</el></loc></p></item>
-</ulist>
-<p>A TTML presentation processor supports the <code>#structure</code>
-feature if it implements presentation semantic support for the
-same vocabulary enumerated above.</p>
-</div3>
-<div3 id="feature-styling">
-<head>#styling</head>
-<p>A TTML transformation processor supports the <code>#styling</code>
-feature if it recognizes and is capable of transforming the following
-vocabulary defined by <specref ref="styling"/>:</p>
-<ulist>
-<item><p><loc href="#styling-vocabulary-styling"><el>styling</el></loc></p></item>
-<item><p><loc href="#styling-vocabulary-style"><el>style</el></loc></p></item>
-<item><p><loc href="#style-attribute-style">@<att>style</att></loc></p></item>
-</ulist>
-<p>A TTML presentation processor supports the <code>#styling</code>
-feature if it implements presentation semantic support for the
-same vocabulary enumerated above.</p>
-</div3>
-<div3 id="feature-styling-chained">
-<head>#styling-chained</head>
-<p>A TTML transformation processor supports the
-<code>#styling-chained</code> feature if it recognizes and is capable
-of transforming chained style association as defined by <specref
-ref="semantics-style-association-chained-referential"/>.</p>
-<p>A TTML presentation processor supports the
-<code>#styling-chained</code> feature if it implements presentation semantic
-support for chained style association as defined by <specref
-ref="semantics-style-association-chained-referential"/>.</p>
-</div3>
-<div3 id="feature-styling-inheritance-content">
-<head>#styling-inheritance-content</head>
-<p>A TTML transformation processor supports the
-<code>#styling-inheritance</code> feature if it recognizes and is
-capable of transforming content style inheritance as defined by
-<specref ref="semantics-style-inheritance-content"/>.</p>
-<p>A TTML presentation processor supports the
-<code>#styling-inheritance-content</code> feature if it implements
-presentation semantic support for content style inheritance as defined by <specref
-ref="semantics-style-inheritance-content"/>.</p>
-</div3>
-<div3 id="feature-styling-inheritance-region">
-<head>#styling-inheritance-region</head>
-<p>A TTML transformation processor supports the
-<code>#styling-inheritance</code> feature if it recognizes and is
-capable of transforming region style inheritance as defined by
-<specref ref="semantics-style-inheritance-region"/>.</p>
-<p>A TTML presentation processor supports the
-<code>#styling-inheritance-region</code> feature if it implements
-presentation semantic support for region style inheritance as defined by <specref
-ref="semantics-style-inheritance-region"/>.</p>
-</div3>
-<div3 id="feature-styling-inline">
-<head>#styling-inline</head>
-<p>A TTML transformation processor supports the
-<code>#styling-inline</code> feature if it recognizes and is capable
-of transforming inline style association as defined by <specref
-ref="semantics-style-association-inline"/>.</p>
-<p>A TTML presentation processor supports the
-<code>#styling-inline</code> feature if it implements presentation semantic support
-for inline style association as defined by <specref
-ref="semantics-style-association-inline"/>.</p>
-</div3>
-<div3 id="feature-styling-nested">
-<head>#styling-nested</head>
-<p>A TTML transformation processor supports the
-<code>#styling-nested</code> feature if it recognizes and is capable
-of transforming nested style association as defined by <specref
-ref="semantics-style-association-nested"/>.</p>
-<p>A TTML presentation processor supports the
-<code>#styling-nested</code> feature if it implements presentation semantic support
-for nested style association as defined by <specref
-ref="semantics-style-association-nested"/>.</p>
-</div3>
-<div3 id="feature-styling-referential">
-<head>#styling-referential</head>
-<p>A TTML transformation processor supports the
-<code>#styling-referential</code> feature if it recognizes and is capable
-of transforming referential style association as defined by <specref
-ref="semantics-style-association-referential"/>.</p>
-<p>A TTML presentation processor supports the
-<code>#styling-referential</code> feature if it implements presentation semantic
-support for referential style association as defined by <specref
-ref="semantics-style-association-referential"/>.</p>
-</div3>
-<div3 id="feature-subFrameRate">
-<head>#subFrameRate</head>
-<p>A TTML transformation processor supports the
-<code>#subFrameRate</code> feature if it recognizes and is capable of
-transforming the <loc
-href="#parameter-attribute-subFrameRate"><att>ttp:subFrameRate</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#subFrameRate</code> feature if it implements presentation semantic support
-for the <loc
-href="#parameter-attribute-subFrameRate"><att>ttp:subFrameRate</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-textAlign">
-<head>#textAlign</head>
-<p>A TTML transformation processor supports the
-<code>#textAlign</code> feature if it recognizes and is capable
-of transforming all defined values of the <loc
-href="#style-attribute-textAlign"><att>tts:textAlign</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#textAlign</code> feature if it implements presentation semantic support
-for all defined values of the <loc
-href="#style-attribute-textAlign"><att>tts:textAlign</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-textAlign-absolute">
-<head>#textAlign-absolute</head>
-<p>A TTML transformation processor supports the
-<code>#textAlign-absolute</code> feature if it recognizes and is
-capable of transforming the <code>left</code>, <code>center</code>,
-and <code>right</code> values of the <loc
-href="#style-attribute-textAlign"><att>tts:textAlign</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#textAlign-absolute</code> feature if it implements presentation semantic
-support for the <code>left</code>, <code>center</code>, and
-<code>right</code> values of the <loc
-href="#style-attribute-textAlign"><att>tts:textAlign</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-textAlign-relative">
-<head>#textAlign-relative</head>
-<p>A TTML transformation processor supports the
-<code>#textAlign-relative</code> feature if it recognizes and is
-capable of transforming the <code>start</code>, <code>center</code>,
-and <code>end</code> values of the <loc
-href="#style-attribute-textAlign"><att>tts:textAlign</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#textAlign-relative</code> feature if it implements presentation semantic
-support for the <code>start</code>, <code>center</code>, and
-<code>end</code> values of the <loc
-href="#style-attribute-textAlign"><att>tts:textAlign</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-textDecoration">
-<head>#textDecoration</head>
-<p>A TTML transformation processor supports the
-<code>#textDecoration</code> feature if it recognizes and is capable
-of transforming all defined values of the <loc
-href="#style-attribute-textDecoration"><att>tts:textDecoration</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#textDecoration</code> feature if it implements presentation semantic support
-for all defined values of the <loc
-href="#style-attribute-textDecoration"><att>tts:textDecoration</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-textDecoration-over">
-<head>#textDecoration-over</head>
-<p>A TTML transformation processor supports the
-<code>#textDecoration-over</code> feature if it recognizes and is
-capable of transforming the <code>overline</code> and
-<code>noOverline</code> values of the <loc
-href="#style-attribute-textDecoration"><att>tts:textDecoration</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#textDecoration-over</code> feature if it implements
-presentation semantic support for the <code>overline</code> and
-<code>noOverline</code> values of the <loc
-href="#style-attribute-textDecoration"><att>tts:textDecoration</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-textDecoration-through">
-<head>#textDecoration-through</head>
-<p>A TTML transformation processor supports the
-<code>#textDecoration-through</code> feature if it recognizes and is
-capable of transforming the <code>lineThrough</code> and
-<code>noLineThrough</code> values of the <loc
-href="#style-attribute-textDecoration"><att>tts:textDecoration</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#textDecoration-through</code> feature if it implements
-presentation semantic support for the <code>lineThrough</code> and
-<code>noLineThrough</code> values of the <loc
-href="#style-attribute-textDecoration"><att>tts:textDecoration</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-textDecoration-under">
-<head>#textDecoration-under</head>
-<p>A TTML transformation processor supports the
-<code>#textDecoration-under</code> feature if it recognizes and is
-capable of transforming the <code>underline</code> and
-<code>noUnderline</code> values of the <loc
-href="#style-attribute-textDecoration"><att>tts:textDecoration</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#textDecoration-under</code> feature if it implements
-presentation semantic support for the <code>underline</code> and
-<code>noUnderline</code> values of the <loc
-href="#style-attribute-textDecoration"><att>tts:textDecoration</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-textOutline">
-<head>#textOutline</head>
-<p>A TTML transformation processor supports the
-<code>#textOutline</code> feature if it recognizes and is capable of
-transforming the <loc
-href="#style-attribute-textOutline"><att>tts:textOutline</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#textOutline</code> feature if it implements presentation semantic support
-for the <loc
-href="#style-attribute-textOutline"><att>tts:textOutline</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-textOutline-blurred">
-<head>#textOutline-blurred</head>
-<p>A TTML transformation processor supports the
-<code>#textOutline-blurred</code> feature if it recognizes and is capable of
-transforming values of the <loc
-href="#style-attribute-textOutline"><att>tts:textOutline</att></loc>
-attribute that includes a blur radius specification.</p>
-<p>A TTML presentation processor supports the
-<code>#textOutline-blurred</code> feature if it implements presentation semantic support
-for values of the <loc
-href="#style-attribute-textOutline"><att>tts:textOutline</att></loc>
-attribute that includes a blur radius specification.</p>
-</div3>
-<div3 id="feature-textOutline-unblurred">
-<head>#textOutline-unblurred</head>
-<p>A TTML transformation processor supports the
-<code>#textOutline-unblurred</code> feature if it recognizes and is capable of
-transforming values of the <loc
-href="#style-attribute-textOutline"><att>tts:textOutline</att></loc>
-attribute that does not include a blur radius specification.</p>
-<p>A TTML presentation processor supports the
-<code>#textOutline-unblurred</code> feature if it implements presentation semantic support
-for values of the <loc
-href="#style-attribute-textOutline"><att>tts:textOutline</att></loc>
-attribute that does not include a blur radius specification.</p>
-</div3>
-<div3 id="feature-tickRate">
-<head>#tickRate</head>
-<p>A TTML transformation processor supports the
-<code>#tickRate</code> feature if it recognizes and is capable of
-transforming the <loc
-href="#parameter-attribute-tickRate"><att>ttp:tickRate</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#tickRate</code> feature if it implements presentation semantic support
-for the <loc
-href="#parameter-attribute-tickRate"><att>ttp:tickRate</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-timeBase-clock">
-<head>#timeBase-clock</head>
-<p>A TTML transformation processor supports the
-<code>#timeBase-clock</code> feature if it recognizes and is capable
-of transforming the <code>clock</code> value of the <loc
-href="#parameter-attribute-timeBase"><att>ttp:timeBase</att></loc>
-attribute and if it supports the <loc
-href="#feature-clockMode"><code>#clockMode</code></loc> feature.</p>
-<p>A TTML presentation processor supports the
-<code>#timeBase-clock</code> feature if it implements presentation
-semantic support for the <code>clock</code> value of the <loc
-href="#parameter-attribute-timeBase"><att>ttp:timeBase</att></loc>
-attribute and if it supports the <loc
-href="#feature-clockMode"><code>#clockMode</code></loc> feature.</p>
-</div3>
-<div3 id="feature-timeBase-media">
-<head>#timeBase-media</head>
-<p>A TTML transformation processor supports the
-<code>#timeBase-media</code> feature if it recognizes and is capable
-of transforming the <code>media</code> value of the <loc
-href="#parameter-attribute-timeBase"><att>ttp:timeBase</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#timeBase-media</code> feature if it implements presentation
-semantic support for the <code>media</code> value of the <loc
-href="#parameter-attribute-timeBase"><att>ttp:timeBase</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-timeBase-smpte">
-<head>#timeBase-smpte</head>
-<p>A TTML transformation processor supports the
-<code>#timeBase-smpte</code> feature if it recognizes and is capable
-of transforming the <code>smpte</code> value of the <loc
-href="#parameter-attribute-timeBase"><att>ttp:timeBase</att></loc>
-attribute and if it supports the <loc
-href="#feature-dropMode"><code>#dropMode</code></loc> feature.</p>
-<p>A TTML presentation processor supports the
-<code>#timeBase-smpte</code> feature if it implements presentation
-semantic support for the <code>smpte</code> value of the <loc
-href="#parameter-attribute-timeBase"><att>ttp:timeBase</att></loc>
-attribute and if it supports the <loc
-href="#feature-dropMode"><code>#dropMode</code></loc> feature.</p>
-</div3>
-<div3 id="feature-timeContainer">
-<head>#timeContainer</head>
-<p>A TTML transformation processor supports the
-<code>#timeContainer</code> feature if it recognizes and is capable of
-transforming the <loc
-href="#timing-attribute-timeContainer"><att>timeContainer</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#timeContainer</code> feature if it implements presentation semantic support
-for the <loc
-href="#timing-attribute-timeContainer"><att>timeContainer</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-time-clock">
-<head>#time-clock</head>
-<p>A TTML transformation processor supports the
-<code>#time-clock</code> feature if it recognizes and is capable of
-transforming all values of the <loc
-href="#timing-value-timeExpression"><timeExpression></loc> that
-satisfy the following subset of time expression syntax:</p>
-<eg xml:space="preserve">
-<timeExpression>
- : hours ":" minutes ":" seconds ( fraction )?
-</eg>
-<p>A TTML presentation processor supports the
-<code>#time-clock</code> feature if it implements presentation
-semantic support for the same syntax specified above.</p>
-</div3>
-<div3 id="feature-time-clock-with-frames">
-<head>#time-clock-with-frames</head>
-<p>A TTML transformation processor supports the
-<code>#time-clock-with-frames</code> feature if it supports the
-<loc href="#feature-frameRate"><code>#frameRate</code></loc>,
-<loc href="#feature-frameRateMultiplier"><code>#frameRateMultiplier</code></loc>, and
-<loc href="#feature-subFrameRate"><code>#subFrameRate</code></loc> features
-and if it recognizes and is capable of
-transforming all values of the <loc
-href="#timing-value-timeExpression"><timeExpression></loc> that
-satisfy the following subset of time expression syntax:</p>
-<eg xml:space="preserve">
-<timeExpression>
- : hours ":" minutes ":" seconds ( fraction | ":" frames ( "." sub-frames )? )?
-</eg>
-<p>A TTML presentation processor supports the
-<code>#time-clock-with-frames</code> feature if it implements
-presentation semantic support for the same features and syntax
-specified above.</p>
-</div3>
-<div3 id="feature-time-offset">
-<head>#time-offset</head>
-<p>A TTML transformation processor supports the
-<code>#time-offset</code> feature if it recognizes and is capable of
-transforming all values of the <loc
-href="#timing-value-timeExpression"><timeExpression></loc> that
-satisfy the following subset of time expression syntax:</p>
-<eg xml:space="preserve">
-<timeExpression>
- : time-count fraction? ( "h" | "m" | "s" | "ms" )
-</eg>
-<p>A TTML presentation processor supports the
-<code>#time-offset</code> feature if it implements presentation
-semantic support for the same syntax specified above.</p>
-</div3>
-<div3 id="feature-time-offset-with-frames">
-<head>#time-offset-with-frames</head>
-<p>A TTML transformation processor supports the
-<code>#time-offset-with-frames</code> feature if it supports the
-<loc href="#feature-frameRate"><code>#frameRate</code></loc>,
-<loc href="#feature-frameRateMultiplier"><code>#frameRateMultiplier</code></loc>, and
-<loc href="#feature-subFrameRate"><code>#subFrameRate</code></loc> features
-and if it recognizes and is capable of
-transforming all values of the <loc
-href="#timing-value-timeExpression"><timeExpression></loc> that
-satisfy the following subset of time expression syntax:</p>
-<eg xml:space="preserve">
-<timeExpression>
- : time-count fraction? "f"
-</eg>
-<p>A TTML presentation processor supports the
-<code>#time-offset-with-frames</code> feature if it implements
-presentation semantic support for the same features and syntax
-specified above.</p>
-</div3>
-<div3 id="feature-time-offset-with-ticks">
-<head>#time-offset-with-ticks</head>
-<p>A TTML transformation processor supports the
-<code>#time-offset-with-ticks</code> feature if it supports the
-<loc href="#feature-tickRate"><code>#tickRate</code></loc> feature
-and if it recognizes and is capable of
-transforming all values of the <loc
-href="#timing-value-timeExpression"><timeExpression></loc> that
-satisfy the following subset of time expression syntax:</p>
-<eg xml:space="preserve">
-<timeExpression>
- : time-count fraction? "t"
-</eg>
-<p>A TTML presentation processor supports the
-<code>#time-offset-with-ticks</code> feature if it implements presentation
-semantic support for the same features and syntax specified above.</p>
-</div3>
-<div3 id="feature-timing">
-<head>#timing</head>
-<p>A TTML transformation processor supports the <code>#timing</code>
-feature if it recognizes and is capable of transforming the following
-vocabulary defined by <specref ref="timing"/>:</p>
-<ulist>
-<item><p><loc href="#timing-attribute-begin">@<att>begin</att></loc></p></item>
-<item><p><loc href="#timing-attribute-dur">@<att>dur</att></loc></p></item>
-<item><p><loc href="#timing-attribute-end">@<att>end</att></loc></p></item>
-</ulist>
-<p>A TTML presentation processor supports the <code>#timing</code>
-feature if it implements presentation semantic support for the
-same vocabulary enumerated above.</p>
-</div3>
-<div3 id="feature-transformation">
-<head>#transformation</head>
-<p>A TTML processor supports the
-<code>#transformation</code> feature if it
-(1) satisfies the generic processor criteria defined by
-<specref ref="conformance-generic-processor"/> and
-(2) implements the transformation semantics of the following features:</p>
-<ulist>
-<item><p><loc href="#content"><code>#content</code></loc></p></item>
-<item><p><loc href="#feature-core"><code>#core</code></loc></p></item>
-<item><p><loc href="#feature-profile"><code>#profile</code></loc></p></item>
-<item><p><loc href="#feature-structure"><code>#structure</code></loc></p></item>
-<item><p><loc href="#feature-time-offset"><code>#time-offset</code></loc></p></item>
-<item><p><loc href="#timing"><code>#timing</code></loc></p></item>
-</ulist>
-</div3>
-<div3 id="feature-unicodeBidi">
-<head>#unicodeBidi</head>
-<p>A TTML transformation processor supports the
-<code>#unicodeBidi</code> feature if it recognizes and is capable of
-transforming all defined values of the <loc
-href="#style-attribute-unicodeBidi"><att>tts:unicodeBidi</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#unicodeBidi</code> feature if it implements presentation semantic support
-for all defined values of the <loc
-href="#style-attribute-unicodeBidi"><att>tts:unicodeBidi</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-visibility">
-<head>#visibility</head>
-<p>A TTML transformation processor supports the
-<code>#visibility</code> feature if it recognizes and is capable
-of transforming all defined values of the <loc
-href="#style-attribute-visibility"><att>tts:visibility</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#visibility</code> feature if it implements presentation semantic support
-for all defined values of the <loc
-href="#style-attribute-visibility"><att>tts:visibility</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-visibility-block">
-<head>#visibility-block</head>
-<p>A TTML transformation processor supports the
-<code>#visibility-block</code> feature if it recognizes and is
-capable of transforming all defined values of the <loc
-href="#style-attribute-visibility"><att>tts:visibility</att></loc>
-attribute when applied to a content element that would generate a
-block area during presentation processing.</p>
-<p>A TTML presentation processor supports the
-<code>#visibility-block</code> feature if it implements presentation semantic
-support for all defined values of the <loc
-href="#style-attribute-visibility"><att>tts:visibility</att></loc>
-attribute when applied to a content element that generates a
-block area.</p>
-</div3>
-<div3 id="feature-visibility-inline">
-<head>#visibility-inline</head>
-<p>A TTML transformation processor supports the
-<code>#visibility-inline</code> feature if it recognizes and is
-capable of transforming all defined values of the <loc
-href="#style-attribute-visibility"><att>tts:visibility</att></loc>
-attribute when applied to a content element that would generate an
-inline area during presentation processing.</p>
-<p>A TTML presentation processor supports the
-<code>#visibility-inline</code> feature if it implements presentation semantic
-support for all defined values of the <loc
-href="#style-attribute-visibility"><att>tts:visibility</att></loc>
-attribute when applied to a content element that generates an
-inline area.</p>
-</div3>
-<div3 id="feature-visibility-region">
-<head>#visibility-region</head>
-<p>A TTML transformation processor supports the
-<code>#visibility-region</code> feature if it recognizes and is
-capable of transforming all defined values of the <loc
-href="#style-attribute-visibility"><att>tts:visibility</att></loc>
-attribute when applied to a <loc
-href="#layout-vocabulary-region"><el>region</el></loc> element.</p>
-<p>A TTML presentation processor supports the
-<code>#visibility-region</code> feature if it implements presentation semantic
-support for all defined values of the <loc
-href="#style-attribute-visibility"><att>tts:visibility</att></loc>
-attribute when applied to a <loc
-href="#layout-vocabulary-region"><el>region</el></loc> element.</p>
-</div3>
-<div3 id="feature-wrapOption">
-<head>#wrapOption</head>
-<p>A TTML transformation processor supports the
-<code>#wrapOption</code> feature if it recognizes and is capable
-of transforming all defined values of the <loc
-href="#style-attribute-wrapOption"><att>tts:wrapOption</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#wrapOption</code> feature if it implements presentation semantic support
-for all defined values of the <loc
-href="#style-attribute-wrapOption"><att>tts:wrapOption</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-writingMode">
-<head>#writingMode</head>
-<p>A TTML transformation processor supports the
-<code>#writingMode</code> feature if it recognizes and is capable
-of transforming all defined values of the <loc
-href="#style-attribute-writingMode"><att>tts:writingMode</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#writingMode</code> feature if it implements presentation semantic support
-for all defined values of the <loc
-href="#style-attribute-writingMode"><att>tts:writingMode</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-writingMode-vertical">
-<head>#writingMode-vertical</head>
-<p>A TTML transformation processor supports the
-<code>#writingMode-vertical</code> feature if it recognizes and is
-capable of transforming the <code>tbrl</code>, <code>tblr</code>, and
-<code>tb</code> values of the <loc
-href="#style-attribute-writingMode"><att>tts:writingMode</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#writingMode-vertical</code> feature if it implements presentation semantic
-support for the <code>tbrl</code>, <code>tblr</code>, and
-<code>tb</code> values of the <loc
-href="#style-attribute-writingMode"><att>tts:writingMode</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-writingMode-horizontal">
-<head>#writingMode-horizontal</head>
-<p>A TTML transformation processor supports the
-<code>#writingMode-horizontal</code> feature if it recognizes and is
-capable of transforming the <code>lrtb</code>, <code>rltb</code>,
-<code>lr</code> and <code>rl</code> values of the <loc
-href="#style-attribute-writingMode"><att>tts:writingMode</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#writingMode-horizontal</code> feature if it implements presentation semantic
-support for the <code>lrtb</code>, <code>rltb</code>, <code>lr</code>
-and <code>rl</code> values of the <loc
-href="#style-attribute-writingMode"><att>tts:writingMode</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-writingMode-horizontal-lr">
-<head>#writingMode-horizontal-lr</head>
-<p>A TTML transformation processor supports the
-<code>#writingMode-horizontal</code> feature if it recognizes and is
-capable of transforming the <code>lrtb</code> and <code>lr</code>
-values of the <loc
-href="#style-attribute-writingMode"><att>tts:writingMode</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#writingMode-horizontal-lr</code> feature if it implements presentation semantic
-support for the <code>lrtb</code> and <code>lr</code> values of the
-<loc
-href="#style-attribute-writingMode"><att>tts:writingMode</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-writingMode-horizontal-rl">
-<head>#writingMode-horizontal-rl</head>
-<p>A TTML transformation processor supports the
-<code>#writingMode-horizontal</code> feature if it recognizes and is
-capable of transforming the <code>rltb</code> and <code>rl</code>
-values of the <loc
-href="#style-attribute-writingMode"><att>tts:writingMode</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#writingMode-horizontal-rl</code> feature if it implements presentation semantic
-support for the <code>rltb</code> and <code>rl</code> values of the
-<loc
-href="#style-attribute-writingMode"><att>tts:writingMode</att></loc>
-attribute.</p>
-</div3>
-<div3 id="feature-zIndex">
-<head>#zIndex</head>
-<p>A TTML transformation processor supports the
-<code>#zIndex</code> feature if it recognizes and is capable of
-transforming the <loc
-href="#style-attribute-zIndex"><att>tts:zIndex</att></loc>
-attribute.</p>
-<p>A TTML presentation processor supports the
-<code>#zIndex</code> feature if it implements presentation semantic support for
-the <loc
-href="#style-attribute-zIndex"><att>tts:zIndex</att></loc>
-attribute.</p>
-</div3>
-</div2>
-<div2 id="feature-support">
-<head>Feature Support</head>
-<p>The following table, <specref ref="feature-support-table"/>,
-enumerates every defined feature designation (expressed without the TT
-Feature Namespace), and, for each designated feature, specifies
-whether the feature is mandatory (M) or optional (O) for
-transformation and presentation processors.</p>
-<table id="feature-support-table" role="common">
-<caption>Table E-1 – Feature Support</caption>
-<col width="60%"/>
-<col width="20%"/>
-<col width="20%"/>
-<tbody>
-<tr>
-<td><phrase role="strong">Feature</phrase></td>
-<td><phrase role="strong">Transformation</phrase></td>
-<td><phrase role="strong">Presentation</phrase></td>
-</tr>
-<tr>
-<td><loc href="#feature-animation"><code>#animation</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-backgroundColor"><code>#backgroundColor</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-backgroundColor-block"><code>#backgroundColor-block</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-backgroundColor-inline"><code>#backgroundColor-inline</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-backgroundColor-region"><code>#backgroundColor-region</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-bidi"><code>#bidi</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-cellResolution"><code>#cellResolution</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-clockMode"><code>#clockMode</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-clockMode-gps"><code>#clockMode-gps</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-clockMode-local"><code>#clockMode-local</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-clockMode-utc"><code>#clockMode-utc</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-color"><code>#color</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-content"><code>#content</code></loc></td>
-<td>M</td>
-<td>M</td>
-</tr>
-<tr>
-<td><loc href="#feature-core"><code>#core</code></loc></td>
-<td>M</td>
-<td>M</td>
-</tr>
-<tr>
-<td><loc href="#feature-direction"><code>#direction</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-display"><code>#display</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-display-block"><code>#display-block</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-display-inline"><code>#display-inline</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-display-region"><code>#display-region</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-displayAlign"><code>#displayAlign</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-dropMode"><code>#dropMode</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-dropMode-dropNTSC"><code>#dropMode-dropNTSC</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-dropMode-dropPAL"><code>#dropMode-dropPAL</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-dropMode-nonDrop"><code>#dropMode-nonDrop</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-extent"><code>#extent</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-extent-region"><code>#extent-region</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-extent-root"><code>#extent-root</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-fontFamily"><code>#fontFamily</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-fontFamily-generic"><code>#fontFamily-generic</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-fontFamily-non-generic"><code>#fontFamily-non-generic</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-fontSize"><code>#fontSize</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-fontSize-anamorphic"><code>#fontSize-anamorphic</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-fontSize-isomorphic"><code>#fontSize-isomorphic</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-fontStyle"><code>#fontStyle</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-fontStyle-italic"><code>#fontStyle-italic</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-fontStyle-oblique"><code>#fontStyle-oblique</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-fontWeight"><code>#fontWeight</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-fontWeight-bold"><code>#fontWeight-bold</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-frameRate"><code>#frameRate</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-frameRateMultiplier"><code>#frameRateMultiplier</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-layout"><code>#layout</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-length"><code>#length</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-length-cell"><code>#length-cell</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-length-em"><code>#length-em</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-length-integer"><code>#length-integer</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-length-negative"><code>#length-negative</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-length-percentage"><code>#length-percentage</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-length-pixel"><code>#length-pixel</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-length-positive"><code>#length-positive</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-length-real"><code>#length-real</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-lineBreak-uax14"><code>#lineBreak-uax14</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-lineHeight"><code>#lineHeight</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-markerMode"><code>#markerMode</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-markerMode-continuous"><code>#markerMode-continuous</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-markerMode-discontinuous"><code>#markerMode-discontinuous</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-metadata"><code>#metadata</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-nested-div"><code>#nested-div</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-nested-span"><code>#nested-span</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-opacity"><code>#opacity</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-origin"><code>#origin</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-overflow"><code>#overflow</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-overflow-visible"><code>#overflow-visible</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-padding"><code>#padding</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-padding-1"><code>#padding-1</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-padding-2"><code>#padding-2</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-padding-3"><code>#padding-3</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-padding-4"><code>#padding-4</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-pixelAspectRatio"><code>#pixelAspectRatio</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-presentation"><code>#presentation</code></loc></td>
-<td>O</td>
-<td>M</td>
-</tr>
-<tr>
-<td><loc href="#feature-profile"><code>#profile</code></loc></td>
-<td>M</td>
-<td>M</td>
-</tr>
-<tr>
-<td><loc href="#feature-showBackground"><code>#showBackground</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-structure"><code>#structure</code></loc></td>
-<td>M</td>
-<td>M</td>
-</tr>
-<tr>
-<td><loc href="#feature-styling"><code>#styling</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-styling-chained"><code>#styling-chained</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-styling-inheritance-content"><code>#styling-inheritance-content</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-styling-inheritance-region"><code>#styling-inheritance-region</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-styling-inline"><code>#styling-inline</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-styling-nested"><code>#styling-nested</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-styling-referential"><code>#styling-referential</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-subFrameRate"><code>#subFrameRate</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-textAlign"><code>#textAlign</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-textAlign-absolute"><code>#textAlign-absolute</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-textAlign-relative"><code>#textAlign-relative</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-textDecoration"><code>#textDecoration</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-textDecoration-over"><code>#textDecoration-over</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-textDecoration-through"><code>#textDecoration-through</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-textDecoration-under"><code>#textDecoration-under</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-textOutline"><code>#textOutline</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-textOutline-blurred"><code>#textOutline-blurred</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-textOutline-unblurred"><code>#textOutline-unblurred</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-tickRate"><code>#tickRate</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-timeBase-clock"><code>#timeBase-clock</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-timeBase-media"><code>#timeBase-media</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-timeBase-smpte"><code>#timeBase-smpte</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-timeContainer"><code>#timeContainer</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-time-clock"><code>#time-clock</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-time-clock-with-frames"><code>#time-clock-with-frames</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-time-offset"><code>#time-offset</code></loc></td>
-<td>M</td>
-<td>M</td>
-</tr>
-<tr>
-<td><loc href="#feature-time-offset-with-frames"><code>#time-offset-with-frames</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-time-offset-with-ticks"><code>#time-offset-with-ticks</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-timing"><code>#timing</code></loc></td>
-<td>M</td>
-<td>M</td>
-</tr>
-<tr>
-<td><loc href="#feature-transformation"><code>#transformation</code></loc></td>
-<td>M</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-unicodeBidi"><code>#unicodeBidi</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-visibility"><code>#visibility</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-visibility-block"><code>#visibility-block</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-visibility-inline"><code>#visibility-inline</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-visibility-region"><code>#visibility-region</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-wrapOption"><code>#wrapOption</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-writingMode"><code>#writingMode</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-writingMode-vertical"><code>#writingMode-vertical</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-writingMode-horizontal"><code>#writingMode-horizontal</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-writingMode-horizontal-lr"><code>#writingMode-horizontal-lr</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-writingMode-horizontal-rl"><code>#writingMode-horizontal-rl</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-<tr>
-<td><loc href="#feature-zIndex"><code>#zIndex</code></loc></td>
-<td>O</td>
-<td>O</td>
-</tr>
-</tbody>
-</table>
-<p>For the sake of convenience, the following table,
-<specref ref="feature-transformation-mandatory-table"/>, enumerates all
-mandatory features for a TTML Transformation Processor, providing additional
-comments to summarize the context of usage or the nature of the feature.
-The TTML Profile Definition Document that defines the corresponding
-DFXP Transformation Profile is specified in
-<specref ref="profile-dfxp-transformation"/>.
-</p>
-<table id="feature-transformation-mandatory-table" role="common">
-<caption>Table E-2 – Mandatory Features - Transformation</caption>
-<col width="60%"/>
-<col width="40%"/>
-<tbody>
-<tr>
-<td><phrase role="strong">Feature</phrase></td>
-<td><phrase role="strong">Comments</phrase></td>
-</tr>
-<tr>
-<td><loc href="#feature-content"><code>#content</code></loc></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="#content-vocabulary-span"><el>span</el></loc>,
-<loc href="#content-vocabulary-br"><el>br</el></loc>
-</td>
-</tr>
-<tr>
-<td><loc href="#feature-core"><code>#core</code></loc></td>
-<td>
-<loc href="#content-attribute-id">@<att>xml:id</att></loc>,
-<loc href="#content-attribute-id">@<att>xml:lang</att></loc>,
-<loc href="#content-attribute-id">@<att>xml:space</att></loc>
-</td>
-</tr>
-<tr>
-<td><loc href="#feature-profile"><code>#profile</code></loc></td>
-<td></td>
-</tr>
-<tr>
-<td><loc href="#feature-structure"><code>#structure</code></loc></td>
-<td>
-<loc href="#document-structure-vocabulary-tt"><el>tt</el></loc>,
-<loc href="#document-structure-vocabulary-head"><el>head</el></loc>
-</td>
-</tr>
-
-<tr>
-<td><loc href="#feature-time-offset"><code>#time-offset</code></loc></td>
-<td></td>
-</tr>
-<tr>
-<td><loc href="#feature-timing"><code>#timing</code></loc></td>
-<td>
-<loc href="#timing-attribute-begin">@<att>begin</att></loc>,
-<loc href="#timing-attribute-dur">@<att>dur</att></loc>,
-<loc href="#timing-attribute-end">@<att>end</att></loc>
-</td>
-</tr>
-<tr>
-<td><loc href="#feature-transformation"><code>#transformation</code></loc></td>
-<td></td>
-</tr>
-</tbody>
-</table>
-<p>For the sake of convenience, the following table,
-<specref ref="feature-presentation-mandatory-table"/>, enumerates all
-mandatory features for a TTML Presentation Processor, providing additional
-comments to summarize the context of usage or the nature of the feature.
-The TTML Profile Definition Document that defines the corresponding
-DFXP Presentation Profile is specified in
-<specref ref="profile-dfxp-presentation"/>.
-</p>
-<table id="feature-presentation-mandatory-table" role="common">
-<caption>Table E-3 – Mandatory Features - Presentation</caption>
-<col width="60%"/>
-<col width="40%"/>
-<tbody>
-<tr>
-<td><phrase role="strong">Feature</phrase></td>
-<td><phrase role="strong">Comments</phrase></td>
-</tr>
-<tr>
-<td><loc href="#feature-content"><code>#content</code></loc></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="#content-vocabulary-span"><el>span</el></loc>,
-<loc href="#content-vocabulary-br"><el>br</el></loc>
-</td>
-</tr>
-<tr>
-<td><loc href="#feature-core"><code>#core</code></loc></td>
-<td>
-<loc href="#content-attribute-id">@<att>xml:id</att></loc>,
-<loc href="#content-attribute-id">@<att>xml:lang</att></loc>,
-<loc href="#content-attribute-id">@<att>xml:space</att></loc>
-</td>
-</tr>
-<tr>
-<td><loc href="#feature-profile"><code>#profile</code></loc></td>
-<td></td>
-</tr>
-<tr>
-<td><loc href="#feature-presentation"><code>#presentation</code></loc></td>
-<td></td>
-</tr>
-<tr>
-<td><loc href="#feature-structure"><code>#structure</code></loc></td>
-<td>
-<loc href="#document-structure-vocabulary-tt"><el>tt</el></loc>,
-<loc href="#document-structure-vocabulary-head"><el>head</el></loc>
-</td>
-</tr>
-<tr>
-<td><loc href="#feature-time-offset"><code>#time-offset</code></loc></td>
-<td></td>
-</tr>
-<tr>
-<td><loc href="#feature-timing"><code>#timing</code></loc></td>
-<td>
-<loc href="#timing-attribute-begin">@<att>begin</att></loc>,
-<loc href="#timing-attribute-dur">@<att>dur</att></loc>,
-<loc href="#timing-attribute-end">@<att>end</att></loc>
-</td>
-</tr>
-</tbody>
-</table>
-</div2>
-</div1>
-<div1 id="extensions">
-<head>Extensions</head>
-<p><emph>This appendix is normative.</emph></p>
-<p>This appendix specifies the syntactic form of extension designations, which are
-used to express authorial intent regarding the support for extension
-mechanisms in a TTML processor.</p>
-<div2 id="extension-designations">
-<head>Extension Designations</head>
-<p>An extension designation is expressed as a string that adheres to the following
-form:</p>
-<eg xml:space="preserve">
-extension-designation
- : extension-namespace designation
-
-extension-namespace
- : <emph>TT Extension Namespace</emph> // http://www.w3.org/ns/ttml/extension/
- | <emph>Other Extension Namespace</emph> // expressed as an absolute URI
-
-designation
- : "#" token-char+
-
-token-char
- : { XML NameChar } // XML 1.1 Production [4a]
-</eg>
-<p>If the extension namespace of an extension designation is the TT
-Extension Namespace, then all values of the following
-<code>designation</code> token are reserved for future
-standardization.</p>
-<p>If the extension namespace of an extension designation is not the
-TT Extension Namespace, i.e., is an <emph>Other Extension Namespace</emph>,
-then the extension namespace must be expressed as an absolute URI
-capable of serving as a base URI used in combination with a
-<code>designation</code> token that takes the form of a fragment
-identifier.</p>
-</div2>
-</div1>
-<div1 id="profiles">
-<head>Profiles</head>
-<p><emph>This appendix is normative.</emph></p>
-<p>This appendix specifies the following standard TTML profiles:</p>
-<ulist>
-<item><p><specref ref="profile-dfxp-transformation"/></p></item>
-<item><p><specref ref="profile-dfxp-presentation"/></p></item>
-<item><p><specref ref="profile-dfxp-full"/></p></item>
-</ulist>
-<p>Each TTML profile is defined in terms of a TTML Profile Definition Document,
-which is expressed as an XML document wherein the root element adheres to
-<specref ref="parameter-vocabulary-profile"/>.</p>
-<div2 id="profile-dfxp-transformation">
-<head>DFXP Transformation Profile</head>
-<p>The DFXP Transformation Profile is intended to be used to
-express minimum compliance for transformation processing.</p>
-<eg xml:space="preserve">&profile-dfxp-transformation;</eg>
-</div2>
-<div2 id="profile-dfxp-presentation">
-<head>DFXP Presentation Profile</head>
-<p>The DFXP Presentation Profile is intended to be used to
-express minimum compliance for presentation processing.</p>
-<eg xml:space="preserve">&profile-dfxp-presentation;</eg>
-</div2>
-<div2 id="profile-dfxp-full">
-<head>DFXP Full Profile</head>
-<p>The DFXP Full Profile is intended to be used to
-express maximum compliance for both transformation and presentation processing.</p>
-<eg xml:space="preserve">&profile-dfxp-full;</eg>
-</div2>
-</div1>
-<div1 id="references">
-<head>References</head>
-<p><emph>This appendix is normative.</emph></p>
-<blist>
-<bibl id="css2" key="CSS2">Bert Bos et al.,
-<titleref
-href="http://www.w3.org/TR/1998/REC-CSS2-19980512/">Cascading
-Style Sheets, Level 2</titleref>, W3C Recommendation, 12
-May 1998. (See
-<xspecref href="http://www.w3.org/TR/1998/REC-CSS2-19980512/">http://www.w3.org/TR/1998/REC-CSS2-19980512/</xspecref>.)
-</bibl>
-<bibl id="gps" key="GPS">
-<titleref href="http://tycho.usno.navy.mil/gpsinfo.html">Global
-Positioning System</titleref>, US Naval Observatory.
-(See
-<xspecref href="http://tycho.usno.navy.mil/gpsinfo.html">http://tycho.usno.navy.mil/gpsinfo.html</xspecref>.)
-</bibl>
-<bibl id="mime-media" key="MIME">Ned Freed and Nathaniel Borenstein,
-<titleref
-href="http://www.rfc-editor.org/rfc/rfc2046.txt">Multipurpose Internet
-Mail Extensions (MIME) Part Two: Media Types</titleref>,
-RFC 2046, November 1996, IETF.(See
-<xspecref href="http://www.rfc-editor.org/rfc/rfc2046.txt">http://www.rfc-editor.org/rfc/rfc2046.txt</xspecref>.)
-</bibl>
-<bibl id="rng" key="RELAX NG">ISO/IEC 19757-2,
-<titleref href="http://www.iso.org/">Information technology – Document
-Schema Definition Language (DSDL) – Part 2: Regular-grammar-based validation – RELAX NG</titleref>,
-International Organization for Standardization (ISO).
-</bibl>
-<bibl id="smil21" key="SMIL 2.1">Dick Bultermann, et al.,
-<titleref href="http://www.w3.org/TR/2005/REC-SMIL2-20051213/">Synchronized
-Multimedia Integration Language (SMIL 2.1)</titleref>,
-W3C Recommendation, 13 December 2005. (See
-<xspecref href="http://www.w3.org/TR/2005/REC-SMIL2-20051213/">http://www.w3.org/TR/2005/REC-SMIL2-20051213/</xspecref>.)
-</bibl>
-<bibl id="smpte12m" key="SMPTE 12M">ANSI/SMPTE 12M,
-<titleref href="http://www.smpte.org/">Television, Audio and Film –
-Time and Control Code</titleref>, SMPTE Standard.
-</bibl>
-<bibl id="srgb" key="SRGB">IEC 61966-2-1,
-<titleref
-href="http://www.iec.ch/">Multimedia
-systems and equipment – Colour measurement and management
-– Part 2-1: Colour management – Default RGB colour space
-– sRGB</titleref>, International Electrotechnical
-Commission (IEC).
-</bibl>
-<bibl id="uaag" key="UAAG">Ian Jacobs, Jon Gunderson, and Eric Hansen, Eds.,
-<titleref href="http://www.w3.org/TR/2002/REC-UAAG10-20021217/">User
-Agent Accessibility Guidelines 1.0</titleref>, W3C Recommendation, 17
-December 2002. (See
-<xspecref href="http://www.w3.org/TR/2002/REC-UAAG10-20021217/">http://www.w3.org/TR/2002/REC-UAAG10-20021217/</xspecref>.)
-</bibl>
-<bibl id="utc" key="UTC">
-Recommendation TF.460,
-<titleref
-href="http://www.itu.int/">Standard-Frequency and Time-Signal
-Emissions</titleref>, International
-Telecommunciations Union, Radio Sector (ITU-R).
-</bibl>
-<bibl id="uax14" key="UAX14">Asmus Freytag, <titleref
-href="http://www.unicode.org/reports/tr14/tr14-17.html">Line Breaking
-Properties</titleref>, Unicode Consortium, 29 August 2005. (See
-<xspecref
-href="http://www.unicode.org/reports/tr14/tr14-17.html">http://www.unicode.org/reports/tr14/tr14-17.html</xspecref>.)
-</bibl>
-<bibl id="wcag" key="WCAG">Ben Caldwell, et al., Eds.,
-<titleref href="http://www.w3.org/TR/2008/REC-WCAG20-20081211/">Web
-Content Accessibility Guidelines (WCAG) 2.0</titleref>, W3C Recommendation, 11 December 2008. (See
-<xspecref href="http://www.w3.org/TR/2008/REC-WCAG20-20081211/">http://www.w3.org/TR/2008/REC-WCAG20-20081211/</xspecref>.)
-</bibl>
-<bibl id="xml10" key="XML 1.0">Tim Bray, et al.
-<titleref href="http://www.w3.org/TR/2008/REC-xml-20081126/">Extensible Markup Language (XML)
-1.0 (Fifth Edition)</titleref>, W3C Recommendation, 26 November 2008. (See
-<xspecref href="http://www.w3.org/TR/2008/REC-xml-20081126/">http://www.w3.org/TR/2008/REC-xml-20081126/</xspecref>.)
-</bibl>
-<bibl id="xml11" key="XML 1.1">Tim Bray, et al.
-<titleref href="http://www.w3.org/TR/2006/REC-xml11-20060816/">Extensible Markup Language (XML)
-1.1 (Second Edition)</titleref>, W3C Recommendation, 16 August 2006, edited in place 29 September 2006. (See
-<xspecref href="http://www.w3.org/TR/2006/REC-xml11-20060816/">http://www.w3.org/TR/2006/REC-xml11-20060816/</xspecref>.)
-</bibl>
-<bibl id="xmlbase" key="XML Base">Jonathan Marsh and Richard Tobin, Eds.,
-<titleref href="http://www.w3.org/TR/2009/REC-xmlbase-20090128/">XML Base (Second Edition)</titleref>,
-W3C Recommendation, 28 January 2009. (See
-<xspecref href="http://www.w3.org/TR/2009/REC-xmlbase-20090128/">http://www.w3.org/TR/2009/REC-xmlbase-20090128/</xspecref>.)
-</bibl>
-<bibl id="xmlid" key="XML ID">Jonathan Marsh, Daniel Veillard, Norman Walsh, Eds.,
-<titleref href="http://www.w3.org/TR/2005/REC-xml-id-20050909/">xml:id Version 1.0</titleref>,
-W3C Recommendation, 09 September 2005. (See
-<xspecref href="http://www.w3.org/TR/2005/REC-xml-id-20050909/">http://www.w3.org/TR/2005/REC-xml-id-20050909/</xspecref>.)
-</bibl>
-<bibl id="xml-media" key="XML Media">Makato Murata, Simon St. Laurent,
-Kan Khon, Eds., <titleref
-href="http://www.rfc-editor.org/rfc/rfc3023.txt">XML Media Types</titleref>,
-RFC 3023, January 2001, IETF.(See
-<xspecref
-href="http://www.rfc-editor.org/rfc/rfc3023.txt">http://www.rfc-editor.org/rfc/rfc3023.txt</xspecref>.)
-</bibl>
-<bibl id="infoset" key="XML InfoSet">John Cowan and Richard Tobin, Eds.,
-<titleref href="http://www.w3.org/TR/2004/REC-xml-infoset-20040204/">XML Information Set (Second Edition)</titleref>,
-W3C Recommendation, 04 February 2004. (See
-<xspecref href="http://www.w3.org/TR/2004/REC-xml-infoset-20040204/">http://www.w3.org/TR/2004/REC-xml-infoset-20040204/</xspecref>.)
-</bibl>
-<bibl id="rfc3023" key="XML Media Types">Makato Murata, et al.,
-<titleref
-href="http://www.rfc-editor.org/rfc/rfc3023.txt">XML Media Types</titleref>,
-RFC 3023, January 2001, IETF.(See
-<xspecref
-href="http://www.rfc-editor.org/rfc/rfc3023.txt">http://www.rfc-editor.org/rfc/rfc3023.txt</xspecref>.)
-</bibl>
-<bibl id="xmlns10" key="XML Namespaces 1.0">Tim Bray, et al.
-<titleref href="http://www.w3.org/TR/2009/REC-xml-names-20091208/">Namespaces
-in XML 1.0 (Third Edition)</titleref>, W3C Recommendation, 8 December 2009. (See
-<xspecref href="http://www.w3.org/TR/2009/REC-xml-names-20091208/">http://www.w3.org/TR/2009/REC-xml-names-20091208/</xspecref>.)
-</bibl>
-<bibl id="xsd-1" key="XML Schema Part 1">Henry S. Thompson, David Beech,
-Murray Maloney, Noah Mendelsohn, Eds.,
-<titleref href="http://www.w3.org/TR/xmlschema-1/">XML Schema Part 1: Structures</titleref>,
-W3C Recommendation, 28 October 2004. (See
-<xspecref href="http://www.w3.org/TR/xmlschema-1/">http://www.w3.org/TR/xmlschema-1/</xspecref>.)
-</bibl>
-<bibl id="xsd-2" key="XML Schema Part 2">Paul Biron and Ashok Malhotra,
-<titleref href="http://www.w3.org/TR/xmlschema-2/">XML Schema Part 2: Datatypes</titleref>,
-W3C Recommendation, 28 October 2004. (See
-<xspecref href="http://www.w3.org/TR/xmlschema-2/">http://www.w3.org/TR/xmlschema-2/</xspecref>.)
-</bibl>
-<bibl id="xsl11" key="XSL 1.1">Anders Berglund,
-<titleref href="http://www.w3.org/TR/2006/REC-xsl11-20061205/">Extensible Stylesheet Language (XSL) Version 1.1</titleref>,
-W3C Recommendation, 05 December 2006. (See
-<xspecref href="http://www.w3.org/TR/2006/REC-xsl11-20061205/">http://www.w3.org/TR/2006/REC-xsl11-20061205/</xspecref>.)
-</bibl>
-</blist>
-</div1>
-<inform-div1 id="other-references">
-<head>Other References</head>
-<blist>
-<bibl id="ccreq" key="CC-DECODER-REQ"><titleref
-href="http://edocket.access.gpo.gov/cfr_2005/octqtr/47cfr15.119.htm">Closed Caption Decoder
-Requirements for Analog Television</titleref>,
-United States Code of Federal Regulations, Title 47, Volume 1, Part 15, § 15.119. (See
-<xspecref href="http://edocket.access.gpo.gov/cfr_2005/octqtr/47cfr15.119.htm">http://edocket.access.gpo.gov/cfr_2005/octqtr/47cfr15.119.htm</xspecref>.)
-</bibl>
-<bibl id="cea608c" key="CEA-608-C">
-EIA/CEA-608-C,
-<titleref href="http://www.ce.org/">Line 21 Data
-Services</titleref>, EIA/CEA Standard,
-Consumer Electronics Association (CEA).
-</bibl>
-<bibl id="css3-color" key="CSS3 Color">Tantek Çelik and Chris Lilley,
-<titleref href="http://www.w3.org/TR/2003/CR-css3-color-20030514/">CSS3 Color
-Module</titleref>, W3C Candidate Recommendation, 14 May 2003. (See
-<xspecref href="http://www.w3.org/TR/2003/CR-css3-color-20030514/">http://www.w3.org/TR/2003/CR-css3-color-20030514/</xspecref>.)
-</bibl>
-<bibl id="dcmes" key="DCMES 1.1">Dublin Core Metadata Initiative,
-<titleref href="http://dublincore.org/documents/dces/">Dublin Core Metadata Element Set, Version 1.1: Reference Description</titleref>. (See
-<xspecref href="http://dublincore.org/documents/dces/">http://dublincore.org/documents/dces/</xspecref>.)
-</bibl>
-<bibl id="mpeg7-5" key="MPEG7-5">
-ISO/IEC 15938-5,
-<titleref
-href="http://www.iso.org/">Information technology – Multimedia content description
-interface – Part 5: Multimedia description schemes</titleref>,
-International Organization for Standardization (ISO).
-</bibl>
-<bibl id="nsstate" key="NSState">Norman Walsh, Ed.,
-<titleref
-href="http://www.w3.org/2001/tag/doc/namespaceState-2006-01-09.html">The Disposition
-of Names in an XML Namespace</titleref>, TAG Finding, 9 January 2006. (See
-<xspecref href="http://www.w3.org/2001/tag/doc/namespaceState-2006-01-09.html">http://www.w3.org/2001/tag/doc/namespaceState-2006-01-09</xspecref>.)
-</bibl>
-<bibl id="qaf-sg" key="QAF SG">Karl Dubost, et al.,
-<titleref
-href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/">QA
-Framework: Specifications Guidelines</titleref>, W3C Recommendation, 17
-August 2005. (See
-<xspecref href="http://www.w3.org/TR/qaframe-spec/">http://www.w3.org/TR/qaframe-spec/</xspecref>.)
-</bibl>
-<bibl id="smpte170m" key="SMPTE 170M">ANSI/SMPTE 170M,
-<titleref
-href="http://www.smpte.org/">Television – Composite Analog Video
-Signal – NTSC for Studio Applications</titleref>, SMPTE Standard.
-</bibl>
-<bibl id="svg11" key="SVG 1.1">Jon Ferraiolo, Jun Fujisawa, Dean Jackson, Eds.,
-<titleref
-href="http://www.w3.org/TR/2003/REC-SVG11-20030114/">Scalable
-Vector Graphics (SVG) 1.1 Specification</titleref>, W3C Recommendation, 14
-January 2003. (See
-<xspecref href="http://www.w3.org/TR/2003/REC-SVG11-20030114/">http://www.w3.org/TR/2003/REC-SVG11-20030114/</xspecref>.)
-</bibl>
-<bibl id="ttaf1-req" key="TTAF1-REQ">Glenn Adams, Ed.,
-<titleref href="http://www.w3.org/TR/2006/NOTE-ttaf1-req-20060427/">Timed Text (TT) Authoring Format 1.0 Use
-Cases and Requirements</titleref>,
-W3C Working Group Note, 27 April 2006. (See
-<xspecref
-href="http://www.w3.org/TR/2006/NOTE-ttaf1-req-20060427/">http://www.w3.org/TR/2006/NOTE-ttaf1-req-20060427/</xspecref>.)
-</bibl>
-<bibl id="xhtml10" key="XHTML 1.0">Steven Pemberton, et al.,
-<titleref
-href="http://www.w3.org/TR/2002/REC-xhtml1-20020801/">XHTML™ 1.0,
-The Extensible Hypertext Markup Language (Second Edition)</titleref>,
-W3C Recommendation, 01
-August 2002. (See
-<xspecref href="http://www.w3.org/TR/2002/REC-xhtml1-20020801/">http://www.w3.org/TR/2002/REC-xhtml1-20020801/</xspecref>.)
-</bibl>
-</blist>
-</inform-div1>
-<inform-div1 id="requirements">
-<head>Requirements</head>
-<p>The Distribution Format Exchange Profile (DFXP) of the Timed Text Authoring
-Format (TTML) satisfies a subset of the requirements established by
-<bibref ref="ttaf1-req"/>. The following table enumerates these requirements and
-indicates the extent to which they are satisfied by this specification, where
-<emph>S</emph> denotes a requirement is satisfied, <emph>P</emph> denotes
-a requirement is partially satisfied, and <emph>N</emph> denotes a
-requirement is not satisfied.</p>
-<table id="requirements-table" role="common">
-<caption>Table J-1 – Requirement Satisfaction</caption>
-<col width="10%"/>
-<col width="40%"/>
-<col width="10%"/>
-<tbody>
-<tr>
-<th>ID</th>
-<th>Name</th>
-<th>Status</th>
-<th>Comments</th>
-</tr>
-<tr>
-<td>R100</td>
-<td>Specification Format</td>
-<td>S</td>
-<td/>
-</tr>
-<tr>
-<td>R101</td>
-<td>Specification Modularity</td>
-<td>S</td>
-<td/>
-</tr>
-<tr>
-<td>R102</td>
-<td>Specification Organization</td>
-<td>S</td>
-<td/>
-</tr>
-<tr>
-<td>R103</td>
-<td>Core and Periphery</td>
-<td>S</td>
-<td>TT extension namespaces</td>
-</tr>
-<tr>
-<td>R104</td>
-<td>Evolution of Core</td>
-<td>S</td>
-<td>TT extension namespaces</td>
-</tr>
-<tr>
-<td>R105</td>
-<td>Ownership of Core</td>
-<td>S</td>
-<td>TT namespaces</td>
-</tr>
-<tr>
-<td>R106</td>
-<td>Surjection of Core</td>
-<td>S</td>
-<td/>
-</tr>
-<tr>
-<td>R107</td>
-<td>Evolution of Periphery</td>
-<td>S</td>
-<td>TT extension namespaces</td>
-</tr>
-<tr>
-<td>R108</td>
-<td>Ownership of Periphery</td>
-<td>S</td>
-<td>Non-TT namespaces</td>
-</tr>
-<tr>
-<td>R109</td>
-<td>Transformation</td>
-<td>S</td>
-<td>Supports 3GPP, QText, RealText, SAMI</td>
-</tr>
-<tr>
-<td>R110</td>
-<td>Streamable Transformation</td>
-<td>S</td>
-<td>Progressive decoding</td>
-</tr>
-<tr>
-<td>R111</td>
-<td>Accessibility – Content</td>
-<td>S</td>
-<td>Alternative document instances</td>
-</tr>
-<tr>
-<td>R112</td>
-<td>Accessibility – Authoring System</td>
-<td>S</td>
-<td/>
-</tr>
-<tr>
-<td>R200</td>
-<td>Authorability</td>
-<td>S</td>
-<td/>
-</tr>
-<tr>
-<td>R201</td>
-<td>Multiple Natural Languages</td>
-<td>S</td>
-<td>Alternative document instances</td>
-</tr>
-<tr>
-<td>R202</td>
-<td>Natural Language Coverage</td>
-<td>S</td>
-<td>Unicode 4.0</td>
-</tr>
-<tr>
-<td>R203</td>
-<td>Natural Language Association Granularity</td>
-<td>S</td>
-<td>See <code>xml:lang</code></td>
-</tr>
-<tr>
-<td>R204</td>
-<td>Minimum Character Representability</td>
-<td>S</td>
-<td>Unicode 4.0</td>
-</tr>
-<tr>
-<td>R205</td>
-<td>Intrinsic and Extrinsic Text Content</td>
-<td>P</td>
-<td>Intrinsic only</td>
-</tr>
-<tr>
-<td>R206</td>
-<td>Markup Association</td>
-<td>P</td>
-<td>Intrinsic only</td>
-</tr>
-<tr>
-<td>R207</td>
-<td>Conditional Content</td>
-<td>N</td>
-<td/>
-</tr>
-<tr>
-<td>R208</td>
-<td>Flowed Text</td>
-<td>S</td>
-<td/>
-</tr>
-<tr>
-<td>R209</td>
-<td>Logical Flowed Text Vocabulary</td>
-<td>S</td>
-<td/>
-</tr>
-<tr>
-<td>R210</td>
-<td>Presentational Flowed Text Vocabulary</td>
-<td>S</td>
-<td>Implied mapping from logical flowed text.</td>
-</tr>
-<tr>
-<td>R211</td>
-<td>Flowed Text Vocabulary Relationship</td>
-<td>S</td>
-<td/>
-</tr>
-<tr>
-<td>R212</td>
-<td>Flowed Text Vocabulary Separation</td>
-<td>N</td>
-<td/>
-</tr>
-<tr>
-<td>R213</td>
-<td>Non-Flowed Text</td>
-<td>N</td>
-<td/>
-</tr>
-<tr>
-<td>R214</td>
-<td>Non-Flowed Text Vocabulary</td>
-<td>N</td>
-<td/>
-</tr>
-<tr>
-<td>R215</td>
-<td>Hybrid Flowed and Non-Flowed Text</td>
-<td>N</td>
-<td/>
-</tr>
-<tr>
-<td>R216</td>
-<td>Hyperlinking</td>
-<td>N</td>
-<td>Can support via XLink</td>
-</tr>
-<tr>
-<td>R217</td>
-<td>Embedded Graphics</td>
-<td>N</td>
-<td/>
-</tr>
-<tr>
-<td>R218</td>
-<td>Non-Embedded Graphics</td>
-<td>N</td>
-<td/>
-</tr>
-<tr>
-<td>R219</td>
-<td>Embedded Fonts</td>
-<td>N</td>
-<td/>
-</tr>
-<tr>
-<td>R220</td>
-<td>Non-Embedded Fonts</td>
-<td>N</td>
-<td/>
-</tr>
-<tr>
-<td>R221</td>
-<td>Descriptive Vocabulary</td>
-<td>S</td>
-<td>See <code>ttm:agent</code>, <code>ttm:role</code></td>
-</tr>
-<tr>
-<td>R222</td>
-<td>Embedded Audio</td>
-<td>N</td>
-<td/>
-</tr>
-<tr>
-<td>R223</td>
-<td>Non-Embedded Audio</td>
-<td>N</td>
-<td/>
-</tr>
-<tr>
-<td>R290</td>
-<td>Markup Format</td>
-<td>S</td>
-<td/>
-</tr>
-<tr>
-<td>R291</td>
-<td>Markup Format and Unicode Interaction</td>
-<td>S</td>
-<td/>
-</tr>
-<tr>
-<td>R292</td>
-<td>Extrinsic Resource References</td>
-<td>N</td>
-<td>No extrinsic references</td>
-</tr>
-<tr>
-<td>R293</td>
-<td>Schema Validity Specification</td>
-<td>S</td>
-<td/>
-</tr>
-<tr>
-<td>R300</td>
-<td>Inline Styling</td>
-<td>S</td>
-<td/>
-</tr>
-<tr>
-<td>R301</td>
-<td>Inline Styling Form</td>
-<td>P</td>
-<td>Inline and referential styling</td>
-</tr>
-<tr>
-<td>R301</td>
-<td>Out-of-Line Styling</td>
-<td>N</td>
-<td/>
-</tr>
-<tr>
-<td>R301</td>
-<td>Out-of-Line Styling Form</td>
-<td>N</td>
-<td/>
-</tr>
-<tr>
-<td>R304</td>
-<td>Styling Prioritization</td>
-<td>S</td>
-<td/>
-</tr>
-<tr>
-<td>R305</td>
-<td>Style Parameters – Aural</td>
-<td>N</td>
-<td/>
-</tr>
-<tr>
-<td>R306</td>
-<td>Style Parameters – Visual</td>
-<td>P</td>
-<td>Supports absolute position, background color, color, display none, display alignment,
-font family, font size, font style, font weight, height, line height, origin,
-opacity, overflow, padding (before, after, start, end), text alignment,
-text shadow (as outline), visibility, width, writing mode, z-index</td>
-</tr>
-<tr>
-<td>R390</td>
-<td>Style Parameter Symmetry</td>
-<td>S</td>
-<td/>
-</tr>
-<tr>
-<td>R391</td>
-<td>Style Parameter Definitions</td>
-<td>S</td>
-<td/>
-</tr>
-<tr>
-<td>R392</td>
-<td>Style Parameter Shorthands</td>
-<td>S</td>
-<td/>
-</tr>
-<tr>
-<td>R401</td>
-<td>Inline Timing</td>
-<td>S</td>
-<td/>
-</tr>
-<tr>
-<td>R402</td>
-<td>Out-of-Line Timing</td>
-<td>N</td>
-<td/>
-</tr>
-<tr>
-<td>R403</td>
-<td>Synchronization Parameters</td>
-<td>P</td>
-<td>Supports begin, end, dur</td>
-</tr>
-<tr>
-<td>R404</td>
-<td>Synchronization Parameter Value Spaces</td>
-<td>P</td>
-<td>Supports offset values, media marker values (SMPTE 12M), wallclock values</td>
-</tr>
-<tr>
-<td>R405</td>
-<td>Time Containment Semantics</td>
-<td>P</td>
-<td>Supports sequential, parallel</td>
-</tr>
-<tr>
-<td>R500</td>
-<td>Animation Modes</td>
-<td>P</td>
-<td>Supports discrete</td>
-</tr>
-<tr>
-<td>R502</td>
-<td>Highlight Animation</td>
-<td>S</td>
-<td><code><set tts:backgroundColor="..."/></code></td>
-</tr>
-<tr>
-<td>R503</td>
-<td>Fade Transition Animation</td>
-<td>S</td>
-<td><code><set tts:opacity="..."/></code></td>
-</tr>
-<tr>
-<td>R504</td>
-<td>Animated Style Parameters – Aural</td>
-<td>N</td>
-<td/>
-</tr>
-<tr>
- <td>R505</td>
-<td>Animated Style Parameters – Visual</td>
-<td>P</td>
-<td>Supports animating background color, color, display, opacity, origin, visibility</td>
-</tr>
-<tr>
-<td>N506</td>
-<td>Animated Content</td>
-<td>S</td>
-<td/>
-</tr>
-<tr>
-<td>R600</td>
-<td>Metadata Item Association</td>
-<td>S</td>
-<td>See <code>metadata</code>, <code>Metadata.class</code></td>
-</tr>
-<tr>
-<td>R601</td>
-<td>Metadata Item Constituents</td>
-<td>P</td>
-<td>Supports name, value</td>
-</tr>
-<tr>
-<td>R602</td>
-<td>Metadata Item Value Representation</td>
-<td>P</td>
-<td>See <code>metadata</code></td>
-</tr>
-<tr>
-<td>R603</td>
-<td>Metadata Item Extensibility</td>
-<td>S</td>
-<td>See <code>metadata</code></td>
-</tr>
-<tr>
-<td>R604</td>
-<td>Metadata Item Validation</td>
-<td>S</td>
-<td>See <code>metadata</code></td>
-</tr>
-<tr>
-<td>R690</td>
-<td>Dublin Core Preference</td>
-<td>N</td>
-<td>Uses <code>ttm:copyright</code>, <code>ttm:desc</code>, <code>ttm:title</code></td>
-</tr>
-</tbody>
-</table>
-</inform-div1>
-<inform-div1 id="derivation">
-<head>Vocabulary Derivation</head>
-<p>This appendix provides information about the derivation of TTML
-vocabulary, separately describing derivation of elements and
-attributes.</p>
-<div2>
-<head>Element Derivation</head>
-<p>The first column of <specref ref="element-vocab-derivation-table"/>
-specifies a TTML element vocabulary item; the second column specifies the
-syntactic and/or semantic model on which the vocabulary item is based;
-the third column specifies the reference that defines
-the model (if a model is indicated);
-the fourth column specifies details about the derivation; the last
-column refers to additional notes describing the nature of the
-derivation.</p>
-<p>In the fourth column, which describes details of derivation, a
-notation is use to indicate the addition or removal of an attribute.
-For example, in the derivation of the <el>tt:div</el> element, the
-details column includes "-@class", which denotes that the
-<att>class</att> attribute that is specified for use with the
-<el>xhtml:div</el> model element is not specified for use with the
-corresponding TTML element; in contrast, the details column includes
-"+@begin", which denotes that a <att>begin</att> attribute is added
-that is not specified for use with the <el>xhtml:div</el> model
-element.</p>
-<table id="element-vocab-derivation-table" role="common">
-<caption>Table K-1 – Elements</caption>
-<col width="20%"/>
-<col width="17%"/>
-<col width="13%" align="center"/>
-<col width="40%"/>
-<col width="10%" align="center"/>
-<tbody>
-<tr>
-<td><phrase role="strong">Element</phrase></td>
-<td><phrase role="strong">Model</phrase></td>
-<td><phrase role="strong">Reference</phrase></td>
-<td><phrase role="strong">Details</phrase></td>
-<td><phrase role="strong">Notes</phrase></td>
-</tr>
-<tr>
-<td><loc href="#document-structure-vocabulary-body"><code>tt:body</code></loc></td>
-<td><code>xhtml:body</code></td>
-<td><bibref ref="xhtml10"/></td>
-<td>-@class, -@dir, -@lang, -@on*, -@title; +@begin, +@dur, +@end, +@region,
-+@timeContainer, +@ttm:*, +@tts:*; content model
-subsetted to zero or more division (div) children, and supersetted by
-optional metadata and animation children</td>
-<td>1,2</td>
-</tr>
-<tr>
-<td><loc href="#content-vocabulary-br"><code>tt:br</code></loc></td>
-<td><code>xhtml:br</code></td>
-<td><bibref ref="xhtml10"/></td>
-<td>-@class, -@title; +@ttm:*, +@tts:*, +@xml:lang, +@xml:space;
-content model supersetted by
-optional metadata and animation children for congruity with other
-content vocabulary</td>
-<td>1,2</td>
-</tr>
-<tr>
-<td><loc href="#content-vocabulary-div"><code>tt:div</code></loc></td>
-<td><code>xhtml:div</code></td>
-<td><bibref ref="xhtml10"/></td>
-<td>-@class, -@dir, -@lang, -@on*, -@title; +@begin, +@dur, +@end, +@region,
-+@timeContainer, +@ttm:*, +@tts:*, +@xml:space; content model
-subsetted to zero or more paragraph (p) children, and supersetted by
-optional metadata and animation children</td>
-<td>1,2,3</td>
-</tr>
-<tr>
-<td><loc href="#document-structure-vocabulary-head"><code>tt:head</code></loc></td>
-<td><code>xhtml:head</code></td>
-<td><bibref ref="xhtml10"/></td>
-<td>-@dir, -@lang, -@profile; +@id, +@xml:space; content model changed to
-optional metadata children, followed by optional styling child,
-followed by optional layout child</td>
-<td>1,3</td>
-</tr>
-<tr>
-<td><loc href="#layout-vocabulary-layout"><code>tt:layout</code></loc></td>
-<td><code>fo:simple-page-master</code></td>
-<td><bibref ref="xsl11"/></td>
-<td>conceptual derivation</td>
-<td>4</td>
-</tr>
-<tr>
-<td><loc href="#metadata-vocabulary-metadata"><code>tt:metadata</code></loc></td>
-<td><code>svg:metadata</code></td>
-<td><bibref ref="svg11"/></td>
-<td>-@xml:base; +@ttm:*, +@xml:lang, +@xml:space; content model
-subsetted to foreign namespace element content only (no #PCDATA)</td>
-<td>3,5</td>
-</tr>
-<tr>
-<td><loc href="#content-vocabulary-p"><code>tt:p</code></loc></td>
-<td><code>xhtml:p</code></td>
-<td><bibref ref="xhtml10"/></td>
-<td>-@class, -@dir, -@lang, -@on*, -@title; +@begin, +@dur, +@end, +@region,
-+@timeContainer, +@ttm:*, +@tts:*, +@xml:space; content model
-subsetted to zero or more span children, and supersetted by optional
-metadata and animation children</td>
-<td>1,2,3</td>
-</tr>
-<tr>
-<td><loc href="#layout-vocabulary-region"><code>tt:region</code></loc></td>
-<td><code>fo:region-*</code></td>
-<td><bibref ref="xsl11"/></td>
-<td>conceptual derivation</td>
-<td>4</td>
-</tr>
-<tr>
-<td><loc href="#animation-vocabulary-set"><code>tt:set</code></loc></td>
-<td><code>svg:set</code></td>
-<td><bibref ref="svg11"/></td>
-<td>-@* except begin, dur, end; +@tts:*, +@xml:lang, +@xml:space</td>
-<td>3,6</td>
-</tr>
-<tr>
-<td><loc href="#content-vocabulary-span"><code>tt:span</code></loc></td>
-<td><code>xhtml:span</code></td>
-<td><bibref ref="xhtml10"/></td>
-<td>-@class, -@dir, -@lang, -@on*, -@title; +@begin, +@dur, +@end, +@region,
-+@timeContainer, +@ttm:*, +@tts:*, +@xml:space; content model
-subsetted to zero or more #PCDATA or break (br) children, and
-supersetted by optional metadata and animation children</td>
-<td>1,2,3</td>
-</tr>
-<tr>
-<td><loc href="#styling-vocabulary-style"><code>tt:style</code></loc></td>
-<td><emph>style specification</emph></td>
-<td><bibref ref="css2"/></td>
-<td>XML representation of identified set of pairs of style property
-name and value, with optional inclusion of other styles by reference
-to other style elements</td>
-<td>7</td>
-</tr>
-<tr>
-<td><loc href="#styling-vocabulary-styling"><code>tt:styling</code></loc></td>
-<td><code>xhtml:style</code></td>
-<td><bibref ref="xhtml10"/></td>
-<td>XML representation of a set of style specifications sets, each
-represented by a style child element</td>
-<td>1,7</td>
-</tr>
-<tr>
-<td><loc href="#document-structure-vocabulary-tt"><code>tt:tt</code></loc></td>
-<td><code>xhtml:html</code></td>
-<td><bibref ref="xhtml10"/></td>
-<td>-@dir, -@lang; +@id, +@ttp:*, +@xml:space; content model subsetted by
-permitting body and/or head to be optional</td>
-<td>1,8</td>
-</tr>
-<tr>
-<td><loc href="#metadata-vocabulary-actor"><code>ttm:actor</code></loc></td>
-<td><code>mpeg7:Creator</code></td>
-<td><bibref ref="mpeg7-5"/></td>
-<td>conceptual derivation</td>
-<td>4</td>
-</tr>
-<tr>
-<td><loc href="#metadata-vocabulary-agent"><code>ttm:agent</code></loc></td>
-<td><code>mpeg7:Agent</code></td>
-<td><bibref ref="mpeg7-5"/></td>
-<td>conceptual derivation</td>
-<td>4</td>
-</tr>
-<tr>
-<td><loc href="#metadata-vocabulary-copyright"><code>ttm:copyright</code></loc></td>
-<td><code>mpeg7:CopyrightString</code></td>
-<td><bibref ref="mpeg7-5"/></td>
-<td>conceptual derivation</td>
-<td>4</td>
-</tr>
-<tr>
-<td><loc href="#metadata-vocabulary-desc"><code>ttm:desc</code></loc></td>
-<td><code>svg:desc</code></td>
-<td><bibref ref="svg11"/></td>
-<td>-@class, -@style, -@xml:base</td>
-<td>2,5,9</td>
-</tr>
-<tr>
-<td><loc href="#metadata-vocabulary-name"><code>ttm:name</code></loc></td>
-<td><code>mpeg7:Name</code></td>
-<td><bibref ref="mpeg7-5"/></td>
-<td>conceptual derivation</td>
-<td>4</td>
-</tr>
-<tr>
-<td><loc href="#metadata-vocabulary-title"><code>ttm:title</code></loc></td>
-<td><code>svg:title</code></td>
-<td><bibref ref="svg11"/></td>
-<td>-@class, -@style, -@xml:base</td>
-<td>2,5,9</td>
-</tr>
-
-<tr>
-<td><loc href="#parameter-vocabulary-extension"><code>ttp:extension</code></loc></td>
-<td><code>@requiredExtensions</code></td>
-<td><bibref ref="svg11"/></td>
-<td>conceptual derivation</td>
-<td>10</td>
-</tr>
-<tr>
-<td><loc href="#parameter-vocabulary-extensions"><code>ttp:extensions</code></loc></td>
-<td><code>@requiredExtensions</code></td>
-<td><bibref ref="svg11"/></td>
-<td>conceptual derivation</td>
-<td>10</td>
-</tr>
-<tr>
-<td><loc href="#parameter-vocabulary-feature"><code>ttp:feature</code></loc></td>
-<td><code>@requiredFeatures</code></td>
-<td><bibref ref="svg11"/></td>
-<td>conceptual derivation</td>
-<td>10</td>
-</tr>
-<tr>
-<td><loc href="#parameter-vocabulary-features"><code>ttp:features</code></loc></td>
-<td><code>@requiredFeatures</code></td>
-<td><bibref ref="svg11"/></td>
-<td>conceptual derivation</td>
-<td>10</td>
-</tr>
-<tr>
-<td><loc href="#parameter-vocabulary-profile"><code>ttp:profile</code></loc></td>
-<td><code>@baseProfile</code></td>
-<td><bibref ref="svg11"/></td>
-<td>conceptual derivation</td>
-<td>11</td>
-</tr>
-</tbody>
-</table>
-<note>
-<olist>
-<item>
-<p>Derivation is indicated with respect to the strict DTD defined
-by <bibref ref="xhtml10"/>, §A.1.</p>
-</item>
-<item>
-<p>The <att>class</att> attribute is effectively replaced by the
-<att>style</att>
-attribute, which, instead of specifying an inline style,
-refers indirectly to one or more <loc
-href="#styling-vocabulary-style"><el>style</el></loc>
-elements that define a set of style specification sets.</p>
-</item>
-<item>
-<p>The <att>xml:lang</att> and <att>xml:space</att> attributes are defined for all element
-types in order to support their inheritance semantics to operate in
-the context of foreign namespace elements.</p>
-</item>
-<item>
-<p>Derivation is conceptual (notional) only.</p>
-</item>
-<item>
-<p>The <att>xml:base</att> attribute is not used since there are no external
-references from core vocabulary.</p>
-</item>
-<item>
-<p>The <att>attributeName</att> and <att>to</att> attributes of
-<el>svg:set</el> are replaced by the
-direct expression of the target attribute name and value by use of a
-<att>tts:*</att> attribute.</p>
-</item>
-<item>
-<p>CSS style specification syntax is mapped to XML by use of
-attributes defined in the TT Style Namespace.</p>
-</item>
-<item>
-<p>The <att>xml:id</att> attribute is defined for use on all element types.</p>
-</item>
-<item>
-<p>The <att>style</att> attribute is supported only on content
-elements.</p>
-</item>
-<item>
-<p>Derived from the use of <code>@requiredExtensions</code>
-and <code>@requiredFeatures</code> on the <code>svg:svg</code> element,
-but extended to support distinct specification of optionality.</p>
-</item>
-<item>
-<p>Derived from the use of <code>@baseProfile</code>
-and <code>@version</code> on the <code>svg:svg</code> element.</p>
-</item>
-</olist>
-</note>
-</div2>
-<div2>
-<head>Attribute Derivation</head>
-<p>The first column of <specref ref="attribute-vocab-derivation-table"/>
-specifies a TTML attribute vocabulary item; the second column specifies the
-syntactic and/or semantic model on which the vocabulary item is based;
-the third column specifies the reference that defines
-the model (if a model is indicated);
-the fourth column specifies details about the derivation; the last
-column refers to additional notes describing the nature of the
-derivation.</p>
-<p>In the fourth column, which describes details of derivation, a
-notation is use to indicate the addition or removal of an attribute
-value. For example, in the derivation of the <att>timeContainer</att>
-attribute,
-the details column includes "-excl", which denotes that the
-<code>excl</code> value that is specified for use with the
-<att>timeContainer</att> model attribute is not specified for use with the
-corresponding TTML attribute; similarly, an "+<emph>value</emph>"
-in the details column indicates that the attribute's values have been
-extended to include <emph>value</emph>.</p>
-<p>Only those attributes that are specified for use on more than one TTML
-element type are listed below. Those per-element namespace attributes
-that are uniquely defined for a specific TTML element type are not
-listed below, but are considered to be part of the specific element
-type's derivation described in <specref
-ref="element-vocab-derivation-table"/>
-above.</p>
-<table id="attribute-vocab-derivation-table" role="common">
-<caption>Table K-2 – Attributes</caption>
-<col width="20%"/>
-<col width="17%"/>
-<col width="13%" align="center"/>
-<col width="40%"/>
-<col width="10%" align="center"/>
-<tbody>
-<tr>
-<td><phrase role="strong">Attribute</phrase></td>
-<td><phrase role="strong">Model</phrase></td>
-<td><phrase role="strong">Reference</phrase></td>
-<td><phrase role="strong">Details</phrase></td>
-<td><phrase role="strong">Notes</phrase></td>
-</tr>
-<tr>
-<td><loc href="#timing-attribute-begin"><code>begin</code></loc></td>
-<td><code>begin</code></td>
-<td><bibref ref="smil21"/></td>
-<td>see notes</td>
-<td>2,3,4</td>
-</tr>
-<tr>
-<td><loc href="#timing-attribute-dur"><code>dur</code></loc></td>
-<td><code>dur</code></td>
-<td><bibref ref="smil21"/></td>
-<td>see notes</td>
-<td>2,3,4</td>
-</tr>
-<tr>
-<td><loc href="#timing-attribute-end"><code>end</code></loc></td>
-<td><code>end</code></td>
-<td><bibref ref="smil21"/></td>
-<td>see notes</td>
-<td>2,3,4</td>
-</tr>
-<tr>
-<td><loc href="#layout-attribute-region"><code>region</code></loc></td>
-<td><code>master-reference</code></td>
-<td><bibref ref="xsl11"/></td>
-<td>conceptual derivation</td>
-<td></td>
-</tr>
-<tr>
-<td><loc href="#style-attribute-style"><code>style</code></loc></td>
-<td><code>class</code></td>
-<td><bibref ref="css2"/></td>
-<td>dereferences style specification(s) directly</td>
-<td></td>
-</tr>
-<tr>
-<td><loc href="#timing-attribute-timeContainer"><code>timeContainer</code></loc></td>
-<td><code>timeContainer</code></td>
-<td><bibref ref="smil21"/></td>
-<td>-excl, -none; no default attribute value</td>
-<td>5</td>
-</tr>
-<tr>
-<td><loc href="#metadata-attribute-agent"><code>ttm:agent</code></loc></td>
-<td><emph>none</emph></td>
-<td></td>
-<td>used to attribute agent of content</td>
-<td></td>
-</tr>
-<tr>
-<td><loc href="#metadata-attribute-role"><code>ttm:role</code></loc></td>
-<td><emph>none</emph></td>
-<td></td>
-<td>used to attribute role of content</td>
-<td></td>
-</tr>
-<tr>
-<td><loc href="#parameter-attribute-cellResolution"><code>ttp:cellResolution</code></loc></td>
-<td><emph>none</emph></td>
-<td></td>
-<td>expresses uniform grid resolution for cell based coordinates</td>
-<td></td>
-</tr>
-<tr>
-<td><loc href="#parameter-attribute-clockMode"><code>ttp:clockMode</code></loc></td>
-<td><emph>none</emph></td>
-<td></td>
-<td>determines how to interpret time expressions</td>
-<td></td>
-</tr>
-<tr>
-<td><loc href="#parameter-attribute-frameRate"><code>ttp:frameRate</code></loc></td>
-<td><emph>none</emph></td>
-<td></td>
-<td>expresses integral frame rate</td>
-<td></td>
-</tr>
-<tr>
-<td><loc href="#parameter-attribute-frameRateMultiplier"><code>ttp:frameRateMultiplier</code></loc></td>
-<td><emph>none</emph></td>
-<td></td>
-<td>used to express non-integral, rational frame rates</td>
-<td></td>
-</tr>
-<tr>
-<td><loc href="#parameter-attribute-markerMode"><code>ttp:markerMode</code></loc></td>
-<td><emph>none</emph></td>
-<td></td>
-<td>expresses marker continuity semantics</td>
-<td></td>
-</tr>
-<tr>
-<td><loc href="#parameter-attribute-pixelAspectRatio"><code>ttp:pixelAspectRatio</code></loc></td>
-<td><emph>none</emph></td>
-<td></td>
-<td>expresses pixel aspect ratio of related media</td>
-<td></td>
-</tr>
-<tr>
-<td><loc href="#parameter-attribute-profile"><code>ttp:profile</code></loc></td>
-<td><emph>none</emph></td>
-<td></td>
-<td>expresses profile of TTML used by document instance</td>
-<td></td>
-</tr>
-<tr>
-<td><loc href="#parameter-attribute-dropMode"><code>ttp:dropMode</code></loc></td>
-<td><emph>none</emph></td>
-<td></td>
-<td>expresses frame counting (drop) modes</td>
-<td></td>
-</tr>
-<tr>
-<td><loc href="#parameter-attribute-subFrameRate"><code>ttp:subFrameRate</code></loc></td>
-<td><emph>none</emph></td>
-<td></td>
-<td>expresses sub-frame rate</td>
-<td></td>
-</tr>
-<tr>
-<td><loc href="#parameter-attribute-tickRate"><code>ttp:tickRate</code></loc></td>
-<td><emph>none</emph></td>
-<td></td>
-<td>used to interpret tick based time expressions</td>
-<td></td>
-</tr>
-<tr>
-<td><loc href="#parameter-attribute-timeBase"><code>ttp:timeBase</code></loc></td>
-<td><emph>none</emph></td>
-<td></td>
-<td>used to interpret semantics of time expressions</td>
-<td></td>
-</tr>
-<tr>
-<td><loc href="#style-attribute-backgroundColor"><code>tts:backgroundColor</code></loc></td>
-<td><code>background-color</code></td>
-<td><bibref ref="xsl11"/></td>
-<td><code>-inherit</code></td>
-<td>1,6</td>
-</tr>
-<tr>
-<td><loc href="#style-attribute-color"><code>tts:color</code></loc></td>
-<td><code>color</code></td>
-<td><bibref ref="xsl11"/></td>
-<td><code>-inherit</code></td>
-<td>6</td>
-</tr>
-<tr>
-<td><loc href="#style-attribute-direction"><code>tts:direction</code></loc></td>
-<td><code>direction</code></td>
-<td><bibref ref="xsl11"/></td>
-<td><code>-inherit</code></td>
-<td></td>
-</tr>
-<tr>
-<td><loc href="#style-attribute-display"><code>tts:display</code></loc></td>
-<td><code>display</code></td>
-<td><bibref ref="css2"/></td>
-<td>only <code>auto</code>, <code>none</code></td>
-<td></td>
-</tr>
-<tr>
-<td><loc href="#style-attribute-displayAlign"><code>tts:displayAlign</code></loc></td>
-<td><code>display-align</code></td>
-<td><bibref ref="xsl11"/></td>
-<td><code>-inherit</code></td>
-<td>1</td>
-</tr>
-<tr>
-<td><loc href="#style-attribute-extent"><code>tts:extent</code></loc></td>
-<td><code>width</code>, <code>height</code></td>
-<td><bibref ref="xsl11"/></td>
-<td>shorthand property</td>
-<td></td>
-</tr>
-<tr>
-<td><loc href="#style-attribute-fontFamily"><code>tts:fontFamily</code></loc></td>
-<td><code>font-family</code></td>
-<td><bibref ref="xsl11"/></td>
-<td><code>-inherit</code>, extends generic family names</td>
-<td>1</td>
-</tr>
-<tr>
-<td><loc href="#style-attribute-fontSize"><code>tts:fontSize</code></loc></td>
-<td><code>font-size</code></td>
-<td><bibref ref="xsl11"/></td>
-<td><code>-inherit</code></td>
-<td>1,7</td>
-</tr>
-<!--
-<tr>
-<td><loc href="#style-attribute-fontStyle"><code>tts:fontStyle</code></loc></td>
-<td><code>font-style</code></td>
-<td><bibref ref="xsl11"/></td>
-<td><code>-inherit</code>, uses alias <code>reverseOblique</code> for <code>backslant</code></td>
-<td>1</td>
-</tr>
--->
-<tr>
-<td><loc href="#style-attribute-fontWeight"><code>tts:fontWeight</code></loc></td>
-<td><code>font-weight</code></td>
-<td><bibref ref="xsl11"/></td>
-<td><code>-inherit</code>, <code>-bolder</code>, <code>-lighter</code>, <code>-<number></code></td>
-<td>1</td>
-</tr>
-<tr>
-<td><loc href="#style-attribute-lineHeight"><code>tts:lineHeight</code></loc></td>
-<td><code>line-height</code></td>
-<td><bibref ref="xsl11"/></td>
-<td><code>-inherit</code>, <code>-<number></code>, <code>-<space></code></td>
-<td>1</td>
-</tr>
-<tr>
-<td><loc href="#style-attribute-opacity"><code>tts:opacity</code></loc></td>
-<td><code>opacity</code></td>
-<td><bibref ref="css3-color"/></td>
-<td><code>-inherit</code></td>
-<td></td>
-</tr>
-<tr>
-<td><loc href="#style-attribute-origin"><code>tts:origin</code></loc></td>
-<td><code>top</code>, <code>left</code></td>
-<td><bibref ref="xsl11"/></td>
-<td>shorthand property</td>
-<td></td>
-</tr>
-<tr>
-<td><loc href="#style-attribute-overflow"><code>tts:overflow</code></loc></td>
-<td><code>overflow</code></td>
-<td><bibref ref="xsl11"/></td>
-<td><code>-inherit</code>, <code>-auto</code>, <code>-error-if-overflow</code>;</td>
-<td>8</td>
-</tr>
-<tr>
-<td><loc href="#style-attribute-padding"><code>tts:padding</code></loc></td>
-<td><code>padding</code></td>
-<td><bibref ref="xsl11"/></td>
-<td><code>-inherit</code></td>
-<td>9</td>
-</tr>
-<tr>
-<td><loc href="#style-attribute-showBackground"><code>tts:showBackground</code></loc></td>
-<td><code>showBackground</code></td>
-<td><bibref ref="smil21"/></td>
-<td><code>-inherit</code></td>
-<td></td>
-</tr>
-<tr>
-<td><loc href="#style-attribute-textAlign"><code>tts:textAlign</code></loc></td>
-<td><code>text-align</code></td>
-<td><bibref ref="xsl11"/></td>
-<td><code>-inherit</code></td>
-<td>1</td>
-</tr>
-<tr>
-<td><loc href="#style-attribute-textDecoration"><code>tts:textDecoration</code></loc></td>
-<td><code>text-decoration</code></td>
-<td><bibref ref="xsl11"/></td>
-<td><code>-inherit</code></td>
-<td>1,10,13</td>
-</tr>
-<tr>
-<td><loc href="#style-attribute-textOutline"><code>tts:textOutline</code></loc></td>
-<td><code>text-shadow</code></td>
-<td><bibref ref="xsl11"/></td>
-<td><code>-inherit</code></td>
-<td>11,13</td>
-</tr>
-<tr>
-<td><loc href="#style-attribute-unicodeBidi"><code>tts:unicodeBidi</code></loc></td>
-<td><code>unicode-bidi</code></td>
-<td><bibref ref="xsl11"/></td>
-<td><code>-inherit</code></td>
-<td>1</td>
-</tr>
-<tr>
-<td><loc href="#style-attribute-visibility"><code>tts:visibility</code></loc></td>
-<td><code>visibility</code></td>
-<td><bibref ref="xsl11"/></td>
-<td><code>-inherit</code>, <code>-collapse</code></td>
-<td></td>
-</tr>
-<tr>
-<td><loc href="#style-attribute-wrapOption"><code>tts:wrapOption</code></loc></td>
-<td><code>wrap-option</code></td>
-<td><bibref ref="xsl11"/></td>
-<td><code>-inherit</code></td>
-<td>1</td>
-</tr>
-<tr>
-<td><loc href="#style-attribute-writingMode"><code>tts:writingMode</code></loc></td>
-<td><code>writing-mode</code></td>
-<td><bibref ref="xsl11"/></td>
-<td><code>-inherit</code>, <code>+tblr</code></td>
-<td>1</td>
-</tr>
-<tr>
-<td><loc href="#style-attribute-zIndex"><code>tts:zIndex</code></loc></td>
-<td><code>z-index</code></td>
-<td><bibref ref="xsl11"/></td>
-<td><code>-inherit</code></td>
-<td>1</td>
-</tr>
-<tr>
-<td><loc href="#content-attribute-id"><code>xml:id</code></loc></td>
-<td><code>xml:id</code></td>
-<td><bibref ref="xmlid"/></td>
-<td>complies with model</td>
-<td></td>
-</tr>
-<tr>
-<td><loc href="#content-attribute-lang"><code>xml:lang</code></loc></td>
-<td><code>xml:lang</code></td>
-<td><bibref ref="xml10"/></td>
-<td>complies with model</td>
-<td></td>
-</tr>
-<tr>
-<td><loc href="#content-attribute-space"><code>xml:space</code></loc></td>
-<td><code>xml:space</code></td>
-<td><bibref ref="xml10"/></td>
-<td>see notes</td>
-<td>12</td>
-</tr>
-</tbody>
-</table>
-<note>
-<olist>
-<item>
-<p>Attribute name and/or value(s) are normalized to use
-<emph>lowerCamelCase</emph> naming convention.</p>
-</item>
-<item>
-<p>Restricted to expressing a clock value that denotes one of the
-following in accordance to whether the parameter expressed by the
-<att>ttp:timeBase</att> attribute is <code>media</code>, <code>smpte</code>,
-or <code>clock</code>, respectively:
-(1) an offset from an implicit syncbase that is linked to a media time
-line, (2) an event time
-that represents the occurrence of an implicit media marker, or (3) a wallclock
-time.</p>
-</item>
-<item>
-<p>Syntactically subsets and supersets the <bibref
-ref="smil21"/> <code>Clock-value</code> syntax as follows:
-(1) requires non-negative <code>Full-clock-value</code> or
-<code>Timecount-value</code>;
-(2) if <code>Full-clock-value</code>
-then <emph>hours</emph> must be two or more digits;
-(3) if <code>Timecount-value</code>, then <emph>metric</emph> must be
-specified;
-(4) uses <code>m</code> as alias for <code>min</code> metric to denote
-minutes;
-(5) adds <code>f</code> and <code>t</code> metrics denoting frames and
-ticks, respectively;
-(6) adds alternative expression of optional <code>Fraction</code> in
-<code>Full-clock-value</code> by specifying frame count or frame
-count with subframe count.
-</p>
-</item>
-<item>
-<p>
-Interpretation of time expression is further constrained by
-parameters expressed by
-<att>ttp:clockMode</att>,
-<att>ttp:dropMode</att>,
-<att>ttp:frameRate</att>,
-<att>ttp:frameRateMultiplier</att>,
-<att>ttp:markerMode</att>,
-<att>ttp:subFrameRate</att>,
-<att>ttp:tickRate</att>, and
-<att>ttp:timeBase</att> attributes.</p>
-</item>
-<item>
-<p>Uses subset of named colors from model to which two aliases are
-added as follows: <code>magenta</code> as <code>fuchsia</code>, and <code>cyan</code>
-as <code>aqua</code>.</p>
-</item>
-<item>
-<p>If not specified, then parallel (par) container semantics apply to
-the element types specified by <specref
-ref="timing-attribute-timeContainer"/>.</p>
-</item>
-<item>
-<p>Restricts size to length specification which can be a percentage;
-adds optional second length (or percentage) for
-specifying separate horizontal and vertical scaling of glyph's EM
-square.</p>
-</item>
-<item>
-<p>Expressed in terms of writing mode relative padding properties
-rather than absolute padding properties.</p>
-</item>
-<item>
-<p>Excludes <code>blink</code> and <code>no-blink</code> values.</p>
-</item>
-<item>
-<p>Uses only one length specification instead of two, where one length
-defines distance of outline effect from nominal edge of glyph contour
-outline perpendicular to point of glyph contour. Percentage lengths
-are also added to express outline effect in relative to font size.
-Outline effects are intended to be drawn both outside of outer closed
-contours and inside of inner closed contours.</p>
-</item>
-<item>
-<p>On root element, default attribute value specified as
-<code>default</code>, which is defined in terms of whitespace
-normalization. Semantics of preservation and default normalization are
-defined in terms of presentation semantics by <specref
-ref="content-attribute-space"/>.</p>
-</item>
-<item>
-<p>Defined to be inheritable.</p>
-</item>
-</olist>
-</note>
-</div2>
-</inform-div1>
-<inform-div1 id="qa">
-<head>QA Framework Compliance</head>
-<p>This appendix specifies the compliance of this specification with the
-requirements and guidelines defined by <xspecref
-href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/">QA
-Framework Specifications Guidelines</xspecref> <bibref
-ref="qaf-sg"/>.</p>
-<div2>
-<head>Requirements</head>
-<table id="qa-framework-requirements-table" role="common">
-<caption>Table L-1 – QA Framework Requirements Checklist</caption>
-<col width="76%"/>
-<col width="6%" align="center"/>
-<col width="6%" align="center"/>
-<col width="6%" align="center"/>
-<col width="6%" align="center"/>
-<tbody>
-<tr>
-<td><phrase role="strong">Requirement</phrase></td>
-<td><phrase role="strong">YES</phrase></td>
-<td><phrase role="strong">NO</phrase></td>
-<td><phrase role="strong">N/A</phrase></td>
-<td><phrase role="strong">Notes</phrase></td>
-</tr>
-<tr>
-<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#include-conformance-clause-principle">Requirement 01: Include a conformance
-clause</xspecref></td>
-<td><loc href="#conformance">YES</loc></td>
-<td/>
-<td/>
-<td/>
-</tr>
-<tr>
-<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#define-scope-principle">Requirement 02: Define the scope.</xspecref></td>
-<td><loc href="#intro">YES</loc></td>
-<td/>
-<td/>
-<td/>
-</tr>
-<tr>
-<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#implement-principle">Requirement 03: Identify who or what will implement the specification.</xspecref></td>
-<td><loc href="#conformance">YES</loc></td>
-<td/>
-<td/>
-<td/>
-</tr>
-<tr>
-<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#ref-norm-principle">Requirement 04: Make a list of normative references.</xspecref></td>
-<td><loc href="#references">YES</loc></td>
-<td/>
-<td/>
-<td/>
-</tr>
-<tr>
-<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#define-terms-principle">Requirement 05: Define the terms used in the normative parts of the specification.</xspecref></td>
-<td><loc href="#definitions">YES</loc></td>
-<td/>
-<td/>
-<td/>
-</tr>
-<tr>
-<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#conf-label-principle">Requirement 06: Create conformance labels for each part of the conformance model.</xspecref></td>
-<td><loc href="#conformance">YES</loc></td>
-<td/>
-<td/>
-<td/>
-</tr>
-<tr>
-<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#consistent-style-principle">Requirement 07: Use a consistent style for conformance requirements and explain how to distinguish them.</xspecref></td>
-<td><loc href="#conventions">YES</loc></td>
-<td/>
-<td/>
-<td/>
-</tr>
-<tr>
-<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#req-opt-conf-principle">Requirement 08: Indicate which conformance requirements are mandatory, which are recommended, and which are optional.</xspecref></td>
-<td><loc href="#conventions">YES</loc></td>
-<td/>
-<td/>
-<td/>
-</tr>
-<tr>
-<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#subdivide-mandatory-principle">Requirement 09: If the technology is subdivided, then indicate which subdivisions are mandatory for conformance.</xspecref></td>
-<td><loc href="#conformance">YES</loc></td>
-<td/>
-<td/>
-<td/>
-</tr>
-<tr>
-<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#subdiv-constraints-principle">Requirement 10: If the technology is subdivided, then address subdivision constraints.</xspecref></td>
-<td><loc href="#conformance">YES</loc></td>
-<td/>
-<td/>
-<td/>
-</tr>
-<tr>
-<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#likehood-extension-principle">Requirement 11: Address Extensibility.</xspecref></td>
-<td><loc href="#doctypes">YES</loc></td>
-<td/>
-<td/>
-<td/>
-</tr>
-<tr>
-<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#deprecated-feature-principle">Requirement 12: Identify deprecated features.</xspecref></td>
-<td/>
-<td/>
-<td>N/A</td>
-<td>1</td>
-</tr>
-<tr>
-<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#degree-support-principle">Requirement 13: Define how each class of product handles each deprecated feature.</xspecref></td>
-<td/>
-<td/>
-<td>N/A</td>
-<td>1</td>
-</tr>
-</tbody>
-</table>
-<note>
-<olist>
-<item>
-<p>No feature is deprecated by this version of this specification.</p>
-</item>
-</olist>
-</note>
-</div2>
-<div2>
-<head>Guidelines</head>
-<table id="qa-framework-guidelines-table" role="common">
-<caption>Table L-2 – QA Framework Guidelines Checklist</caption>
-<col width="76%"/>
-<col width="6%" align="center"/>
-<col width="6%" align="center"/>
-<col width="6%" align="center"/>
-<col width="6%" align="center"/>
-<tbody>
-<tr>
-<td><phrase role="strong">Guideline</phrase></td>
-<td><phrase role="strong">YES</phrase></td>
-<td><phrase role="strong">NO</phrase></td>
-<td><phrase role="strong">N/A</phrase></td>
-<td><phrase role="strong">Notes</phrase></td>
-</tr>
-<tr>
-<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#conformance-model-gp">Good Practice 01: Define the specification's conformance model in the conformance clause.</xspecref></td>
-<td><loc href="#conformance">YES</loc></td>
-<td/>
-<td/>
-<td/>
-</tr>
-<tr>
-<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#norm-informative-gp">Good Practice 02: Specify in the conformance clause how to distinguish normative from informative content.</xspecref></td>
-<td><loc href="#conventions">YES</loc></td>
-<td/>
-<td/>
-<td/>
-</tr>
-<tr>
-<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#conformance-claim-gp">Good Practice 03: Provide the wording for conformance claims.</xspecref></td>
-<td><loc href="#claims">YES</loc></td>
-<td/>
-<td/>
-<td/>
-</tr>
-<tr>
-<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#ics-gp">Good Practice 04: Provide an Implementation Conformance Statement Pro Forma.</xspecref></td>
-<td/>
-<td>NO</td>
-<td/>
-<td/>
-</tr>
-<tr>
-<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#ics-claim-gp">Good Practice 05: Require an Implementation Conformance Statement as part of valid conformance claims.</xspecref></td>
-<td><loc href="#claims">YES</loc></td>
-<td/>
-<td/>
-</tr>
-<tr>
-<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#use-example-gp">Good Practice 06: Provide examples, use cases, and graphics.</xspecref></td>
-<td><loc href="#example">YES</loc></td>
-<td/>
-<td/>
-<td/>
-</tr>
-<tr>
-<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#write-sample-gp">Good Practice 07: Write sample code or tests.</xspecref></td>
-<td>YES</td>
-<td/>
-<td/>
-<td/>
-</tr>
-<tr>
-<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#ref-define-practice">Good Practice 08: When imposing requirements by normative references, address conformance dependencies.</xspecref></td>
-<td><loc href="#references">YES</loc></td>
-<td/>
-<td/>
-<td>1</td>
-</tr>
-<tr>
-<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#define-terms-inline-gp">Good Practice 09: Define unfamiliar terms in-line and consolidate the definitions in a glossary section.</xspecref></td>
-<td><loc href="#definitions">YES</loc></td>
-<td/>
-<td/>
-<td/>
-</tr>
-<tr>
-<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#reuse-terms-gp">Good Practice 10: Use terms already defined without changing their definition.</xspecref></td>
-<td><loc href="#definitions">YES</loc></td>
-<td/>
-<td/>
-<td>2</td>
-</tr>
-<tr>
-<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#formal-language-gp">Good Practice 11: Use formal languages when possible.</xspecref></td>
-<td><loc href="#schemas">YES</loc></td>
-<td/>
-<td/>
-<td/>
-</tr>
-<tr>
-<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#write-assertion-gp">Good Practice 12: Write Test Assertions.</xspecref></td>
-<td/>
-<td>NO</td>
-<td/>
-<td>3</td>
-</tr>
-<tr>
-<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#subdivide-foster-gp">Good Practice 13: Create subdivisions of the technology when warranted.</xspecref></td>
-<td><loc href="#conformance">YES</loc></td>
-<td/>
-<td/>
-<td/>
-</tr>
-<tr>
-<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#rules-profiles-gp">Good Practice 14: If the technology is profiled, define rules for creating new profiles.</xspecref></td>
-<td><loc href="#vocabulary-profiles">YES</loc></td>
-<td/>
-<td/>
-<td/>
-</tr>
-<tr>
-<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#need-option-gp">Good Practice 15:Use optional features as warranted.</xspecref></td>
-<td>YES</td>
-<td/>
-<td/>
-<td/>
-</tr>
-<tr>
-<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#label-options-gp">Good Practice 16: Clearly identify optional features.</xspecref></td>
-<td>YES</td>
-<td/>
-<td/>
-<td/>
-</tr>
-<tr>
-<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#constraints-gp">Good Practice 17: Indicate any limitations or constraints on optional features.</xspecref></td>
-<td>YES</td>
-<td/>
-<td/>
-<td/>
-</tr>
-<tr>
-<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#extensions-prohibited-gp">Good Practice 18: If extensibility is allowed, define an extension mechanism.</xspecref></td>
-<td><loc href="#extension-vocabulary-overview">YES</loc></td>
-<td/>
-<td/>
-<td/>
-</tr>
-<tr>
-<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#breaking-conformance-gp">Good Practice 19: Warn extension creators to create extensions that do not interfere with conformance.</xspecref></td>
-<td><loc href="#extension-vocabulary-overview">YES</loc></td>
-<td/>
-<td/>
-<td/>
-</tr>
-<tr>
-<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#define-error-gp">Good Practice 20: Define error-handling for unknown extensions.</xspecref></td>
-<td><loc href="#conformance-processor">YES</loc></td>
-<td/>
-<td/>
-<td>4</td>
-</tr>
-<tr>
-<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#workaround-gp">Good Practice 21: Explain how to avoid using a deprecated feature.</xspecref></td>
-<td/>
-<td/>
-<td>N/A</td>
-<td>5</td>
-</tr>
-<tr>
-<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#obsolete-gp">Good Practice 22: Identify obsolete features.</xspecref></td>
-<td/>
-<td/>
-<td>N/A</td>
-<td>5</td>
-</tr>
-<tr>
-<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#error-handling-gp">Good Practice 23: Define an error handling mechanism.</xspecref></td>
-<td><loc href="#reduced-infoset">YES</loc></td>
-<td/>
-<td/>
-<td/>
-</tr>
-</tbody>
-</table>
-<note>
-<olist>
-<item>
-<p>When making normative references to external specifications,
-specific clauses or sections are cited.</p>
-</item>
-<item>
-<p>See also <specref ref="derivation"/>.</p>
-</item>
-<item>
-<p>Test assertions and test suites will be provided prior to entering
-Proposed Recommendation (PR) phase.</p>
-</item>
-<item>
-<p>See criterion #3 in <specref
-ref="conformance-processor"/> and definition of
-<loc href="#doctypes">TTML Abstract Document Instance</loc>.</p>
-</item>
-<item>
-<p>No feature is deprecated or obsoleted by this version of this specification.</p>
-</item>
-</olist>
-</note>
-</div2>
-</inform-div1>
-<inform-div1 id="streaming">
-<head>Streaming TTML Content</head>
-<p>TTML Content is designed to support streamability by implementing the
-following properties:</p>
-<ulist>
-<item>
-<p>can be progressively encoded (i.e., does not require computing
-subsequent data prior to sending current data);</p>
-</item>
-<item>
-<p>can be progressively decoded (i.e., does not require forward
-references, but uses only reverse references when necessary);</p>
-</item>
-<item>
-<p>does not require dereferencing (and subsequent loading) of any
-resources other than TTML content (i.e., no embedded URIs);</p>
-</item>
-<item>
-<p>does not support alternative content forms (e.g., different
-language, graphics formats, time bases) in a single document;</p>
-</item>
-<item>
-<p>has timing structure compiled into inline format that makes
-possible a temporal ordering of content that follows temporal
-presentation order;</p>
-</item>
-<item>
-<p>constrains content models to prevent arbitrary nested content
-structures;</p>
-</item>
-</ulist>
-<p>One possible means by which TTML Content may be streamed is to
-partition a TTML document instance's information set into
-non-overlapping fragments, where one particular fragment, call it the
-<emph>root fragment</emph>, represents the front matter (head) of the
-document instance as well as its top level structural elements, and
-other fragments represent content whose time intervals are expected to
-be active in parallel.</p>
-<p>In applications that require arbitrary (random) entry into a
-stream, i.e., the property of being able to start reading data at an
-arbitrary data access unit, the root fragment will be repetitively
-transmitted (inserted) into the stream in order to permit a decoder to
-resynchronize and acquire sufficient structural information in the
-information set in order to interpret subsequent content
-fragments.</p>
-<p>An example of such a fragmentation of a TTML document instance is
-shown in <specref ref="fragment-streaming-graphic"/>.</p>
-<table id="fragment-streaming-graphic" role="example-images">
-<caption>Figure 3 – Fragment Streaming</caption>
-<tbody>
-<tr>
-<td><graphic id="graphic-fragment-streaming" source="images/streaming.png" alt="Fragment Streaming"/></td>
-</tr>
-</tbody>
-</table>
-<note>
-<p>This specification does not define a transport buffer model or a decoder
-capabilities model.</p>
-</note>
-</inform-div1>
-&acknowledgements;
-
-<!-- new change log format - not used yet -->
-<!--
-<inform-div1 id="change-log">
-<head>Change Log</head>
-<p>@@This paragraph will be replaced by the change log. DO NOT TOUCH@@</p>
-</inform-div1>
--->
-
-</back>
-</spec>
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- $Id$ -->
+<!DOCTYPE spec PUBLIC "-//W3C//DTD Specification V2.10//EN" "xmlspec-ttml11.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 " ">
+<!ENTITY sect "§">
+<!ENTITY aring "å">
+<!ENTITY ccedil "ç">
+<!ENTITY Ccedil "Ç">
+<!ENTITY mult "×">
+<!ENTITY uuml "ü">
+<!ENTITY nbsp " ">
+<!ENTITY ndash "–">
+<!ENTITY mdash "—">
+<!ENTITY prime "′">
+<!ENTITY hArr "⇔">
+<!ENTITY trade "™">
+<!ENTITY hellip "…">
+<!ENTITY isin "∈">
+<!ENTITY minus "−">
+<!ENTITY le "≤">
+<!ENTITY ge "≥">
+<!ENTITY plusmn "±">
+<!ENTITY thinsp " ">
+<!ENTITY infin "∞">
+<!ENTITY real "ℜ">
+<!ENTITY prop "∝">
+<!ENTITY not "¬">
+<!ENTITY ttml-ex1 SYSTEM "./examples/ex1.xml.esc">
+<!ENTITY ttml-ex1-x-0 SYSTEM "./examples/ex1-x-0.xml.esc">
+<!ENTITY ttml-ex1-p-0 SYSTEM "./examples/ex1-p-0.xml.esc">
+<!ENTITY ttml-ex1-x-1 SYSTEM "./examples/ex1-x-1.xml.esc">
+<!ENTITY ttml-ex1-x-2 SYSTEM "./examples/ex1-x-2.xml.esc">
+<!ENTITY ttml-ex2-pop-on SYSTEM "./examples/ex2-pop-on.xml.esc">
+<!ENTITY ttml-ex2-roll-up SYSTEM "./examples/ex2-roll-up.xml.esc">
+<!ENTITY ttml-ex2-paint-on SYSTEM "./examples/ex2-paint-on.xml.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-ttml11.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>Cox Communications, Inc.</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>
+<errataloc href="https://dvcs.w3.org/hg/ttml/raw-file/default/ttml10/spec/ttml-issues.html"/>
+<translationloc href="http://www.w3.org/2003/03/Translations/byTechnology?technology=ttml11"/>
+<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><track></el>
+element in an HTML5 document, or a <el><text></el> or
+<el><textstream></el> media 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 processing.</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 (as implied by
+the acronym DFXP), providing, for
+example, a standard content format to reference from a <el><track></el>
+element in an HTML5 document, or a <el><text></el> or
+<el><textstream></el> media 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 an
+HTML or 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 <emph>Document Instance</emph>. 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>
+<note role="historical">
+<p>In previous drafts of this specification, TTML was referred to as DFXP (Distribution
+Format Exchange Profile). This latter term is retained for historical reasons in
+certain contexts, such as profile names and designators, and the short name
+<code>ttaf1-dfxp</code> used in URLs to refer to this specification.</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 the 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 (labeled as "DFXP" in the figure).</p>
+<table id="model-graphic" role="example-images">
+<caption>Figure 1 – 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 <emph>Document Instance</emph> 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 styling and timing information.</p>
+<table id="ttml-example-document-structure" role="example">
+<caption>Example Fragment – TTML Document Structure</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<tt xml:lang="" xmlns="http://www.w3.org/ns/ttml">
+ <head>
+ <metadata/>
+ <styling/>
+ <layout/>
+ </head>
+ <body/>
+</tt>
+</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="ttml-example-metadata" role="example">
+<caption>Example Fragment – TTML Metadata</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<metadata xmlns:ttm="http://www.w3.org/ns/ttml#metadata">
+ <ttm:title>Timed Text TTML Example</ttm:title>
+ <ttm:copyright>The Authors (c) 2006</ttm:copyright>
+</metadata>
+</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,
+specified inline with content information, or both.</p>
+<p>In <specref ref="ttml-example-styling"/>, four style sets of specifications
+are defined, with one set serving as a collection of default styles.</p>
+<table id="ttml-example-styling" role="example">
+<caption>Example Fragment – TTML Styling</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<styling xmlns:tts="http://www.w3.org/ns/ttml#styling">
+ <!-- s1 specifies default color, font, and text alignment -->
+ <style xml:id="s1"
+ tts:color="white"
+ tts:fontFamily="proportionalSansSerif"
+ tts:fontSize="22px"
+ tts:textAlign="center"
+ />
+ <!-- alternative using yellow text but otherwise the same as style s1 -->
+ <style xml:id="s2" style="s1" tts:color="yellow"/>
+ <!-- a style based on s1 but justified to the right -->
+ <style xml:id="s1Right" style="s1" tts:textAlign="end" />
+ <!-- a style based on s2 but justified to the left -->
+ <style xml:id="s2Left" style="s2" tts:textAlign="start" />
+</styling>
+</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="ttml-example-layout"/>, the region definition makes
+reference to style specification <code>s1</code> augmented by specific inline
+styles which, together, allow content flowed into the region to inherit
+from the region's styles (in the case
+that a style is not already explicitly specified on content or inherited
+via the content hierarchy.)</p>
+<table id="ttml-example-layout" role="example">
+<caption>Example Fragment – TTML Layout</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<layout xmlns:tts="http://www.w3.org/ns/ttml#styling">
+ <region xml:id="subtitleArea"
+ style="s1"
+ tts:extent="560px 62px"
+ tts:padding="5px 3px"
+ tts:backgroundColor="black"
+ tts:displayAlign="after"
+ />
+</layout>
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p>The content of a <emph>Document Instance</emph> 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="ttml-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 —
+in this case, the division parent is interpreted (by default) as a parallel time
+container.</p>
+<table id="ttml-example-body" role="example">
+<caption>Example Fragment – TTML Body</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<body region="subtitleArea">
+ <div>
+ <p xml:id="subtitle1" begin="0.76s" end="3.45s">
+ It seems a paradox, does it not,
+ </p>
+ <p xml:id="subtitle2" begin="5.0s" end="10.0s">
+ that the image formed on<br/>
+ the Retina should be inverted?
+ </p>
+ <p xml:id="subtitle3" begin="10.0s" end="16.0s" style="s2">
+ It is puzzling, why is it<br/>
+ we do not see things upside-down?
+ </p>
+ <p xml:id="subtitle4" begin="17.2s" end="23.0s">
+ You have never heard the Theory,<br/>
+ then, that the Brain also is inverted?
+ </p>
+ <p xml:id="subtitle5" begin="23.0s" end="27.0s" style="s2">
+ No indeed! What a beautiful fact!
+ </p>
+ <p xml:id="subtitle6a" begin="28.0s" end="34.6s" style="s2Left">
+ But how is it proved?
+ </p>
+ <p xml:id="subtitle6b" begin="28.0s" end="34.6s" style="s1Right">
+ Thus: what we call
+ </p>
+ <p xml:id="subtitle7" begin="34.6s" end="45.0s" style="s1Right">
+ the vertex of the Brain<br/>
+ is really its base
+ </p>
+ <p xml:id="subtitle8" begin="45.0s" end="52.0s" style="s1Right">
+ and what we call its base<br/>
+ is really its vertex,
+ </p>
+ <p xml:id="subtitle9a" begin="53.5s" end="58.7s">
+ it is simply a question of nomenclature.
+ </p>
+ <p xml:id="subtitle9b" begin="53.5s" end="58.7s" style="s2">
+ How truly delightful!
+ </p>
+ </div>
+</body>
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p>The first subtitle <specref ref="ttml-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
+targeted region. Note also that content is presented
+at the bottom (after edge) of the containing region due to the <code>tts:displayAlign="after"</code>
+being specified on the region definition.</p>
+<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>
+<note role="explanation">
+<p>In this example, the <el>p</el> element is used as a presentational
+element rather than as a semantic element, i.e., as a linguistic paragraph.
+It is up to an author to determine which TTML elements are used to convey
+the intended meaning. For instance, this example could be written to use
+timing on <el>span</el> elements in order to preserve the integrity of
+semantic paragraphs.</p>
+</note>
+<table id="ttml-example-subtitle-1" role="example-images">
+<caption>Subtitle 1 – 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="ttml-example-subtitle-2" role="example-images">
+<caption>Subtitle 2 – 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="ttml-example-subtitle-3" role="example-images">
+<caption>Subtitle 3 – 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="ttml-example-subtitle-4" role="example-images">
+<caption>Subtitle 4 – 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="ttml-example-subtitle-5" role="example-images">
+<caption>Subtitle 5 – 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 paragraphs expressing each subtitle using different styles that override color and paragraph
+text alignment of the default style. Note that the flow order is determined by the lexical
+order of elements as they appear in the content hierarchy.</p>
+<table id="ttml-example-subtitle-6" role="example-images">
+<caption>Subtitles 6a and 6b – 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 the paragraph right (end) justification in the
+inline progression direction.</p>
+<table id="ttml-example-subtitle-7" role="example-images">
+<caption>Subtitle 7 – 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="ttml-example-subtitle-8" role="example-images">
+<caption>Subtitle 8 – 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="ttml-example-subtitle-9" role="example-images">
+<caption>Subtitles 9a and 9b – 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 <emph>Document Instance</emph>. 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>TTAF</label>
+<def>
+<p>Timed Text Authoring Format</p>
+</def>
+</gitem>
+<gitem>
+<label>TTWG</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
+Sets</emph> <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"/>, §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"/>, §2.6.</p>
+</def>
+</gitem>
+<gitem>
+<label>Computed Cell Size</label>
+<def>
+<p>The size (extent) of a cell computed by dividing the width of the <emph>Root Container
+Region</emph> by the column count, i.e., the number of cells in the horizontal axis, and by dividing
+the height of the <emph>Root Container Region</emph> by the row count, i.e., the number of cells in the vertical
+axis, where the column and row counts are determined by the <att>ttp:cellResolution</att> parameter attribute.</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>Document Instance</label>
+<def>
+<p>A concrete realization of a Timed Text Markup Language document, where the concrete form
+is specific to the context of reference. For example, a sequence of bytes that represents an
+XML serialization of a Timed Text document, an internal, parsed representation of such a
+Timed Text document, etc.</p>
+</def>
+</gitem>
+<gitem>
+<label>Document Interchange Context</label>
+<def>
+<p>The implied context or environment external to a <emph>Content Processor</emph> in
+which document interchange occurs, and in which out-of-band protocols or specifications
+may define certain behavioral defaults, such as an implied <emph>Content Profile</emph>.</p>
+</def>
+</gitem>
+<gitem>
+<label>Document Processing Context</label>
+<def>
+<p>The implied context or environment internal to a <emph>Content Processor</emph> in
+which document processing occurs, and in which out-of-band protocols or specifications
+may define certain behavioral defaults, such as the establishment or creation of a
+<emph>Synthetic Document Syncbase</emph>.</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"/>, §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>Presentation Processor</label>
+<def>
+<p>A <emph>Content Processor</emph> which purpose is to layout, format, and render,
+i.e., to present, <emph>Timed Text Markup Language</emph> content by applying the presentation semantics
+defined in 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 satisfies the
+constraints specify by <specref ref="reduced-infoset"/>.</p>
+</def>
+</gitem>
+<gitem>
+<label>Related Media Object</label>
+<def>
+<p>A (possibly null) media object associated with or otherwise related
+to a <emph>Document Instance</emph>. For example, an aggregate audio/video media
+object for which a <emph>Document Instance</emph> provides caption or subtitle
+information, and with which that <emph>Document Instance</emph> is associated.</p>
+</def>
+</gitem>
+<gitem>
+<label>Related Media Object Region</label>
+<def>
+<p>When a non-null <emph>Related Media Object</emph> exists, the region in which
+a presentation processor presents this media object.</p>
+</def>
+</gitem>
+<gitem>
+<label>Root Container Region</label>
+<def>
+<p>A logical region that establishes a coordinate system into which
+<emph>Document Instance</emph> content regions are placed and optionally clipped.</p>
+</def>
+</gitem>
+<gitem>
+<label>Root Temporal Extent</label>
+<def>
+<p>
+The temporal extent (interval) defined by the temporal beginning and ending of a <emph>Document Instance</emph> in relationship with some external application or presentation context.
+</p>
+</def>
+</gitem>
+<gitem>
+<label>SMPTE Time Code</label>
+<def>
+<p>A time code whose format and semantics are established by <bibref ref="smpte12m"/>,
+which may be embedded into or otherwise associated with media content, such
+as a broadcast audio/video stream.</p>
+</def>
+</gitem>
+<gitem>
+<label>Synthetic Document Syncbase</label>
+<def>
+<p>A document level <xspecref href="http://www.w3.org/TR/2005/REC-SMIL2-20051213/smil-timing.html#Timing-Syncbases">syncbase</xspecref>
+<bibref ref="smil21"/>, § 10.7.1, synthesized or otherwise established by
+the <emph>Document Processing Context</emph> in accordance with the
+<emph>Related Media Object</emph> or other processing criteria.</p>
+</def>
+</gitem>
+<gitem>
+<label>Synthetic SMPTE Document Syncbase</label>
+<def>
+<p>A <emph>Synthetic Document Syncbase</emph> constructed from <emph>SMPTE Time
+Code</emph> values embedded in or associated with the <emph>Related Media Object</emph> or
+otherwise determined by the <emph>Document Processing Context</emph>.</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>
+<gitem>
+<label>Transformation Processor</label>
+<def>
+<p>A <emph>Content Processor</emph> which purpose is to transform or otherwise rewrite
+<emph>Timed Text Markup Language</emph> content to either <emph>Timed Text Markup Language</emph>
+or to another (arbitrary) content format. An example of the first is a processor that removes
+or rewrites TTML features so as to conform to a profile of TTML. An example of the latter is
+a processor that translates TTML into a completely different timed text format. Because this
+specification does not otherwise define a target profile or format for transformation processing,
+no further transformation semantics are defined by this specification.</p>
+</def>
+</gitem>
+<gitem>
+<label>Valid Abstract Document Instance</label>
+<def>
+<p>An <emph>Abstract Document Instance</emph> which has been assessed for validity
+and found to be valid as defined by <specref ref="doctypes"/>.</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>If normative specification language takes an imperative form,
+then it is to be treated as if the term <phrase role="strong">must</phrase>
+applies. Furthermore, if normative language takes a declarative form,
+and this language is governed by <phrase role="strong">must</phrase>,
+then it is also to be treated as if the term <phrase role="strong">must</phrase>
+applies.</p>
+<note role="example">
+<p>For example, the phrases "treat X as an error" and "consider X
+as an error" are to be read as mandatory requirements in the context of use. Similarly, if the specification
+prose is "X must apply", "X applies", or "X is mandatory", and "X" is further defined as "X is Y and Z",
+then, by transitive closure, this last declarative phrase is to be read as "Y is mandatory" and
+"Z is mandatory" in the context of use.</p>
+</note>
+<p>All normative syntactic definitions of XML representations and
+other related terms are depicted with a light yellow-orange background color
+and labeled as "XML Representation" or "Syntax Representation", such
+as in the following:</p>
+<table id="elt-syntax-example" role="syntax">
+<caption>XML Representation – Element Information Item: example</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<example
+ <phrase role="reqattr">count</phrase> = integer
+ size = (<emph>large</emph>|<emph>medium</emph>|<emph>small</emph>) : medium>
+ <emph>Content:</emph> (all | any*)
+</example>
+</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>The term linear white-space (LWSP) is to be interpreted as a non-empty sequence of
+SPACE (U+0020), TAB (U+0009), CARRIAGE RETURN (U+000D), or LINE FEED (U+000A),
+which corresponds to production [3] <code>S</code> as defined by <bibref ref="xml10"/>.</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 – Sample</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<tt xml:lang="" xmlns="http://www.w3.org/ns/ttml">
+ <head>
+ <metadata/>
+ <styling/>
+ <layout/>
+ </head>
+ <body/>
+</tt>
+</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 <emph>Document Instance</emph> conforms to this specification if the following criteria are
+satisfied:</p>
+<olist>
+<item>
+<p>When transporting a <emph>Document Instance</emph> in a <emph>Document Interchange Context</emph> in which a
+Media Type <bibref ref="media-types"/> identifies the content type of the interchanged <emph>Document Instance</emph>, then the specified media type is
+<code>application/ttml+xml</code> in conformance with <bibref
+ref="xml-media"/> § 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 <emph>Document Instance</emph> 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 <emph>Document Instance</emph> is or can
+be associated with one of the <emph>Abstract Document Types</emph> defined by
+<specref ref="doctypes"/>.</p>
+</item>
+<item>
+<p>The <emph>Reduced XML Infoset</emph> that corresponds to the <emph>Document Instance</emph> is a
+<emph>Valid Abstract Document Instance</emph> of the associated
+<emph>Abstract Document Type</emph>.</p>
+</item>
+<item>
+<p>The <emph>Reduced XML Infoset</emph> 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 <emph>Content Processor</emph> 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 <emph>Document Instance</emph>.</p>
+</item>
+<item>
+<p>If a process does or can perform validation of a candidate
+<emph>Document Instance</emph>, then it provides at least one mechanism to
+implicitly or explicitly associate the
+<emph>Reduced XML Infoset</emph> representation
+of a conformant <emph>Document Instance</emph> with one of the
+<emph>Abstract Document Types</emph> 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 <emph>Document Instance</emph>
+unless the processor does not support some required
+(mandatory) feature specified or implied by a TTML profile
+declared to apply to the <emph>Document Instance</emph>.</p>
+</item>
+<item>
+<p>The processor supports all mandatory processing semantics defined by this specification.</p>
+<note role="clarification">
+<p>The phrase <emph>mandatory semantics</emph> refers to all explicit use of the conformance
+key phrases <phrase role ="strong">must</phrase> and <phrase role="strong">must not</phrase> as well as any
+declarative statement that can be reasonably inferred from such key phrases. For example, these
+mandatory semantics include support for all features marked as mandatory in <specref ref="feature-support"/>.</p>
+</note>
+</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>
+<note role="clarification">
+<p>The phrase <emph>optional semantics</emph> refers to all explicit use of the conformance
+key phrases <phrase role ="strong">should</phrase>, <phrase role="strong">should not</phrase>,
+<phrase role ="strong">may</phrase>, and <phrase role="strong">may not</phrase>,
+as well as any declarative statement that can be reasonably inferred from such key phrases. For example, these
+optional semantics include support for all features marked as optional in <specref ref="feature-support"/>.</p>
+</note>
+</item>
+</olist>
+</div3>
+<div3 id="conformance-transformation-processor">
+<head>Transformation Processor Conformance</head>
+<p>A TTML <emph>Content Processor</emph> is a conformant TTML <emph>Transformation Processor</emph> 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>
+<p>A TTML <emph>Content Processor</emph> is a conformant TTML <emph>Presentation Processor</emph> 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 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 the conformance of a TTML <emph>Document Instance</emph> or
+<emph>Content Processor</emph> must make
+reference to an implementation compliance statement (ICS).</p>
+<p>An implementation compliance statement must identify all mandatory
+and optional features of this specification that are satisfied by the
+document instance or the content processor implementation. In particular, the statement must
+identify the utilized or supported TTML vocabulary profile(s) as
+defined by <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 <emph>Document Instance</emph> 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 <emph>Abstract Document Types</emph>:</p>
+<ulist>
+<item><p><specref ref="ttml-content-doctype"/></p></item>
+</ulist>
+<p>Each <emph>Abstract Document Type</emph> 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 <emph>Abstract Document Instance</emph> may be assessed in terms of validity,
+and is considered to be a <emph>Valid Abstract Document Instance</emph> 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 <emph>Abstract Document Type</emph>, 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 <emph>Abstract Document Type</emph>, 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 <emph>Abstract Document Type</emph>,
+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 <emph>Abstract Document Type</emph>.</p>
+<note>
+<p>While a conformant processor may not <emph>a priori</emph> reject a
+conformant <emph>Document Instance</emph> that adheres to a
+supported content profile, a given <emph>Document Instance</emph> may be
+constrained by the author or authoring tool to satisfy a more
+restrictive definition of validity.</p>
+</note>
+<div2 id="ttml-content-doctype">
+<head>TTML Content</head>
+<p>TTML Content is an <emph>Abstract Document Type</emph> 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 references two types of schemas that may be used to validate a superset/subset
+of conformant TTML Content <emph>Document Instances</emph>:</p>
+<ulist>
+<item><p><specref ref="ttml-schema-rnc"/></p></item>
+<item><p><specref ref="ttml-schema-xsd"/></p></item>
+</ulist>
+<p>The (root) document element of a TTML Content <emph>Document Instance</emph> must be a
+<el>tt</el> element, as defined by <specref
+ref="document-structure-vocabulary-tt"/>.</p>
+<note role="clarification">
+<p>The schemas referenced by this specification do not validate all syntactic constraints
+defined by this specification, and, as such, represent a superset of conformant
+TTML Content. In particular, performing validation with one of the above
+referenced schemas may result in a <emph>false positive</emph> indication of validity.
+For example, both the RNC and XSD schemas specify
+that a <att>tts:fontFamily</att> attribute must
+satisfy the <code>xs:string</code> XSD data type; however, this data type is a superset
+of the values permitted to be used with the <att>tts:fontFamily</att> attribute.</p>
+<p>In addition, the RNC schema may produce a <emph>false negative</emph>
+indication of validity when using the <att>xml:id</att> attribute with an element in
+a foreign namespace, thus representing a subset of conformant TTML Content. This is
+due to a specific limitation in expressing wildcard patterns involving <code>xsd:ID</code>
+typed attributes in Relax NG schemas. Note that this specification defines the
+formal validity of a <emph>Document Instance</emph> to be based on an <emph>Abstract Document Instance</emph> 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 <emph>Document Instance</emph> validity.</p>
+</note>
+</div2>
+</div1>
+<div1 id="vocabulary">
+<head>Vocabulary</head>
+<p>This section defines the
+namespaces, profiles, and vocabulary (as an element and attribute
+catalog) of the Timed Text Markup Language (TTML) as follows:</p>
+<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
+XML Namespaces <bibref ref="xmlns10"/> 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 <emph>Document Instance</emph>, it is not required that the default
+prefixes shown below are used. Any prefix or namespace binding that satisfies the constraints
+of XML Namespaces <bibref ref="xmlns10"/> may be used that is associated with the specified namespace URI.</p>
+</note>
+<table id="namespace-vocab-table" role="common">
+<caption>Table 1 – Namespaces</caption>
+<col width="30%"/>
+<col/>
+<col/>
+<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"/> or in another TTWG specification.</p>
+<table id="profile-vocab-table" role="common">
+<caption>Table 2 – Profiles</caption>
+<col width="25%"/>
+<col/>
+<tbody>
+<tr>
+<th>Name</th>
+<th>Designator</th>
+</tr>
+<tr>
+<td>DFXP Transformation</td>
+<td><code>http://www.w3.org/ns/ttml/profile/dfxp-transformation</code></td>
+</tr>
+<tr>
+<td>DFXP Presentation</td>
+<td><code>http://www.w3.org/ns/ttml/profile/dfxp-presentation</code></td>
+</tr>
+<tr>
+<td>DFXP Full</td>
+<td><code>http://www.w3.org/ns/ttml/profile/dfxp-full</code></td>
+</tr>
+<tr>
+<td>SDP US</td>
+<td><code>http://www.w3.org/ns/ttml/profile/sdp-us</code></td>
+</tr>
+</tbody>
+</table>
+<p></p>
+<p>A profile designator must adhere to the
+<code>xsd:anyURI</code> data type defined by <bibref ref="xsd-2"/>,
+§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>All profile designators which have the TT Profile Namespace as a prefix but are otherwise not listed in
+<specref ref="profile-vocab-table"/> are reserved for future standardization, and must not be appear in a conformant
+<emph>Document Instance</emph>. Nothwithstanding this constraint, 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 <emph>Profile Definition Document</emph>
+provided it does not use the TT Profile Namespace as a prefix.</p>
+<p>The profile of TTML that must be supported by a
+TTML <emph>Content Processor</emph> in order to process a <emph>Document Instance</emph> is determined 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 <emph>Document Instance</emph>), 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 <emph>Document Instance</emph>, 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 <emph>Document Instance</emph>, and if the <emph>Document
+Interchange Context</emph> does not make an implicit or explicit
+reference to a pre-defined Content Profile or does not specify a <emph>Profile Definition
+Document</emph> or another equivalent set of feature designations,
+then the DFXP Transformation profile applies.</p>
+<note role="elaboration">
+<p>It is not a requirement on a conformant <emph>Document Instance</emph> that a <emph>Content Profile</emph> be internally
+defined by use of a <el>ttp:profile</el> element or internally referenced by a
+<att>ttp:profile</att> attribute. More specifically, it is permitted that the <emph>Document
+Interchange Context</emph> determines the applicable <emph>Content Profile</emph> through private
+agreement, out-of-band protocol, or common use (between sender and receiver) of a profile defined
+by an external specification.</p>
+</note>
+<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 <emph>Profile Definition Document</emph>.
+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 <emph>Document Instance</emph> 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 <emph>Document Instance</emph> 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 <emph>Document Instance</emph> 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="ttml-example-sub-profile"/>.</p>
+<table id="ttml-example-sub-profile" role="example">
+<caption>Example Fragment – DFXP Additive Profile</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<tt xml:lang="" xmlns="http://www.w3.org/ns/ttml">
+ <head>
+ <profile use="dfxp-presentation" xmlns="http://www.w3.org/ns/ttml#parameter">
+ <features xml:base="http://www.w3.org/ns/ttml/feature/">
+ <feature value="required">#fontStyle-italic</feature>
+ </features>
+ </profile>
+ </head>
+ <body/>
+</tt>
+</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 TTML 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 <emph>Document Instance</emph> is enumerated in
+<specref ref="element-vocab-table"/>.</p>
+<table id="element-vocab-table" role="common">
+<caption>Table 3 – Element Vocabulary</caption>
+<col width="25%"/>
+<col/>
+<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>
+<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 – Element Vocabulary Groups</caption>
+<col width="25%"/>
+<col/>
+<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>
+<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 – Attribute Vocabulary</caption>
+<col width="25%"/>
+<col/>
+<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
+<emph>Document Instance</emph> may contain arbitrary namespace qualified
+elements that reside in any namespace other than those namespaces
+defined for use with this specification. Furthermore, a conforming
+<emph>Document Instance</emph> 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 <emph>Document Processing Context</emph> 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 <emph>Document Instance</emph>
+or <emph>Content Processor</emph>:</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 <emph>Content Processor</emph> in order to process a
+<emph>Document Instance</emph> that makes (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 <emph>Document Instance</emph>;</p>
+</item>
+<item>
+<p>as the root element of a TTML <emph>Profile Definition Document</emph>
+instance;</p>
+</item>
+</ulist>
+<p>When a <el>tt:profile</el> element appears within a TTML <emph>Document Instance</emph>,
+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 <emph>Document Instance</emph>.</p>
+<p>When a <el>tt:profile</el> element is used by a TTML <emph>Profile Definition Document</emph> instance,
+it serves to publish a machine
+readable specification of a specific TTML profile, of which
+this specification defines three such <emph>Profile Definition Documents</emph> 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 – Element Information Item: ttp:profile</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<ttp:profile
+ use = string
+ <loc href="#content-attribute-id">xml:id</loc> = ID
+ {<emph>any attribute not in default or any TT namespace</emph>}>
+ <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>*
+</ttp:profile>
+</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"/>,
+§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
+<emph>Profile Definition Document</emph> as defined by <specref ref="profiles"/>,
+or (2) a feasibly dereferenceable resource representing a valid <emph>Profile Definition
+Document</emph> 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 <emph>Profile Definition Document</emph> that is not one of the
+standard, predefined profiles defined by <specref ref="profiles"/>. Furthermore,
+a conformant TTML processor may make use of a built-in, static
+form of each standard, predefined profile so as not to require
+dereferencing a network resource.</p>
+<p>If a TTML processor is unable to dereference a non-standard
+<emph>Profile Definition Document</emph>, 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 <emph>Document Instance</emph> due to the inability to
+reference a non-standard <emph>Profile Definition Document</emph>, 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 – ttp:profile</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<ttp:profile use="dfxp-presentation">
+ <ttp:features xml:base="http://www.w3.org/ns/ttml/feature/">
+ <ttp:feature>#text-outline</ttp:feature>
+ </ttp:features>
+</ttp:profile>
+</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 – Element Information Item: ttp:features</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<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>}>
+ <emph>Content:</emph> <loc href="#element-vocab-group-table">Metadata.class</loc>*, <loc href="#parameter-vocabulary-feature">ttp:feature</loc>*
+</ttp:features>
+</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"/>,
+§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"/>,
+§3.2.17.</p>
+<table id="elt-syntax-parameter-feature" role="syntax">
+<caption>XML Representation – Element Information Item: ttp:feature</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<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>}>
+ <emph>Content:</emph> #PCDATA
+</ttp:feature>
+</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"/>, and, furthermore,
+the specific designation that appears in this URI, i.e., the portion of the feature designation
+that starts with the fragment identifier separator '#', must
+be defined by this specification or some published version thereof (that
+has achieved REC status).</p>
+<p>If the URI expressed by the content of the <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, irrespective of
+whether the feature is enabled or disabled, in order to process
+the document; if the value is
+<code>use</code>, then the processor must both (1) implement or
+otherwise support the feature and (2) have enabled (activated) use of the
+feature.</p>
+<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 the TTML processor implementation does
+not support the feature, or if the <att>value</att> attribute is
+<code>use</code> and the TTML processor implementation supports but has disabled
+that feature, then it must not further process the document
+without the presence of an explicit override from an end-user or some
+implementation specific parameter traceable to an end-user or to a
+user or system configuration setting. If a TTML processor aborts
+processing of a <emph>Document Instance</emph> 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>If some defined (i.e., standardized) or otherwise well known feature is not specified by
+a <el>ttp:feature</el> element in a given profile, then it must be interpreted as if the feature were specified
+with the <att>value</att> attribute equal to <code>optional</code>.</p>
+<note role="elaboration">
+<p>In particular, if some feature is not present in a profile definition, then
+it is not to be interpreted as meaning the use of that feature (in a <emph>Document Instance</emph>)
+is disallowed or otherwise prohibited.</p>
+</note>
+<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 – ttp:feature</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<ttp:profile use="http://www.w3.org/ns/ttml/profile/dfxp-presentation">
+ <ttp:features xml:base="http://www.w3.org/ns/ttml/feature/">
+ <phrase role="strong"><ttp:feature value="required">#fontStyle-italic</ttp:feature></phrase>
+ <phrase role="strong"><ttp:feature value="required">#textDecoration-under</ttp:feature></phrase>
+ </ttp:features>
+</ttp:profile>
+</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).</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 – Element Information Item: ttp:extensions</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<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>}>
+ <emph>Content:</emph> <loc href="#element-vocab-group-table">Metadata.class</loc>*, <loc href="#parameter-vocabulary-extension">ttp:extension</loc>*
+</ttp:extensions>
+</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"/>,
+§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"/>,
+§3.2.17.</p>
+<table id="elt-syntax-parameter-extension" role="syntax">
+<caption>XML Representation – Element Information Item: ttp:extension</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<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>}>
+ <emph>Content:</emph> #PCDATA
+</ttp:extension>
+</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 the TTML processor implementation does
+not support the extension, or if the <att>value</att> attribute is
+<code>use</code> and the TTML processor implementation supports but has disabled
+that extension, then it must not further process the document without the
+presence of an explicit override from an end-user or some
+implementation specific parameter traceable to an end-user or to a
+user or system configuration setting. If a TTML processor aborts
+processing of a <emph>Document Instance</emph> 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>If some well known extension is not specified by
+a <el>ttp:extension</el> element in a given profile, then it must be interpreted as if the extension were specified
+with the <att>value</att> attribute equal to <code>optional</code>.</p>
+<note role="elaboration">
+<p>In particular, if some extension is not present in a profile definition, then
+it is not to be interpreted as meaning the use of that extension (in a <emph>Document Instance</emph>)
+is disallowed or otherwise prohibited.</p>
+</note>
+<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 – ttp:extension</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<ttp:profile use="http://www.w3.org/ns/ttml/profile/dfxp-transformation">
+ <ttp:extensions xml:base="http://example.org/ttml/extension/">
+ <phrase role="strong"><ttp:extension value="use">#prefilter-by-language</ttp:extension></phrase>
+ </ttp:extensions>
+</ttp:profile>
+</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 enable 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) must
+appear between adjacent non-terminal components of a TT Parameter value
+unless some other delimiter is permitted and used.</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 <emph>Root Container Region</emph>
+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 – 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"><digit></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>
+<p>Except where indicated otherwise, when a <loc href="#style-value-length"><length></loc> expressed in
+cells denotes a dimension parallel to the inline or block progression dimension,
+the cell's dimension in the inline or block progression dimension applies, respectively.</p>
+<note role="example">
+<p>For example, if padding (on all four edges) is specified as 0.1c, the cell resolution
+is 20 by 10, and the extent of the <emph>Root Container Region</emph> is 640 by 480, then, assuming top to bottom,
+left to right writing mode, the start and end padding will be (640 / 20) * 0.1 pixels and the
+before and after padding will be (480 / 10) * 0.1 pixels.</p>
+</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 and semantics.</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 – 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 – 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−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−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−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:05</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 <emph>Document Instance</emph> 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 – ttp:frameRate</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+ttp:frameRate
+ : <loc href="#style-value-digit"><digit></loc>+ // <emph>value</emph> > 0
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p>The frame rate that applies to a <emph>Document Instance</emph> is used to
+interpret time expressions that are expressed in <emph>frames</emph>
+as defined by <specref ref="timing-value-timeExpression"/>.</p>
+<p>If the <code>media</code> time base applies and the effective frame rate is
+integral, then a frame is interpreted as a division of a second of media
+time, such that if the frame rate is specified as <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> ∈ [0…<emph>F−1</emph>].</p>
+<note role="elaboration">
+<p>See <specref ref="time-expression-semantics-media"/> for further details
+on the interpretation of time expressions for the <code>media</code> time base.</p>
+</note>
+<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 – 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"><digit></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…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… (= 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 – 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>discontinuous</code>.</p>
+<note role="historical">
+<p>The default value for this parameter was originally specified
+(in <xspecref href="http://www.w3.org/TR/2010/REC-ttaf1-dfxp-20101118/">TTML 1.0 First Edition</xspecref>)
+as <code>continuous</code>; however, further evaluation of the state of the industry indicates this
+choice was incorrect, and that the most common default is <code>discontinuous</code>.</p>
+</note>
+<note role="recommendation">
+<p>Due to lack of industry consensus on the utility and interpretation of the
+<code>continuous</code> marker mode, authors are advised to avoid its use. Furthermore, the
+<att>ttp:markerMode</att> is being considered for deprecation in the next revision of this
+specification.</p>
+</note>
+<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>continuous</code> applies, then time
+expressions may be converted to real time
+coordinates by taking into account the computed frame rate
+and drop mode as expressed by the <att>ttp:dropMode</att> parameter.
+In this case, the <emph>Content Processor</emph> must create and maintain a
+<emph>Synthetic SMPTE Document Syncbase</emph> within which these time
+expressions are interpreted as further described in
+<specref ref="timing-time-intervals"/>.</p>
+<note role="explanation">
+<p>When operating with <code>smpte</code> time base and
+<code>continuous</code> marker mode, there is an implied time coordinate
+space, the <emph>Synthetic SMPTE Document Syncbase</emph>,
+defined by the monotonically increasing (or decreasing)
+<bibref ref="smpte12m"/> time coordinates, while taking into account
+the computed frame rate and drop mode. All time expressions are interpreted
+in relationship to this time coordinate space based upon
+<emph>SMPTE Time Code</emph> synchronization events (markers),
+where the <emph>Document Processing Context</emph> emits these events with implied constraints
+regarding time coordinate monoticity and resynchronization in
+the presence of dropped frames.</p>
+<p>Use of <code>continuous</code> marker mode with the <code>smpte</code>
+time base is different from using the <code>media</code> time base
+because (1) the semantics of the <att>ttp:dropMode</att> parameter
+apply to the former, but not the latter, and (2) <bibref ref="smpte12m"/>
+time coordinates may be applied monotonically to media which has been
+subjected to dilation in time, constriction in time, or reversal in
+time.</p>
+</note>
+<p>If a value of <code>discontinuous</code> applies, then time
+expressions must not be converted to real time
+coordinates, arithmetical operators (addition, multiplication) are not
+defined on time expressions, and, consequently, any (well-formed)
+expression of a duration must be considered to be invalid.</p>
+<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 the <emph>Document Processing Context</emph>
+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 – 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"><digit></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 <emph>Document Instance</emph>.</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"/>,
+§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 <emph>Document Instance</emph> 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 – ttp:subFrameRate</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+ttp:subFrameRate
+ : <loc href="#style-value-digit"><digit></loc>+ // <emph>value</emph> > 0
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p>The sub-frame rate that applies to a <emph>Document Instance</emph> is used to
+interpret time expressions that are expressed in <emph>sub-frames</emph>
+as defined by <specref ref="timing-value-timeExpression"/>.</p>
+<p>If the <code>media</code> time base applies and the effective frame rate is
+integral, a sub-frame is interpreted as a division of a frame of media
+time, such that if the sub-frame rate is specified as <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> ∈ [0…<emph>S−1</emph>].</p>
+<note role="elaboration">
+<p>See <specref ref="time-expression-semantics-media"/> for further details
+on the interpretation of time expressions for the <code>media</code> time base.</p>
+</note>
+<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 <emph>Document Instance</emph> 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 – ttp:tickRate</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+ttp:tickRate
+ : <loc href="#style-value-digit"><digit></loc>+ // <emph>value</emph> > 0
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p>The tick rate that applies to a <emph>Document Instance</emph> 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>If the <code>media</code> time base applies,
+a tick is interpreted as an integral division of a second of media
+time, such that if the tick rate is specified as <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> ∈ [0…<emph>T−1</emph>].</p>
+<note role="elaboration">
+<p>See <specref ref="time-expression-semantics-media"/> for further details
+on the interpretation of time expressions for the <code>media</code> time base.</p>
+</note>
+<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 <emph>Document Instance</emph>.</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 – 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 <emph>Document Instance</emph> is to be synchronized, or it may
+be the content of a <emph>Document Instance</emph> 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, i.e., the media play rate is
+not unity, then it is expected that the
+presentation of associated Timed Text content will be similarly
+paused, accelerated, or decelerated, respectively. The means for
+controlling an external
+media time base is outside the scope of this specification.</p>
+</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 <emph>Document Instance</emph> 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>
+<note role="explanation">
+<p>When the time base is designated as <code>smpte</code>,
+every time expression denotes a media marker value akin to that
+defined by <bibref ref="smil21"/>, § 10.4.1, except instead
+of using an opaque marker name, a structured <bibref ref="smpte12m"/>
+time coordinate serves as the marker name.</p>
+</note>
+<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 <emph>Document Instance</emph> 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 <emph>Document Instance</emph>, the interpretation of time expressions
+is uniform throughout the <emph>Document Instance</emph>.</p>
+</note>
+<note role="elaboration">
+<p>See <specref ref="time-expression-semantics"/> for further details
+on the interpretation of time expressions according to the designated time base.</p>
+</note>
+</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
+<emph>Document Instance</emph>:</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 <emph>Document Instance</emph>.</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 – Element Information Item: tt</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<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>}>
+ <emph>Content:</emph> <loc href="#document-structure-vocabulary-head">head</loc>?, <loc href="#document-structure-vocabulary-body">body</loc>?
+</tt>
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p>The <emph>Root Temporal Extent</emph>, i.e., the time interval over which a <emph>Document Instance</emph> is active, has an implicit duration that is equal to the
+implicit duration of the <el>body</el> element of the document, if the <el>body</el> element is present, or zero, if the <el>body</el> element is absent.</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 <emph>Root Container Region</emph> in
+which content regions are located and presented. If no <att>tts:extent</att>
+attribute is specified, then the spatial extent of the <emph>Root Container Region</emph> is
+considered to be determined by the <emph>Document Processing Context</emph>.
+The origin of the <emph>Root Container Region</emph> is determined by the <emph>Document Processing Context</emph>.</p>
+<note role="clarification">
+<p>In the absence of other requirements, and if a <emph>Related Media Object</emph> exists, then it is recommended
+that the <emph>Document Processing Context</emph> determine that:</p>
+<ulist>
+<item><p>if no <att>tts:extent</att> is specified on the root <el>tt</el> element, the extent of the <emph>Root Container Region</emph> be
+established as equal to the extent of the <emph>Related Media Object Region</emph>; and</p></item>
+<item><p>the origin of the <emph>Root Container Region</emph> be established so that this region is centered in the
+<emph>Related Media Object Region</emph>.</p></item>
+</ulist>
+</note>
+<note role="elaboration">
+<p>If an author desires to signal the (storage or image) aspect ratio of the <emph>Root Container Region</emph>
+without specifying its resolution, then this may be accomplished by using metadata specified
+in an external namespace, such as <att>m708:aspectRatio</att> as defined in <bibref ref="smpte2052"/>, §5.4.4.
+This would permit, for example, the interchange of information that reflects the
+the semantics of <bibref ref="cea708d"/> , §4.5 “Caption Service Metadata”, “ASPECT RATIO”.</p>
+</note>
+<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 <emph>Document Instance</emph>.</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 <emph>Document Instance</emph> 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 <emph>Document Instance</emph> 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 – Element Information Item: head</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<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>}>
+ <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>?
+</head>
+</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 <emph>Root Temporal Extent</emph>.</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 – Element Information Item: body</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<body
+ <loc href="#timing-attribute-begin">begin</loc> = <loc href="#timing-value-timeExpression"><timeExpression></loc>
+ <loc href="#timing-attribute-dur">dur</loc> = <loc href="#timing-value-timeExpression"><timeExpression></loc>
+ <loc href="#timing-attribute-end">end</loc> = <loc href="#timing-value-timeExpression"><timeExpression></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>}>
+ <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>*
+</body>
+</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 beginning
+point of the <emph>Root Temporal Extent</emph>. Similarly, if the end point of this interval remains unspecified, then the
+end point is interpreted as the ending point of the <emph>Root Temporal Extent</emph>.</p>
+<note role="explanation">
+<p>A <emph>Document Instance</emph> 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 beginning and
+ending time of the <emph>Root Temporal Extent</emph>.</p>
+<p>If the <emph>Root Temporal Extent</emph> is shorter than the computed duration of the
+<el>body</el> element, then the active time interval of a <el>body</el> element is
+truncated to the active end point of the <emph>Root Temporal Extent</emph>.</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 <emph>Document Instance</emph> 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 – Element Information Item: div</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<div
+ <loc href="#timing-attribute-begin">begin</loc> = <loc href="#timing-value-timeExpression"><timeExpression></loc>
+ <loc href="#timing-attribute-dur">dur</loc> = <loc href="#timing-value-timeExpression"><timeExpression></loc>
+ <loc href="#timing-attribute-end">end</loc> = <loc href="#timing-value-timeExpression"><timeExpression></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>}>
+ <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>*
+</div>
+</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 <emph>Document Instance</emph>
+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 intermixed
+<code>span</code> elements,
+<code>br</code> elements,
+or text nodes interpreted as an anonymous spans.</p>
+<p>Any metadata specified by children in the <code>Metadata.class</code>
+element group applies semantically to the <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 – Element Information Item: p</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<p
+ <loc href="#timing-attribute-begin">begin</loc> = <loc href="#timing-value-timeExpression"><timeExpression></loc>
+ <loc href="#timing-attribute-dur">dur</loc> = <loc href="#timing-value-timeExpression"><timeExpression></loc>
+ <loc href="#timing-attribute-end">end</loc> = <loc href="#timing-value-timeExpression"><timeExpression></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>}>
+ <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>*
+</p>
+</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 <emph>Document Instance</emph> 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>
+<note role="elaboration"><p>The presentation semantics of TTML effectively
+implies that a <el>p</el> element constitutes a line break. In particular,
+it is associated with a block-stacking constraint both before the first
+generated line area and after the last generated line area. See
+<specref ref="semantics-region-layout-step-2"/> for further details.</p>
+</note>
+</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 intermixed
+<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 – Element Information Item: span</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<span
+ <loc href="#timing-attribute-begin">begin</loc> = <loc href="#timing-value-timeExpression"><timeExpression></loc>
+ <loc href="#timing-attribute-dur">dur</loc> = <loc href="#timing-value-timeExpression"><timeExpression></loc>
+ <loc href="#timing-attribute-end">end</loc> = <loc href="#timing-value-timeExpression"><timeExpression></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>}>
+ <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>*
+</span>
+</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 <emph>Document Instance</emph> 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 – Element Information Item: br</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<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>}>
+ <emph>Content:</emph> <loc href="#element-vocab-group-table">Metadata.class</loc>*, <loc href="#element-vocab-group-table">Animation.class</loc>*
+</br>
+</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 control character
+<code>CR</code> (U+000D)
+followed by the control code <code>LF</code> (U+000A) when presented on a teletype device.
+Therefore, two <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"/>, §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 except parameter vocabulary.</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"/>, §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 except parameter vocabulary.</p>
+<p>The semantics of the value <code>default</code> are fixed to mean that
+when performing presentation processing of a <emph>Document Instance</emph> as
+described by <specref ref="semantics-region-layout-step-2"/>,
+processing must occur as
+if the following properties were specified on the affected
+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
+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>
+<note role="derivation">
+<p>The semantics of the above four cited XSL-FO properties are defined by
+by <bibref ref="xsl11"/>, § 7.17.3, 7.16.7, 7.16.12, and 7.16.8, respectively.</p>
+</note>
+</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>
+<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 <emph>Document Instances</emph> 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 effects of the attributes in this section
+are intended to be compatible with the layout and formatting model of XSL; however, Presentation agents
+may use any technology to satisfy the authorial intent of the document. In particular
+since <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>
+<p>No normative use of an
+<code><?xml-stylesheet ... ?></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
+<emph>Document Instance</emph>:</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 – Element Information Item: styling</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<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>}>
+ <emph>Content:</emph> <loc href="#element-vocab-group-table">Metadata.class</loc>*, <loc href="#styling-vocabulary-style">style</loc>*
+</styling>
+</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 <emph>Root Temporal Extent</emph>.</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 – Element Information Item: style</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<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>}>
+ <emph>Content:</emph> EMPTY
+</style>
+</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) must
+appear between adjacent non-terminal components of a value of a TT
+Style or TT Style Extension
+Property value unless some other delimiter is permitted and used.</p>
+<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 style (property) 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>
+<p>If specified, the value of a <att>style</att> attribute must
+adhere to the <code>IDREFS</code> data type defined by <bibref ref="xsd-2"/>,
+§ 3.3.10, and, furthermore, each IDREF must reference a <el>style</el> element
+which has a <el>styling</el> element as an ancestor.</p>
+<p>If the same IDREF, <emph>ID<sub>1</sub></emph>, appears more than one time in the value of a <att>style</att>
+attribute, then there should be an intervening IDREF, <emph>ID<sub>2</sub></emph>, where
+<emph>ID<sub>2</sub></emph> is not equal to <emph>ID<sub>1</sub></emph>.</p>
+<note role="explanation">
+<p>This constraint is intended to discourage the use of redundant referential styling while still
+allowing the same style to be referenced multiple times in order to potentially override prior
+referenced styles, e.g., when an intervening, distinct style is referenced in the IDREFS list.</p>
+</note>
+<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%"/>
+<col/>
+<tbody>
+<tr>
+<td><emph>Values:</emph></td>
+<td>
+<loc href="#style-value-color"><color></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 – Background Color</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<region xml:id="r1">
+ <style tts:extent="306px 114px"/>
+ <style <phrase role="strong">tts:backgroundColor="red"</phrase>/>
+ <style tts:color="white"/>
+ <style tts:displayAlign="after"/>
+ <style tts:padding="3px 40px"/>
+</region>
+...
+<p region="r1" <phrase role="strong">tts:backgroundColor="purple"</phrase> tts:textAlign="center">
+ Twinkle, twinkle, little bat!<br/>
+ How <span <phrase role="strong">tts:backgroundColor="green"</phrase>>I wonder</span> where you're at!
+</p>
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p></p>
+<table id="style-attribute-backgroundColor-example-1-images" role="example-images">
+<caption>Example Rendition – Background Color</caption>
+<tbody>
+<tr>
+<td><graphic source="images/backgroundColor.png" alt="TTML backgroundColor style property"/></td>
+</tr>
+</tbody>
+</table>
+<note role="derivation">
+<p>The semantics of the style property represented by this attribute are based upon
+that defined by <bibref ref="xsl11"/>, § 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%"/>
+<col/>
+<tbody>
+<tr>
+<td><emph>Values:</emph></td>
+<td>
+<loc href="#style-value-color"><color></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 <emph>Root Container Region</emph>.</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 – Color</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<region xml:id="r1">
+ <style tts:backgroundColor="black"/>
+ <style <phrase role="strong">tts:color="white"</phrase>/>
+ <style tts:displayAlign="after"/>
+ <style tts:textAlign="center"/>
+</region>
+...
+<p region="r1">
+ In spring, when woods are <span <phrase role="strong">tts:color="green"</phrase>>getting green</span>,<br/>
+ I'll try and tell you what I mean.
+</p>
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p></p>
+<table id="style-attribute-color-example-1-images" role="example-images">
+<caption>Example Rendition – Color</caption>
+<tbody>
+<tr>
+<td><graphic source="images/color.png" alt="TTML color style property"/></td>
+</tr>
+</tbody>
+</table>
+ <note role="derivation">
+<p>The semantics of the style property
+represented by this attribute are based upon that defined by <bibref ref="xsl11"/>,
+§ 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%"/>
+<col/>
+<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 – Direction</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<region xml:id="r1">
+ <style tts:extent="265px 84px"/>
+ <style tts:padding="5px"/>
+ <style tts:backgroundColor="black"/>
+ <style tts:color="white"/>
+ <style tts:displayAlign="after"/>
+ <style tts:textAlign="center"/>
+</region>
+...
+<p region="r1">
+ Little birds are playing<br/>
+ Bagpipes on the shore,<br/>
+ <span tts:unicodeBidi="bidiOverride" <phrase role="strong">tts:direction="rtl"</phrase>>where the tourists snore.</span>
+</p>
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p></p>
+<table id="style-attribute-direction-example-1-images" role="example-images">
+<caption>Example Rendition – Direction</caption>
+<tbody>
+<tr>
+<td>
+<graphic source="images/direction.png" alt="TTML direction style property"/>
+</td>
+</tr>
+</tbody>
+</table>
+<note role="derivation">
+<p>The semantics of the style property
+represented by this attribute are based upon that defined by <bibref ref="xsl11"/>,
+§ 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%"/>
+<col/>
+<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 – Display</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<region xml:id="r1">
+ <style tts:extent="369px 119px"
+ tts:backgroundColor="black"
+ tts:color="white"
+ tts:displayAlign="before"
+ tts:textAlign="start"/>
+</region>
+...
+<div region="r1">
+ <p dur="5s">
+ [[[
+ <span <phrase role="strong">tts:display="none"</phrase>>
+ <set begin="1s" dur="1s" <phrase role="strong">tts:display="auto"</phrase>/>
+ Beautiful soup,
+ </span>
+ <span <phrase role="strong">tts:display="none"</phrase>>
+ <set begin="2s" dur="1s" <phrase role="strong">tts:display="auto"</phrase>/>
+ so rich and green,
+ </span>
+ <span <phrase role="strong">tts:display="none"</phrase>>
+ <set begin="3s" dur="1s" <phrase role="strong">tts:display="auto"</phrase>/>
+ waiting in a hot tureen!
+ </span>
+ ]]]
+ </p>
+</div>
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p></p>
+<table id="style-attribute-display-example-1-images" role="example-images">
+<caption>Example Rendition – 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>
+<note role="derivation">
+<p>The semantics of the style property
+represented by this attribute are based upon that defined by <bibref ref="css2"/>, § 9.2.4.</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%"/>
+<col/>
+<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 – Display Align</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<region xml:id="r1">
+ <style tts:extent="128px 66px" tts:origin="0px 0px"
+ tts:backgroundColor="black" tts:color="white"/>
+ <style <phrase role="strong">tts:displayAlign="before"</phrase>/>
+ <style tts:textAlign="start"/>
+</region>
+<region xml:id="r2">
+ <style tts:extent="192px 66px" tts:origin="128px 66px"/>
+ tts:backgroundColor="green" tts:color="white"/>
+ <style <phrase role="strong">tts:displayAlign="after"</phrase>/>
+ <style tts:textAlign="start"/>
+</region>
+<region xml:id="r3">
+ <style tts:extent="128px 66px"/> style tts:origin="0px 132px"
+ tts:backgroundColor="black" tts:color="white"/>
+ <style <phrase role="strong">tts:displayAlign="before"</phrase>/>
+ <style tts:textAlign="start"/>
+</region>
+<region xml:id="r4">
+ <style tts:extent="192px 66px" tts:origin="128px 198px"/>
+ tts:backgroundColor="green" tts:color="white"/>
+ <style <phrase role="strong">tts:displayAlign="after"</phrase>/>
+ <style tts:textAlign="start"/>
+</region>
+...
+<div>
+ <p region="r1">I sent a message to the fish:</p>
+ <p region="r2">I told them<br/> "This is what I wish."</p>
+ <p region="r3">The little fishes of the sea,</p>
+ <p region="r4">They sent an<br/> answer back to me.</p>
+</div>
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p></p>
+<table id="style-attribute-displayAlign-example-1-images" role="example-images">
+<caption>Example Rendition – Display Align</caption>
+<tbody>
+<tr>
+<td><graphic source="images/displayAlign.png" alt="TTML displayAlign style property"/></td>
+</tr>
+</tbody>
+</table>
+<note role="derivation">
+<p>The semantics of the style property
+represented by this attribute are based upon that defined by <bibref ref="xsl11"/>,
+§ 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 <emph>Root Container Region</emph>).</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%"/>
+<col/>
+<tbody>
+<tr>
+<td><emph>Values:</emph></td>
+<td>
+<code>auto</code> |
+<loc href="#style-value-length"><length></loc> <loc href="#style-value-length"><length></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 <emph>Root Container Region</emph></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"><length></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>The <loc href="#style-value-length"><length></loc> value(s) used to express extent must be non-negative.</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 extent of the <emph>Root Container Region</emph>.</p>
+<p>The extent of the <emph>Root Container Region</emph> is determined either by a
+<att>tts:extent</att> specified on the <el>tt</el> element, if
+present, or as described by <specref ref="document-structure-vocabulary-tt"/> 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"><length></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 – Extent</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<region xml:id="r1">
+ <style <phrase role="strong">tts:extent="330px 122px"</phrase>/>
+ <style tts:backgroundColor="black"/>
+ <style tts:color="white"/>
+ <style tts:displayAlign="after"/>
+ <style tts:textAlign="center"/>
+</region>
+...
+<p region="r1">
+ 'Tis the voice of the Lobster:<br/>
+ I heard him declare,<br/>
+ "You have baked me too brown,<br/>
+ I must sugar my hair."
+</p>
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p></p>
+<table id="style-attribute-extent-example-1-images" role="example-images">
+<caption>Example Rendition – 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%"/>
+<col/>
+<tbody>
+<tr>
+<td><emph>Values:</emph></td>
+<td>
+(<loc href="#style-value-familyName"><familyName></loc> | <loc href="#style-value-genericFamilyName"><genericFamilyName></loc>)
+(<code>","</code>
+ (<loc href="#style-value-familyName"><familyName></loc> | <loc href="#style-value-genericFamilyName"><genericFamilyName></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 – Font Family</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<region xml:id="r1">
+ <style tts:extent="474px 146px"/>
+ <style tts:backgroundColor="black"/>
+ <style tts:color="white"/>
+ <style tts:displayAlign="center"/>
+ <style tts:textAlign="start"/>
+ <style <phrase role="strong">tts:fontFamily="proportionalSansSerif"</phrase>/>
+</region>
+...
+<div region="r1">
+ <p>
+ "The time has come," the Walrus said,<br/>
+ "to talk of many things:
+ </p>
+ <p tts:textAlign="end" <phrase role="strong">tts:fontFamily="monospaceSerif"</phrase>>
+ Of shoes, and ships, and sealing wax,<br/>
+ Of cabbages and kings,
+ </p>
+ <p>
+ And why the sea is boiling hot,<br/>
+ and whether pigs have wings."
+ </p>
+</div>
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p></p>
+<table id="style-attribute-fontFamily-example-1-images" role="example-images">
+<caption>Example Rendition – Font Family</caption>
+<tbody>
+<tr>
+<td><graphic source="images/fontFamily.png" alt="TTML fontFamily style property"/></td>
+</tr>
+</tbody>
+</table>
+<note role="derivation">
+<p>The semantics of the style property
+represented by this attribute are based upon that defined by <bibref ref="xsl11"/>,
+§ 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.</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%"/>
+<col/>
+<tbody>
+<tr>
+<td><emph>Values:</emph></td>
+<td>
+<loc href="#style-value-length"><length></loc> <loc href="#style-value-length"><length></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, or if no parent element, then relative to the <emph>Computed Cell Size</emph></td>
+</tr>
+<tr>
+<td><emph>Animatable:</emph></td>
+<td>discrete</td>
+</tr>
+</tbody>
+</table>
+<p>If a single <loc href="#style-value-length"><length></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"><length></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 units 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
+units of the <loc href="#style-value-length"><length></loc> values must be the same.</p>
+<p>The <loc href="#style-value-length"><length></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 closest supported value 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"/>.
+When a single <length> is expressed using cell units, then it refers to the height of
+the <emph>Computed Cell Size</emph>.</p>
+</note>
+<note role="example">
+<p>As specified above, the use of percentage units to express font size are interpreted as
+relative to <emph>Computed Cell Size</emph> when there is no parent element. For example, if cell resolution
+is 32 by 15, and the extent of the <emph>Root Container Region</emph> is 640 by 480, then the
+<emph>Computed Cell Size</emph> is [20px, 32px], i.e., 640px/32 (width) and 480px/15 (height). Consequently, if
+<att>tts:fontSize</att> were specified as 75% on the root <el>tt</el> element, then this would
+be equivalent to specifying 24px, i.e., 32px cell height * 75%.
+If two length expressions (independent horizontal and vertical font scaling) were specified, e.g.,
+"80% 75%", then this would be equivalent to specifying "16px 24px", i.e., 80% of 20px cell width is
+16px, and 75% of 32px cell height is 24px.</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 – Font Size</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<region xml:id="r1">
+ <style tts:extent="299px 97px"/>
+ <style tts:backgroundColor="black"/>
+ <style tts:color="white"/>
+ <style tts:displayAlign="center"/>
+ <style tts:textAlign="center"/>
+ <style tts:fontFamily="proportionalSansSerif"/>
+ <style <phrase role="strong">tts:fontSize="18px"</phrase>/>
+</region>
+...
+<p region="r1">
+ Then fill up the glasses<br/>
+ with treacle and ink,<br/>
+ Or anything else<br/>
+ that is <span <phrase role="strong">tts:fontSize="24px"</phrase>>pleasant</span> to drink.
+</p>
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p></p>
+<table id="style-attribute-fontSize-example-1-images" role="example-images">
+<caption>Example Rendition – Font Size</caption>
+<tbody>
+<tr>
+<td><graphic source="images/fontSize.png" alt="TTML fontSize style property"/></td>
+</tr>
+</tbody>
+</table>
+<note role="derivation">
+<p>The semantics of the style property
+represented by this attribute are based upon that defined by <bibref ref="xsl11"/>,
+§ 7.9.4. The addition of a second length component to permit specifying font
+width and height independently is an extension introduced by TTML.</p>
+</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%"/>
+<col/>
+<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>
+denotes 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 – Font Style</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<region xml:id="r1">
+ <style tts:extent="331px 84px"/>
+ <style tts:backgroundColor="black"/>
+ <style tts:color="white"/>
+ <style tts:displayAlign="after"/>
+ <style tts:textAlign="center"/>
+ <style tts:fontFamily="proportionalSansSerif"/>
+</region>
+...
+<p region="r1">
+ In autumn, when the leaves are brown,<br/>
+ Take pen and ink, and <span <phrase role="strong">tts:fontStyle="italic"</phrase>>write it down.</span>
+</p>
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p></p>
+<table id="style-attribute-fontStyle-example-1-images" role="example-images">
+<caption>Example Rendition – Font Style</caption>
+<tbody>
+<tr>
+<td><graphic source="images/fontStyle.png" alt="TTML fontStyle style property"/></td>
+</tr>
+</tbody>
+</table>
+<p></p>
+<note role="derivation">
+<p>The semantics of the style property
+represented by this attribute are based upon that defined by <bibref ref="xsl11"/>,
+§ 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%"/>
+<col/>
+<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 – Font Weight</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<region xml:id="r1">
+ <style tts:extent="376px 95px"/>
+ <style tts:backgroundColor="black"/>
+ <style tts:color="white"/>
+ <style tts:displayAlign="center"/>
+ <style tts:textAlign="center"/>
+ <style tts:fontFamily="proportionalSansSerif"/>
+</region>
+...
+<p region="r1">
+ They told me you had been to her,<br/>
+ <span <phrase role="strong">tts:fontWeight="bold"</phrase>>and mentioned me to him:</span><br/>
+ She gave me a good character<br/>
+ <span <phrase role="strong">tts:fontWeight="bold"</phrase>>but said I could not swim.</span>
+</p>
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p></p>
+<table id="style-attribute-fontWeight-example-1-images" role="example-images">
+<caption>Example Rendition – Font Weight</caption>
+<tbody>
+<tr>
+<td><graphic source="images/fontWeight.png" alt="TTML fontWeight style property"/></td>
+</tr>
+</tbody>
+</table>
+<note role="derivation">
+<p>The semantics of the style property
+represented by this attribute are based upon that defined by <bibref ref="xsl11"/>,
+§ 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%"/>
+<col/>
+<tbody>
+<tr>
+<td><emph>Values:</emph></td>
+<td>
+<code>normal</code> |
+<loc href="#style-value-length"><length></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"><length></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 – Line Height</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<region xml:id="r1">
+ <style tts:extent="255px 190px"/>
+ <style tts:backgroundColor="black"/>
+ <style tts:color="white"/>
+ <style tts:displayAlign="center"/>
+ <style tts:textAlign="start"/>
+ <style tts:fontFamily="proportionalSansSerif"/>
+ <style tts:fontSize="16px"/>
+ <style <phrase role="strong">tts:lineHeight="32px"</phrase>/>
+</region>
+...
+<p region="r1">
+ He thought he saw an elephant,<br/>
+ That practised on a fife:<br/>
+ He looked again, and found it was<br/>
+ A letter from his wife.<br/>
+ "At length I realise," he said,<br/>
+ "The bitterness of Life.
+"</p>
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p></p>
+<table id="style-attribute-lineHeight-example-1-images" role="example-images">
+<caption>Example Rendition – Line Height</caption>
+<tbody>
+<tr>
+<td><graphic source="images/lineHeight.png" alt="TTML lineHeight style property"/></td>
+</tr>
+</tbody>
+</table>
+<p></p>
+<note role="derivation">
+<p>The semantics of the style property
+represented by this attribute are based upon that defined by <bibref ref="xsl11"/>,
+§ 7.16.4. Furthermore, it is the intention of this specification that the
+allocation rectangle of a line be consistent with the <phrase role="strong">per-inline-height-rectangle</phrase>
+as defined by <bibref ref="xsl11"/>, § 4.5, i.e., that a CSS-style line box stacking strategy be used.
+</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%"/>
+<col/>
+<tbody>
+<tr>
+<td><emph>Values:</emph></td>
+<td>
+<loc href="#style-value-alpha"><alpha></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>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 – Opacity</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<region xml:id="r1" dur="5s">
+ <set begin="0s" dur="1s" <phrase role="strong">tts:opacity="1.00"</phrase>/>
+ <set begin="1s" dur="1s" <phrase role="strong">tts:opacity="0.75"</phrase>/>
+ <set begin="2s" dur="1s" <phrase role="strong">tts:opacity="0.50"</phrase>/>
+ <set begin="3s" dur="1s" <phrase role="strong">tts:opacity="0.25"</phrase>/>
+ <set begin="4s" dur="1s" <phrase role="strong">tts:opacity="0.00"</phrase>/>
+ <style tts:extent="304px 77px"/>
+ <style tts:backgroundColor="black"/>
+ <style tts:color="white"/>
+ <style tts:displayAlign="after"/>
+ <style tts:textAlign="center"/>
+</region>
+...
+<p region="r1">
+ The sun was shining on the sea
+</p>
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p></p>
+<table id="style-attribute-opacity-example-1-images" role="example-images">
+<caption>Example Rendition – 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>
+<note role="derivation">
+<p>The semantics of the style property
+represented by this attribute are based upon that defined by <bibref ref="css3-color"/>,
+§ 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 <emph>Root Container Region</emph>.</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%"/>
+<col/>
+<tbody>
+<tr>
+<td><emph>Values:</emph></td>
+<td>
+<code>auto</code> |
+<loc href="#style-value-length"><length></loc> <loc href="#style-value-length"><length></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 <emph>Root Container Region</emph></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"><length></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 origin of the <emph>Root Container Region</emph>.</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 – Origin</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<region xml:id="r1">
+ <style <phrase role="strong">tts:origin="40px 40px"</phrase>/>
+ <style tts:extent="308px 92px"/>
+ <style tts:backgroundColor="black"/>
+ <style tts:color="white"/>
+ <style tts:displayAlign="center"/>
+ <style tts:textAlign="center"/>
+</region>
+...
+<p region="r1">
+ "To dine!" she shrieked in dragon-wrath.<br/>
+ "To swallow wines all foam and froth!<br/>
+ To simper at a table-cloth!"
+</p>
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p></p>
+<table id="style-attribute-origin-example-1-images" role="example-images">
+<caption>Example Rendition – 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%"/>
+<col/>
+<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 – Overflow</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<region xml:id="r1">
+ <style tts:extent="232px 40px"/>
+ <style tts:origin="0px 0px"/>
+ <style tts:backgroundColor="black"/>
+ <style tts:color="red"/>
+ <style tts:displayAlign="before"/>
+ <style tts:textAlign="start"/>
+ <style tts:fontFamily="proportionalSansSerif"/>
+ <style tts:fontSize="18px"/>
+ <style tts:wrapOption="noWrap"/>
+ <style <phrase role="strong">tts:overflow="visible"</phrase>/>
+</region>
+<region xml:id="r2">
+ <style tts:extent="232px 40px"/>
+ <style tts:origin="0px 43px"/>
+ <style tts:backgroundColor="black"/>
+ <style tts:color="red"/>
+ <style tts:displayAlign="before"/>
+ <style tts:textAlign="start"/>
+ <style tts:fontFamily="proportionalSansSerif"/>
+ <style tts:fontSize="18px"/>
+ <style tts:wrapOption="noWrap"/>
+ <style <phrase role="strong">tts:overflow="hidden"</phrase>/>
+</region>
+...
+<p region="r1">
+ "But wait a bit," the Oysters cried,<br/>
+ "Before we have our chat;
+</p>
+<p region="r2">
+ For some of us are out of breath,<br/>
+ And all of us are fat!"
+</p>
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p></p>
+<table id="style-attribute-overflow-example-1-images" role="example-images">
+<caption>Example Rendition – 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>
+<note role="derivation">
+<p>The semantics of the style property
+represented by this attribute are based upon that defined by <bibref ref="xsl11"/>,
+§ 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%"/>
+<col/>
+<tbody>
+<tr>
+<td><emph>Values:</emph></td>
+<td>
+<loc href="#style-value-length"><length></loc> |
+<loc href="#style-value-length"><length></loc> <loc href="#style-value-length"><length></loc> |
+<loc href="#style-value-length"><length></loc> <loc href="#style-value-length"><length></loc> <loc href="#style-value-length"><length></loc> |
+<loc href="#style-value-length"><length></loc> <loc href="#style-value-length"><length></loc> <loc href="#style-value-length"><length></loc> <loc href="#style-value-length"><length></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"><length></loc> specification,
+then that length applies to all edges of the affected areas. If the value
+consists of two <loc href="#style-value-length"><length></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"><length></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"><length></loc> specifications are provided, then they apply to before, end,
+after, and start edges, respectively.</p>
+<p>The <loc href="#style-value-length"><length></loc> value(s) used to express padding 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>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 – Padding</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<region xml:id="r1">
+ <style tts:extent="446px 104px"/>
+ <style tts:backgroundColor="black"/>
+ <style tts:color="white"/>
+ <style tts:displayAlign="after"/>
+ <style tts:textAlign="center"/>
+ <style <phrase role="strong">tts:padding="10px 40px"</phrase>/>
+</region>
+...
+<p region="r1" tts:backgroundColor="red">
+ Just the place for a Snark! I have said it twice:<br/>
+ That alone should encourage the crew.<br/>
+ Just the place for a Snark! I have said it thrice:<br/>
+ What I tell you three times is true.
+</p>
+</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 – Padding</caption>
+<tbody>
+<tr>
+<td>
+<graphic source="images/padding.png" alt="TTML padding style property"/>
+</td>
+</tr>
+</tbody>
+</table>
+<note role="derivation">
+<p>The semantics of the style property
+represented by this attribute are based upon that defined by <bibref ref="xsl11"/>,
+§ 7.31.15, except that individual shorthand values map to writing
+mode relative padding values as defined by <bibref ref="xsl11"/>,
+§ 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%"/>
+<col/>
+<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 flowed 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 – Show Background</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<region xml:id="r1">
+ <style tts:origin="0px 0px"/>
+ <style tts:extent="265px 100px"/>
+ <style tts:backgroundColor="black"/>
+ <style <phrase role="strong">tts:showBackground="always"</phrase>/>
+ <style tts:color="white"/>
+ <style tts:displayAlign="before"/>
+ <style tts:textAlign="start"/>
+</region>
+<region xml:id="r2">
+ <style tts:origin="205px 60px"/>
+ <style tts:extent="290px 100px"/>
+ <style tts:backgroundColor="red"/>
+ <style tts:color="white"/>
+ <style tts:displayAlign="before"/>
+ <style tts:textAlign="end"/>
+ <style <phrase role="strong">tts:showBackground="whenActive"</phrase>/>
+</region>
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<note role="derivation">
+<p>The semantics of the style property
+represented by this attribute are based upon that defined by <bibref ref="smil21"/>,
+§ 5.3.3.</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%"/>
+<col/>
+<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 – Text Align</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<region xml:id="r1">
+ <style tts:extent="355px 43px"/>
+ <style tts:origin="0px 0px"/>
+ <style tts:backgroundColor="black"/>
+ <style tts:color="white"/>
+ <style <phrase role="strong">tts:textAlign="start"</phrase>/>
+</region>
+<region xml:id="r2">
+ <style tts:extent="355px 43px"/>
+ <style tts:origin="0px 47px"/>
+ <style tts:backgroundColor="black"/>
+ <style tts:color="white"/>
+ <style <phrase role="strong">tts:textAlign="end"</phrase>/>
+</region>
+...
+<p region="r1">
+ Beware the Jabberwock, my son!<br/>
+ The jaws that bite, the claws that catch!
+</p>
+<p region="r2">
+ Beware the Jubjub bird, and shun<br/>
+ The frumious Bandersnatch!
+</p>
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p></p>
+<table id="style-attribute-textAlign-example-1-images" role="example-images">
+<caption>Example Rendition – Text Align</caption>
+<tbody>
+<tr>
+<td><graphic source="images/textAlign.png" alt="TTML textAlign style property"/></td>
+</tr>
+</tbody>
+</table>
+<note role="derivation">
+<p>The semantics of the style property
+represented by this attribute are based upon that defined by <bibref ref="xsl11"/>,
+§ 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%"/>
+<col/>
+<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>
+
+<note role="clarification">
+<p>The syntax used above in defining the value of this property is based on the
+value component syntax defined in <bibref ref="css2"/>, § 1.4.2.1. In essence,
+one or more of the values separated by <code>||</code> may appear in the property
+value in any order, such as <code>"noUnderline overline lineThrough"</code>.</p>
+</note>
+
+<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 – Text Decoration</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<region xml:id="r1">
+ <style tts:extent="385px 82px"/>
+ <style tts:origin="0px 0px"/>
+ <style tts:backgroundColor="black"/>
+ <style tts:color="white"/>
+ <style tts:padding="5px 2px"/>
+ <style <phrase role="strong">tts:textDecoration="underline"</phrase>/>
+</region>
+...
+<p region="r1">
+ The sea was wet<span <phrase role="strong">tts:textDecoration="noUnderline"</phrase>> as </span>wet
+ <span <phrase role="strong">tts:textDecoration="noUnderline"</phrase>>
+ could be,<br/>
+ The sand was dry as dry.<br/>
+ <span <phrase role="strong">tts:textDecoration="lineThrough"</phrase>>There weren't any</span>
+ You <span <phrase role="strong">tts:textDecoration="lineThrough"</phrase>>couldn't</span>
+ could not see a cloud<br/>
+ Because no cloud was in the sky.
+ </span>
+</p>
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p></p>
+<table id="style-attribute-textDecoration-example-1-images" role="example-images">
+<caption>Example Rendition – Text Decoration</caption>
+<tbody>
+<tr>
+<td><graphic source="images/textDecoration.png" alt="TTML textDecoration style property"/></td>
+</tr>
+</tbody>
+</table>
+<note role="derivation">
+<p>The semantics of the style property
+represented by this attribute are based upon that defined by <bibref ref="xsl11"/>,
+§ 7.17.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%"/>
+<col/>
+<tbody>
+<tr>
+<td><emph>Values:</emph></td>
+<td>
+<code>none</code> |
+<loc href="#style-value-color"><color></loc>?
+<loc href="#style-value-length"><length></loc>
+<loc href="#style-value-length"><length></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"><color></loc> term
+followed by one or two <loc href="#style-value-length"><length></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>The <loc href="#style-value-length"><length></loc> value(s) used to express thickness and blur radius must be non-negative.</p>
+<note role="elaboration">
+<p>When a <loc href="#style-value-length"><length></loc> expressed in
+cells is used in a <att>tts:textOutline</att> value,
+the cell's dimension in the block progression dimension applies.
+For example, if text outline thickness is specified as 0.1c, the cell resolution
+is 20 by 10, and the extent of the <emph>Root Container Region</emph> is 640 by 480, then the
+outline thickness will be a nominal 480 / 10 * 0.1 pixels, i.e., 4.8px,
+without taking into account rasterization effects.</p>
+</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>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 – Text Outline</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<region xml:id="r1">
+ <style tts:backgroundColor="transparent"/>
+ <style tts:color="yellow"/>
+ <style <phrase role="strong">tts:textOutline="black 2px 0px"</phrase>/>
+ <style tts:fontFamily="proportionalSansSerif"/>
+ <style tts:fontSize="24px"/>
+</region>
+...
+<p>
+ How doth the little crocodile<br/>
+ Improve its shining tail,<br/>
+ And pour the waters of the Nile<br/>
+ On every golden scale!<br/>
+ How cheerfully he seems to grin,<br/>
+ How neatly spreads his claws,<br/>
+ And welcomes little fishes in,<br/>
+ With gently smiling jaws!
+</p>
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p></p>
+<table id="style-attribute-textOutline-example-1-images" role="example-images">
+<caption>Example Rendition – 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%"/>
+<col/>
+<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 – Unicode Bidirectionality</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<region xml:id="r1">
+ <style tts:extent="265px 84px"/>
+ <style tts:padding="5px"/>
+ <style tts:backgroundColor="black"/>
+ <style tts:color="white"/>
+ <style tts:displayAlign="after"/>
+ <style tts:textAlign="center"/>
+</region>
+...
+<p region="r1">
+ Little birds are playing<br/>
+ Bagpipes on the shore,<br/>
+ <span <phrase role="strong">tts:unicodeBidi="bidiOverride"</phrase> tts:direction="rtl">where the tourists snore.</span>
+</p>
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p></p>
+<table id="style-attribute-unicodeBidi-example-1-images" role="example-images">
+<caption>Example Rendition – Unicode Bidirectionality</caption>
+<tbody>
+<tr>
+<td>
+<graphic source="images/unicodeBidi.png" alt="TTML unicodeBidi style property"/>
+</td>
+</tr>
+</tbody>
+</table>
+<note role="derivation">
+<p>The semantics of the style property
+represented by this attribute are based upon that defined by <bibref ref="xsl11"/>,
+§ 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%"/>
+<col/>
+<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 – Visibility</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<region xml:id="r1">
+ <style tts:extent="398px 121px"/>
+ <style tts:backgroundColor="black"/>
+ <style tts:color="white"/>
+ <style/>
+</region>
+...
+<p region="r1" dur="4s">
+ <span <phrase role="strong">tts:visibility="hidden"</phrase>>
+ <set begin="1s" <phrase role="strong">tts:visibility="visible"</phrase>/>
+ Curiouser
+ </span>
+ <span <phrase role="strong">tts:visibility="hidden"</phrase>>
+ <set begin="2s" <phrase role="strong">tts:visibility="visible"</phrase>/>
+ and
+ </span>
+ <span <phrase role="strong">tts:visibility="hidden"</phrase>>
+ <set begin="3s" <phrase role="strong">tts:visibility="visible"</phrase>/>
+ curiouser!
+ </span>
+</p>
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p></p>
+<table id="style-attribute-visibility-example-1-images" role="example-images">
+<caption>Example Rendition – 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>
+<note role="derivation">
+<p>The semantics of the style property
+represented by this attribute are based upon that defined by <bibref ref="xsl11"/>,
+§ 7.30.17.</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%"/>
+<col/>
+<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 – Wrap Option</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<region xml:id="r1">
+ <style tts:extent="192px 117px"/>
+ <style tts:backgroundColor="black"/>
+ <style tts:color="white"/>
+ <style tts:displayAlign="after"/>
+ <style tts:overflow="hidden"/>
+ <style <phrase role="strong">tts:wrapOption="noWrap"</phrase>/>
+</region>
+...
+<p>
+ I'll tell thee everything I can:<br/>
+ There's little to relate.<br/>
+ I saw an aged aged man,<br/>
+ A-sitting on a gate.
+</p>
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p></p>
+<table id="style-attribute-wrapOption-example-1-images" role="example-images">
+<caption>Example Rendition – Wrap Option</caption>
+<tbody>
+<tr>
+<td><graphic source="images/wrapOption.png" alt="TTML wrapOption style property"/></td>
+</tr>
+</tbody>
+</table>
+<note role="derivation">
+<p>The semantics of the style property
+represented by this attribute are based upon that defined by <bibref ref="xsl11"/>,
+§ 7.16.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%"/>
+<col/>
+<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 – Writing Mode</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<region xml:id="r1">
+ <style tts:extent="50px 570px"/>
+ <style tts:origin="0px 0px"/>
+ <style tts:padding="10px 3px"/>
+ <style tts:backgroundColor="black"/>
+ <style tts:color="white"/>
+ <style <phrase role="strong">tts:writingMode="tbrl"</phrase>/>
+</region>
+<region xml:id="r2">
+ <style tts:extent="310px 50px"/>
+ <style tts:origin="70px 120px"/>
+ <style tts:padding="10px 3px"/>
+ <style tts:backgroundColor="black"/>
+ <style tts:color="white"/>
+ <style <phrase role="strong">tts:writingMode="rltb"</phrase>/>
+</region>
+...
+<p region="r1">
+ I sometimes dig for buttered rolls,<br/>
+ Or set limed twigs for crabs:
+</p>
+<p region="r2" tts:direction="rtl" tts:unicodeBidi="bidiOverride">
+ I sometimes search the grassy knolls for the wheels of Hansom-cabs.
+</p>
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p></p>
+<table id="style-attribute-writingMode-example-1-images" role="example-images">
+<caption>Example Rendition – 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>
+<note role="derivation">
+<p>The semantics of the style property
+represented by this attribute are based upon that defined by <bibref ref="xsl11"/>,
+§ 7.29.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%"/>
+<col/>
+<tbody>
+<tr>
+<td><emph>Values:</emph></td>
+<td>
+<code>auto</code> |
+<loc href="#style-value-integer"><integer></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 <emph>Document Instance</emph>.</p>
+<p>The semantics of the value <code>auto</code> are those defined by
+<bibref ref="xsl11"/>, § 7.30.18, 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 – Z Index</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<region xml:id="r1">
+ <style tts:origin="0px 0px"/>
+ <style tts:extent="400px 100px"/>
+ <style tts:padding="5px"/>
+ <style tts:backgroundColor="black"/>
+ <style tts:color="white"/>
+ <style <phrase role="strong">tts:zIndex="0"</phrase>/>
+</region>
+<region xml:id="r2">
+ <style tts:origin="100px 60px"/>
+ <style tts:extent="400px 100px"/>
+ <style tts:padding="5px"/>
+ <style tts:backgroundColor="red"/>
+ <style tts:color="white"/>
+ <style tts:textAlign="end"/>
+ <style <phrase role="strong">tts:zIndex="1"</phrase>/>
+</region>
+<region xml:id="r3">
+ <style tts:origin="0px 120px"/>
+ <style tts:extent="400px 100px"/>
+ <style tts:padding="5px"/>
+ <style tts:backgroundColor="black"/>
+ <style tts:color="white"/>
+ <style <phrase role="strong">tts:zIndex="2"</phrase>/>
+</region>
+<region xml:id="r4">
+ <style tts:origin="100px 180px"/>
+ <style tts:extent="400px 100px"/>
+ <style tts:padding="5px"/>
+ <style tts:backgroundColor="red"/>
+ <style tts:color="white"/>
+ <style tts:textAlign="end"/>
+ <style <phrase role="strong">tts:zIndex="3"</phrase>/>
+</region>
+...
+<p region="r1">
+ I passed by his garden, and marked, with one eye,<br/>
+ How the Owl and the Panther were sharing a pie.
+</p>
+<p region="r2">
+ The Panther took pie-crust, and gravy, and meat,<br/>
+ While the Owl had the dish as its share of the treat.
+</p>
+<p region="r3">
+ When the pie was all finished, the Owl, as a boon,<br/>
+ Was kindly permitted to pocket the spoon:
+</p>
+<p region="r4">
+ While the Panther received knife and fork<br/>
+ with a growl,<br/>
+ And concluded the banquet by...
+</p>
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p></p>
+<p></p>
+<table id="style-attribute-zIndex-example-1-images" role="example-images">
+<caption>Example Rendition – Z Index</caption>
+<tbody>
+<tr>
+<td><graphic source="images/zIndex.png" alt="TTML zIndex style property"/></td>
+</tr>
+</tbody>
+</table>
+<note role="derivation">
+<p>The semantics of the style property
+represented by this attribute are based upon that defined by <bibref ref="xsl11"/>,
+§ 7.30.18.</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-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>
+</ulist>
+<p>In the syntax representations defined in this section, no
+linear whitespace (LWSP) is implied or permitted between tokens
+unless explicitly specified.</p>
+<div3 id="style-value-alpha">
+<head><alpha></head>
+<p>An <alpha> 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 – <alpha></caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<alpha>
+ : <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"/> §
+3.2.4.1. If the value represented is less than 0.0,
+then it must be interpreted as equal to 0.0; similarly, if the value
+represented is greater than 1.0, then it must be interpreted as
+1.0. The value NaN must be interpreted as 0.0.</p>
+<p>A specified value for <alpha> should not be <code>NaN</code>,
+less than 0, or greater than 1.</p>
+<p>If a presentation processor does not support a specific,
+valid opacity value, then it must interpret it as being equal to the
+closest supported value.</p>
+</div3>
+<div3 id="style-value-color">
+<head><color></head>
+<p>A <color> expression is used to specify a named color, exact RGB color triple,
+or exact RGBA color tuple, where the alpha component, if expressed,
+is maximum (255) at 100% opacity
+and minimum (0) at 0% opacity, and where the applicable color space is
+defined by <bibref ref="srgb"/>.</p>
+<table id="color-style-expression-syntax" role="syntax">
+<caption>Syntax Representation – <color></caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<color>
+ : "#" rrggbb
+ | "#" rrggbbaa
+ | "rgb" "(" r-value "," g-value "," b-value ")"
+ | "rgba" "(" r-value "," g-value "," b-value "," a-value ")"
+ | <loc href="#style-value-namedColor"><namedColor></loc>
+
+rrggbb
+ : <loc href="#style-value-hexDigit"><hexDigit></loc>{6}
+
+rrggbbaa
+ : <loc href="#style-value-hexDigit"><hexDigit></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"><digit></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><digit></head>
+<p>A <digit> is used to express integers and other types of numbers or tokens.</p>
+<table id="digit-style-expression-syntax" role="syntax">
+<caption>Syntax Representation – <digit></caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<digit>
+ : "0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9"
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+</div3>
+<div3 id="style-value-duration">
+<head>Deleted</head>
+<note>
+<p>The information from this section has been removed due to lack of any normative
+use within this specification. This section is retained in its empty form
+in order to prevent section renumbering.</p>
+</note>
+</div3>
+<div3 id="style-value-familyName">
+<head><familyName></head>
+<p>A <familyName> expression specifies a font family name.</p>
+<table id="familyName-style-expression-syntax" role="syntax">
+<caption>Syntax Representation – <familyName></caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<familyName>
+ : unquoted-string
+ | quoted-string
+
+unquoted-string
+ : identifier ( lwsp identifier )*
+
+lwsp
+ : ( ' ' | '\t' | '\n' | '\r' )+
+
+identifier
+ : [-]? identifier-start identifier-following*
+
+identifier-start
+ : [_a-zA-Z]
+ | non-ascii-or-c1
+ | escape
+
+identifier-following
+ : [_a-zA-Z0-9-]
+ | non-ascii-or-c1
+ | escape
+
+non-ascii-or-c1
+ : [^\0-\237]
+
+escape
+ : '\\' <emph>char</emph>
+
+quoted-string
+ : double-quoted-string
+ | single-quoted-string
+
+double-quoted-string
+ : '"' ( [^"\\] | escape )+ '"'
+
+single-quoted-string
+ : "'" ( [^'\\] | escape )+ "'"
+</eg>
+<!-- " -->
+</td>
+</tr>
+</tbody>
+</table>
+<p>In addition to adhering to the syntax rules specified above, the following semantic rules apply:</p>
+<ulist>
+<item><p>the semantic value of a <familyName> expression is the semantic value of its <code>unquoted-string</code> or <code>quoted-string</code>
+non-terminal, according to whichever applies;</p></item>
+<item><p>the semantic value of an <code>unquoted-string</code> non-terminal is a pair <code><</code><emph>quoted</emph>, <emph>content</emph><code>></code>,
+where <emph>quoted</emph> is a boolean <code>false</code>, and
+where <emph>content</emph> is the result of appending the value of each <code>identifier</code>
+non-terminal, in lexical order, where the value of each identifier is preceded by a single SPACE (U+0020) character if it is not the first
+identifier;</p></item>
+<item><p>the semantic value of a <code>quoted-string</code> non-terminal is a pair <code><</code><emph>quoted</emph>, <emph>content</emph><code>></code>,
+where <emph>quoted</emph> is a boolean <code>true</code>, and
+where <emph>content</emph> is the unquoted content of the quoted string, i.e., the sequence of characters between the delimiting quotes.</p></item>
+<item><p>the semantic value of an <code>escape</code> non-terminal is the value of the escaped <code>char</code>;</p></item>
+<item><p>a <familyName> that takes the form of an <code>unquoted-string</code> that contains an <code>identifier</code> that
+starts with two <code>-</code> HYPHEN-MINUS (U+002D) characters must be considered to be invalid;</p></item>
+<item><p>a <familyName> that takes the form of an <code>unquoted-string</code> that contains a single <code>identifier</code> that
+matches (by case sensitive comparison) a <genericFamilyName> must be interpreted as that <genericFamilyName>;</p></item>
+<item><p>a <familyName> that takes the form of a <code>quoted-string</code> whose content (unquoted value)
+matches (by case sensitive comparison) a <genericFamilyName> must not be interpreted as that <genericFamilyName>, but as
+the actual name of a non-generic font family.</p></item>
+</ulist>
+<note role="notation">
+<p>The syntactic element <emph><code>char</code></emph> is to be interpreted according
+to the <code>Char</code> production defined by <bibref ref="xml10"/> §2.2.</p>
+</note>
+<note role="elaboration">
+<p>The <code>{unicode}</code> escape mechanism defined by <bibref ref="css2"/> §4.1.1
+is not supported by this syntax; rather, authors are expected to either (1) directly encode the character
+using the document encoding or (2) use an XML character reference according to
+<bibref ref="xml10"/> §4.1. When a syntactically significant character needs to be used
+without its normal syntactic interpretation, it may be be escaped using the backslash
+(reverse solidus) <code>escape</code> non-terminal specified above.</p>
+<p>When using the backslash (reverse solidus) <code>escape</code> non-terminal, the above syntax does
+not place any restriction on what character may be escaped, e.g., <code>\\[\n\r\f0-9a-f]</code> are
+permitted. If one of these latter escapes appears in a <familyName> expression, then it will
+need to be converted to a <code>{unicode}</code> escape if it is to be used with a standard XSL-FO
+or CSS parser. In particular, a backslash followed by a newline is ignored by CSS, while it is not
+ignored by the above syntax. Such an unignored escaped newline would need to be represented using
+an equivalent <code>{unicode}</code> escape, such as <code>\a</code>, to order to express in CSS.</p>
+</note>
+</div3>
+<div3 id="style-value-genericFamilyName">
+<head><genericFamilyName></head>
+<p>A <genericFamilyName> expression specifies a font family using a general
+token that indicates a class of font families.</p>
+<p>The resolution of a generic family name to a concrete font instance is considered to
+be implementation dependent, both in the case of content authoring and content interpretation.</p>
+<table id="genericFamilyName-style-expression-syntax" role="syntax">
+<caption>Syntax Representation – <genericFamilyName></caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<genericFamilyName>
+ : "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 are 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><hexDigit></head>
+<p>A <hexDigit> is used to express integers and other types of numbers or tokens
+that employ base 16 arithmetic.</p>
+<p>For the purpose of parsing, a distinction must not be made between lower and upper case.</p>
+<table id="hexDigit-style-expression-syntax" role="syntax">
+<caption>Syntax Representation – <hexDigit></caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<hexDigit>
+ : <loc href="#style-value-digit"><digit></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><integer></head>
+<p>An <integer> expression is used to express an arbitrary, signed integral value.</p>
+<table id="integer-style-expression-syntax" role="syntax">
+<caption>Syntax Representation – <integer></caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<integer>
+ : ( "+" | "-" )? <loc href="#style-value-digit"><digit></loc>+
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+</div3>
+<div3 id="style-value-length">
+<head><length></head>
+<p>A <length> expression is used to express either a coordinate component of point
+in a cartesian space or a distance between two points in a cartesian space.</p>
+<table id="length-style-expression-syntax" role="syntax">
+<caption>Syntax Representation – <length></caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<length>
+ : scalar
+ | percentage
+
+scalar
+ : number units
+
+percentage
+ : number "%"
+
+sign
+ : "+" | "-"
+
+number
+ : sign? non-negative-number
+
+non-negative-number
+ : non-negative-integer
+ | non-negative-real
+
+non-negative-integer
+ : <loc href="#style-value-digit"><digit></loc>+
+
+non-negative-real
+ : <loc href="#style-value-digit"><digit></loc>* "." <loc href="#style-value-digit"><digit></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"/>, § 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"/>, § 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><namedColor></head>
+<p>A <namedColor> 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, a distinction must not be made between lower and upper case.</p>
+<table id="namedColor-style-expression-syntax" role="syntax">
+<caption>Syntax Representation – <namedColor></caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<namedColor>
+ : "transparent" // #00000000
+ | "black" // #000000ff
+ | "silver" // #c0c0c0ff
+ | "gray" // #808080ff
+ | "white" // #ffffffff
+ | "maroon" // #800000ff
+ | "red" // #ff0000ff
+ | "purple" // #800080ff
+ | "fuchsia" // #ff00ffff
+ | "magenta" // #ff00ffff (= fuchsia)
+ | "green" // #008000ff
+ | "lime" // #00ff00ff
+ | "olive" // #808000ff
+ | "yellow" // #ffff00ff
+ | "navy" // #000080ff
+ | "blue" // #0000ffff
+ | "teal" // #008080ff
+ | "aqua" // #00ffffff
+ | "cyan" // #00ffffff (= aqua)
+</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"/>, § 4.2.</p>
+</note>
+</div3>
+<div3 id="style-value-quotedString">
+<head>Deleted</head>
+<note>
+<p>The information from this section has been incorporated into
+<specref ref="style-value-familyName"/>. This section is retained in its empty form
+in order to prevent section renumbering.</p>
+</note>
+</div3>
+<div3 id="style-value-string">
+<head>Deleted</head>
+<note>
+<p>The information from this section has been incorporated into
+<specref ref="style-value-familyName"/>. This section is retained in its empty form
+in order to prevent section renumbering.</p>
+</note>
+</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"/>, § 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 – Inline Styling</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<p <phrase role="strong">tts:color="white"</phrase>>White 1 <span <phrase role="strong">tts:color="yellow"</phrase>>Yellow</span> White 2</p>
+</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 – Referential Styling</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<style <phrase role="strong">xml:id="s1"</phrase> tts:color="white"/>
+<style <phrase role="strong">xml:id="s2"</phrase> tts:color="yellow"/>
+...
+<p <phrase role="strong">style="s1"</phrase>>White 1 <span <phrase role="strong">style="s2"</phrase>>Yellow</span> White 2</p>
+</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 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 – Chained Referential Styling</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<style <phrase role="strong">xml:id="s1"</phrase> tts:color="white" tts:fontFamily="monospaceSerif"/>
+<style <phrase role="strong">xml:id="s2"</phrase> <phrase role="strong">style="s1"</phrase> tts:color="yellow"/>
+...
+<p <phrase role="strong">style="s1"</phrase>>White Monospace</p>
+<p <phrase role="strong">style="s2"</phrase>>Yellow Monospace</p>
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+</div4>
+<div4 id="semantics-style-association-nested">
+<head>Nested Styling</head>
+<p>Style properties may be expressed in a 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 – Nested Styling</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<region xml:id="r1">
+ <phrase role="strong"><style tts:extent="128px 66px"/></phrase>
+ <phrase role="strong"><style tts:origin="0px 0px"/></phrase>
+ <phrase role="strong"><style tts:displayAlign="center"/></phrase>
+</region>
+</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 <emph>Document Instance</emph> 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 – Content Style Inheritance</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<p <phrase role="strong">tts:fontFamily="monospaceSansSerif"</phrase>>
+ <span tts:color="yellow">Yellow Monospace</span>
+</p>
+</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 – Region Style Inheritance</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<region <phrase role="strong">xml:id="r1"</phrase>>
+ <style tts:color="yellow"/>
+ <style tts:fontFamily="monospaceSerif"/>
+</region>
+...
+<p <phrase role="strong">region="r1"</phrase>>Yellow Monospace</p>
+</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 – 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></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 – 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 – 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></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">[animation styling]</phrase> for each
+style property <emph>P</emph> expressed as a specified styling
+attribute of an immediate animation (<el>set</el>) element child of element <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′</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′</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′</emph> is not undefined, then merge
+<emph>P′</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 – use of referential styling –
+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
+<emph>Document Instance</emph>:</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 – Element Information Item: layout</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<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>}>
+ <emph>Content:</emph> <loc href="#element-vocab-group-table">Metadata.class</loc>*, <loc href="#layout-vocabulary-region">region</loc>*
+</layout>
+</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 <emph>Root Temporal Extent</emph>.</p>
+</div3>
+<div3 id="layout-vocabulary-region">
+<head>region</head>
+<p>The <el>region</el> element is used to define a rectangular 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 (but does apply for region
+style inheritance).</p>
+<table id="elt-syntax-region" role="syntax">
+<caption>XML Representation – Element Information Item: region</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<region
+ <loc href="#timing-attribute-begin">begin</loc> = <loc href="#timing-value-timeExpression"><timeExpression></loc>
+ <loc href="#timing-attribute-dur">dur</loc> = <loc href="#timing-value-timeExpression"><timeExpression></loc>
+ <loc href="#timing-attribute-end">end</loc> = <loc href="#timing-value-timeExpression"><timeExpression></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>}>
+ <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>*
+</region>
+</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 <el>layout</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 to specify a region that is otherwise empty, but
+may have a visible background color to be presented starting at some time and
+continuing over the region's duration. The simple duration of the region serves
+additionally to scope the presentation effects of content that is targeted to the
+region. An author may also wish to move a region within the <emph>Root Container Region</emph>
+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 roles identified
+by this attribute express the semantic roles of the region
+independently from the semantic roles of any content targeted to
+(associated with) the region.</p>
+</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>If specified, the value of a <att>region</att> attribute must
+adhere to the <code>IDREF</code> data type defined by <bibref ref="xsd-2"/>,
+§ 3.3.9, and, furthermore, this IDREF must reference a <el>region</el> element
+which has a <el>layout</el> element as an ancestor.</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 <emph>Document Instance</emph> 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 extent of the <emph>Root Container Region</emph>;</p>
+</item>
+<item>
+<p>the temporal interval of the default region is the same as the interval defined by the <emph>Root Temporal Extent</emph>;</p>
+</item>
+</ulist>
+<p>Furthermore, if no <loc
+href="#layout-vocabulary-region"><el>region</el></loc> element is
+specified, then the <loc
+href="#layout-attribute-region"><att>region</att></loc> attribute must
+not be specified on any content element in the <emph>Document Instance</emph>.</p>
+<p>If a default region is implied for a given <emph>Document Instance</emph>, 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 <emph>Document Instance</emph> 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 – Implied Default Region</caption>
+<tbody>
+<tr>
+<td>
+<eg>
+<tt xml:lang="" xmlns="http://www.w3.org/ns/ttml">
+ <head>
+ <phrase role="strong"><layout>
+ <region xml:id="anonymous"/>
+ </layout></phrase>
+ </head>
+ <body <phrase role="strong">region="anonymous"</phrase>/>
+</tt>
+</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 <emph>Document Instance</emph> 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 <emph>Document Instance</emph> 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> , according to the
+<phrase role="strong">[construct intermediate document]</phrase> procedure:</p>
+<glist>
+<gitem>
+<label>[construct intermediate document]</label>
+<def>
+<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> according to the
+<phrase role="strong">[associate region]</phrase> procedure;</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>
+<note role="elaboration">
+<p>In this section, the term <emph>prune</emph>, when used in reference to
+an element, means that the element is to be removed from its parent's children,
+which, in turn, implies that the descendants of the pruned element will no longer
+be descendants of the element's parent. When <emph>prune</emph> is used in
+reference to an attribute, it means that attribute is to be removed from its
+associated (owning) element node.</p>
+</note>
+</def>
+</gitem>
+<gitem>
+<label>[associate region]</label>
+<def>
+<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>
+</def>
+</gitem>
+</glist>
+<p>The result of performing the processing described above will be a sequence of
+<emph>N</emph> intermediate synchronic
+<emph>Document Instances</emph>,
+<emph>DOC<sub><phrase>inter<sub>0</sub></phrase></sub></emph> …
+<emph>DOC<sub><phrase>inter<sub>N−1</sub></phrase></sub></emph>.</p>
+<note id="semantics-smooth-scrolling-recommendation" role="elaboration">
+<p>Where an implementation is able to detect significant similarity between two
+adjacent synchronic <emph>Document Instances</emph>,
+<emph>DOC<sub><phrase>inter<sub>N</sub></phrase></sub></emph>
+<emph>DOC<sub><phrase>inter<sub>N−1</sub></phrase></sub></emph>,
+then it is preferred that the implementation make the transition between
+presenting the two instances as smooth as possible, e.g., as described
+by <bibref ref="cea608c"/>, § C.3.</p>
+</note>
+</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 represented as 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>
+<note>
+<p>In this section, the use of XSL FO is intended to be conceptual only, employed
+solely for the purpose of defining the normative presentation semantics of
+TTML. An actual implementation of this algorithm is not required to create or process
+XSL-FO representations. In particular, it is possible to implement these semantics
+using alternative presentation models, such as Cascading Style Sheets (CSS).</p>
+</note>
+<p>Each intermediate synchronic document produced by <specref
+ref="semantics-region-layout-step-1"/> is mapped
+to an XSL FO document instance, <emph>F</emph>, 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 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 extent of the <emph>Root Container Region</emph> 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 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 an <el>fo:block-container</el>
+element with an <att>absolute-position</att> attribute with value
+<code>absolute</code>, with <att>top</att>, <att>left</att>, <att>bottom</att>, and <att>right</att>
+attributes that express a rectangle equivalent to the region's origin and
+extent, and with a <att>line-stacking-strategy</att> attribute with value <code>line-height</code>;</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 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
+produced in the previous step that corresponds to the <el>body</el>
+element, perform the following ordered sub-steps:</p>
+<olist>
+<item>
+<p>if the <att>display-align</att> style property of this <el>fo:block</el>
+has the value <code>center</code> or <code>after</code>,
+then synthesize and insert as the first child of this <el>fo:block</el>
+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>if the <att>display-align</att> style property of this <el>fo:block</el>
+has the value <code>center</code> or <code>before</code>,
+then synthesize and insert as the last child of this <el>fo:block</el>
+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>
+</olist>
+</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 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
+a distinct <el>fo:character</el> element having the following
+properties:</p>
+<ulist>
+<item>
+<p><code>character="&#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>
+<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 <emph>Document Instance</emph> 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>
+<note role="explanation">
+<p>The purpose of inserting additional, collapsible space in the block progression
+dimension of the <el>fo:block</el> that corresponds with the <el>body</el> element
+is to ensure that the before and after edges of this <el>fo:block</el> are coincident
+with the before and after edges of the <el>fo:block-container</el> that corresponds
+to the containing <el>region</el>, while simultaneously taking into account the needs
+to satisfy alignment in the block progression dimension. For example, this assures that
+the background color associated with the <el>body</el> element, if not <code>transparent</code>,
+ will fill the containing region wholly.</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 – Sample Source Document</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">&ttml-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 (associated with) one of two
+non-overlapping regions that are styled identically except for their position
+and their foreground colors, the latter of which is inherited by and applies to
+the (and, in this case, anonymous) spans reparented into the regions.</p>
+<p>The following, first intermediate document shows the synchronic state for time
+interval [0,1), during which time only division <code>d1</code> is temporally active,
+and where paragraphs <code>p1</code> and <code>p2</code> (and their ancestors)
+are associated with regions <code>r1</code> and <code>r2</code>, respectively.</p>
+<note>
+<p>The intermediate documents shown below are not valid <emph>Document Instances</emph>,
+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 – Intermediate Document – [0s,1s)</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">&ttml-ex1-x-0;</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p>An XSL FO document instance that would yield rendering consistent with TTML, and
+which may be produced by performing flow processing upon the first intermediate
+document is illustrated below.</p>
+<table id="region-mapping-example-1-f0" role="example">
+<caption>Example – XSL FO Document – [0s,1s)</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">&ttml-ex1-p-0;</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p>The following, second intermediate document shows the synchronic state for
+time interval [1,2), during which time both divisions <code>d1</code> and
+<code>d2</code> are temporally active, and where paragraphs <code>p1</code> and
+<code>p4</code> (and their ancestors) are associated with region <code>r1</code>
+and paragraphs <code>p2</code> and <code>p3</code> (and their ancestors) are
+associated with region <code>r2</code>.</p>
+<table id="region-mapping-example-1-i1" role="example">
+<caption>Example – Intermediate Document – [1s,2s)</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">&ttml-ex1-x-1;</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p>The following, third intermediate document shows the synchronic state for time
+interval [2,3), during which time only division <code>d2</code> is temporally active,
+and where paragraphs <code>p4</code> and <code>p3</code> (and their ancestors)
+are associated with regions <code>r1</code> and <code>r2</code>, respectively.</p>
+<table id="region-mapping-example-1-i2" role="example">
+<caption>Example – Intermediate Document – [2s,3s)</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">&ttml-ex1-x-2;</eg>
+</td>
+</tr>
+</tbody>
+</table>
+</div3>
+</div2>
+<div2 id="semantics-line-layout">
+<head>Line Layout</head>
+<p>If a profile that applies to a <emph>Document Instance</emph>
+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/reports/tr14/#Algorithm">Line
+Breaking Algorithm</loc> <bibref ref="uax14"/> apply when performing
+line layout on the content of the <emph>Document Instance</emph>.</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 <timeExpression> 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"/>, § 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
+<timeExpression> 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"/>, § 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
+<timeExpression> specification as defined by <specref
+ref="timing-value-timeExpression"/>.</p>
+<note role="clarification">
+<p>When the <code>clock-time</code> form of a <timeExpression> 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 <emph>Document Instance</emph> specifies the use of the
+<code>smpte</code> time base and <code>discontinuous</code> marker
+mode, a (well-formed) <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"/>, § 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. For the purpose of determining the
+<bibref ref="smil21"/> <code>endsync</code> semantics of a <code>par</code>
+time container, a default value of <code>all</code> applies.</p>
+<note role="elaboration">
+<p>The use of a default value of <code>all</code> for the <code>endsync</code>
+behavior is distinct from <bibref ref="smil21"/> which uses a default value
+of <code>last</code>.</p>
+</note>
+<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"/>, § 10.4.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><timeExpression></head>
+<p>A <timeExpression> is used to specify a coordinate within
+some time base, where the applicable time base is determined by the
+<att>ttp:timeBase</att> parameter, and where the semantics defined
+by <specref ref="time-expression-semantics"/> apply.</p>
+
+<note role="example">
+<p>See
+<specref ref="parameter-attribute-frameRate"/>,
+<specref ref="parameter-attribute-subFrameRate"/>,
+<specref ref="parameter-attribute-tickRate"/>, and
+<specref ref="parameter-attribute-timeBase"/> for further information on
+explicit specification of frame rate, sub-frame rate, tick rate, and time base.</p>
+</note>
+<table id="timeExpression-syntax" role="syntax">
+<caption>Syntax Representation – <timeExpression></caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<timeExpression>
+ : 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"><digit></loc> <loc href="#style-value-digit"><digit></loc>
+ | <loc href="#style-value-digit"><digit></loc> <loc href="#style-value-digit"><digit></loc> <loc href="#style-value-digit"><digit></loc>+
+
+minutes | seconds
+ : <loc href="#style-value-digit"><digit></loc> <loc href="#style-value-digit"><digit></loc>
+
+frames
+ : <loc href="#style-value-digit"><digit></loc> <loc href="#style-value-digit"><digit></loc>
+ | <loc href="#style-value-digit"><digit></loc> <loc href="#style-value-digit"><digit></loc> <loc href="#style-value-digit"><digit></loc>+
+
+sub-frames
+ : <loc href="#style-value-digit"><digit></loc>+
+
+fraction
+ : "." <loc href="#style-value-digit"><digit></loc>+
+
+time-count
+ : <loc href="#style-value-digit"><digit></loc>+
+
+metric
+ : "h" // hours
+ | "m" // minutes
+ | "s" // seconds
+ | "ms" // milliseconds
+ | "f" // frames
+ | "t" // ticks
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p>If a <timeExpression> 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
+[0…59], while seconds (including any fractional part) are constrained to the closed
+interval [0,60], where the value 60 applies only to leap seconds.</p>
+<p>If a <timeExpression> is expressed in terms of a
+<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…<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"/>.
+It is considered an error if a <emph>frames</emph> term or
+<code>f</code> (frames) metric is specified when the <code>clock</code> time base applies.</p>
+<p>If a <timeExpression> is expressed in terms of a
+<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…<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"/>.
+It is considered an error if a <emph>sub-frames</emph> term is specified
+when the <code>clock</code> time base applies.</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, (2) the default
+<code>endsync</code> semantics defined above by <specref ref="timing-attribute-timeContainer"/>,
+and (3) 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 base is <code>clock</code>, then time
+expressions are considered to be equivalent to wall-clock
+based timing in <bibref ref="smil21"/>, where the specific semantics of
+<specref ref="time-expression-semantics-clock"/> apply.</p>
+</item>
+<item>
+<p>If the governing time base is <code>media</code>, then time
+expressions are considered to be equivalent to offset based timing
+in <bibref ref="smil21"/>, where the specific semantics of
+<specref ref="time-expression-semantics-media"/> apply.</p>
+</item>
+<item>
+<p>If the governing time base is <code>smpte</code>, then time
+expressions are considered to be equivalent to either offset
+based timing or event based timing in <bibref ref="smil21"/>, where the specific semantics of
+<specref ref="time-expression-semantics-smpte"/> apply.</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
+<emph>Document Instance</emph>:</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 – Element Information Item: set</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<set
+ <loc href="#timing-attribute-begin">begin</loc> = <loc href="#timing-value-timeExpression"><timeExpression></loc>
+ <loc href="#timing-attribute-dur">dur</loc> = <loc href="#timing-value-timeExpression"><timeExpression></loc>
+ <loc href="#timing-attribute-end">end</loc> = <loc href="#timing-value-timeExpression"><timeExpression></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>}>
+ <emph>Content:</emph> <loc href="#element-vocab-group-table">Metadata.class</loc>*
+</set>
+</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 – Content Style Animation</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+...
+<p dur="5s" tts:color="yellow">
+<phrase role="strong"><set begin="1s" dur="1s" tts:color="red"/></phrase>
+<phrase role="strong"><set begin="2s" dur="1s" tts:color="green"/></phrase>
+<phrase role="strong"><set begin="3s" dur="1s" tts:color="red"/></phrase>
+Text with Flashing Colors!
+</p>
+...
+</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 – Region Style Animation</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<tt xml:lang="" xmlns="http://www.w3.org/ns/ttml"
+ xmlns:ttp="http://www.w3.org/ns/ttml#parameter"
+ xmlns:tts="http://www.w3.org/ns/ttml#styling"
+ ttp:cellResolution="40 16">
+ <head>
+ <layout>
+ <region xml:id="r1" timeContainer="seq">
+ <phrase role="strong"><set dur="10s" tts:origin=" 8c 14c"/></phrase>
+ <phrase role="strong"><set dur="2s" tts:origin=" 2c 2c"/></phrase>
+ <phrase role="strong"><set dur="3s" tts:origin=" 8c 14c"/></phrase>
+ <phrase role="strong"><set dur="2s" tts:origin="14c 4c"/></phrase>
+ <phrase role="strong"><set dur="10s" tts:origin=" 8c 14c"/></phrase>
+ <style tts:extent="24c 2c"/>
+ </region>
+ </layout>
+ </head>
+ <body region="r1">...</body>
+</tt>
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<note role="explanation">
+<p>In the above example, the <emph>Root Container Region</emph> 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
+<emph>Root Container Region</emph>, 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"/>,
+§ 3.6.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 <emph>Document Instance</emph>, 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 metadata that is expected to be commonly
+used in a <emph>Document Instances</emph>:
+</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 with a <el>metadata</el> element by specifying
+(1) one or more metadata attributes on the <el>metadata</el> element,
+(2) one or more metadata child elements in the <el>metadata</el> element, or
+(3) a combination of metadata attributes and metadata child elements. Both types
+of metadata information are referred to in this document as <emph>metadata
+items</emph>.</p>
+<table id="elt-syntax-metadata" role="syntax">
+<caption>XML Representation – Element Information Item: metadata</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<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>}>
+ <emph>Content:</emph> ({<emph>any element in TT Metadata namespace</emph>}|{<emph>any element not in any TT namespace</emph>})*
+</metadata>
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<note role="explanation">
+<p>The meaning of a specific metadata item must be evaluated in the
+context where it appears. The core vocabulary catalog permits an
+arbitrary number of <el>metadata</el> element children on 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 – Document Metadata</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+...
+<head>
+ <metadata xmlns:ttm="http://www.w3.org/ns/ttml#metadata">
+ <ttm:title>Document Metadata Example</ttm:title>
+ <ttm:desc>This document employs document metadata.</ttm:desc>
+ </metadata>
+</head>
+...
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p></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 – Element Metadata</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+...
+<div>
+ <metadata xmlns:ttm="http://www.w3.org/ns/ttml#metadata">
+ <ttm:title>Chapter 6 – Sherlock Holmes Gives a Demonstration</ttm:title>
+ <ttm:desc>Holmes shows Watson how the murderer entered the window.</ttm:desc>
+ </metadata>
+</div>
+...
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p></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 – Foreign Metadata Attribute Items</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+...
+<div xmlns:ext="http://example.org/ttml#metadata">
+ <metadata ext:ednote="remove this division prior to publishing"/>
+</div>
+...
+</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>
+<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 – Foreign Element Metadata</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+...
+<metadata
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:dcterms="http://purl.org/dc/terms/"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <dc:title>Foreign Element Metadata Example</dc:title>
+ <dc:description>Express metadata using elements in foreign namespace.</dc:description>
+ <dc:format xsi:type="dcterms:IMT">application/ttml+xml</dc:format>
+</metadata>
+...
+</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></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 – Element Information Item: ttm:title</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<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>}>
+ <emph>Content:</emph> #PCDATA
+</ttm:title>
+</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 – Element Information Item: ttm:desc</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<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>}>
+ <emph>Content:</emph> #PCDATA
+</ttm:desc>
+</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 – Element Information Item: ttm:copyright</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<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>}>
+ <emph>Content:</emph> #PCDATA
+</ttm:copyright>
+</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 – Element Information Item: ttm:agent</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<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>}>
+ <emph>Content:</emph> <loc href="#metadata-vocabulary-name">ttm:name</loc>*, <loc href="#metadata-vocabulary-actor">ttm:actor</loc>?
+</ttm:agent>
+</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 – Agent Metadata</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+
+<tt xml:lang="en" xmlns="http://www.w3.org/ns/ttml" xmlns:ttm="http://www.w3.org/ns/ttml#metadata">
+ <head>
+ <phrase role="strong"><ttm:agent xml:id="connery" type="person"></phrase>
+ <ttm:name type="family">Connery</ttm:name>
+ <ttm:name type="given">Thomas Sean</ttm:name>
+ <ttm:name type="alias">Sean</ttm:name>
+ <ttm:name type="full">Sir Thomas Sean Connery</ttm:name>
+ <phrase role="strong"></ttm:agent></phrase>
+ <phrase role="strong"><ttm:agent xml:id="bond" type="character"></phrase>
+ <ttm:name type="family">Bond</ttm:name>
+ <ttm:name type="given">James</ttm:name>
+ <ttm:name type="alias">007</ttm:name>
+ <ttm:actor agent="connery"/>
+ <phrase role="strong"></ttm:agent></phrase>
+ </head>
+ <body>
+ <div>
+ ...
+ <p <phrase role="strong">ttm:agent="bond"</phrase>>I travel, a sort of licensed troubleshooter.</p>
+ ...
+ </div>
+ </body>
+</tt>
+</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 – Element Information Item: ttm:name</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<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>}>
+ <emph>Content:</emph> #PCDATA
+</ttm:name>
+</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 – Element Information Item: ttm:actor</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">
+<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>}>
+ <emph>Content:</emph> EMPTY
+</ttm:actor>
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+<p>The <att>agent</att> attribute of a <el>ttm:actor</el> element must
+reference a <emph>significant</emph> <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 <emph>significant</emph>
+<el>ttm:agent</el> element instances that appear
+as a descendent of the same <emph>Document Instance</emph> as
+that of the referring element.</p>
+<p>The same IDREF, <emph>ID</emph>, should not appear more than once in the value of a <att>ttm:agent</att> attribute.</p>
+<note role="explanation">
+<p>This constraint is intended to discourage the use of redundant agent references.</p>
+</note>
+<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"/> §
+2.3:</p>
+<table id="metadata-attribute-role-syntax" role="syntax">
+<caption>Syntax Representation – 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>
+<p>The same <code>role</code> token, <emph>R</emph>, should not appear more than once in the value of a <att>ttm:role</att> attribute.</p>
+<note role="explanation">
+<p>This constraint is intended to discourage the use of redundant role tokens.</p>
+</note>
+<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>
+<note role="extensibility">
+<p>If using a custom <code>x-</code> prefixed form of <att>ttm:role</att>, it
+is recommended that an organization unique infix be used as well in order to
+prevent collisions. For example, <code>x-example-org-custom-role</code>. Furthermore,
+a registry for role values is available at
+<loc href="http://www.w3.org/wiki/TTML/RoleRegistry">http://www.w3.org/wiki/TTML/RoleRegistry</loc>
+in order to promote interoperability and collision avoidance.</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 <emph>Reduced XML Infoset</emph> 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
+<emph>Document Instances</emph>:</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="ttml-schema-rnc">
+<head>Relax NG Compact (RNC) Schema</head>
+<p>A Relax NG Compact Syntax (RNC) <bibref ref="rng"/> based schema
+for TTML Content is available at <loc href="rnc/schema.zip">ZIP
+Archive</loc>. This schema does not normatively define the validity
+of Timed Text Markup Language content as defined by this specification.
+In particular, the formal validity of TTML Content
+is defined by <specref ref="conformance-content"/>.</p>
+</div2>
+<div2 id="ttml-schema-xsd">
+<head>XML Schema Definition (XSD) Schema</head>
+<p>A W3C XML Schema Definition (XSD) <bibref ref="xsd-1"/> based schema
+for TTML Content is available at <loc href="xsd/schema.zip">ZIP
+Archive</loc>. This schema does not normatively define the validity
+of Timed Text Markup Language content as defined by this specification.
+In particular, the formal validity of TTML Content
+is defined by <specref ref="conformance-content"/>.</p>
+</div2>
+</div1>
+<div1 id="media-types-registration">
+<head>Media Type Registration</head>
+<p><emph>This appendix is normative.</emph></p>
+<p>This appendix registers a new 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>If specified, the <code>charset</code> parameter must match the XML encoding declaration, or if absent, the actual encoding.</p>
+</def>
+</gitem>
+<gitem>
+<label>profile</label>
+<def>
+<p>The document profile of a TTMLDocument Instance may be specified using
+an optional <code>profile</code> parameter, which, if specified,
+the value of which must adhere to the syntax and semantics of
+<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, except constrained to either UTF-8 or UTF-16. 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"/>
+Section 10, repeated expansion of maliciously constructed XML entities
+can be used to consume large amounts of memory, which may cause XML
+processors in constrained environments to fail.</p>
+<p>In addition, because of the extensibility features for TTML and of XML
+in general, it is possible that "application/ttml+xml" may describe content
+that has security implications beyond those described here. However,
+TTML does not provide for any sort of active or executable content, and
+if the processor follows only the normative semantics of the published
+specification, this content will be outside TTML namespaces and
+may be ignored. Only in the case where the processor recognizes and
+processes the additional content, or where further processing of that
+content is dispatched to other processors, would security issues
+potentially arise. And in that case, they would fall outside the
+domain of this registration document.</p>
+<p>Although not prohibited, there are no expectations that XML signatures
+or encryption would normally be employed.</p>
+</def>
+</gitem>
+<gitem>
+<label>Interoperability considerations:</label>
+<def>
+<p>The published specification describes processing semantics that dictate
+behavior that must be followed when dealing with, among other things,
+unrecognized elements and attributes, both in TTML namespaces and in
+other namespaces.</p>
+<p>Because TTML is extensible, conformant "application/ttml+xml" processors may
+expect (and enforce) that content received is well-formed XML, but it cannot be
+guaranteed that the content is valid to a particular DTD or Schema or
+that the processor will recognize all of the elements and attributes
+in the document.</p>
+<p></p>
+</def>
+</gitem>
+<gitem>
+<label>Published specification:</label>
+<def>
+<p>This media type registration is extracted from Appendix C Media Type
+Registration of the Timed Text Markup Language (TTML) 1.0 specification:
+<loc
+href="http://www.w3.org/TR/ttaf1-dfxp/">Timed Text Markup Language (TTML) 1.0</loc>.</p>
+</def>
+</gitem>
+<gitem>
+<label>Applications that use this media type:</label>
+<def>
+<p>TTML is used in the television industry for the purpose of authoring, transcoding and exchanging timed text information and for delivering captions, subtitles, and
+other metadata for television material repurposed for the Web or, more generally, the Internet.</p>
+<p>There is partial and full support of TTML in components used by several Web browsers plugins, and in a number of caption authoring tools.</p>
+</def>
+</gitem>
+<gitem>
+<label>Additional information:</label>
+<def>
+<glist>
+<gitem>
+ <label>Magic number(s):</label>
+ <def></def>
+</gitem>
+<gitem>
+ <label>File extension(s):</label>
+ <def><p>.ttml</p></def>
+</gitem>
+<gitem>
+ <label>Macintosh file type code(s):</label>
+ <def><p>"TTML"</p></def>
+</gitem>
+<gitem>
+<label>Fragment identifiers:</label>
+<def><p>For documents labeled as application/ttml+xml, the fragment identifier notation is intended to be used with xml:id attributes, as described in section 7.2.1 of the <loc
+href="http://www.w3.org/TR/ttaf1-dfxp/">Timed Text Markup Language (TTML) 1.0</loc> specification.</p></def>
+</gitem>
+</glist>
+</def>
+</gitem>
+<gitem>
+<label>Person & email address to contact for further information:</label>
+<def>
+<p>Timed Text Working Group (public-tt@w3.org)</p>
+</def>
+</gitem>
+<gitem>
+<label>Intended usage:</label>
+<def>
+<p>COMMON</p>
+</def>
+</gitem>
+<gitem>
+<label>Restrictions on usage:</label>
+<def>
+<p>None</p>
+</def>
+</gitem>
+<gitem>
+<label>Author:</label>
+<def>
+<p>The published specification is a work product of the World Wide Web
+Consortium's Timed Text (TT) Working Group.</p>
+</def>
+</gitem>
+<gitem>
+<label>Change controller:</label>
+<def>
+<p>The W3C has change control over this specification.</p>
+</def>
+</gitem>
+</glist>
+</div1>
+<div1 id="features">
+<head>Features</head>
+<p><emph>This appendix is normative.</emph></p>
+<p>This appendix specifies (1) a set of feature designations, each of which
+labels one or more syntactic and/or semantic features defined by this
+specification, and (2) for each designated feature, whether the feature is mandatory
+or optional for a transformation or presentation processor.</p>
+<note>
+<p>A TTML processor is said to <emph>implement the transformation semantics</emph> or
+<emph>implement the presentation semantics</emph> of feature designation <emph>F</emph>
+if it satisfies the requirements of this appendix with respect to the definition of
+feature designation <emph>F</emph> as pertains to transformation or
+presentation processing, respectively.</p>
+</note>
+<div2 id="feature-designations">
+<head>Feature Designations</head>
+<p>A feature designation is expressed as a string that adheres to the following
+form:</p>
+<eg xml:space="preserve">
+feature-designation
+ : feature-namespace designation
+
+feature-namespace
+ : <emph>TT Feature Namespace</emph> // http://www.w3.org/ns/ttml/feature/
+
+designation
+ : "#" token-char+
+
+token-char
+ : { XML NameChar } // XML 1.1 Production [4a]
+</eg>
+<p>All values of <code>feature-designation</code> not defined by this specification are reserved
+for future standardization.</p>
+<p>The following sub-sections define all feature designations, expressed
+as relative URIs (fragment identifiers) with respect to the
+TT Feature Namespace base URI.</p>
+<div3 id="feature-animation">
+<head>#animation</head>
+<p>A TTML transformation processor supports the <code>#animation</code>
+feature if it recognizes and is capable of transforming the following
+vocabulary defined by <specref ref="animation"/>:</p>
+<ulist>
+<item><p><loc href="#animation-vocabulary-set"><el>set</el></loc></p></item>
+</ulist>
+<p>A TTML presentation processor supports the <code>#animation</code>
+feature if it implements presentation semantic support for the
+same vocabulary enumerated above.</p>
+</div3>
+<div3 id="feature-backgroundColor">
+<head>#backgroundColor</head>
+<p>A TTML transformation processor supports the
+<code>#backgroundColor</code> feature if it recognizes and is capable of
+transforming the <loc
+href="#style-attribute-backgroundColor"><att>tts:backgroundColor</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#backgroundColor</code> feature if it (1) implements presentation semantic support
+for the <loc
+href="#style-attribute-backgroundColor"><att>tts:backgroundColor</att></loc>
+attribute
+and (2) is capable of displaying or generating an output display
+signal that distinguishes between at least sixteen (16) values of color,
+including all primary and secondary colors of the SRGB color space.</p>
+</div3>
+<div3 id="feature-backgroundColor-block">
+<head>#backgroundColor-block</head>
+<p>A TTML transformation processor supports the
+<code>#backgroundColor-block</code> feature if it recognizes and is
+capable of transforming all defined values of the <loc
+href="#style-attribute-backgroundColor"><att>tts:backgroundColor</att></loc>
+attribute when applied to a content element that would generate a
+block area during presentation processing.</p>
+<p>A TTML presentation processor supports the
+<code>#backgroundColor-block</code> feature if it (1) implements presentation semantic
+support for the <loc
+href="#style-attribute-backgroundColor"><att>tts:backgroundColor</att></loc>
+attribute when applied to a content element that generates a
+block area
+and (2) is capable of displaying or generating an output display
+signal that distinguishes between at least sixteen (16) values of color,
+including all primary and secondary colors of the SRGB color space.</p>
+</div3>
+<div3 id="feature-backgroundColor-inline">
+<head>#backgroundColor-inline</head>
+<p>A TTML transformation processor supports the
+<code>#backgroundColor-inline</code> feature if it recognizes and is
+capable of transforming all defined values of the <loc
+href="#style-attribute-backgroundColor"><att>tts:backgroundColor</att></loc>
+attribute when applied to a content element that would generate an
+inline area during presentation processing.</p>
+<p>A TTML presentation processor supports the
+<code>#backgroundColor-inline</code> feature if it (1) implements presentation semantic
+support for the <loc
+href="#style-attribute-backgroundColor"><att>tts:backgroundColor</att></loc>
+attribute when applied to a content element that generates an
+inline area
+and (2) is capable of displaying or generating an output display
+signal that distinguishes between at least sixteen (16) values of color,
+including all primary and secondary colors of the SRGB color space.</p>
+</div3>
+<div3 id="feature-backgroundColor-region">
+<head>#backgroundColor-region</head>
+<p>A TTML transformation processor supports the
+<code>#backgroundColor-region</code> feature if it recognizes and is
+capable of transforming all defined values of the <loc
+href="#style-attribute-backgroundColor"><att>tts:backgroundColor</att></loc>
+attribute when applied to a <loc
+href="#layout-vocabulary-region"><el>region</el></loc> element.</p>
+<p>A TTML presentation processor supports the
+<code>#backgroundColor-region</code> feature if it (1) implements presentation semantic
+support for the <loc
+href="#style-attribute-backgroundColor"><att>tts:backgroundColor</att></loc>
+attribute when applied to a <loc
+href="#layout-vocabulary-region"><el>region</el></loc> element
+and (2) is capable of displaying or generating an output display
+signal that distinguishes between at least sixteen (16) values of color,
+including all primary and secondary colors of the SRGB color space
+.</p>
+</div3>
+<div3 id="feature-bidi">
+<head>#bidi</head>
+<p>A TTML processor supports the <code>#bidi</code> feature if it
+supports the following features:</p>
+<ulist>
+<item><p><loc
+href="#feature-direction"><code>#direction</code></loc></p></item>
+<item><p><loc
+href="#feature-unicodeBidi"><code>#unicodeBidi</code></loc></p></item>
+<item><p><loc
+href="#feature-writingMode-horizontal"><code>#writingMode-horizontal</code></loc></p></item>
+</ulist>
+</div3>
+<div3 id="feature-cellResolution">
+<head>#cellResolution</head>
+<p>A TTML transformation processor supports the
+<code>#cellResolution</code> feature if it recognizes and is capable of
+transforming the <loc
+href="#parameter-attribute-cellResolution"><att>ttp:cellResolution</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#cellResolution</code> feature if it implements presentation semantic support
+for the <loc
+href="#parameter-attribute-cellResolution"><att>ttp:cellResolution</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-clockMode">
+<head>#clockMode</head>
+<p>A TTML transformation processor supports the
+<code>#clockMode</code> feature if it recognizes and is capable of
+transforming the <loc
+href="#parameter-attribute-clockMode"><att>ttp:clockMode</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#clockMode</code> feature if it implements presentation semantic support
+for the <loc
+href="#parameter-attribute-clockMode"><att>ttp:clockMode</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-clockMode-gps">
+<head>#clockMode-gps</head>
+<p>A TTML transformation processor supports the
+<code>#clockMode-gps</code> feature if it recognizes and is capable of
+transforming the <code>gps</code> value of the <loc
+href="#parameter-attribute-clockMode"><att>ttp:clockMode</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#clockMode-gps</code> feature if it implements presentation semantic support
+for the <code>gps</code> value of the <loc
+href="#parameter-attribute-clockMode"><att>ttp:clockMode</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-clockMode-local">
+<head>#clockMode-local</head>
+<p>A TTML transformation processor supports the
+<code>#clockMode-local</code> feature if it recognizes and is capable of
+transforming the <code>local</code> value of the <loc
+href="#parameter-attribute-clockMode"><att>ttp:clockMode</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#clockMode-local</code> feature if it implements presentation semantic support
+for the <code>local</code> value of the <loc
+href="#parameter-attribute-clockMode"><att>ttp:clockMode</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-clockMode-utc">
+<head>#clockMode-utc</head>
+<p>A TTML transformation processor supports the
+<code>#clockMode-utc</code> feature if it recognizes and is capable of
+transforming the <code>utc</code> value of the <loc
+href="#parameter-attribute-clockMode"><att>ttp:clockMode</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#clockMode-utc</code> feature if it implements presentation semantic support
+for the <code>utc</code> value of the <loc
+href="#parameter-attribute-clockMode"><att>ttp:clockMode</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-color">
+<head>#color</head>
+<p>A TTML transformation processor supports the
+<code>#color</code> feature if it recognizes and is capable of
+transforming the <loc
+href="#style-attribute-color"><att>tts:color</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#color</code> feature if it (1) implements presentation semantic support
+for the <loc
+href="#style-attribute-color"><att>tts:color</att></loc>
+attribute
+and (2) is capable of displaying or generating an output display
+signal that distinguishes between at least sixteen (16) values of color,
+including all primary and secondary colors of the SRGB color space.</p>
+</div3>
+<div3 id="feature-content">
+<head>#content</head>
+<p>A TTML transformation processor supports the <code>#content</code>
+feature if it recognizes and is capable of transforming the following
+vocabulary defined by <specref ref="content"/>:</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>
+<item><p><loc href="#content-vocabulary-br"><el>br</el></loc></p></item>
+</ulist>
+<p>A TTML presentation processor supports the <code>#content</code>
+feature if it implements presentation semantic support for the
+same vocabulary enumerated above.</p>
+</div3>
+<div3 id="feature-core">
+<head>#core</head>
+<p>A TTML transformation processor supports the <code>#core</code>
+feature if it recognizes and is capable of transforming the following
+core attributes vocabulary defined by <specref ref="content"/>:</p>
+<ulist>
+<item><p><loc href="#content-attribute-id">@<att>xml:id</att></loc></p></item>
+<item><p><loc href="#content-attribute-id">@<att>xml:lang</att></loc></p></item>
+<item><p><loc href="#content-attribute-id">@<att>xml:space</att></loc></p></item>
+</ulist>
+<p>A TTML presentation processor supports the <code>#core</code>
+feature if it implements presentation semantic support for the
+same vocabulary enumerated above.</p>
+</div3>
+<div3 id="feature-direction">
+<head>#direction</head>
+<p>A TTML transformation processor supports the
+<code>#direction</code> feature if it recognizes and is capable of
+transforming all defined values of the <loc
+href="#style-attribute-direction"><att>tts:direction</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#direction</code> feature if it implements presentation semantic support
+for all defined values of the <loc
+href="#style-attribute-direction"><att>tts:direction</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-display">
+<head>#display</head>
+<p>A TTML transformation processor supports the
+<code>#display</code> feature if it recognizes and is capable of
+transforming all defined values of the <loc
+href="#style-attribute-display"><att>tts:display</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#display</code> feature if it implements presentation semantic support
+for all defined values of the <loc
+href="#style-attribute-display"><att>tts:display</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-display-block">
+<head>#display-block</head>
+<p>A TTML transformation processor supports the
+<code>#display-block</code> feature if it recognizes and is
+capable of transforming all defined values of the <loc
+href="#style-attribute-display"><att>tts:display</att></loc>
+attribute when applied to a content element that would generate a
+block area during presentation processing.</p>
+<p>A TTML presentation processor supports the
+<code>#display-block</code> feature if it implements presentation semantic
+support for all defined values of the <loc
+href="#style-attribute-display"><att>tts:display</att></loc>
+attribute when applied to a content element that generates a
+block area.</p>
+</div3>
+<div3 id="feature-display-inline">
+<head>#display-inline</head>
+<p>A TTML transformation processor supports the
+<code>#display-inline</code> feature if it recognizes and is
+capable of transforming all defined values of the <loc
+href="#style-attribute-display"><att>tts:display</att></loc>
+attribute when applied to a content element that would generate an
+inline area during presentation processing.</p>
+<p>A TTML presentation processor supports the
+<code>#display-inline</code> feature if it implements presentation semantic
+support for all defined values of the <loc
+href="#style-attribute-display"><att>tts:display</att></loc>
+attribute when applied to a content element that generates an
+inline area.</p>
+</div3>
+<div3 id="feature-display-region">
+<head>#display-region</head>
+<p>A TTML transformation processor supports the
+<code>#display-region</code> feature if it recognizes and is
+capable of transforming all defined values of the <loc
+href="#style-attribute-display"><att>tts:display</att></loc>
+attribute when applied to a <loc
+href="#layout-vocabulary-region"><el>region</el></loc> element.</p>
+<p>A TTML presentation processor supports the
+<code>#display-region</code> feature if it implements presentation semantic
+support for all defined values of the <loc
+href="#style-attribute-display"><att>tts:display</att></loc>
+attribute when applied to a <loc
+href="#layout-vocabulary-region"><el>region</el></loc> element.</p>
+</div3>
+<div3 id="feature-displayAlign">
+<head>#displayAlign</head>
+<p>A TTML transformation processor supports the
+<code>#displayAlign</code> feature if it recognizes and is capable of
+transforming all defined values of the <loc
+href="#style-attribute-displayAlign"><att>tts:displayAlign</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#displayAlign</code> feature if it implements presentation semantic support
+for all defined values of the <loc
+href="#style-attribute-displayAlign"><att>tts:displayAlign</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-dropMode">
+<head>#dropMode</head>
+<p>A TTML transformation processor supports the
+<code>#dropMode</code> feature if it recognizes and is capable of
+transforming the <loc
+href="#parameter-attribute-dropMode"><att>ttp:dropMode</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#dropMode</code> feature if it implements presentation semantic support
+for the <loc
+href="#parameter-attribute-dropMode"><att>ttp:dropMode</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-dropMode-dropNTSC">
+<head>#dropMode-dropNTSC</head>
+<p>A TTML transformation processor supports the
+<code>#dropMode-dropNTSC</code> feature if it recognizes and is capable of
+transforming the <code>dropNTSC</code> value of the <loc
+href="#parameter-attribute-dropMode"><att>ttp:dropMode</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#dropMode-dropNTSC</code> feature if it implements presentation semantic support
+for the <code>dropNTSC</code> value of the <loc
+href="#parameter-attribute-dropMode"><att>ttp:dropMode</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-dropMode-dropPAL">
+<head>#dropMode-dropPAL</head>
+<p>A TTML transformation processor supports the
+<code>#dropMode-dropPAL</code> feature if it recognizes and is capable of
+transforming the <code>dropPAL</code> value of the <loc
+href="#parameter-attribute-dropMode"><att>ttp:dropMode</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#dropMode-dropPAL</code> feature if it implements presentation semantic support
+for the <code>dropPAL</code> value of the <loc
+href="#parameter-attribute-dropMode"><att>ttp:dropMode</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-dropMode-nonDrop">
+<head>#dropMode-nonDrop</head>
+<p>A TTML transformation processor supports the
+<code>#dropMode-nonDrop</code> feature if it recognizes and is capable of
+transforming the <code>nonDrop</code> value of the <loc
+href="#parameter-attribute-dropMode"><att>ttp:dropMode</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#dropMode-nonDrop</code> feature if it implements presentation semantic support
+for the <code>nonDrop</code> value of the <loc
+href="#parameter-attribute-dropMode"><att>ttp:dropMode</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-extent">
+<head>#extent</head>
+<p>A TTML transformation processor supports the
+<code>#extent</code> feature if it recognizes and is capable of
+transforming the <loc
+href="#style-attribute-extent"><att>tts:extent</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#extent</code> feature if it implements presentation semantic support for
+the <loc
+href="#style-attribute-extent"><att>tts:extent</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-extent-region">
+<head>#extent-region</head>
+<p>A TTML transformation processor supports the
+<code>#extent-region</code> feature if it recognizes and is capable of
+transforming the <loc
+href="#style-attribute-extent"><att>tts:extent</att></loc>
+attribute when applied to a <loc
+href="#layout-vocabulary-region"><el>region</el></loc> element.</p>
+<p>A TTML presentation processor supports the
+<code>#extent-region</code> feature if it implements presentation semantic support for
+the <loc
+href="#style-attribute-extent"><att>tts:extent</att></loc>
+attribute when applied to a <loc
+href="#layout-vocabulary-region"><el>region</el></loc> element.</p>
+</div3>
+<div3 id="feature-extent-root">
+<head>#extent-root</head>
+<p>A TTML transformation processor supports the
+<code>#extent-root</code> feature if it recognizes and is capable of
+transforming the <loc
+href="#style-attribute-extent"><att>tts:extent</att></loc>
+attribute when applied to the <loc
+href="#document-structure-vocabulary-tt"><el>tt</el></loc> element.</p>
+<p>A TTML presentation processor supports the
+<code>#extent-root</code> feature if it implements presentation semantic support for
+the <loc
+href="#style-attribute-extent"><att>tts:extent</att></loc>
+attribute when applied to a <loc
+href="#document-structure-vocabulary-tt"><el>tt</el></loc> element.</p>
+</div3>
+<div3 id="feature-fontFamily">
+<head>#fontFamily</head>
+<p>A TTML transformation processor supports the
+<code>#fontFamily</code> feature if it recognizes and is capable of
+transforming the <loc
+href="#style-attribute-fontFamily"><att>tts:fontFamily</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#fontFamily</code> feature if it implements presentation semantic support
+for the <loc
+href="#style-attribute-fontFamily"><att>tts:fontFamily</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-fontFamily-generic">
+<head>#fontFamily-generic</head>
+<p>A TTML transformation processor supports the
+<code>#fontFamily-generic</code> feature if it recognizes and is
+capable of transforming <loc
+href="#style-value-genericFamilyName"><genericFamilyName></loc>
+values when used with the <loc
+href="#style-attribute-fontFamily"><att>tts:fontFamily</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#fontFamily-generic</code> feature if it implements presentation semantic
+support for <loc
+href="#style-value-genericFamilyName"><genericFamilyName></loc>
+values when used with the <loc
+href="#style-attribute-fontFamily"><att>tts:fontFamily</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-fontFamily-non-generic">
+<head>#fontFamily-non-generic</head>
+<p>A TTML transformation processor supports the
+<code>#fontFamily-non-generic</code> feature if it recognizes and is
+capable of transforming <loc
+href="#style-value-familyName"><familyName></loc>
+values when used with the <loc
+href="#style-attribute-fontFamily"><att>tts:fontFamily</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#fontFamily-non-generic</code> feature if it implements presentation semantic
+support for <loc
+href="#style-value-familyName"><familyName></loc>
+values when used with the <loc
+href="#style-attribute-fontFamily"><att>tts:fontFamily</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-fontSize">
+<head>#fontSize</head>
+<p>A TTML transformation processor supports the
+<code>#fontSize</code> feature if it recognizes and is capable of
+transforming the <loc
+href="#style-attribute-fontSize"><att>tts:fontSize</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#fontSize</code> feature if it implements presentation semantic support
+for the <loc
+href="#style-attribute-fontSize"><att>tts:fontSize</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-fontSize-anamorphic">
+<head>#fontSize-anamorphic</head>
+<p>A TTML transformation processor supports the
+<code>#fontSize-anamorphic</code> feature if it recognizes and is
+capable of transforming values of the <loc
+href="#style-attribute-fontSize"><att>tts:fontSize</att></loc>
+attribute that consist of two <loc
+href="#style-value-length"><length></loc> specifications.</p>
+<p>A TTML presentation processor supports the
+<code>#fontSize-anamorphic</code> feature if it implements presentation semantic
+support for defined values of the <loc
+href="#style-attribute-fontSize"><att>tts:fontSize</att></loc>
+attribute that consist of two <loc
+href="#style-value-length"><length></loc> specifications.</p>
+</div3>
+<div3 id="feature-fontSize-isomorphic">
+<head>#fontSize-isomorphic</head>
+<p>A TTML transformation processor supports the
+<code>#fontSize-isomorphic</code> feature if it recognizes and is
+capable of transforming values of the <loc
+href="#style-attribute-fontSize"><att>tts:fontSize</att></loc>
+attribute that consist of a single <loc
+href="#style-value-length"><length></loc> specification.</p>
+<p>A TTML presentation processor supports the
+<code>#fontSize-isomorphic</code> feature if it implements presentation semantic
+support for defined values of the <loc
+href="#style-attribute-fontSize"><att>tts:fontSize</att></loc>
+attribute that consist of a single <loc
+href="#style-value-length"><length></loc> specification.</p>
+</div3>
+<div3 id="feature-fontStyle">
+<head>#fontStyle</head>
+<p>A TTML transformation processor supports the
+<code>#fontStyle</code> feature if it recognizes and is capable of
+transforming all defined values of the <loc
+href="#style-attribute-fontStyle"><att>tts:fontStyle</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#fontStyle</code> feature if it implements presentation semantic support
+for all defined values of the <loc
+href="#style-attribute-fontStyle"><att>tts:fontStyle</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-fontStyle-italic">
+<head>#fontStyle-italic</head>
+<p>A TTML transformation processor supports the
+<code>#fontStyle-italic</code> feature if it recognizes and is
+capable of transforming the <code>italic</code> value of the <loc
+href="#style-attribute-fontStyle"><att>tts:fontStyle</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#fontStyle-italic</code> feature if it implements presentation semantic
+support for the <code>italic</code> of the <loc
+href="#style-attribute-fontStyle"><att>tts:fontStyle</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-fontStyle-oblique">
+<head>#fontStyle-oblique</head>
+<p>A TTML transformation processor supports the
+<code>#fontStyle-oblique</code> feature if it recognizes and is
+capable of transforming the <code>oblique</code> value of the <loc
+href="#style-attribute-fontStyle"><att>tts:fontStyle</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#fontStyle-oblique</code> feature if it implements presentation semantic
+support for the <code>oblique</code> of the <loc
+href="#style-attribute-fontStyle"><att>tts:fontStyle</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-fontWeight">
+<head>#fontWeight</head>
+<p>A TTML transformation processor supports the
+<code>#fontWeight</code> feature if it recognizes and is capable of
+transforming all defined values of the <loc
+href="#style-attribute-fontWeight"><att>tts:fontWeight</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#fontWeight</code> feature if it implements presentation semantic support
+for all defined values of the <loc
+href="#style-attribute-fontWeight"><att>tts:fontWeight</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-fontWeight-bold">
+<head>#fontWeight-bold</head>
+<p>A TTML transformation processor supports the
+<code>#fontWeight-bold</code> feature if it recognizes and is
+capable of transforming <code>bold</code> value of the <loc
+href="#style-attribute-fontWeight"><att>tts:fontWeight</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#fontWeight-bold</code> feature if it implements presentation semantic
+support for the <code>bold</code> of the <loc
+href="#style-attribute-fontWeight"><att>tts:fontWeight</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-frameRate">
+<head>#frameRate</head>
+<p>A TTML transformation processor supports the
+<code>#frameRate</code> feature if it recognizes and is capable of
+transforming the <loc
+href="#parameter-attribute-frameRate"><att>ttp:frameRate</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#frameRate</code> feature if it implements presentation semantic support
+for the <loc
+href="#parameter-attribute-frameRate"><att>ttp:frameRate</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-frameRateMultiplier">
+<head>#frameRateMultiplier</head>
+<p>A TTML transformation processor supports the
+<code>#frameRateMultiplier</code> feature if it recognizes and is capable of
+transforming the <loc
+href="#parameter-attribute-frameRateMultiplier"><att>ttp:frameRateMultiplier</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#frameRateMultiplier</code> feature if it implements presentation semantic support
+for the <loc
+href="#parameter-attribute-frameRateMultiplier"><att>ttp:frameRateMultiplier</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-layout">
+<head>#layout</head>
+<p>A TTML transformation processor supports the <code>#layout</code>
+feature if it (1) recognizes and is capable of transforming the following
+vocabulary defined by <specref ref="layout"/>:</p>
+<ulist>
+<item><p><loc href="#layout-vocabulary-layout"><el>layout</el></loc></p></item>
+<item><p><loc href="#layout-vocabulary-region"><el>region</el></loc></p></item>
+<item><p><loc href="#layout-attribute-region">@<att>region</att></loc></p></item>
+</ulist>
+<p>and (2) supports the following attributes when applied to the
+<loc href="#layout-vocabulary-region"><el>region</el></loc> element:</p>
+<ulist>
+<item><p><loc
+href="#style-attribute-extent"><att>tts:extent</att></loc></p></item>
+<item><p><loc
+href="#style-attribute-origin"><att>tts:origin</att></loc></p></item>
+</ulist>
+<p>A TTML presentation processor supports the <code>#layout</code>
+feature if it implements presentation semantic support for the
+same vocabulary and features enumerated above.</p>
+</div3>
+<div3 id="feature-length">
+<head>#length</head>
+<p>A TTML transformation processor supports the <code>#length</code>
+feature if it recognizes and is capable of transforming all defined
+values of the <loc href="#style-value-length"><length></loc>
+style value expression.</p>
+<p>A TTML presentation processor supports the <code>#length</code>
+feature if it implements presentation semantic support for all defined values of
+the <loc href="#style-value-length"><length></loc> style value
+expression.</p>
+<note role="clarification">
+<p>Support for <code>#length</code> is intended to imply support for the following features:
+<code>#length-integer</code>,
+<code>#length-real</code>,
+<code>#length-positive</code>,
+<code>#length-negative</code>,
+<code>#length-cell</code>,
+<code>#length-em</code>,
+<code>#length-percentage</code>, and
+<code>#length-pixel</code>.</p>
+</note>
+</div3>
+<div3 id="feature-length-cell">
+<head>#length-cell</head>
+<p>A TTML transformation processor supports the
+<code>#length-cell</code> feature if it recognizes and is capable of
+transforming scalar values of the <loc
+href="#style-value-length"><length></loc> style value expression
+that use <code>c</code> (cell) units.</p>
+<p>A TTML presentation processor supports the
+<code>#length-cell</code> feature if it implements presentation semantic support
+for scalar values of the <loc
+href="#style-value-length"><length></loc> style value expression
+that use <code>c</code> (cell) units.</p>
+<note role="clarification">
+<p>Support for <code>#length-cell</code> does not, by itself, imply support for
+<code>#length-integer</code>,
+<code>#length-real</code>,
+<code>#length-positive</code>, or
+<code>#length-negative</code> features.</p>
+</note>
+</div3>
+<div3 id="feature-length-em">
+<head>#length-em</head>
+<p>A TTML transformation processor supports the
+<code>#length-em</code> feature if it recognizes and is capable of
+transforming scalar values of the <loc
+href="#style-value-length"><length></loc> style value expression
+that use <code>em</code> (EM) units.</p>
+<p>A TTML presentation processor supports the
+<code>#length-em</code> feature if it implements presentation semantic support
+for scalar values of the <loc
+href="#style-value-length"><length></loc> style value expression
+that use <code>em</code> (EM) units.</p>
+<note role="clarification">
+<p>Support for <code>#length-em</code> does not, by itself, imply support for
+<code>#length-integer</code>,
+<code>#length-real</code>,
+<code>#length-positive</code>, or
+<code>#length-negative</code> features.</p>
+</note>
+</div3>
+<div3 id="feature-length-integer">
+<head>#length-integer</head>
+<p>A TTML transformation processor supports the
+<code>#length-integer</code> feature if it recognizes and is
+capable of transforming integer values of the <loc
+href="#style-value-length"><length></loc> style value
+expression.</p>
+<p>A TTML presentation processor supports the
+<code>#length-integer</code> feature if it implements presentation semantic
+support for integer values of the <loc
+href="#style-value-length"><length></loc> style value
+expression.
+</p>
+<note role="clarification">
+<p>Support for <code>#length-integer</code> does not, by itself, imply support for
+<code>#length-positive</code> or
+<code>#length-negative</code> features.</p>
+</note>
+</div3>
+<div3 id="feature-length-negative">
+<head>#length-negative</head>
+<p>A TTML transformation processor supports the
+<code>#length-negative</code> feature if it recognizes and is
+capable of transforming negative values of the <loc
+href="#style-value-length"><length></loc> style value
+expression.</p>
+<p>A TTML presentation processor supports the
+<code>#length-negative</code> feature if it implements presentation semantic
+support for negative values of the <loc
+href="#style-value-length"><length></loc> style value
+expression.
+</p>
+<note role="clarification">
+<p>Support for <code>#length-negative</code> does not, by itself, imply support for
+<code>#length-integer</code> or
+<code>#length-real</code> features.</p>
+</note>
+</div3>
+<div3 id="feature-length-percentage">
+<head>#length-percentage</head>
+<p>A TTML transformation processor supports the
+<code>#length-percentage</code> feature if it recognizes and is
+capable of transforming percentage values of the <loc
+href="#style-value-length"><length></loc> style value
+expression.</p>
+<p>A TTML presentation processor supports the
+<code>#length-percentage</code> feature if it implements presentation semantic
+support for percentage values of the <loc
+href="#style-value-length"><length></loc> style value
+expression.
+</p>
+<note role="clarification">
+<p>Support for <code>#length-percentage</code> does not, by itself, imply support for
+<code>#length-integer</code>,
+<code>#length-real</code>,
+<code>#length-positive</code>, or
+<code>#length-negative</code> features.</p>
+</note>
+</div3>
+<div3 id="feature-length-pixel">
+<head>#length-pixel</head>
+<p>A TTML transformation processor supports the
+<code>#length-pixel</code> feature if it recognizes and is capable of
+transforming scalar values of the <loc
+href="#style-value-length"><length></loc> style value expression
+that use <code>px</code> (pixel) units.</p>
+<p>A TTML presentation processor supports the
+<code>#length-pixel</code> feature if it implements presentation semantic support
+for scalar values of the <loc
+href="#style-value-length"><length></loc> style value expression
+that use <code>px</code> (pixel) units.</p>
+<note role="clarification">
+<p>Support for <code>#length-pixel</code> does not, by itself, imply support for
+<code>#length-integer</code>,
+<code>#length-real</code>,
+<code>#length-positive</code>, or
+<code>#length-negative</code> features.</p>
+</note>
+</div3>
+<div3 id="feature-length-positive">
+<head>#length-positive</head>
+<p>A TTML transformation processor supports the
+<code>#length-positive</code> feature if it recognizes and is
+capable of transforming positive values of the <loc
+href="#style-value-length"><length></loc> style value
+expression.</p>
+<p>A TTML presentation processor supports the
+<code>#length-positive</code> feature if it implements presentation semantic
+support for positive values of the <loc
+href="#style-value-length"><length></loc> style value
+expression.
+</p>
+<note role="clarification">
+<p>Support for <code>#length-positive</code> is intended to imply support for zero valued
+<loc
+href="#style-value-length"><length></loc> style value
+expressions.</p>
+</note>
+<note role="clarification">
+<p>Support for <code>#length-positive</code> does not, by itself, imply support for
+<code>#length-integer</code> or
+<code>#length-real</code> features.</p>
+</note>
+</div3>
+<div3 id="feature-length-real">
+<head>#length-real</head>
+<p>A TTML transformation processor supports the
+<code>#length-real</code> feature if it recognizes and is
+capable of transforming real values of the <loc
+href="#style-value-length"><length></loc> style value
+expression.</p>
+<p>A TTML presentation processor supports the
+<code>#length-real</code> feature if it implements presentation semantic
+support for real values of the <loc
+href="#style-value-length"><length></loc> style value
+expression.
+</p>
+<note role="clarification">
+<p>Support for <code>#length-real</code> is intended to imply support for
+integer valued <loc
+href="#style-value-length"><length></loc> style value
+expressions as well as real valued expressions.</p>
+</note>
+<note role="clarification">
+<p>Support for <code>#length-real</code> does not, by itself, imply support for
+<code>#length-positive</code> or
+<code>#length-negative</code> features.</p>
+</note>
+</div3>
+<div3 id="feature-lineBreak-uax14">
+<head>#lineBreak-uax14</head>
+<p>A TTML transformation processor supports the
+<code>#lineBreak-uax14</code> feature if it recognizes and is capable of
+transforming requirements expressed by <bibref ref="uax14"/> into its
+target document space.</p>
+<p>A TTML presentation processor supports the
+<code>#lineBreak-uax14</code> feature if it implements presentation semantic support
+for <bibref ref="uax14"/> as applies to line breaking.</p>
+</div3>
+<div3 id="feature-lineHeight">
+<head>#lineHeight</head>
+<p>A TTML transformation processor supports the
+<code>#lineHeight</code> feature if it recognizes and is capable of
+transforming the <loc
+href="#style-attribute-lineHeight"><att>tts:lineHeight</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#lineHeight</code> feature if it implements presentation semantic support for
+the <loc
+href="#style-attribute-lineHeight"><att>tts:lineHeight</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-markerMode">
+<head>#markerMode</head>
+<p>A TTML transformation processor supports the
+<code>#markerMode</code> feature if it recognizes and is capable of
+transforming the <loc
+href="#parameter-attribute-markerMode"><att>ttp:markerMode</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#markerMode</code> feature if it implements presentation semantic support
+for the <loc
+href="#parameter-attribute-markerMode"><att>ttp:markerMode</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-markerMode-continuous">
+<head>#markerMode-continuous</head>
+<p>A TTML transformation processor supports the
+<code>#markerMode-continuous</code> feature if it recognizes and is capable of
+transforming the <code>continuous</code> value of the <loc
+href="#parameter-attribute-markerMode"><att>ttp:markerMode</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#markerMode-continuous</code> feature if it implements presentation semantic support
+for the <code>continuous</code> value of the <loc
+href="#parameter-attribute-markerMode"><att>ttp:markerMode</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-markerMode-discontinuous">
+<head>#markerMode-discontinuous</head>
+<p>A TTML transformation processor supports the
+<code>#markerMode-discontinuous</code> feature if it recognizes and is capable of
+transforming the <code>discontinuous</code> value of the <loc
+href="#parameter-attribute-markerMode"><att>ttp:markerMode</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#markerMode-discontinuous</code> feature if it implements presentation semantic support
+for the <code>discontinuous</code> value of the <loc
+href="#parameter-attribute-markerMode"><att>ttp:markerMode</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-metadata">
+<head>#metadata</head>
+<p>A TTML transformation processor supports the <code>#metadata</code>
+feature if it recognizes and is capable of transforming the following
+vocabulary defined by <specref ref="metadata"/>:</p>
+<ulist>
+<item><p><loc href="#metadata-vocabulary-metadata"><el>metadata</el></loc></p></item>
+<item><p><loc href="#metadata-vocabulary-title"><el>ttm:title</el></loc></p></item>
+<item><p><loc href="#metadata-vocabulary-title"><el>ttm:desc</el></loc></p></item>
+<item><p><loc href="#metadata-vocabulary-title"><el>ttm:copyright</el></loc></p></item>
+<item><p><loc href="#metadata-vocabulary-title"><el>ttm:agent</el></loc></p></item>
+<item><p><loc href="#metadata-vocabulary-title"><el>ttm:name</el></loc></p></item>
+<item><p><loc href="#metadata-vocabulary-title"><el>ttm:actor</el></loc></p></item>
+<item><p><loc href="#metadata-attribute-agent">@<att>ttm:agent</att></loc></p></item>
+<item><p><loc href="#metadata-attribute-role">@<att>ttm:role</att></loc></p></item>
+</ulist>
+<p>A TTML presentation processor supports the <code>#metadata</code>
+feature if it recognizes and is capable of presenting the information
+expressed by the same vocabulary enumerated above.</p>
+<note role="clarification">
+<p>This specification does not define a standardized form for the
+presentation of metadata information. The presentation or ability to
+present metadata information is considered to be implementation
+dependent.</p>
+</note>
+</div3>
+<div3 id="feature-nested-div">
+<head>#nested-div</head>
+<p>A TTML transformation processor supports the <code>#nested-div</code>
+feature if it recognizes and is capable of transforming nested
+<loc href="#content-vocabulary-div"><el>div</el></loc> elements.</p>
+<p>A TTML presentation processor supports the <code>#nested-div</code>
+feature if it implements presentation semantic support for nested
+<loc href="#content-vocabulary-div"><el>div</el></loc> elements.</p>
+</div3>
+<div3 id="feature-nested-span">
+<head>#nested-span</head>
+<p>A TTML transformation processor supports the <code>#nested-span</code>
+feature if it recognizes and is capable of transforming nested
+<loc href="#content-vocabulary-span"><el>span</el></loc> elements.</p>
+<p>A TTML presentation processor supports the <code>#nested-span</code>
+feature if it implements presentation semantic support for nested
+<loc href="#content-vocabulary-span"><el>span</el></loc> elements.</p>
+</div3>
+<div3 id="feature-opacity">
+<head>#opacity</head>
+<p>A TTML transformation processor supports the
+<code>#opacity</code> feature if it recognizes and is capable of
+transforming the <loc
+href="#style-attribute-opacity"><att>tts:opacity</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#opacity</code> feature if it (1) implements presentation semantic support for
+the <loc
+href="#style-attribute-opacity"><att>tts:opacity</att></loc>
+attribute and (2) is capable of displaying or generating an output display
+signal that distinguishes between at least eight (8) values of opacity.</p>
+</div3>
+<div3 id="feature-origin">
+<head>#origin</head>
+<p>A TTML transformation processor supports the
+<code>#origin</code> feature if it recognizes and is capable of
+transforming the <loc
+href="#style-attribute-origin"><att>tts:origin</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#origin</code> feature if it implements presentation semantic support for
+the <loc
+href="#style-attribute-origin"><att>tts:origin</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-overflow">
+<head>#overflow</head>
+<p>A TTML transformation processor supports the
+<code>#overflow</code> feature if it recognizes and is capable of
+transforming all defined values of the <loc
+href="#style-attribute-overflow"><att>tts:overflow</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#overflow</code> feature if it implements presentation semantic support for
+all defined values of the <loc
+href="#style-attribute-overflow"><att>tts:overflow</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-overflow-visible">
+<head>#overflow-visible</head>
+<p>A TTML transformation processor supports the
+<code>#overflow-visible</code> feature if it recognizes and is capable of
+transforming the <code>visible</code> value of the <loc
+href="#style-attribute-overflow"><att>tts:overflow</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#overflow-visible</code> feature if it implements presentation semantic support for
+the <code>visible</code> value of the <loc
+href="#style-attribute-overflow"><att>tts:overflow</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-padding">
+<head>#padding</head>
+<p>A TTML transformation processor supports the
+<code>#padding</code> feature if it recognizes and is capable of
+transforming the <loc
+href="#style-attribute-padding"><att>tts:padding</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#padding</code> feature if it implements presentation semantic support for
+the <loc
+href="#style-attribute-padding"><att>tts:padding</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-padding-1">
+<head>#padding-1</head>
+<p>A TTML transformation processor supports the
+<code>#padding-1</code> feature if it recognizes and is capable of
+transforming values of the <loc
+href="#style-attribute-padding"><att>tts:padding</att></loc> attribute
+that consist of one <loc
+href="#style-value-length"><length></loc> specification.</p>
+<p>A TTML presentation processor supports the <code>#padding-1</code>
+feature if it implements presentation semantic support for values of the <loc
+href="#style-attribute-padding"><att>tts:padding</att></loc> attribute
+that consist of one <loc
+href="#style-value-length"><length></loc> specification.</p>
+</div3>
+<div3 id="feature-padding-2">
+<head>#padding-2</head>
+<p>A TTML transformation processor supports the
+<code>#padding-2</code> feature if it recognizes and is capable of
+transforming values of the <loc
+href="#style-attribute-padding"><att>tts:padding</att></loc> attribute
+that consist of two <loc
+href="#style-value-length"><length></loc> specification.</p>
+<p>A TTML presentation processor supports the <code>#padding-2</code>
+feature if it implements presentation semantic support for values of the <loc
+href="#style-attribute-padding"><att>tts:padding</att></loc> attribute
+that consist of two <loc
+href="#style-value-length"><length></loc> specification.</p>
+</div3>
+<div3 id="feature-padding-3">
+<head>#padding-3</head>
+<p>A TTML transformation processor supports the
+<code>#padding-3</code> feature if it recognizes and is capable of
+transforming values of the <loc
+href="#style-attribute-padding"><att>tts:padding</att></loc> attribute
+that consist of three <loc
+href="#style-value-length"><length></loc> specification.</p>
+<p>A TTML presentation processor supports the <code>#padding-3</code>
+feature if it implements presentation semantic support for values of the <loc
+href="#style-attribute-padding"><att>tts:padding</att></loc> attribute
+that consist of three <loc
+href="#style-value-length"><length></loc> specification.</p>
+</div3>
+<div3 id="feature-padding-4">
+<head>#padding-4</head>
+<p>A TTML transformation processor supports the
+<code>#padding-4</code> feature if it recognizes and is capable of
+transforming values of the <loc
+href="#style-attribute-padding"><att>tts:padding</att></loc> attribute
+that consist of four <loc
+href="#style-value-length"><length></loc> specification.</p>
+<p>A TTML presentation processor supports the <code>#padding-4</code>
+feature if it implements presentation semantic support for values of the <loc
+href="#style-attribute-padding"><att>tts:padding</att></loc> attribute
+that consist of four <loc
+href="#style-value-length"><length></loc> specification.</p>
+</div3>
+<div3 id="feature-pixelAspectRatio">
+<head>#pixelAspectRatio</head>
+<p>A TTML transformation processor supports the
+<code>#pixelAspectRatio</code> feature if it recognizes and is capable of
+transforming the <loc
+href="#parameter-attribute-pixelAspectRatio"><att>ttp:pixelAspectRatio</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#pixelAspectRatio</code> feature if it implements presentation semantic support
+for the <loc
+href="#parameter-attribute-pixelAspectRatio"><att>ttp:pixelAspectRatio</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-presentation">
+<head>#presentation</head>
+<p>A TTML processor supports the
+<code>#presentation</code> feature if it
+(1) satisfies the generic processor criteria defined by
+<specref ref="conformance-generic-processor"/>,
+(2) implements support for the region and line layout
+semantics defined by <specref ref="semantics-region-layout"/> and
+<specref ref="semantics-line-layout"/>, respectively, and
+(3) implements presentation semantics for the following features:</p>
+<ulist>
+<item><p><loc href="#content"><code>#content</code></loc></p></item>
+<item><p><loc href="#feature-core"><code>#core</code></loc></p></item>
+<item><p><loc href="#feature-profile"><code>#profile</code></loc></p></item>
+<item><p><loc href="#feature-structure"><code>#structure</code></loc></p></item>
+<item><p><loc href="#feature-time-offset"><code>#time-offset</code></loc></p></item>
+<item><p><loc href="#timing"><code>#timing</code></loc></p></item>
+</ulist>
+<p>
+In addition, a TTML processor that supports the
+<code>#presentation</code> feature should satisfy the user agent
+accessibility guidelines specified by <bibref ref="uaag"/>.</p>
+</div3>
+<div3 id="feature-profile">
+<head>#profile</head>
+<p>A TTML transformation processor supports the <code>#profile</code>
+feature if it recognizes and is capable of transforming the
+<loc href="#parameter-attribute-profile"><att>ttp:profile</att></loc>
+attribute on the <loc
+href="#document-structure-vocabulary-tt"><el>tt</el></loc> element and
+transforming the following vocabulary defined by
+<specref ref="parameter-element-vocabulary"/>:</p>
+<ulist>
+<item><p><loc
+href="#parameter-vocabulary-profile"><el>ttp:profile</el></loc></p></item>
+<item><p><loc
+href="#parameter-vocabulary-features"><el>ttp:features</el></loc></p></item>
+<item><p><loc
+href="#parameter-vocabulary-feature"><el>ttp:feature</el></loc></p></item>
+<item><p><loc
+href="#parameter-vocabulary-extensions"><el>ttp:extensions</el></loc></p></item>
+<item><p><loc
+href="#parameter-vocabulary-extension"><el>ttp:extension</el></loc></p></item>
+</ulist>
+<p>A TTML presentation processor supports the
+<code>#profile</code> feature if it implements presentation semantic support
+for the same vocabulary specified above.</p>
+</div3>
+<div3 id="feature-showBackground">
+<head>#showBackground</head>
+<p>A TTML transformation processor supports the
+<code>#showBackground</code> feature if it recognizes and is capable
+of transforming all defined values of the <loc
+href="#style-attribute-showBackground"><att>tts:showBackground</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#showBackground</code> feature if it implements presentation semantic support
+for all defined values of the <loc
+href="#style-attribute-showBackground"><att>tts:showBackground</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-structure">
+<head>#structure</head>
+<p>A TTML transformation processor supports the <code>#structure</code>
+feature if it recognizes and is capable of transforming the following
+vocabulary defined by <specref ref="content"/>:</p>
+<ulist>
+<item><p><loc href="#document-structure-vocabulary-tt"><el>tt</el></loc></p></item>
+<item><p><loc href="#document-structure-vocabulary-head"><el>head</el></loc></p></item>
+</ulist>
+<p>A TTML presentation processor supports the <code>#structure</code>
+feature if it implements presentation semantic support for the
+same vocabulary enumerated above.</p>
+</div3>
+<div3 id="feature-styling">
+<head>#styling</head>
+<p>A TTML transformation processor supports the <code>#styling</code>
+feature if it recognizes and is capable of transforming the following
+vocabulary defined by <specref ref="styling"/>:</p>
+<ulist>
+<item><p><loc href="#styling-vocabulary-styling"><el>styling</el></loc></p></item>
+<item><p><loc href="#styling-vocabulary-style"><el>style</el></loc></p></item>
+<item><p><loc href="#style-attribute-style">@<att>style</att></loc></p></item>
+</ulist>
+<p>A TTML presentation processor supports the <code>#styling</code>
+feature if it implements presentation semantic support for the
+same vocabulary enumerated above.</p>
+</div3>
+<div3 id="feature-styling-chained">
+<head>#styling-chained</head>
+<p>A TTML transformation processor supports the
+<code>#styling-chained</code> feature if it recognizes and is capable
+of transforming chained style association as defined by <specref
+ref="semantics-style-association-chained-referential"/>.</p>
+<p>A TTML presentation processor supports the
+<code>#styling-chained</code> feature if it implements presentation semantic
+support for chained style association as defined by <specref
+ref="semantics-style-association-chained-referential"/>.</p>
+</div3>
+<div3 id="feature-styling-inheritance-content">
+<head>#styling-inheritance-content</head>
+<p>A TTML transformation processor supports the
+<code>#styling-inheritance</code> feature if it recognizes and is
+capable of transforming content style inheritance as defined by
+<specref ref="semantics-style-inheritance-content"/>.</p>
+<p>A TTML presentation processor supports the
+<code>#styling-inheritance-content</code> feature if it implements
+presentation semantic support for content style inheritance as defined by <specref
+ref="semantics-style-inheritance-content"/>.</p>
+</div3>
+<div3 id="feature-styling-inheritance-region">
+<head>#styling-inheritance-region</head>
+<p>A TTML transformation processor supports the
+<code>#styling-inheritance</code> feature if it recognizes and is
+capable of transforming region style inheritance as defined by
+<specref ref="semantics-style-inheritance-region"/>.</p>
+<p>A TTML presentation processor supports the
+<code>#styling-inheritance-region</code> feature if it implements
+presentation semantic support for region style inheritance as defined by <specref
+ref="semantics-style-inheritance-region"/>.</p>
+</div3>
+<div3 id="feature-styling-inline">
+<head>#styling-inline</head>
+<p>A TTML transformation processor supports the
+<code>#styling-inline</code> feature if it recognizes and is capable
+of transforming inline style association as defined by <specref
+ref="semantics-style-association-inline"/>.</p>
+<p>A TTML presentation processor supports the
+<code>#styling-inline</code> feature if it implements presentation semantic support
+for inline style association as defined by <specref
+ref="semantics-style-association-inline"/>.</p>
+</div3>
+<div3 id="feature-styling-nested">
+<head>#styling-nested</head>
+<p>A TTML transformation processor supports the
+<code>#styling-nested</code> feature if it recognizes and is capable
+of transforming nested style association as defined by <specref
+ref="semantics-style-association-nested"/>.</p>
+<p>A TTML presentation processor supports the
+<code>#styling-nested</code> feature if it implements presentation semantic support
+for nested style association as defined by <specref
+ref="semantics-style-association-nested"/>.</p>
+</div3>
+<div3 id="feature-styling-referential">
+<head>#styling-referential</head>
+<p>A TTML transformation processor supports the
+<code>#styling-referential</code> feature if it recognizes and is capable
+of transforming referential style association as defined by <specref
+ref="semantics-style-association-referential"/>.</p>
+<p>A TTML presentation processor supports the
+<code>#styling-referential</code> feature if it implements presentation semantic
+support for referential style association as defined by <specref
+ref="semantics-style-association-referential"/>.</p>
+</div3>
+<div3 id="feature-subFrameRate">
+<head>#subFrameRate</head>
+<p>A TTML transformation processor supports the
+<code>#subFrameRate</code> feature if it recognizes and is capable of
+transforming the <loc
+href="#parameter-attribute-subFrameRate"><att>ttp:subFrameRate</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#subFrameRate</code> feature if it implements presentation semantic support
+for the <loc
+href="#parameter-attribute-subFrameRate"><att>ttp:subFrameRate</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-textAlign">
+<head>#textAlign</head>
+<p>A TTML transformation processor supports the
+<code>#textAlign</code> feature if it recognizes and is capable
+of transforming all defined values of the <loc
+href="#style-attribute-textAlign"><att>tts:textAlign</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#textAlign</code> feature if it implements presentation semantic support
+for all defined values of the <loc
+href="#style-attribute-textAlign"><att>tts:textAlign</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-textAlign-absolute">
+<head>#textAlign-absolute</head>
+<p>A TTML transformation processor supports the
+<code>#textAlign-absolute</code> feature if it recognizes and is
+capable of transforming the <code>left</code>, <code>center</code>,
+and <code>right</code> values of the <loc
+href="#style-attribute-textAlign"><att>tts:textAlign</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#textAlign-absolute</code> feature if it implements presentation semantic
+support for the <code>left</code>, <code>center</code>, and
+<code>right</code> values of the <loc
+href="#style-attribute-textAlign"><att>tts:textAlign</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-textAlign-relative">
+<head>#textAlign-relative</head>
+<p>A TTML transformation processor supports the
+<code>#textAlign-relative</code> feature if it recognizes and is
+capable of transforming the <code>start</code>, <code>center</code>,
+and <code>end</code> values of the <loc
+href="#style-attribute-textAlign"><att>tts:textAlign</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#textAlign-relative</code> feature if it implements presentation semantic
+support for the <code>start</code>, <code>center</code>, and
+<code>end</code> values of the <loc
+href="#style-attribute-textAlign"><att>tts:textAlign</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-textDecoration">
+<head>#textDecoration</head>
+<p>A TTML transformation processor supports the
+<code>#textDecoration</code> feature if it recognizes and is capable
+of transforming all defined values of the <loc
+href="#style-attribute-textDecoration"><att>tts:textDecoration</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#textDecoration</code> feature if it implements presentation semantic support
+for all defined values of the <loc
+href="#style-attribute-textDecoration"><att>tts:textDecoration</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-textDecoration-over">
+<head>#textDecoration-over</head>
+<p>A TTML transformation processor supports the
+<code>#textDecoration-over</code> feature if it recognizes and is
+capable of transforming the <code>overline</code> and
+<code>noOverline</code> values of the <loc
+href="#style-attribute-textDecoration"><att>tts:textDecoration</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#textDecoration-over</code> feature if it implements
+presentation semantic support for the <code>overline</code> and
+<code>noOverline</code> values of the <loc
+href="#style-attribute-textDecoration"><att>tts:textDecoration</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-textDecoration-through">
+<head>#textDecoration-through</head>
+<p>A TTML transformation processor supports the
+<code>#textDecoration-through</code> feature if it recognizes and is
+capable of transforming the <code>lineThrough</code> and
+<code>noLineThrough</code> values of the <loc
+href="#style-attribute-textDecoration"><att>tts:textDecoration</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#textDecoration-through</code> feature if it implements
+presentation semantic support for the <code>lineThrough</code> and
+<code>noLineThrough</code> values of the <loc
+href="#style-attribute-textDecoration"><att>tts:textDecoration</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-textDecoration-under">
+<head>#textDecoration-under</head>
+<p>A TTML transformation processor supports the
+<code>#textDecoration-under</code> feature if it recognizes and is
+capable of transforming the <code>underline</code> and
+<code>noUnderline</code> values of the <loc
+href="#style-attribute-textDecoration"><att>tts:textDecoration</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#textDecoration-under</code> feature if it implements
+presentation semantic support for the <code>underline</code> and
+<code>noUnderline</code> values of the <loc
+href="#style-attribute-textDecoration"><att>tts:textDecoration</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-textOutline">
+<head>#textOutline</head>
+<p>A TTML transformation processor supports the
+<code>#textOutline</code> feature if it recognizes and is capable of
+transforming the <loc
+href="#style-attribute-textOutline"><att>tts:textOutline</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#textOutline</code> feature if it implements presentation semantic support
+for the <loc
+href="#style-attribute-textOutline"><att>tts:textOutline</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-textOutline-blurred">
+<head>#textOutline-blurred</head>
+<p>A TTML transformation processor supports the
+<code>#textOutline-blurred</code> feature if it recognizes and is capable of
+transforming values of the <loc
+href="#style-attribute-textOutline"><att>tts:textOutline</att></loc>
+attribute that includes a blur radius specification.</p>
+<p>A TTML presentation processor supports the
+<code>#textOutline-blurred</code> feature if it implements presentation semantic support
+for values of the <loc
+href="#style-attribute-textOutline"><att>tts:textOutline</att></loc>
+attribute that includes a blur radius specification.</p>
+</div3>
+<div3 id="feature-textOutline-unblurred">
+<head>#textOutline-unblurred</head>
+<p>A TTML transformation processor supports the
+<code>#textOutline-unblurred</code> feature if it recognizes and is capable of
+transforming values of the <loc
+href="#style-attribute-textOutline"><att>tts:textOutline</att></loc>
+attribute that does not include a blur radius specification.</p>
+<p>A TTML presentation processor supports the
+<code>#textOutline-unblurred</code> feature if it implements presentation semantic support
+for values of the <loc
+href="#style-attribute-textOutline"><att>tts:textOutline</att></loc>
+attribute that does not include a blur radius specification.</p>
+</div3>
+<div3 id="feature-tickRate">
+<head>#tickRate</head>
+<p>A TTML transformation processor supports the
+<code>#tickRate</code> feature if it recognizes and is capable of
+transforming the <loc
+href="#parameter-attribute-tickRate"><att>ttp:tickRate</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#tickRate</code> feature if it implements presentation semantic support
+for the <loc
+href="#parameter-attribute-tickRate"><att>ttp:tickRate</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-timeBase-clock">
+<head>#timeBase-clock</head>
+<p>A TTML transformation processor supports the
+<code>#timeBase-clock</code> feature if it recognizes and is capable
+of transforming the <code>clock</code> value of the <loc
+href="#parameter-attribute-timeBase"><att>ttp:timeBase</att></loc>
+attribute and if it supports the <loc
+href="#feature-clockMode"><code>#clockMode</code></loc> feature.</p>
+<p>A TTML presentation processor supports the
+<code>#timeBase-clock</code> feature if it implements presentation
+semantic support for the <code>clock</code> value of the <loc
+href="#parameter-attribute-timeBase"><att>ttp:timeBase</att></loc>
+attribute and if it supports the <loc
+href="#feature-clockMode"><code>#clockMode</code></loc> feature.</p>
+</div3>
+<div3 id="feature-timeBase-media">
+<head>#timeBase-media</head>
+<p>A TTML transformation processor supports the
+<code>#timeBase-media</code> feature if it recognizes and is capable
+of transforming the <code>media</code> value of the <loc
+href="#parameter-attribute-timeBase"><att>ttp:timeBase</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#timeBase-media</code> feature if it implements presentation
+semantic support for the <code>media</code> value of the <loc
+href="#parameter-attribute-timeBase"><att>ttp:timeBase</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-timeBase-smpte">
+<head>#timeBase-smpte</head>
+<p>A TTML transformation processor supports the
+<code>#timeBase-smpte</code> feature if it recognizes and is capable
+of transforming the <code>smpte</code> value of the <loc
+href="#parameter-attribute-timeBase"><att>ttp:timeBase</att></loc>
+attribute and if it supports the <loc
+href="#feature-dropMode"><code>#dropMode</code></loc> feature.</p>
+<p>A TTML presentation processor supports the
+<code>#timeBase-smpte</code> feature if it implements presentation
+semantic support for the <code>smpte</code> value of the <loc
+href="#parameter-attribute-timeBase"><att>ttp:timeBase</att></loc>
+attribute and if it supports the <loc
+href="#feature-dropMode"><code>#dropMode</code></loc> feature.</p>
+</div3>
+<div3 id="feature-timeContainer">
+<head>#timeContainer</head>
+<p>A TTML transformation processor supports the
+<code>#timeContainer</code> feature if it recognizes and is capable of
+transforming the <loc
+href="#timing-attribute-timeContainer"><att>timeContainer</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#timeContainer</code> feature if it implements presentation semantic support
+for the <loc
+href="#timing-attribute-timeContainer"><att>timeContainer</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-time-clock">
+<head>#time-clock</head>
+<p>A TTML transformation processor supports the
+<code>#time-clock</code> feature if it recognizes and is capable of
+transforming all values of the <loc
+href="#timing-value-timeExpression"><timeExpression></loc> that
+satisfy the following subset of time expression syntax:</p>
+<eg xml:space="preserve">
+<timeExpression>
+ : hours ":" minutes ":" seconds ( fraction )?
+</eg>
+<p>A TTML presentation processor supports the
+<code>#time-clock</code> feature if it implements presentation
+semantic support for the same syntax specified above.</p>
+</div3>
+<div3 id="feature-time-clock-with-frames">
+<head>#time-clock-with-frames</head>
+<p>A TTML transformation processor supports the
+<code>#time-clock-with-frames</code> feature if it supports the
+<loc href="#feature-frameRate"><code>#frameRate</code></loc>,
+<loc href="#feature-frameRateMultiplier"><code>#frameRateMultiplier</code></loc>, and
+<loc href="#feature-subFrameRate"><code>#subFrameRate</code></loc> features
+and if it recognizes and is capable of
+transforming all values of the <loc
+href="#timing-value-timeExpression"><timeExpression></loc> that
+satisfy the following subset of time expression syntax:</p>
+<eg xml:space="preserve">
+<timeExpression>
+ : hours ":" minutes ":" seconds ( fraction | ":" frames ( "." sub-frames )? )?
+</eg>
+<p>A TTML presentation processor supports the
+<code>#time-clock-with-frames</code> feature if it implements
+presentation semantic support for the same features and syntax
+specified above.</p>
+</div3>
+<div3 id="feature-time-offset">
+<head>#time-offset</head>
+<p>A TTML transformation processor supports the
+<code>#time-offset</code> feature if it recognizes and is capable of
+transforming all values of the <loc
+href="#timing-value-timeExpression"><timeExpression></loc> that
+satisfy the following subset of time expression syntax:</p>
+<eg xml:space="preserve">
+<timeExpression>
+ : time-count fraction? ( "h" | "m" | "s" | "ms" )
+</eg>
+<p>A TTML presentation processor supports the
+<code>#time-offset</code> feature if it implements presentation
+semantic support for the same syntax specified above.</p>
+</div3>
+<div3 id="feature-time-offset-with-frames">
+<head>#time-offset-with-frames</head>
+<p>A TTML transformation processor supports the
+<code>#time-offset-with-frames</code> feature if it supports the
+<loc href="#feature-frameRate"><code>#frameRate</code></loc>,
+<loc href="#feature-frameRateMultiplier"><code>#frameRateMultiplier</code></loc>, and
+<loc href="#feature-subFrameRate"><code>#subFrameRate</code></loc> features
+and if it recognizes and is capable of
+transforming all values of the <loc
+href="#timing-value-timeExpression"><timeExpression></loc> that
+satisfy the following subset of time expression syntax:</p>
+<eg xml:space="preserve">
+<timeExpression>
+ : time-count fraction? "f"
+</eg>
+<p>A TTML presentation processor supports the
+<code>#time-offset-with-frames</code> feature if it implements
+presentation semantic support for the same features and syntax
+specified above.</p>
+</div3>
+<div3 id="feature-time-offset-with-ticks">
+<head>#time-offset-with-ticks</head>
+<p>A TTML transformation processor supports the
+<code>#time-offset-with-ticks</code> feature if it supports the
+<loc href="#feature-tickRate"><code>#tickRate</code></loc> feature
+and if it recognizes and is capable of
+transforming all values of the <loc
+href="#timing-value-timeExpression"><timeExpression></loc> that
+satisfy the following subset of time expression syntax:</p>
+<eg xml:space="preserve">
+<timeExpression>
+ : time-count fraction? "t"
+</eg>
+<p>A TTML presentation processor supports the
+<code>#time-offset-with-ticks</code> feature if it implements presentation
+semantic support for the same features and syntax specified above.</p>
+</div3>
+<div3 id="feature-timing">
+<head>#timing</head>
+<p>A TTML transformation processor supports the <code>#timing</code>
+feature if it recognizes and is capable of transforming the following
+vocabulary defined by <specref ref="timing"/>:</p>
+<ulist>
+<item><p><loc href="#timing-attribute-begin">@<att>begin</att></loc></p></item>
+<item><p><loc href="#timing-attribute-dur">@<att>dur</att></loc></p></item>
+<item><p><loc href="#timing-attribute-end">@<att>end</att></loc></p></item>
+</ulist>
+<p>A TTML presentation processor supports the <code>#timing</code>
+feature if it implements presentation semantic support for the
+same vocabulary enumerated above.</p>
+</div3>
+<div3 id="feature-transformation">
+<head>#transformation</head>
+<p>A TTML processor supports the
+<code>#transformation</code> feature if it
+(1) satisfies the generic processor criteria defined by
+<specref ref="conformance-generic-processor"/> and
+(2) implements the transformation semantics of the following features:</p>
+<ulist>
+<item><p><loc href="#content"><code>#content</code></loc></p></item>
+<item><p><loc href="#feature-core"><code>#core</code></loc></p></item>
+<item><p><loc href="#feature-profile"><code>#profile</code></loc></p></item>
+<item><p><loc href="#feature-structure"><code>#structure</code></loc></p></item>
+<item><p><loc href="#feature-time-offset"><code>#time-offset</code></loc></p></item>
+<item><p><loc href="#timing"><code>#timing</code></loc></p></item>
+</ulist>
+</div3>
+<div3 id="feature-unicodeBidi">
+<head>#unicodeBidi</head>
+<p>A TTML transformation processor supports the
+<code>#unicodeBidi</code> feature if it recognizes and is capable of
+transforming all defined values of the <loc
+href="#style-attribute-unicodeBidi"><att>tts:unicodeBidi</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#unicodeBidi</code> feature if it implements presentation semantic support
+for all defined values of the <loc
+href="#style-attribute-unicodeBidi"><att>tts:unicodeBidi</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-visibility">
+<head>#visibility</head>
+<p>A TTML transformation processor supports the
+<code>#visibility</code> feature if it recognizes and is capable
+of transforming all defined values of the <loc
+href="#style-attribute-visibility"><att>tts:visibility</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#visibility</code> feature if it implements presentation semantic support
+for all defined values of the <loc
+href="#style-attribute-visibility"><att>tts:visibility</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-visibility-block">
+<head>#visibility-block</head>
+<p>A TTML transformation processor supports the
+<code>#visibility-block</code> feature if it recognizes and is
+capable of transforming all defined values of the <loc
+href="#style-attribute-visibility"><att>tts:visibility</att></loc>
+attribute when applied to a content element that would generate a
+block area during presentation processing.</p>
+<p>A TTML presentation processor supports the
+<code>#visibility-block</code> feature if it implements presentation semantic
+support for all defined values of the <loc
+href="#style-attribute-visibility"><att>tts:visibility</att></loc>
+attribute when applied to a content element that generates a
+block area.</p>
+</div3>
+<div3 id="feature-visibility-inline">
+<head>#visibility-inline</head>
+<p>A TTML transformation processor supports the
+<code>#visibility-inline</code> feature if it recognizes and is
+capable of transforming all defined values of the <loc
+href="#style-attribute-visibility"><att>tts:visibility</att></loc>
+attribute when applied to a content element that would generate an
+inline area during presentation processing.</p>
+<p>A TTML presentation processor supports the
+<code>#visibility-inline</code> feature if it implements presentation semantic
+support for all defined values of the <loc
+href="#style-attribute-visibility"><att>tts:visibility</att></loc>
+attribute when applied to a content element that generates an
+inline area.</p>
+</div3>
+<div3 id="feature-visibility-region">
+<head>#visibility-region</head>
+<p>A TTML transformation processor supports the
+<code>#visibility-region</code> feature if it recognizes and is
+capable of transforming all defined values of the <loc
+href="#style-attribute-visibility"><att>tts:visibility</att></loc>
+attribute when applied to a <loc
+href="#layout-vocabulary-region"><el>region</el></loc> element.</p>
+<p>A TTML presentation processor supports the
+<code>#visibility-region</code> feature if it implements presentation semantic
+support for all defined values of the <loc
+href="#style-attribute-visibility"><att>tts:visibility</att></loc>
+attribute when applied to a <loc
+href="#layout-vocabulary-region"><el>region</el></loc> element.</p>
+</div3>
+<div3 id="feature-wrapOption">
+<head>#wrapOption</head>
+<p>A TTML transformation processor supports the
+<code>#wrapOption</code> feature if it recognizes and is capable
+of transforming all defined values of the <loc
+href="#style-attribute-wrapOption"><att>tts:wrapOption</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#wrapOption</code> feature if it implements presentation semantic support
+for all defined values of the <loc
+href="#style-attribute-wrapOption"><att>tts:wrapOption</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-writingMode">
+<head>#writingMode</head>
+<p>A TTML transformation processor supports the
+<code>#writingMode</code> feature if it recognizes and is capable
+of transforming all defined values of the <loc
+href="#style-attribute-writingMode"><att>tts:writingMode</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#writingMode</code> feature if it implements presentation semantic support
+for all defined values of the <loc
+href="#style-attribute-writingMode"><att>tts:writingMode</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-writingMode-vertical">
+<head>#writingMode-vertical</head>
+<p>A TTML transformation processor supports the
+<code>#writingMode-vertical</code> feature if it recognizes and is
+capable of transforming the <code>tbrl</code>, <code>tblr</code>, and
+<code>tb</code> values of the <loc
+href="#style-attribute-writingMode"><att>tts:writingMode</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#writingMode-vertical</code> feature if it implements presentation semantic
+support for the <code>tbrl</code>, <code>tblr</code>, and
+<code>tb</code> values of the <loc
+href="#style-attribute-writingMode"><att>tts:writingMode</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-writingMode-horizontal">
+<head>#writingMode-horizontal</head>
+<p>A TTML transformation processor supports the
+<code>#writingMode-horizontal</code> feature if it recognizes and is
+capable of transforming the <code>lrtb</code>, <code>rltb</code>,
+<code>lr</code> and <code>rl</code> values of the <loc
+href="#style-attribute-writingMode"><att>tts:writingMode</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#writingMode-horizontal</code> feature if it implements presentation semantic
+support for the <code>lrtb</code>, <code>rltb</code>, <code>lr</code>
+and <code>rl</code> values of the <loc
+href="#style-attribute-writingMode"><att>tts:writingMode</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-writingMode-horizontal-lr">
+<head>#writingMode-horizontal-lr</head>
+<p>A TTML transformation processor supports the
+<code>#writingMode-horizontal</code> feature if it recognizes and is
+capable of transforming the <code>lrtb</code> and <code>lr</code>
+values of the <loc
+href="#style-attribute-writingMode"><att>tts:writingMode</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#writingMode-horizontal-lr</code> feature if it implements presentation semantic
+support for the <code>lrtb</code> and <code>lr</code> values of the
+<loc
+href="#style-attribute-writingMode"><att>tts:writingMode</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-writingMode-horizontal-rl">
+<head>#writingMode-horizontal-rl</head>
+<p>A TTML transformation processor supports the
+<code>#writingMode-horizontal</code> feature if it recognizes and is
+capable of transforming the <code>rltb</code> and <code>rl</code>
+values of the <loc
+href="#style-attribute-writingMode"><att>tts:writingMode</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#writingMode-horizontal-rl</code> feature if it implements presentation semantic
+support for the <code>rltb</code> and <code>rl</code> values of the
+<loc
+href="#style-attribute-writingMode"><att>tts:writingMode</att></loc>
+attribute.</p>
+</div3>
+<div3 id="feature-zIndex">
+<head>#zIndex</head>
+<p>A TTML transformation processor supports the
+<code>#zIndex</code> feature if it recognizes and is capable of
+transforming the <loc
+href="#style-attribute-zIndex"><att>tts:zIndex</att></loc>
+attribute.</p>
+<p>A TTML presentation processor supports the
+<code>#zIndex</code> feature if it implements presentation semantic support for
+the <loc
+href="#style-attribute-zIndex"><att>tts:zIndex</att></loc>
+attribute.</p>
+</div3>
+</div2>
+<div2 id="feature-support">
+<head>Feature Support</head>
+<p>The following table, <specref ref="feature-support-table"/>,
+enumerates every defined feature designation (expressed without the TT
+Feature Namespace), and, for each designated feature, specifies
+whether the feature must be implemented, i.e., is mandatory (M), or may be implemented, i.e.,
+is optional (O), for transformation and presentation processors.</p>
+<table id="feature-support-table" role="common">
+<caption>Table D-1 – Feature Support</caption>
+<col width="60%"/>
+<col width="20%"/>
+<col width="20%"/>
+<tbody>
+<tr>
+<td><phrase role="strong">Feature</phrase></td>
+<td><phrase role="strong">Transformation</phrase></td>
+<td><phrase role="strong">Presentation</phrase></td>
+</tr>
+<tr>
+<td><loc href="#feature-animation"><code>#animation</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-backgroundColor"><code>#backgroundColor</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-backgroundColor-block"><code>#backgroundColor-block</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-backgroundColor-inline"><code>#backgroundColor-inline</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-backgroundColor-region"><code>#backgroundColor-region</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-bidi"><code>#bidi</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-cellResolution"><code>#cellResolution</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-clockMode"><code>#clockMode</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-clockMode-gps"><code>#clockMode-gps</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-clockMode-local"><code>#clockMode-local</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-clockMode-utc"><code>#clockMode-utc</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-color"><code>#color</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-content"><code>#content</code></loc></td>
+<td>M</td>
+<td>M</td>
+</tr>
+<tr>
+<td><loc href="#feature-core"><code>#core</code></loc></td>
+<td>M</td>
+<td>M</td>
+</tr>
+<tr>
+<td><loc href="#feature-direction"><code>#direction</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-display"><code>#display</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-display-block"><code>#display-block</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-display-inline"><code>#display-inline</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-display-region"><code>#display-region</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-displayAlign"><code>#displayAlign</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-dropMode"><code>#dropMode</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-dropMode-dropNTSC"><code>#dropMode-dropNTSC</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-dropMode-dropPAL"><code>#dropMode-dropPAL</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-dropMode-nonDrop"><code>#dropMode-nonDrop</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-extent"><code>#extent</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-extent-region"><code>#extent-region</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-extent-root"><code>#extent-root</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-fontFamily"><code>#fontFamily</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-fontFamily-generic"><code>#fontFamily-generic</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-fontFamily-non-generic"><code>#fontFamily-non-generic</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-fontSize"><code>#fontSize</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-fontSize-anamorphic"><code>#fontSize-anamorphic</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-fontSize-isomorphic"><code>#fontSize-isomorphic</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-fontStyle"><code>#fontStyle</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-fontStyle-italic"><code>#fontStyle-italic</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-fontStyle-oblique"><code>#fontStyle-oblique</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-fontWeight"><code>#fontWeight</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-fontWeight-bold"><code>#fontWeight-bold</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-frameRate"><code>#frameRate</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-frameRateMultiplier"><code>#frameRateMultiplier</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-layout"><code>#layout</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-length"><code>#length</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-length-cell"><code>#length-cell</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-length-em"><code>#length-em</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-length-integer"><code>#length-integer</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-length-negative"><code>#length-negative</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-length-percentage"><code>#length-percentage</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-length-pixel"><code>#length-pixel</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-length-positive"><code>#length-positive</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-length-real"><code>#length-real</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-lineBreak-uax14"><code>#lineBreak-uax14</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-lineHeight"><code>#lineHeight</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-markerMode"><code>#markerMode</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-markerMode-continuous"><code>#markerMode-continuous</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-markerMode-discontinuous"><code>#markerMode-discontinuous</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-metadata"><code>#metadata</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-nested-div"><code>#nested-div</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-nested-span"><code>#nested-span</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-opacity"><code>#opacity</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-origin"><code>#origin</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-overflow"><code>#overflow</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-overflow-visible"><code>#overflow-visible</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-padding"><code>#padding</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-padding-1"><code>#padding-1</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-padding-2"><code>#padding-2</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-padding-3"><code>#padding-3</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-padding-4"><code>#padding-4</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-pixelAspectRatio"><code>#pixelAspectRatio</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-presentation"><code>#presentation</code></loc></td>
+<td>O</td>
+<td>M</td>
+</tr>
+<tr>
+<td><loc href="#feature-profile"><code>#profile</code></loc></td>
+<td>M</td>
+<td>M</td>
+</tr>
+<tr>
+<td><loc href="#feature-showBackground"><code>#showBackground</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-structure"><code>#structure</code></loc></td>
+<td>M</td>
+<td>M</td>
+</tr>
+<tr>
+<td><loc href="#feature-styling"><code>#styling</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-styling-chained"><code>#styling-chained</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-styling-inheritance-content"><code>#styling-inheritance-content</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-styling-inheritance-region"><code>#styling-inheritance-region</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-styling-inline"><code>#styling-inline</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-styling-nested"><code>#styling-nested</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-styling-referential"><code>#styling-referential</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-subFrameRate"><code>#subFrameRate</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-textAlign"><code>#textAlign</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-textAlign-absolute"><code>#textAlign-absolute</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-textAlign-relative"><code>#textAlign-relative</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-textDecoration"><code>#textDecoration</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-textDecoration-over"><code>#textDecoration-over</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-textDecoration-through"><code>#textDecoration-through</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-textDecoration-under"><code>#textDecoration-under</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-textOutline"><code>#textOutline</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-textOutline-blurred"><code>#textOutline-blurred</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-textOutline-unblurred"><code>#textOutline-unblurred</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-tickRate"><code>#tickRate</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-timeBase-clock"><code>#timeBase-clock</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-timeBase-media"><code>#timeBase-media</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-timeBase-smpte"><code>#timeBase-smpte</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-timeContainer"><code>#timeContainer</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-time-clock"><code>#time-clock</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-time-clock-with-frames"><code>#time-clock-with-frames</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-time-offset"><code>#time-offset</code></loc></td>
+<td>M</td>
+<td>M</td>
+</tr>
+<tr>
+<td><loc href="#feature-time-offset-with-frames"><code>#time-offset-with-frames</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-time-offset-with-ticks"><code>#time-offset-with-ticks</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-timing"><code>#timing</code></loc></td>
+<td>M</td>
+<td>M</td>
+</tr>
+<tr>
+<td><loc href="#feature-transformation"><code>#transformation</code></loc></td>
+<td>M</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-unicodeBidi"><code>#unicodeBidi</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-visibility"><code>#visibility</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-visibility-block"><code>#visibility-block</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-visibility-inline"><code>#visibility-inline</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-visibility-region"><code>#visibility-region</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-wrapOption"><code>#wrapOption</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-writingMode"><code>#writingMode</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-writingMode-vertical"><code>#writingMode-vertical</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-writingMode-horizontal"><code>#writingMode-horizontal</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-writingMode-horizontal-lr"><code>#writingMode-horizontal-lr</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-writingMode-horizontal-rl"><code>#writingMode-horizontal-rl</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+<tr>
+<td><loc href="#feature-zIndex"><code>#zIndex</code></loc></td>
+<td>O</td>
+<td>O</td>
+</tr>
+</tbody>
+</table>
+<p>For the sake of convenience, the following table,
+<specref ref="feature-transformation-mandatory-table"/>, enumerates all
+mandatory features for a TTML Transformation Processor, providing additional
+comments to summarize the context of usage or the nature of the feature.
+The <emph>Profile Definition Document</emph> that defines the corresponding
+DFXP Transformation Profile is specified in
+<specref ref="profile-dfxp-transformation"/>.
+</p>
+<table id="feature-transformation-mandatory-table" role="common">
+<caption>Table D-2 – Mandatory Features - Transformation</caption>
+<col width="60%"/>
+<col width="40%"/>
+<tbody>
+<tr>
+<td><phrase role="strong">Feature</phrase></td>
+<td><phrase role="strong">Comments</phrase></td>
+</tr>
+<tr>
+<td><loc href="#feature-content"><code>#content</code></loc></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="#content-vocabulary-span"><el>span</el></loc>,
+<loc href="#content-vocabulary-br"><el>br</el></loc>
+</td>
+</tr>
+<tr>
+<td><loc href="#feature-core"><code>#core</code></loc></td>
+<td>
+<loc href="#content-attribute-id">@<att>xml:id</att></loc>,
+<loc href="#content-attribute-id">@<att>xml:lang</att></loc>,
+<loc href="#content-attribute-id">@<att>xml:space</att></loc>
+</td>
+</tr>
+<tr>
+<td><loc href="#feature-profile"><code>#profile</code></loc></td>
+<td></td>
+</tr>
+<tr>
+<td><loc href="#feature-structure"><code>#structure</code></loc></td>
+<td>
+<loc href="#document-structure-vocabulary-tt"><el>tt</el></loc>,
+<loc href="#document-structure-vocabulary-head"><el>head</el></loc>
+</td>
+</tr>
+
+<tr>
+<td><loc href="#feature-time-offset"><code>#time-offset</code></loc></td>
+<td></td>
+</tr>
+<tr>
+<td><loc href="#feature-timing"><code>#timing</code></loc></td>
+<td>
+<loc href="#timing-attribute-begin">@<att>begin</att></loc>,
+<loc href="#timing-attribute-dur">@<att>dur</att></loc>,
+<loc href="#timing-attribute-end">@<att>end</att></loc>
+</td>
+</tr>
+<tr>
+<td><loc href="#feature-transformation"><code>#transformation</code></loc></td>
+<td></td>
+</tr>
+</tbody>
+</table>
+<p>For the sake of convenience, the following table,
+<specref ref="feature-presentation-mandatory-table"/>, enumerates all
+mandatory features for a TTML Presentation Processor, providing additional
+comments to summarize the context of usage or the nature of the feature.
+The <emph>Profile Definition Document</emph> that defines the corresponding
+DFXP Presentation Profile is specified in
+<specref ref="profile-dfxp-presentation"/>.
+</p>
+<table id="feature-presentation-mandatory-table" role="common">
+<caption>Table D-3 – Mandatory Features - Presentation</caption>
+<col width="60%"/>
+<col width="40%"/>
+<tbody>
+<tr>
+<td><phrase role="strong">Feature</phrase></td>
+<td><phrase role="strong">Comments</phrase></td>
+</tr>
+<tr>
+<td><loc href="#feature-content"><code>#content</code></loc></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="#content-vocabulary-span"><el>span</el></loc>,
+<loc href="#content-vocabulary-br"><el>br</el></loc>
+</td>
+</tr>
+<tr>
+<td><loc href="#feature-core"><code>#core</code></loc></td>
+<td>
+<loc href="#content-attribute-id">@<att>xml:id</att></loc>,
+<loc href="#content-attribute-id">@<att>xml:lang</att></loc>,
+<loc href="#content-attribute-id">@<att>xml:space</att></loc>
+</td>
+</tr>
+<tr>
+<td><loc href="#feature-profile"><code>#profile</code></loc></td>
+<td></td>
+</tr>
+<tr>
+<td><loc href="#feature-presentation"><code>#presentation</code></loc></td>
+<td></td>
+</tr>
+<tr>
+<td><loc href="#feature-structure"><code>#structure</code></loc></td>
+<td>
+<loc href="#document-structure-vocabulary-tt"><el>tt</el></loc>,
+<loc href="#document-structure-vocabulary-head"><el>head</el></loc>
+</td>
+</tr>
+<tr>
+<td><loc href="#feature-time-offset"><code>#time-offset</code></loc></td>
+<td></td>
+</tr>
+<tr>
+<td><loc href="#feature-timing"><code>#timing</code></loc></td>
+<td>
+<loc href="#timing-attribute-begin">@<att>begin</att></loc>,
+<loc href="#timing-attribute-dur">@<att>dur</att></loc>,
+<loc href="#timing-attribute-end">@<att>end</att></loc>
+</td>
+</tr>
+</tbody>
+</table>
+</div2>
+</div1>
+<div1 id="extensions">
+<head>Extensions</head>
+<p><emph>This appendix is normative.</emph></p>
+<p>This appendix specifies the syntactic form of extension designations, which are
+used to express authorial intent regarding the support for extension
+mechanisms in a TTML processor.</p>
+<div2 id="extension-designations">
+<head>Extension Designations</head>
+<p>An extension designation is expressed as a string that adheres to the following
+form:</p>
+<eg xml:space="preserve">
+extension-designation
+ : extension-namespace designation
+
+extension-namespace
+ : <emph>TT Extension Namespace</emph> // http://www.w3.org/ns/ttml/extension/
+ | <emph>Other Extension Namespace</emph> // expressed as an absolute URI
+
+designation
+ : "#" token-char+
+
+token-char
+ : { XML NameChar } // XML 1.1 Production [4a]
+</eg>
+<p>If the extension namespace of an extension designation is the TT
+Extension Namespace, then all values of the following
+<code>designation</code> token are reserved for future
+standardization.</p>
+<p>If the extension namespace of an extension designation is not the
+TT Extension Namespace, i.e., is an <emph>Other Extension Namespace</emph>,
+then the extension namespace must be expressed as an absolute URI
+capable of serving as a base URI used in combination with a
+<code>designation</code> token that takes the form of a fragment
+identifier.</p>
+</div2>
+</div1>
+<div1 id="profiles">
+<head>Profiles</head>
+<p><emph>This appendix is normative.</emph></p>
+<p>This appendix specifies the following standard TTML profiles:</p>
+<ulist>
+<item><p><specref ref="profile-dfxp-transformation"/></p></item>
+<item><p><specref ref="profile-dfxp-presentation"/></p></item>
+<item><p><specref ref="profile-dfxp-full"/></p></item>
+</ulist>
+<p>The SDP US profile is defined in
+<xspecref href="http://www.w3.org/TR/ttml10-sdp-us/">TTML Simple Delivery Profile for Closed Captions (US)</xspecref>.</p>
+<p>Each TTML profile is defined in terms of a <emph>Profile Definition Document</emph>,
+which is expressed as an XML document wherein the root element adheres to
+<specref ref="parameter-vocabulary-profile"/>.</p>
+<div2 id="profile-dfxp-transformation">
+<head>DFXP Transformation Profile</head>
+<p>The DFXP Transformation Profile is intended to be used to
+express minimum compliance for transformation processing.</p>
+<eg xml:space="preserve">&profile-dfxp-transformation;</eg>
+</div2>
+<div2 id="profile-dfxp-presentation">
+<head>DFXP Presentation Profile</head>
+<p>The DFXP Presentation Profile is intended to be used to
+express minimum compliance for presentation processing.</p>
+<eg xml:space="preserve">&profile-dfxp-presentation;</eg>
+</div2>
+<div2 id="profile-dfxp-full">
+<head>DFXP Full Profile</head>
+<p>The DFXP Full Profile is intended to be used to
+express maximum compliance for both transformation and presentation processing.</p>
+<eg xml:space="preserve">&profile-dfxp-full;</eg>
+</div2>
+</div1>
+
+<div1 id="references">
+<head>References</head>
+<p><emph>This appendix is normative.</emph></p>
+<blist>
+<bibl id="css2" key="CSS2">Bert Bos et al.,
+<titleref
+href="http://www.w3.org/TR/2011/REC-CSS2-20110607/">Cascading
+Style Sheets, Level 2 Revision 1</titleref>, W3C Recommendation, 07 June 2011.
+(See <xspecref href="http://www.w3.org/TR/2011/REC-CSS2-20110607/">http://www.w3.org/TR/2011/REC-CSS2-20110607/</xspecref>.)
+</bibl>
+<bibl id="css3-color" key="CSS3 Color">Tantek Çelik and Chris Lilley,
+<titleref href="http://www.w3.org/TR/2011/REC-css3-color-20110607/">CSS Color
+Module Level 3</titleref>, W3C Recommendation, 07 June 2011. (See
+<xspecref href="http://www.w3.org/TR/2011/REC-css3-color-20110607/">http://www.w3.org/TR/2011/REC-css3-color-20110607/</xspecref>.)
+</bibl>
+<bibl id="gps" key="GPS">
+<titleref href="http://tycho.usno.navy.mil/gpsinfo.html">Global
+Positioning System</titleref>, US Naval Observatory.
+(See
+<xspecref href="http://tycho.usno.navy.mil/gpsinfo.html">http://tycho.usno.navy.mil/gpsinfo.html</xspecref>.)
+</bibl>
+<bibl id="media-types" key="Media Types">Ned Freed and Nathaniel Borenstein,
+<titleref
+href="http://www.rfc-editor.org/rfc/rfc2046.txt">Multipurpose Internet
+Mail Extensions (MIME) Part Two: Media Types</titleref>,
+RFC 2046, November 1996, IETF.(See
+<xspecref href="http://www.rfc-editor.org/rfc/rfc2046.txt">http://www.rfc-editor.org/rfc/rfc2046.txt</xspecref>.)
+</bibl>
+<bibl id="rng" key="RELAX NG">ISO/IEC 19757-2,
+<titleref href="http://www.iso.org/">Information technology – Document
+Schema Definition Language (DSDL) – Part 2: Regular-grammar-based validation – RELAX NG</titleref>,
+International Organization for Standardization (ISO).
+</bibl>
+<bibl id="smil21" key="SMIL 2.1">Dick Bultermann, et al.,
+<titleref href="http://www.w3.org/TR/2005/REC-SMIL2-20051213/">Synchronized
+Multimedia Integration Language (SMIL 2.1)</titleref>,
+W3C Recommendation, 13 December 2005. (See
+<xspecref href="http://www.w3.org/TR/2005/REC-SMIL2-20051213/">http://www.w3.org/TR/2005/REC-SMIL2-20051213/</xspecref>.)
+</bibl>
+<bibl id="smpte12m" key="SMPTE 12M">ANSI/SMPTE 12M,
+<titleref href="https://www.smpte.org/">Television, Audio and Film –
+Time and Control Code</titleref>, SMPTE Standard.
+</bibl>
+<bibl id="srgb" key="SRGB">IEC 61966-2-1,
+<titleref
+href="http://www.iec.ch/">Multimedia
+systems and equipment – Colour measurement and management
+– Part 2-1: Colour management – Default RGB colour space
+– sRGB</titleref>, International Electrotechnical
+Commission (IEC).
+</bibl>
+<bibl id="uaag" key="UAAG">Ian Jacobs, Jon Gunderson, and Eric Hansen, Eds.,
+<titleref href="http://www.w3.org/TR/2002/REC-UAAG10-20021217/">User
+Agent Accessibility Guidelines 1.0</titleref>, W3C Recommendation, 17
+December 2002. (See
+<xspecref href="http://www.w3.org/TR/2002/REC-UAAG10-20021217/">http://www.w3.org/TR/2002/REC-UAAG10-20021217/</xspecref>.)
+</bibl>
+<bibl id="uax14" key="UAX14">Asmus Freytag, <titleref
+href="http://www.unicode.org/reports/tr14/tr14-17.html">Line Breaking
+Properties</titleref>, Unicode Consortium, 29 August 2005. (See
+<xspecref
+href="http://www.unicode.org/reports/tr14/tr14-17.html">http://www.unicode.org/reports/tr14/tr14-17.html</xspecref>.)
+</bibl>
+<bibl id="utc" key="UTC">
+Recommendation TF.460,
+<titleref
+href="http://www.itu.int/">Standard-Frequency and Time-Signal
+Emissions</titleref>, International
+Telecommunciations Union, Radio Sector (ITU-R).
+</bibl>
+<bibl id="wcag" key="WCAG">Ben Caldwell, et al., Eds.,
+<titleref href="http://www.w3.org/TR/2008/REC-WCAG20-20081211/">Web
+Content Accessibility Guidelines (WCAG) 2.0</titleref>, W3C Recommendation, 11 December 2008. (See
+<xspecref href="http://www.w3.org/TR/2008/REC-WCAG20-20081211/">http://www.w3.org/TR/2008/REC-WCAG20-20081211/</xspecref>.)
+</bibl>
+<bibl id="xml10" key="XML 1.0">Tim Bray, et al.
+<titleref href="http://www.w3.org/TR/2008/REC-xml-20081126/">Extensible Markup Language (XML)
+1.0 (Fifth Edition)</titleref>, W3C Recommendation, 26 November 2008. (See
+<xspecref href="http://www.w3.org/TR/2008/REC-xml-20081126/">http://www.w3.org/TR/2008/REC-xml-20081126/</xspecref>.)
+</bibl>
+<bibl id="xml11" key="XML 1.1">Tim Bray, et al.
+<titleref href="http://www.w3.org/TR/2006/REC-xml11-20060816/">Extensible Markup Language (XML)
+1.1 (Second Edition)</titleref>, W3C Recommendation, 16 August 2006, edited in place 29 September 2006. (See
+<xspecref href="http://www.w3.org/TR/2006/REC-xml11-20060816/">http://www.w3.org/TR/2006/REC-xml11-20060816/</xspecref>.)
+</bibl>
+<bibl id="xmlbase" key="XML Base">Jonathan Marsh and Richard Tobin, Eds.,
+<titleref href="http://www.w3.org/TR/2009/REC-xmlbase-20090128/">XML Base (Second Edition)</titleref>,
+W3C Recommendation, 28 January 2009. (See
+<xspecref href="http://www.w3.org/TR/2009/REC-xmlbase-20090128/">http://www.w3.org/TR/2009/REC-xmlbase-20090128/</xspecref>.)
+</bibl>
+<bibl id="xmlid" key="XML ID">Jonathan Marsh, Daniel Veillard, Norman Walsh, Eds.,
+<titleref href="http://www.w3.org/TR/2005/REC-xml-id-20050909/">xml:id Version 1.0</titleref>,
+W3C Recommendation, 09 September 2005. (See
+<xspecref href="http://www.w3.org/TR/2005/REC-xml-id-20050909/">http://www.w3.org/TR/2005/REC-xml-id-20050909/</xspecref>.)
+</bibl>
+<bibl id="infoset" key="XML InfoSet">John Cowan and Richard Tobin, Eds.,
+<titleref href="http://www.w3.org/TR/2004/REC-xml-infoset-20040204/">XML Information Set (Second Edition)</titleref>,
+W3C Recommendation, 04 February 2004. (See
+<xspecref href="http://www.w3.org/TR/2004/REC-xml-infoset-20040204/">http://www.w3.org/TR/2004/REC-xml-infoset-20040204/</xspecref>.)
+</bibl>
+<bibl id="xml-media" key="XML Media Types">Makato Murata, Simon St. Laurent,
+Kan Khon, Eds., <titleref
+href="http://www.rfc-editor.org/rfc/rfc3023.txt">XML Media Types</titleref>,
+RFC 3023, January 2001, IETF.(See
+<xspecref
+href="http://www.rfc-editor.org/rfc/rfc3023.txt">http://www.rfc-editor.org/rfc/rfc3023.txt</xspecref>.)
+</bibl>
+<bibl id="xmlns10" key="XML Namespaces 1.0">Tim Bray, et al.
+<titleref href="http://www.w3.org/TR/2009/REC-xml-names-20091208/">Namespaces
+in XML 1.0 (Third Edition)</titleref>, W3C Recommendation, 8 December 2009. (See
+<xspecref href="http://www.w3.org/TR/2009/REC-xml-names-20091208/">http://www.w3.org/TR/2009/REC-xml-names-20091208/</xspecref>.)
+</bibl>
+<bibl id="xsd-1" key="XML Schema Part 1">Henry S. Thompson, David Beech,
+Murray Maloney, Noah Mendelsohn, Eds.,
+<titleref href="http://www.w3.org/TR/xmlschema-1/">XML Schema Part 1: Structures</titleref>,
+W3C Recommendation, 28 October 2004. (See
+<xspecref href="http://www.w3.org/TR/xmlschema-1/">http://www.w3.org/TR/xmlschema-1/</xspecref>.)
+</bibl>
+<bibl id="xsd-2" key="XML Schema Part 2">Paul Biron and Ashok Malhotra,
+<titleref href="http://www.w3.org/TR/xmlschema-2/">XML Schema Part 2: Datatypes</titleref>,
+W3C Recommendation, 28 October 2004. (See
+<xspecref href="http://www.w3.org/TR/xmlschema-2/">http://www.w3.org/TR/xmlschema-2/</xspecref>.)
+</bibl>
+<bibl id="xsl11" key="XSL 1.1">Anders Berglund,
+<titleref href="http://www.w3.org/TR/2006/REC-xsl11-20061205/">Extensible Stylesheet Language (XSL) Version 1.1</titleref>,
+W3C Recommendation, 05 December 2006. (See
+<xspecref href="http://www.w3.org/TR/2006/REC-xsl11-20061205/">http://www.w3.org/TR/2006/REC-xsl11-20061205/</xspecref>.)
+</bibl>
+</blist>
+</div1>
+<inform-div1 id="other-references">
+<head>Other References</head>
+<blist>
+<bibl id="ccreq" key="CC-DECODER-REQ"><titleref
+href="http://www.gpo.gov/fdsys/pkg/CFR-2005-title47-vol1/xml/CFR-2005-title47-vol1-sec15-119.xml">Closed Caption Decoder
+Requirements for Analog Television</titleref>,
+United States Code of Federal Regulations, Title 47, Volume 1, Part 15, § 15.119. (See
+<xspecref href="http://www.gpo.gov/fdsys/pkg/CFR-2005-title47-vol1/xml/CFR-2005-title47-vol1-sec15-119.xml">http://www.gpo.gov/fdsys/pkg/CFR-2005-title47-vol1/xml/CFR-2005-title47-vol1-sec15-119.xml</xspecref>.)
+</bibl>
+<bibl id="cea608c" key="CEA-608-C">
+EIA/CEA-608-C,
+<titleref href="http://www.ce.org/">Line 21 Data
+Services</titleref>, EIA/CEA Standard,
+Consumer Electronics Association (CEA).
+</bibl>
+<bibl id="cea708d" key="CEA-708-D">
+CEA-708-D,
+<titleref href="http://www.ce.org/">Digital Television (DTV) Closed Captioning</titleref>, CEA Standard,
+Consumer Electronics Association (CEA).
+</bibl>
+<bibl id="dcmes" key="DCMES 1.1">Dublin Core Metadata Initiative,
+<titleref href="http://dublincore.org/documents/dces/">Dublin Core Metadata Element Set, Version 1.1: Reference Description</titleref>. (See
+<xspecref href="http://dublincore.org/documents/dces/">http://dublincore.org/documents/dces/</xspecref>.)
+</bibl>
+<bibl id="mpeg7-5" key="MPEG7-5">
+ISO/IEC 15938-5,
+<titleref
+href="http://www.iso.org/">Information technology – Multimedia content description
+interface – Part 5: Multimedia description schemes</titleref>,
+International Organization for Standardization (ISO).
+</bibl>
+<bibl id="nsstate" key="NSState">Norman Walsh, Ed.,
+<titleref
+href="http://www.w3.org/2001/tag/doc/namespaceState-2006-01-09.html">The Disposition
+of Names in an XML Namespace</titleref>, TAG Finding, 9 January 2006. (See
+<xspecref href="http://www.w3.org/2001/tag/doc/namespaceState-2006-01-09.html">http://www.w3.org/2001/tag/doc/namespaceState-2006-01-09</xspecref>.)
+</bibl>
+<bibl id="qaf-sg" key="QAF SG">Karl Dubost, et al.,
+<titleref
+href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/">QA
+Framework: Specifications Guidelines</titleref>, W3C Recommendation, 17
+August 2005. (See
+<xspecref href="http://www.w3.org/TR/qaframe-spec/">http://www.w3.org/TR/qaframe-spec/</xspecref>.)
+</bibl>
+<bibl id="smpte170m" key="SMPTE 170M">ANSI/SMPTE 170M,
+<titleref
+href="http://www.smpte.org/">Television – Composite Analog Video
+Signal – NTSC for Studio Applications</titleref>, SMPTE Standard.
+</bibl>
+<bibl id="smpte2052" key="SMPTE 2052-11">SMPTE 2052-11,
+<titleref
+href="http://www.smpte.org/">Conversion from CEA-708 Caption Data to SMPTE-TT</titleref>,
+SMPTE Recommended Practice.
+</bibl>
+<bibl id="svg11" key="SVG 1.1">Jon Ferraiolo, Jun Fujisawa, Dean Jackson, Eds.,
+<titleref
+href="http://www.w3.org/TR/2003/REC-SVG11-20030114/">Scalable
+Vector Graphics (SVG) 1.1 Specification</titleref>, W3C Recommendation, 14
+January 2003. (See
+<xspecref href="http://www.w3.org/TR/2003/REC-SVG11-20030114/">http://www.w3.org/TR/2003/REC-SVG11-20030114/</xspecref>.)
+</bibl>
+<bibl id="ttaf1-req" key="TTAF1-REQ">Glenn Adams, Ed.,
+<titleref href="http://www.w3.org/TR/2006/NOTE-ttaf1-req-20060427/">Timed Text (TT) Authoring Format 1.0 Use
+Cases and Requirements</titleref>,
+W3C Working Group Note, 27 April 2006. (See
+<xspecref
+href="http://www.w3.org/TR/2006/NOTE-ttaf1-req-20060427/">http://www.w3.org/TR/2006/NOTE-ttaf1-req-20060427/</xspecref>.)
+</bibl>
+<bibl id="xhtml10" key="XHTML 1.0">Steven Pemberton, et al.,
+<titleref
+href="http://www.w3.org/TR/2002/REC-xhtml1-20020801/">XHTML™ 1.0,
+The Extensible Hypertext Markup Language (Second Edition)</titleref>,
+W3C Recommendation, 01
+August 2002. (See
+<xspecref href="http://www.w3.org/TR/2002/REC-xhtml1-20020801/">http://www.w3.org/TR/2002/REC-xhtml1-20020801/</xspecref>.)
+</bibl>
+</blist>
+</inform-div1>
+<inform-div1 id="requirements">
+<head>Requirements</head>
+<p>The Timed Text Markup Language (TTML), also known as the Distribution Format Exchange Profile (DFXP) of the Timed Text Authoring
+Format (TTAF), satisfies a subset of the requirements established by
+<bibref ref="ttaf1-req"/>. The following table enumerates these requirements and
+indicates the extent to which they are satisfied by this specification, where
+<emph>S</emph> denotes a requirement is satisfied, <emph>P</emph> denotes
+a requirement is partially satisfied, and <emph>N</emph> denotes a
+requirement is not satisfied.</p>
+<table id="requirements-table" role="common">
+<caption>Table I-1 – Requirement Satisfaction</caption>
+<col width="10%"/>
+<col width="40%"/>
+<col width="10%"/>
+<col/>
+<tbody>
+<tr>
+<th>ID</th>
+<th>Name</th>
+<th>Status</th>
+<th>Comments</th>
+</tr>
+<tr>
+<td>R100</td>
+<td>Specification Format</td>
+<td>S</td>
+<td/>
+</tr>
+<tr>
+<td>R101</td>
+<td>Specification Modularity</td>
+<td>S</td>
+<td/>
+</tr>
+<tr>
+<td>R102</td>
+<td>Specification Organization</td>
+<td>S</td>
+<td/>
+</tr>
+<tr>
+<td>R103</td>
+<td>Core and Periphery</td>
+<td>S</td>
+<td>TT extension namespaces</td>
+</tr>
+<tr>
+<td>R104</td>
+<td>Evolution of Core</td>
+<td>S</td>
+<td>TT extension namespaces</td>
+</tr>
+<tr>
+<td>R105</td>
+<td>Ownership of Core</td>
+<td>S</td>
+<td>TT namespaces</td>
+</tr>
+<tr>
+<td>R106</td>
+<td>Surjection of Core</td>
+<td>S</td>
+<td/>
+</tr>
+<tr>
+<td>R107</td>
+<td>Evolution of Periphery</td>
+<td>S</td>
+<td>TT extension namespaces</td>
+</tr>
+<tr>
+<td>R108</td>
+<td>Ownership of Periphery</td>
+<td>S</td>
+<td>Non-TT namespaces</td>
+</tr>
+<tr>
+<td>R109</td>
+<td>Transformation</td>
+<td>S</td>
+<td>Supports 3GPP, QText, RealText, SAMI</td>
+</tr>
+<tr>
+<td>R110</td>
+<td>Streamable Transformation</td>
+<td>S</td>
+<td>Progressive decoding</td>
+</tr>
+<tr>
+<td>R111</td>
+<td>Accessibility – Content</td>
+<td>S</td>
+<td>Alternative document instances</td>
+</tr>
+<tr>
+<td>R112</td>
+<td>Accessibility – Authoring System</td>
+<td>S</td>
+<td/>
+</tr>
+<tr>
+<td>R200</td>
+<td>Authorability</td>
+<td>S</td>
+<td/>
+</tr>
+<tr>
+<td>R201</td>
+<td>Multiple Natural Languages</td>
+<td>S</td>
+<td>Alternative document instances</td>
+</tr>
+<tr>
+<td>R202</td>
+<td>Natural Language Coverage</td>
+<td>S</td>
+<td>Unicode 4.0</td>
+</tr>
+<tr>
+<td>R203</td>
+<td>Natural Language Association Granularity</td>
+<td>S</td>
+<td>See <code>xml:lang</code></td>
+</tr>
+<tr>
+<td>R204</td>
+<td>Minimum Character Representability</td>
+<td>S</td>
+<td>Unicode 4.0</td>
+</tr>
+<tr>
+<td>R205</td>
+<td>Intrinsic and Extrinsic Text Content</td>
+<td>P</td>
+<td>Intrinsic only</td>
+</tr>
+<tr>
+<td>R206</td>
+<td>Markup Association</td>
+<td>P</td>
+<td>Intrinsic only</td>
+</tr>
+<tr>
+<td>R207</td>
+<td>Conditional Content</td>
+<td>N</td>
+<td/>
+</tr>
+<tr>
+<td>R208</td>
+<td>Flowed Text</td>
+<td>S</td>
+<td/>
+</tr>
+<tr>
+<td>R209</td>
+<td>Logical Flowed Text Vocabulary</td>
+<td>S</td>
+<td/>
+</tr>
+<tr>
+<td>R210</td>
+<td>Presentational Flowed Text Vocabulary</td>
+<td>S</td>
+<td>Implied mapping from logical flowed text.</td>
+</tr>
+<tr>
+<td>R211</td>
+<td>Flowed Text Vocabulary Relationship</td>
+<td>S</td>
+<td/>
+</tr>
+<tr>
+<td>R212</td>
+<td>Flowed Text Vocabulary Separation</td>
+<td>N</td>
+<td/>
+</tr>
+<tr>
+<td>R213</td>
+<td>Non-Flowed Text</td>
+<td>N</td>
+<td/>
+</tr>
+<tr>
+<td>R214</td>
+<td>Non-Flowed Text Vocabulary</td>
+<td>N</td>
+<td/>
+</tr>
+<tr>
+<td>R215</td>
+<td>Hybrid Flowed and Non-Flowed Text</td>
+<td>N</td>
+<td/>
+</tr>
+<tr>
+<td>R216</td>
+<td>Hyperlinking</td>
+<td>N</td>
+<td>Can support via XLink</td>
+</tr>
+<tr>
+<td>R217</td>
+<td>Embedded Graphics</td>
+<td>N</td>
+<td/>
+</tr>
+<tr>
+<td>R218</td>
+<td>Non-Embedded Graphics</td>
+<td>N</td>
+<td/>
+</tr>
+<tr>
+<td>R219</td>
+<td>Embedded Fonts</td>
+<td>N</td>
+<td/>
+</tr>
+<tr>
+<td>R220</td>
+<td>Non-Embedded Fonts</td>
+<td>N</td>
+<td/>
+</tr>
+<tr>
+<td>R221</td>
+<td>Descriptive Vocabulary</td>
+<td>S</td>
+<td>See <code>ttm:agent</code>, <code>ttm:role</code></td>
+</tr>
+<tr>
+<td>R222</td>
+<td>Embedded Audio</td>
+<td>N</td>
+<td/>
+</tr>
+<tr>
+<td>R223</td>
+<td>Non-Embedded Audio</td>
+<td>N</td>
+<td/>
+</tr>
+<tr>
+<td>R290</td>
+<td>Markup Format</td>
+<td>S</td>
+<td/>
+</tr>
+<tr>
+<td>R291</td>
+<td>Markup Format and Unicode Interaction</td>
+<td>S</td>
+<td/>
+</tr>
+<tr>
+<td>R292</td>
+<td>Extrinsic Resource References</td>
+<td>N</td>
+<td>No extrinsic references</td>
+</tr>
+<tr>
+<td>R293</td>
+<td>Schema Validity Specification</td>
+<td>S</td>
+<td/>
+</tr>
+<tr>
+<td>R300</td>
+<td>Inline Styling</td>
+<td>S</td>
+<td/>
+</tr>
+<tr>
+<td>R301</td>
+<td>Inline Styling Form</td>
+<td>P</td>
+<td>Inline and referential styling</td>
+</tr>
+<tr>
+<td>R301</td>
+<td>Out-of-Line Styling</td>
+<td>N</td>
+<td/>
+</tr>
+<tr>
+<td>R301</td>
+<td>Out-of-Line Styling Form</td>
+<td>N</td>
+<td/>
+</tr>
+<tr>
+<td>R304</td>
+<td>Styling Prioritization</td>
+<td>S</td>
+<td/>
+</tr>
+<tr>
+<td>R305</td>
+<td>Style Parameters – Aural</td>
+<td>N</td>
+<td/>
+</tr>
+<tr>
+<td>R306</td>
+<td>Style Parameters – Visual</td>
+<td>P</td>
+<td>Supports absolute position, background color, color, display none, display alignment,
+font family, font size, font style, font weight, height, line height, origin,
+opacity, overflow, padding (before, after, start, end), text alignment,
+text shadow (as outline), visibility, width, writing mode, z-index</td>
+</tr>
+<tr>
+<td>R390</td>
+<td>Style Parameter Symmetry</td>
+<td>S</td>
+<td/>
+</tr>
+<tr>
+<td>R391</td>
+<td>Style Parameter Definitions</td>
+<td>S</td>
+<td/>
+</tr>
+<tr>
+<td>R392</td>
+<td>Style Parameter Shorthands</td>
+<td>S</td>
+<td/>
+</tr>
+<tr>
+<td>R401</td>
+<td>Inline Timing</td>
+<td>S</td>
+<td/>
+</tr>
+<tr>
+<td>R402</td>
+<td>Out-of-Line Timing</td>
+<td>N</td>
+<td/>
+</tr>
+<tr>
+<td>R403</td>
+<td>Synchronization Parameters</td>
+<td>P</td>
+<td>Supports begin, end, dur</td>
+</tr>
+<tr>
+<td>R404</td>
+<td>Synchronization Parameter Value Spaces</td>
+<td>P</td>
+<td>Supports offset values, media marker values (SMPTE 12M), wall-clock values</td>
+</tr>
+<tr>
+<td>R405</td>
+<td>Time Containment Semantics</td>
+<td>P</td>
+<td>Supports sequential, parallel</td>
+</tr>
+<tr>
+<td>R500</td>
+<td>Animation Modes</td>
+<td>P</td>
+<td>Supports discrete</td>
+</tr>
+<tr>
+<td>R502</td>
+<td>Highlight Animation</td>
+<td>S</td>
+<td><code><set tts:backgroundColor="..."/></code></td>
+</tr>
+<tr>
+<td>R503</td>
+<td>Fade Transition Animation</td>
+<td>S</td>
+<td><code><set tts:opacity="..."/></code></td>
+</tr>
+<tr>
+<td>R504</td>
+<td>Animated Style Parameters – Aural</td>
+<td>N</td>
+<td/>
+</tr>
+<tr>
+ <td>R505</td>
+<td>Animated Style Parameters – Visual</td>
+<td>P</td>
+<td>Supports animating background color, color, display, opacity, origin, visibility</td>
+</tr>
+<tr>
+<td>N506</td>
+<td>Animated Content</td>
+<td>S</td>
+<td/>
+</tr>
+<tr>
+<td>R600</td>
+<td>Metadata Item Association</td>
+<td>S</td>
+<td>See <code>metadata</code>, <code>Metadata.class</code></td>
+</tr>
+<tr>
+<td>R601</td>
+<td>Metadata Item Constituents</td>
+<td>P</td>
+<td>Supports name, value</td>
+</tr>
+<tr>
+<td>R602</td>
+<td>Metadata Item Value Representation</td>
+<td>P</td>
+<td>See <code>metadata</code></td>
+</tr>
+<tr>
+<td>R603</td>
+<td>Metadata Item Extensibility</td>
+<td>S</td>
+<td>See <code>metadata</code></td>
+</tr>
+<tr>
+<td>R604</td>
+<td>Metadata Item Validation</td>
+<td>S</td>
+<td>See <code>metadata</code></td>
+</tr>
+<tr>
+<td>R690</td>
+<td>Dublin Core Preference</td>
+<td>N</td>
+<td>Uses <code>ttm:copyright</code>, <code>ttm:desc</code>, <code>ttm:title</code></td>
+</tr>
+</tbody>
+</table>
+</inform-div1>
+<inform-div1 id="derivation">
+<head>Vocabulary Derivation</head>
+<p>This appendix provides information about the derivation of TTML
+vocabulary, separately describing derivation of elements and
+attributes.</p>
+<div2>
+<head>Element Derivation</head>
+<p>The first column of <specref ref="element-vocab-derivation-table"/>
+specifies a TTML element vocabulary item; the second column specifies the
+syntactic and/or semantic model on which the vocabulary item is based;
+the third column specifies the reference that defines
+the model (if a model is indicated);
+the fourth column specifies details about the derivation; the last
+column refers to additional notes describing the nature of the
+derivation.</p>
+<p>In the fourth column, which describes details of derivation, a
+notation is use to indicate the addition or removal of an attribute.
+For example, in the derivation of the <el>tt:div</el> element, the
+details column includes "-@class", which denotes that the
+<att>class</att> attribute that is specified for use with the
+<el>xhtml:div</el> model element is not specified for use with the
+corresponding TTML element; in contrast, the details column includes
+"+@begin", which denotes that a <att>begin</att> attribute is added
+that is not specified for use with the <el>xhtml:div</el> model
+element.</p>
+<table id="element-vocab-derivation-table" role="common">
+<caption>Table J-1 – Elements</caption>
+<col width="20%"/>
+<col width="17%"/>
+<col width="13%" align="center"/>
+<col width="40%"/>
+<col width="10%" align="center"/>
+<tbody>
+<tr>
+<td><phrase role="strong">Element</phrase></td>
+<td><phrase role="strong">Model</phrase></td>
+<td><phrase role="strong">Reference</phrase></td>
+<td><phrase role="strong">Details</phrase></td>
+<td><phrase role="strong">Notes</phrase></td>
+</tr>
+<tr>
+<td><loc href="#document-structure-vocabulary-body"><code>tt:body</code></loc></td>
+<td><code>xhtml:body</code></td>
+<td><bibref ref="xhtml10"/></td>
+<td>-@class, -@dir, -@lang, -@on*, -@title; +@begin, +@dur, +@end, +@region,
++@timeContainer, +@ttm:*, +@tts:*; content model
+subsetted to zero or more division (div) children, and supersetted by
+optional metadata and animation children</td>
+<td>1,2</td>
+</tr>
+<tr>
+<td><loc href="#content-vocabulary-br"><code>tt:br</code></loc></td>
+<td><code>xhtml:br</code></td>
+<td><bibref ref="xhtml10"/></td>
+<td>-@class, -@title; +@ttm:*, +@tts:*, +@xml:lang, +@xml:space;
+content model supersetted by
+optional metadata and animation children for congruity with other
+content vocabulary</td>
+<td>1,2</td>
+</tr>
+<tr>
+<td><loc href="#content-vocabulary-div"><code>tt:div</code></loc></td>
+<td><code>xhtml:div</code></td>
+<td><bibref ref="xhtml10"/></td>
+<td>-@class, -@dir, -@lang, -@on*, -@title; +@begin, +@dur, +@end, +@region,
++@timeContainer, +@ttm:*, +@tts:*, +@xml:space; content model
+subsetted to zero or more paragraph (p) children, and supersetted by
+optional metadata and animation children</td>
+<td>1,2,3</td>
+</tr>
+<tr>
+<td><loc href="#document-structure-vocabulary-head"><code>tt:head</code></loc></td>
+<td><code>xhtml:head</code></td>
+<td><bibref ref="xhtml10"/></td>
+<td>-@dir, -@lang, -@profile; +@id, +@xml:space; content model changed to
+optional metadata children, followed by optional styling child,
+followed by optional layout child</td>
+<td>1,3</td>
+</tr>
+<tr>
+<td><loc href="#layout-vocabulary-layout"><code>tt:layout</code></loc></td>
+<td><code>fo:simple-page-master</code></td>
+<td><bibref ref="xsl11"/></td>
+<td>conceptual derivation</td>
+<td>4</td>
+</tr>
+<tr>
+<td><loc href="#metadata-vocabulary-metadata"><code>tt:metadata</code></loc></td>
+<td><code>svg:metadata</code></td>
+<td><bibref ref="svg11"/></td>
+<td>-@xml:base; +@ttm:*, +@xml:lang, +@xml:space; content model
+subsetted to foreign namespace element content only (no #PCDATA)</td>
+<td>3,5</td>
+</tr>
+<tr>
+<td><loc href="#content-vocabulary-p"><code>tt:p</code></loc></td>
+<td><code>xhtml:p</code></td>
+<td><bibref ref="xhtml10"/></td>
+<td>-@class, -@dir, -@lang, -@on*, -@title; +@begin, +@dur, +@end, +@region,
++@timeContainer, +@ttm:*, +@tts:*, +@xml:space; content model
+subsetted to zero or more span children, and supersetted by optional
+metadata and animation children</td>
+<td>1,2,3</td>
+</tr>
+<tr>
+<td><loc href="#layout-vocabulary-region"><code>tt:region</code></loc></td>
+<td><code>fo:region-*</code></td>
+<td><bibref ref="xsl11"/></td>
+<td>conceptual derivation</td>
+<td>4</td>
+</tr>
+<tr>
+<td><loc href="#animation-vocabulary-set"><code>tt:set</code></loc></td>
+<td><code>svg:set</code></td>
+<td><bibref ref="svg11"/></td>
+<td>-@* except begin, dur, end; +@tts:*, +@xml:lang, +@xml:space</td>
+<td>3,6</td>
+</tr>
+<tr>
+<td><loc href="#content-vocabulary-span"><code>tt:span</code></loc></td>
+<td><code>xhtml:span</code></td>
+<td><bibref ref="xhtml10"/></td>
+<td>-@class, -@dir, -@lang, -@on*, -@title; +@begin, +@dur, +@end, +@region,
++@timeContainer, +@ttm:*, +@tts:*, +@xml:space; content model
+subsetted to zero or more #PCDATA or break (br) children, and
+supersetted by optional metadata and animation children</td>
+<td>1,2,3</td>
+</tr>
+<tr>
+<td><loc href="#styling-vocabulary-style"><code>tt:style</code></loc></td>
+<td><emph>style specification</emph></td>
+<td><bibref ref="css2"/></td>
+<td>XML representation of identified set of pairs of style property
+name and value, with optional inclusion of other styles by reference
+to other style elements</td>
+<td>7</td>
+</tr>
+<tr>
+<td><loc href="#styling-vocabulary-styling"><code>tt:styling</code></loc></td>
+<td><code>xhtml:style</code></td>
+<td><bibref ref="xhtml10"/></td>
+<td>XML representation of a set of style specifications sets, each
+represented by a style child element</td>
+<td>1,7</td>
+</tr>
+<tr>
+<td><loc href="#document-structure-vocabulary-tt"><code>tt:tt</code></loc></td>
+<td><code>xhtml:html</code></td>
+<td><bibref ref="xhtml10"/></td>
+<td>-@dir, -@lang; +@id, +@ttp:*, +@xml:space; content model subsetted by
+permitting body and/or head to be optional</td>
+<td>1,8</td>
+</tr>
+<tr>
+<td><loc href="#metadata-vocabulary-actor"><code>ttm:actor</code></loc></td>
+<td><code>mpeg7:Creator</code></td>
+<td><bibref ref="mpeg7-5"/></td>
+<td>conceptual derivation</td>
+<td>4</td>
+</tr>
+<tr>
+<td><loc href="#metadata-vocabulary-agent"><code>ttm:agent</code></loc></td>
+<td><code>mpeg7:Agent</code></td>
+<td><bibref ref="mpeg7-5"/></td>
+<td>conceptual derivation</td>
+<td>4</td>
+</tr>
+<tr>
+<td><loc href="#metadata-vocabulary-copyright"><code>ttm:copyright</code></loc></td>
+<td><code>mpeg7:CopyrightString</code></td>
+<td><bibref ref="mpeg7-5"/></td>
+<td>conceptual derivation</td>
+<td>4</td>
+</tr>
+<tr>
+<td><loc href="#metadata-vocabulary-desc"><code>ttm:desc</code></loc></td>
+<td><code>svg:desc</code></td>
+<td><bibref ref="svg11"/></td>
+<td>-@class, -@style, -@xml:base</td>
+<td>2,5,9</td>
+</tr>
+<tr>
+<td><loc href="#metadata-vocabulary-name"><code>ttm:name</code></loc></td>
+<td><code>mpeg7:Name</code></td>
+<td><bibref ref="mpeg7-5"/></td>
+<td>conceptual derivation</td>
+<td>4</td>
+</tr>
+<tr>
+<td><loc href="#metadata-vocabulary-title"><code>ttm:title</code></loc></td>
+<td><code>svg:title</code></td>
+<td><bibref ref="svg11"/></td>
+<td>-@class, -@style, -@xml:base</td>
+<td>2,5,9</td>
+</tr>
+
+<tr>
+<td><loc href="#parameter-vocabulary-extension"><code>ttp:extension</code></loc></td>
+<td><code>@requiredExtensions</code></td>
+<td><bibref ref="svg11"/></td>
+<td>conceptual derivation</td>
+<td>10</td>
+</tr>
+<tr>
+<td><loc href="#parameter-vocabulary-extensions"><code>ttp:extensions</code></loc></td>
+<td><code>@requiredExtensions</code></td>
+<td><bibref ref="svg11"/></td>
+<td>conceptual derivation</td>
+<td>10</td>
+</tr>
+<tr>
+<td><loc href="#parameter-vocabulary-feature"><code>ttp:feature</code></loc></td>
+<td><code>@requiredFeatures</code></td>
+<td><bibref ref="svg11"/></td>
+<td>conceptual derivation</td>
+<td>10</td>
+</tr>
+<tr>
+<td><loc href="#parameter-vocabulary-features"><code>ttp:features</code></loc></td>
+<td><code>@requiredFeatures</code></td>
+<td><bibref ref="svg11"/></td>
+<td>conceptual derivation</td>
+<td>10</td>
+</tr>
+<tr>
+<td><loc href="#parameter-vocabulary-profile"><code>ttp:profile</code></loc></td>
+<td><code>@baseProfile</code></td>
+<td><bibref ref="svg11"/></td>
+<td>conceptual derivation</td>
+<td>11</td>
+</tr>
+</tbody>
+</table>
+<note>
+<olist>
+<item>
+<p>Derivation is indicated with respect to the strict DTD defined
+by <bibref ref="xhtml10"/>, §A.1.</p>
+</item>
+<item>
+<p>The <att>class</att> attribute is effectively replaced by the
+<att>style</att>
+attribute, which, instead of specifying an inline style,
+refers indirectly to one or more <loc
+href="#styling-vocabulary-style"><el>style</el></loc>
+elements that define a set of style specification sets.</p>
+</item>
+<item>
+<p>The <att>xml:lang</att> and <att>xml:space</att> attributes are defined for all element
+types in order to support their inheritance semantics to operate in
+the context of foreign namespace elements.</p>
+</item>
+<item>
+<p>Derivation is conceptual (notional) only.</p>
+</item>
+<item>
+<p>The <att>xml:base</att> attribute is not used since there are no external
+references from core vocabulary.</p>
+</item>
+<item>
+<p>The <att>attributeName</att> and <att>to</att> attributes of
+<el>svg:set</el> are replaced by the
+direct expression of the target attribute name and value by use of a
+<att>tts:*</att> attribute.</p>
+</item>
+<item>
+<p>CSS style specification syntax is mapped to XML by use of
+attributes defined in the TT Style Namespace.</p>
+</item>
+<item>
+<p>The <att>xml:id</att> attribute is defined for use on all element types.</p>
+</item>
+<item>
+<p>The <att>style</att> attribute is supported only on content
+elements.</p>
+</item>
+<item>
+<p>Derived from the use of <code>@requiredExtensions</code>
+and <code>@requiredFeatures</code> on the <code>svg:svg</code> element,
+but extended to support distinct specification of optionality.</p>
+</item>
+<item>
+<p>Derived from the use of <code>@baseProfile</code>
+and <code>@version</code> on the <code>svg:svg</code> element.</p>
+</item>
+</olist>
+</note>
+</div2>
+<div2>
+<head>Attribute Derivation</head>
+<p>The first column of <specref ref="attribute-vocab-derivation-table"/>
+specifies a TTML attribute vocabulary item; the second column specifies the
+syntactic and/or semantic model on which the vocabulary item is based;
+the third column specifies the reference that defines
+the model (if a model is indicated);
+the fourth column specifies details about the derivation; the last
+column refers to additional notes describing the nature of the
+derivation.</p>
+<p>In the fourth column, which describes details of derivation, a
+notation is use to indicate the addition or removal of an attribute
+value. For example, in the derivation of the <att>timeContainer</att>
+attribute,
+the details column includes "-excl", which denotes that the
+<code>excl</code> value that is specified for use with the
+<att>timeContainer</att> model attribute is not specified for use with the
+corresponding TTML attribute; similarly, an "+<emph>value</emph>"
+in the details column indicates that the attribute's values have been
+extended to include <emph>value</emph>.</p>
+<p>Only those attributes that are specified for use on more than one TTML
+element type are listed below. Those per-element namespace attributes
+that are uniquely defined for a specific TTML element type are not
+listed below, but are considered to be part of the specific element
+type's derivation described in <specref
+ref="element-vocab-derivation-table"/>
+above.</p>
+<table id="attribute-vocab-derivation-table" role="common">
+<caption>Table J-2 – Attributes</caption>
+<col width="20%"/>
+<col width="17%"/>
+<col width="13%" align="center"/>
+<col width="40%"/>
+<col width="10%" align="center"/>
+<tbody>
+<tr>
+<td><phrase role="strong">Attribute</phrase></td>
+<td><phrase role="strong">Model</phrase></td>
+<td><phrase role="strong">Reference</phrase></td>
+<td><phrase role="strong">Details</phrase></td>
+<td><phrase role="strong">Notes</phrase></td>
+</tr>
+<tr>
+<td><loc href="#timing-attribute-begin"><code>begin</code></loc></td>
+<td><code>begin</code></td>
+<td><bibref ref="smil21"/></td>
+<td>see notes</td>
+<td>2,3,4</td>
+</tr>
+<tr>
+<td><loc href="#timing-attribute-dur"><code>dur</code></loc></td>
+<td><code>dur</code></td>
+<td><bibref ref="smil21"/></td>
+<td>see notes</td>
+<td>2,3,4</td>
+</tr>
+<tr>
+<td><loc href="#timing-attribute-end"><code>end</code></loc></td>
+<td><code>end</code></td>
+<td><bibref ref="smil21"/></td>
+<td>see notes</td>
+<td>2,3,4</td>
+</tr>
+<tr>
+<td><loc href="#layout-attribute-region"><code>region</code></loc></td>
+<td><code>master-reference</code></td>
+<td><bibref ref="xsl11"/></td>
+<td>conceptual derivation</td>
+<td></td>
+</tr>
+<tr>
+<td><loc href="#style-attribute-style"><code>style</code></loc></td>
+<td><code>class</code></td>
+<td><bibref ref="css2"/></td>
+<td>dereferences style specification(s) directly</td>
+<td></td>
+</tr>
+<tr>
+<td><loc href="#timing-attribute-timeContainer"><code>timeContainer</code></loc></td>
+<td><code>timeContainer</code></td>
+<td><bibref ref="smil21"/></td>
+<td>-excl, -none; no default attribute value</td>
+<td>5</td>
+</tr>
+<tr>
+<td><loc href="#metadata-attribute-agent"><code>ttm:agent</code></loc></td>
+<td><emph>none</emph></td>
+<td></td>
+<td>used to attribute agent of content</td>
+<td></td>
+</tr>
+<tr>
+<td><loc href="#metadata-attribute-role"><code>ttm:role</code></loc></td>
+<td><emph>none</emph></td>
+<td></td>
+<td>used to attribute role of content</td>
+<td></td>
+</tr>
+<tr>
+<td><loc href="#parameter-attribute-cellResolution"><code>ttp:cellResolution</code></loc></td>
+<td><emph>none</emph></td>
+<td></td>
+<td>expresses uniform grid resolution for cell based coordinates</td>
+<td></td>
+</tr>
+<tr>
+<td><loc href="#parameter-attribute-clockMode"><code>ttp:clockMode</code></loc></td>
+<td><emph>none</emph></td>
+<td></td>
+<td>determines how to interpret time expressions</td>
+<td></td>
+</tr>
+<tr>
+<td><loc href="#parameter-attribute-frameRate"><code>ttp:frameRate</code></loc></td>
+<td><emph>none</emph></td>
+<td></td>
+<td>expresses integral frame rate</td>
+<td></td>
+</tr>
+<tr>
+<td><loc href="#parameter-attribute-frameRateMultiplier"><code>ttp:frameRateMultiplier</code></loc></td>
+<td><emph>none</emph></td>
+<td></td>
+<td>used to express non-integral, rational frame rates</td>
+<td></td>
+</tr>
+<tr>
+<td><loc href="#parameter-attribute-markerMode"><code>ttp:markerMode</code></loc></td>
+<td><emph>none</emph></td>
+<td></td>
+<td>expresses marker continuity semantics</td>
+<td></td>
+</tr>
+<tr>
+<td><loc href="#parameter-attribute-pixelAspectRatio"><code>ttp:pixelAspectRatio</code></loc></td>
+<td><emph>none</emph></td>
+<td></td>
+<td>expresses pixel aspect ratio of related media</td>
+<td></td>
+</tr>
+<tr>
+<td><loc href="#parameter-attribute-profile"><code>ttp:profile</code></loc></td>
+<td><emph>none</emph></td>
+<td></td>
+<td>expresses profile of TTML used by a <emph>Document Instance</emph></td>
+<td></td>
+</tr>
+<tr>
+<td><loc href="#parameter-attribute-dropMode"><code>ttp:dropMode</code></loc></td>
+<td><emph>none</emph></td>
+<td></td>
+<td>expresses frame counting (drop) modes</td>
+<td></td>
+</tr>
+<tr>
+<td><loc href="#parameter-attribute-subFrameRate"><code>ttp:subFrameRate</code></loc></td>
+<td><emph>none</emph></td>
+<td></td>
+<td>expresses sub-frame rate</td>
+<td></td>
+</tr>
+<tr>
+<td><loc href="#parameter-attribute-tickRate"><code>ttp:tickRate</code></loc></td>
+<td><emph>none</emph></td>
+<td></td>
+<td>used to interpret tick based time expressions</td>
+<td></td>
+</tr>
+<tr>
+<td><loc href="#parameter-attribute-timeBase"><code>ttp:timeBase</code></loc></td>
+<td><emph>none</emph></td>
+<td></td>
+<td>used to interpret semantics of time expressions</td>
+<td></td>
+</tr>
+<tr>
+<td><loc href="#style-attribute-backgroundColor"><code>tts:backgroundColor</code></loc></td>
+<td><code>background-color</code></td>
+<td><bibref ref="xsl11"/></td>
+<td><code>-inherit</code></td>
+<td>1,6</td>
+</tr>
+<tr>
+<td><loc href="#style-attribute-color"><code>tts:color</code></loc></td>
+<td><code>color</code></td>
+<td><bibref ref="xsl11"/></td>
+<td><code>-inherit</code></td>
+<td>6</td>
+</tr>
+<tr>
+<td><loc href="#style-attribute-direction"><code>tts:direction</code></loc></td>
+<td><code>direction</code></td>
+<td><bibref ref="xsl11"/></td>
+<td><code>-inherit</code></td>
+<td></td>
+</tr>
+<tr>
+<td><loc href="#style-attribute-display"><code>tts:display</code></loc></td>
+<td><code>display</code></td>
+<td><bibref ref="css2"/></td>
+<td>only <code>auto</code>, <code>none</code></td>
+<td></td>
+</tr>
+<tr>
+<td><loc href="#style-attribute-displayAlign"><code>tts:displayAlign</code></loc></td>
+<td><code>display-align</code></td>
+<td><bibref ref="xsl11"/></td>
+<td><code>-inherit</code></td>
+<td>1</td>
+</tr>
+<tr>
+<td><loc href="#style-attribute-extent"><code>tts:extent</code></loc></td>
+<td><code>width</code>, <code>height</code></td>
+<td><bibref ref="xsl11"/></td>
+<td>shorthand property</td>
+<td></td>
+</tr>
+<tr>
+<td><loc href="#style-attribute-fontFamily"><code>tts:fontFamily</code></loc></td>
+<td><code>font-family</code></td>
+<td><bibref ref="xsl11"/></td>
+<td><code>-inherit</code>, extends generic family names</td>
+<td>1</td>
+</tr>
+<tr>
+<td><loc href="#style-attribute-fontSize"><code>tts:fontSize</code></loc></td>
+<td><code>font-size</code></td>
+<td><bibref ref="xsl11"/></td>
+<td><code>-inherit</code></td>
+<td>1,7</td>
+</tr>
+<tr>
+<td><loc href="#style-attribute-fontStyle"><code>tts:fontStyle</code></loc></td>
+<td><code>font-style</code></td>
+<td><bibref ref="xsl11"/></td>
+<td><code>-inherit</code>, <code>-backslant</code></td>
+<td>1</td>
+</tr>
+<tr>
+<td><loc href="#style-attribute-fontWeight"><code>tts:fontWeight</code></loc></td>
+<td><code>font-weight</code></td>
+<td><bibref ref="xsl11"/></td>
+<td><code>-inherit</code>, <code>-bolder</code>, <code>-lighter</code>, <code>-<number></code></td>
+<td>1</td>
+</tr>
+<tr>
+<td><loc href="#style-attribute-lineHeight"><code>tts:lineHeight</code></loc></td>
+<td><code>line-height</code></td>
+<td><bibref ref="xsl11"/></td>
+<td><code>-inherit</code>, <code>-<number></code>, <code>-<space></code></td>
+<td>1</td>
+</tr>
+<tr>
+<td><loc href="#style-attribute-opacity"><code>tts:opacity</code></loc></td>
+<td><code>opacity</code></td>
+<td><bibref ref="css3-color"/></td>
+<td><code>-inherit</code></td>
+<td></td>
+</tr>
+<tr>
+<td><loc href="#style-attribute-origin"><code>tts:origin</code></loc></td>
+<td><code>top</code>, <code>left</code></td>
+<td><bibref ref="xsl11"/></td>
+<td>shorthand property</td>
+<td></td>
+</tr>
+<tr>
+<td><loc href="#style-attribute-overflow"><code>tts:overflow</code></loc></td>
+<td><code>overflow</code></td>
+<td><bibref ref="xsl11"/></td>
+<td><code>-inherit</code>, <code>-auto</code>, <code>-error-if-overflow</code></td>
+<td>8</td>
+</tr>
+<tr>
+<td><loc href="#style-attribute-padding"><code>tts:padding</code></loc></td>
+<td><code>padding</code></td>
+<td><bibref ref="xsl11"/></td>
+<td><code>-inherit</code></td>
+<td>9</td>
+</tr>
+<tr>
+<td><loc href="#style-attribute-showBackground"><code>tts:showBackground</code></loc></td>
+<td><code>showBackground</code></td>
+<td><bibref ref="smil21"/></td>
+<td><code>-inherit</code></td>
+<td></td>
+</tr>
+<tr>
+<td><loc href="#style-attribute-textAlign"><code>tts:textAlign</code></loc></td>
+<td><code>text-align</code></td>
+<td><bibref ref="xsl11"/></td>
+<td><code>-inherit</code></td>
+<td>1</td>
+</tr>
+<tr>
+<td><loc href="#style-attribute-textDecoration"><code>tts:textDecoration</code></loc></td>
+<td><code>text-decoration</code></td>
+<td><bibref ref="xsl11"/></td>
+<td><code>-inherit</code></td>
+<td>1,10,13</td>
+</tr>
+<tr>
+<td><loc href="#style-attribute-textOutline"><code>tts:textOutline</code></loc></td>
+<td><code>text-shadow</code></td>
+<td><bibref ref="xsl11"/></td>
+<td><code>-inherit</code></td>
+<td>11,13</td>
+</tr>
+<tr>
+<td><loc href="#style-attribute-unicodeBidi"><code>tts:unicodeBidi</code></loc></td>
+<td><code>unicode-bidi</code></td>
+<td><bibref ref="xsl11"/></td>
+<td><code>-inherit</code></td>
+<td>1</td>
+</tr>
+<tr>
+<td><loc href="#style-attribute-visibility"><code>tts:visibility</code></loc></td>
+<td><code>visibility</code></td>
+<td><bibref ref="xsl11"/></td>
+<td><code>-inherit</code>, <code>-collapse</code></td>
+<td></td>
+</tr>
+<tr>
+<td><loc href="#style-attribute-wrapOption"><code>tts:wrapOption</code></loc></td>
+<td><code>wrap-option</code></td>
+<td><bibref ref="xsl11"/></td>
+<td><code>-inherit</code></td>
+<td>1</td>
+</tr>
+<tr>
+<td><loc href="#style-attribute-writingMode"><code>tts:writingMode</code></loc></td>
+<td><code>writing-mode</code></td>
+<td><bibref ref="xsl11"/></td>
+<td><code>-inherit</code>, <code>+tblr</code></td>
+<td>1</td>
+</tr>
+<tr>
+<td><loc href="#style-attribute-zIndex"><code>tts:zIndex</code></loc></td>
+<td><code>z-index</code></td>
+<td><bibref ref="xsl11"/></td>
+<td><code>-inherit</code></td>
+<td>1</td>
+</tr>
+<tr>
+<td><loc href="#content-attribute-id"><code>xml:id</code></loc></td>
+<td><code>xml:id</code></td>
+<td><bibref ref="xmlid"/></td>
+<td>complies with model</td>
+<td></td>
+</tr>
+<tr>
+<td><loc href="#content-attribute-lang"><code>xml:lang</code></loc></td>
+<td><code>xml:lang</code></td>
+<td><bibref ref="xml10"/></td>
+<td>complies with model</td>
+<td></td>
+</tr>
+<tr>
+<td><loc href="#content-attribute-space"><code>xml:space</code></loc></td>
+<td><code>xml:space</code></td>
+<td><bibref ref="xml10"/></td>
+<td>see notes</td>
+<td>12</td>
+</tr>
+</tbody>
+</table>
+<note>
+<olist>
+<item>
+<p>Attribute name and/or value(s) are normalized to use
+<emph>lowerCamelCase</emph> naming convention.</p>
+</item>
+<item>
+<p>Restricted to expressing a clock value that denotes one of the
+following in accordance to whether the parameter expressed by the
+<att>ttp:timeBase</att> attribute is <code>media</code>, <code>smpte</code>,
+or <code>clock</code>, respectively:
+(1) an offset from an implicit syncbase that is linked to a media time
+line, (2) an event time
+that represents the occurrence of an implicit media marker, or (3) a wall-clock
+time.</p>
+</item>
+<item>
+<p>Syntactically subsets and supersets the <bibref
+ref="smil21"/> <code>Clock-value</code> syntax as follows:
+(1) requires non-negative <code>Full-clock-value</code> or
+<code>Timecount-value</code>;
+(2) if <code>Full-clock-value</code>
+then <emph>hours</emph> must be two or more digits;
+(3) if <code>Timecount-value</code>, then <emph>metric</emph> must be
+specified;
+(4) uses <code>m</code> as alias for <code>min</code> metric to denote
+minutes;
+(5) adds <code>f</code> and <code>t</code> metrics denoting frames and
+ticks, respectively;
+(6) adds alternative expression of optional <code>Fraction</code> in
+<code>Full-clock-value</code> by specifying frame count or frame
+count with subframe count.
+</p>
+</item>
+<item>
+<p>
+Interpretation of time expression is further constrained by
+parameters expressed by
+<att>ttp:clockMode</att>,
+<att>ttp:dropMode</att>,
+<att>ttp:frameRate</att>,
+<att>ttp:frameRateMultiplier</att>,
+<att>ttp:markerMode</att>,
+<att>ttp:subFrameRate</att>,
+<att>ttp:tickRate</att>, and
+<att>ttp:timeBase</att> attributes.</p>
+</item>
+<item>
+<p>Uses subset of named colors from model to which two aliases are
+added as follows: <code>magenta</code> as <code>fuchsia</code>, and <code>cyan</code>
+as <code>aqua</code>.</p>
+</item>
+<item>
+<p>If not specified, then parallel (par) container semantics apply to
+the element types specified by <specref
+ref="timing-attribute-timeContainer"/>.</p>
+</item>
+<item>
+<p>Restricts size to length specification which can be a percentage;
+adds optional second length (or percentage) for
+specifying separate horizontal and vertical scaling of glyph's EM
+square.</p>
+</item>
+<item>
+<p>Expressed in terms of writing mode relative padding properties
+rather than absolute padding properties.</p>
+</item>
+<item>
+<p>Excludes <code>blink</code> and <code>no-blink</code> values.</p>
+</item>
+<item>
+<p>Uses only one length specification instead of two, where one length
+defines distance of outline effect from nominal edge of glyph contour
+outline perpendicular to point of glyph contour. Percentage lengths
+are also added to express outline effect in relative to font size.
+Outline effects are intended to be drawn both outside of outer closed
+contours and inside of inner closed contours.</p>
+</item>
+<item>
+<p>On root element, default attribute value specified as
+<code>default</code>, which is defined in terms of whitespace
+normalization. Semantics of preservation and default normalization are
+defined in terms of presentation semantics by <specref
+ref="content-attribute-space"/>.</p>
+</item>
+<item>
+<p>Defined to be inheritable.</p>
+</item>
+</olist>
+</note>
+</div2>
+</inform-div1>
+<inform-div1 id="qa">
+<head>QA Framework Compliance</head>
+<p>This appendix specifies the compliance of this specification with the
+requirements and guidelines defined by <xspecref
+href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/">QA
+Framework Specifications Guidelines</xspecref> <bibref
+ref="qaf-sg"/>.</p>
+<div2>
+<head>Requirements</head>
+<table id="qa-framework-requirements-table" role="common">
+<caption>Table K-1 – QA Framework Requirements Checklist</caption>
+<col width="76%"/>
+<col width="6%" align="center"/>
+<col width="6%" align="center"/>
+<col width="6%" align="center"/>
+<col width="6%" align="center"/>
+<tbody>
+<tr>
+<td><phrase role="strong">Requirement</phrase></td>
+<td><phrase role="strong">YES</phrase></td>
+<td><phrase role="strong">NO</phrase></td>
+<td><phrase role="strong">N/A</phrase></td>
+<td><phrase role="strong">Notes</phrase></td>
+</tr>
+<tr>
+<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#include-conformance-clause-principle">Requirement 01: Include a conformance
+clause</xspecref></td>
+<td><loc href="#conformance">YES</loc></td>
+<td/>
+<td/>
+<td/>
+</tr>
+<tr>
+<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#define-scope-principle">Requirement 02: Define the scope.</xspecref></td>
+<td><loc href="#intro">YES</loc></td>
+<td/>
+<td/>
+<td/>
+</tr>
+<tr>
+<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#implement-principle">Requirement 03: Identify who or what will implement the specification.</xspecref></td>
+<td><loc href="#conformance">YES</loc></td>
+<td/>
+<td/>
+<td/>
+</tr>
+<tr>
+<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#ref-norm-principle">Requirement 04: Make a list of normative references.</xspecref></td>
+<td><loc href="#references">YES</loc></td>
+<td/>
+<td/>
+<td/>
+</tr>
+<tr>
+<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#define-terms-principle">Requirement 05: Define the terms used in the normative parts of the specification.</xspecref></td>
+<td><loc href="#definitions">YES</loc></td>
+<td/>
+<td/>
+<td/>
+</tr>
+<tr>
+<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#conf-label-principle">Requirement 06: Create conformance labels for each part of the conformance model.</xspecref></td>
+<td><loc href="#conformance">YES</loc></td>
+<td/>
+<td/>
+<td/>
+</tr>
+<tr>
+<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#consistent-style-principle">Requirement 07: Use a consistent style for conformance requirements and explain how to distinguish them.</xspecref></td>
+<td><loc href="#conventions">YES</loc></td>
+<td/>
+<td/>
+<td/>
+</tr>
+<tr>
+<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#req-opt-conf-principle">Requirement 08: Indicate which conformance requirements are mandatory, which are recommended, and which are optional.</xspecref></td>
+<td><loc href="#conventions">YES</loc></td>
+<td/>
+<td/>
+<td/>
+</tr>
+<tr>
+<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#subdivide-mandatory-principle">Requirement 09: If the technology is subdivided, then indicate which subdivisions are mandatory for conformance.</xspecref></td>
+<td><loc href="#conformance">YES</loc></td>
+<td/>
+<td/>
+<td/>
+</tr>
+<tr>
+<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#subdiv-constraints-principle">Requirement 10: If the technology is subdivided, then address subdivision constraints.</xspecref></td>
+<td><loc href="#conformance">YES</loc></td>
+<td/>
+<td/>
+<td/>
+</tr>
+<tr>
+<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#likehood-extension-principle">Requirement 11: Address Extensibility.</xspecref></td>
+<td><loc href="#doctypes">YES</loc></td>
+<td/>
+<td/>
+<td/>
+</tr>
+<tr>
+<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#deprecated-feature-principle">Requirement 12: Identify deprecated features.</xspecref></td>
+<td/>
+<td/>
+<td>N/A</td>
+<td>1</td>
+</tr>
+<tr>
+<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#degree-support-principle">Requirement 13: Define how each class of product handles each deprecated feature.</xspecref></td>
+<td/>
+<td/>
+<td>N/A</td>
+<td>1</td>
+</tr>
+</tbody>
+</table>
+<note>
+<olist>
+<item>
+<p>No feature is deprecated by this version of this specification.</p>
+</item>
+</olist>
+</note>
+</div2>
+<div2>
+<head>Guidelines</head>
+<table id="qa-framework-guidelines-table" role="common">
+<caption>Table K-2 – QA Framework Guidelines Checklist</caption>
+<col width="76%"/>
+<col width="6%" align="center"/>
+<col width="6%" align="center"/>
+<col width="6%" align="center"/>
+<col width="6%" align="center"/>
+<tbody>
+<tr>
+<td><phrase role="strong">Guideline</phrase></td>
+<td><phrase role="strong">YES</phrase></td>
+<td><phrase role="strong">NO</phrase></td>
+<td><phrase role="strong">N/A</phrase></td>
+<td><phrase role="strong">Notes</phrase></td>
+</tr>
+<tr>
+<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#conformance-model-gp">Good Practice 01: Define the specification's conformance model in the conformance clause.</xspecref></td>
+<td><loc href="#conformance">YES</loc></td>
+<td/>
+<td/>
+<td/>
+</tr>
+<tr>
+<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#norm-informative-gp">Good Practice 02: Specify in the conformance clause how to distinguish normative from informative content.</xspecref></td>
+<td><loc href="#conventions">YES</loc></td>
+<td/>
+<td/>
+<td/>
+</tr>
+<tr>
+<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#conformance-claim-gp">Good Practice 03: Provide the wording for conformance claims.</xspecref></td>
+<td><loc href="#claims">YES</loc></td>
+<td/>
+<td/>
+<td/>
+</tr>
+<tr>
+<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#ics-gp">Good Practice 04: Provide an Implementation Conformance Statement Pro Forma.</xspecref></td>
+<td/>
+<td>NO</td>
+<td/>
+<td/>
+</tr>
+<tr>
+<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#ics-claim-gp">Good Practice 05: Require an Implementation Conformance Statement as part of valid conformance claims.</xspecref></td>
+<td><loc href="#claims">YES</loc></td>
+<td/>
+<td/>
+<td/>
+</tr>
+<tr>
+<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#use-example-gp">Good Practice 06: Provide examples, use cases, and graphics.</xspecref></td>
+<td><loc href="#example">YES</loc></td>
+<td/>
+<td/>
+<td/>
+</tr>
+<tr>
+<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#write-sample-gp">Good Practice 07: Write sample code or tests.</xspecref></td>
+<td>YES</td>
+<td/>
+<td/>
+<td/>
+</tr>
+<tr>
+<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#ref-define-practice">Good Practice 08: When imposing requirements by normative references, address conformance dependencies.</xspecref></td>
+<td><loc href="#references">YES</loc></td>
+<td/>
+<td/>
+<td>1</td>
+</tr>
+<tr>
+<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#define-terms-inline-gp">Good Practice 09: Define unfamiliar terms in-line and consolidate the definitions in a glossary section.</xspecref></td>
+<td><loc href="#definitions">YES</loc></td>
+<td/>
+<td/>
+<td/>
+</tr>
+<tr>
+<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#reuse-terms-gp">Good Practice 10: Use terms already defined without changing their definition.</xspecref></td>
+<td><loc href="#definitions">YES</loc></td>
+<td/>
+<td/>
+<td>2</td>
+</tr>
+<tr>
+<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#formal-language-gp">Good Practice 11: Use formal languages when possible.</xspecref></td>
+<td><loc href="#schemas">YES</loc></td>
+<td/>
+<td/>
+<td/>
+</tr>
+<tr>
+<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#write-assertion-gp">Good Practice 12: Write Test Assertions.</xspecref></td>
+<td/>
+<td>NO</td>
+<td/>
+<td>3</td>
+</tr>
+<tr>
+<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#subdivide-foster-gp">Good Practice 13: Create subdivisions of the technology when warranted.</xspecref></td>
+<td><loc href="#conformance">YES</loc></td>
+<td/>
+<td/>
+<td/>
+</tr>
+<tr>
+<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#rules-profiles-gp">Good Practice 14: If the technology is profiled, define rules for creating new profiles.</xspecref></td>
+<td><loc href="#vocabulary-profiles">YES</loc></td>
+<td/>
+<td/>
+<td/>
+</tr>
+<tr>
+<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#need-option-gp">Good Practice 15:Use optional features as warranted.</xspecref></td>
+<td>YES</td>
+<td/>
+<td/>
+<td/>
+</tr>
+<tr>
+<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#label-options-gp">Good Practice 16: Clearly identify optional features.</xspecref></td>
+<td>YES</td>
+<td/>
+<td/>
+<td/>
+</tr>
+<tr>
+<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#constraints-gp">Good Practice 17: Indicate any limitations or constraints on optional features.</xspecref></td>
+<td>YES</td>
+<td/>
+<td/>
+<td/>
+</tr>
+<tr>
+<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#extensions-prohibited-gp">Good Practice 18: If extensibility is allowed, define an extension mechanism.</xspecref></td>
+<td><loc href="#extension-vocabulary-overview">YES</loc></td>
+<td/>
+<td/>
+<td/>
+</tr>
+<tr>
+<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#breaking-conformance-gp">Good Practice 19: Warn extension creators to create extensions that do not interfere with conformance.</xspecref></td>
+<td><loc href="#extension-vocabulary-overview">YES</loc></td>
+<td/>
+<td/>
+<td/>
+</tr>
+<tr>
+<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#define-error-gp">Good Practice 20: Define error-handling for unknown extensions.</xspecref></td>
+<td><loc href="#conformance-processor">YES</loc></td>
+<td/>
+<td/>
+<td>4</td>
+</tr>
+<tr>
+<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#workaround-gp">Good Practice 21: Explain how to avoid using a deprecated feature.</xspecref></td>
+<td/>
+<td/>
+<td>N/A</td>
+<td>5</td>
+</tr>
+<tr>
+<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#obsolete-gp">Good Practice 22: Identify obsolete features.</xspecref></td>
+<td/>
+<td/>
+<td>N/A</td>
+<td>5</td>
+</tr>
+<tr>
+<td><xspecref href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#error-handling-gp">Good Practice 23: Define an error handling mechanism.</xspecref></td>
+<td><loc href="#reduced-infoset">YES</loc></td>
+<td/>
+<td/>
+<td/>
+</tr>
+</tbody>
+</table>
+<note>
+<olist>
+<item>
+<p>When making normative references to external specifications,
+specific clauses or sections are cited.</p>
+</item>
+<item>
+<p>See also <specref ref="derivation"/>.</p>
+</item>
+<item>
+<p>Test assertions and test suites will be provided prior to entering
+Proposed Recommendation (PR) phase.</p>
+</item>
+<item>
+<p>See criterion #3 in <specref
+ref="conformance-processor"/> and definition of
+TTML <loc href="#doctypes">Abstract Document Instance</loc>.</p>
+</item>
+<item>
+<p>No feature is deprecated or obsoleted by this version of this specification.</p>
+</item>
+</olist>
+</note>
+</div2>
+</inform-div1>
+<inform-div1 id="streaming">
+<head>Streaming TTML Content</head>
+<p>TTML Content is designed to support streamability by implementing the
+following properties:</p>
+<ulist>
+<item>
+<p>can be progressively encoded (i.e., does not require computing
+subsequent data prior to sending current data);</p>
+</item>
+<item>
+<p>can be progressively decoded (i.e., does not require forward
+references, but uses only reverse references when necessary);</p>
+</item>
+<item>
+<p>does not require dereferencing (and subsequent loading) of any
+resources other than TTML Content (i.e., no embedded URIs);</p>
+</item>
+<item>
+<p>does not support alternative content forms (e.g., different
+language, graphics formats, time bases) in a single document;</p>
+</item>
+<item>
+<p>has timing structure compiled into inline format that makes
+possible a temporal ordering of content that follows temporal
+presentation order;</p>
+</item>
+<item>
+<p>constrains content models to prevent arbitrary nested content
+structures;</p>
+</item>
+</ulist>
+<p>One possible means by which TTML Content may be streamed is to
+partition a <emph>Document Instance</emph>'s information set into
+non-overlapping fragments, where one particular fragment, call it the
+<emph>root fragment</emph>, represents the front matter (head) of the
+<emph>Document Instance</emph> as well as its top level structural elements, and
+other fragments represent content whose time intervals are expected to
+be active in parallel.</p>
+<p>In applications that require arbitrary (random) entry into a
+stream, i.e., the property of being able to start reading data at an
+arbitrary data access unit, the root fragment will be repetitively
+transmitted (inserted) into the stream in order to permit a decoder to
+resynchronize and acquire sufficient structural information in the
+information set in order to interpret subsequent content
+fragments.</p>
+<p>An example of such a fragmentation of a <emph>Document Instance</emph> is
+shown in <specref ref="fragment-streaming-graphic"/>.</p>
+<table id="fragment-streaming-graphic" role="example-images">
+<caption>Figure 3 – Fragment Streaming</caption>
+<col/>
+<tbody>
+<tr>
+<td><graphic id="graphic-fragment-streaming" source="images/streaming.png" alt="Fragment Streaming"/></td>
+</tr>
+</tbody>
+</table>
+<note>
+<p>This specification does not define a transport buffer model or a decoder
+capabilities model.</p>
+</note>
+</inform-div1>
+<inform-div1 id="concrete-encoding">
+<head>Concrete Encoding</head>
+<p>In the absence of other requirements, it is recommended that a <emph>Document Instance</emph> be concretely encoded as a
+well-formed XML 1.0 <bibref ref="xml10"/> document using the UTF-8 character encoding.</p>
+</inform-div1>
+<inform-div1 id="time-expression-semantics">
+<head>Time Expression Semantics</head>
+<p>This appendix describes the intended semantics for interpreting time expressions in <emph>Document Instances</emph>.</p>
+<note role="elaboration">
+<p>It is expected that the information in this appendix will be elevated to normative status in a future revision of this specification.</p>
+</note>
+<note role="clarification">
+<p>The phrase <emph>local real time</emph> as used below is intended to model a virtual real time clock in the document processing context, where
+<emph>local</emph> means in the immediate proximity of the implementation of this processing context. The intent
+of defining relationships with this virtual clock is to establish a locally valid physical realization of time for didactic purposes.</p>
+</note>
+<note role="clarification">
+<p>The phrase <emph>play rate</emph> as used below is intended to model a (possibly variable) parameter in the document processing context wherein
+the rate of playback (or interpretation) of time may artificially dilated or narrowed, for example, when slowing down or speeding up the rate of
+playback of a <emph>Related Media Object</emph>. Without loss of generality, the following discussion assumes a fixed play(back) rate. In the case of
+variable play rates, appropriate adjustments may need to be made to the resulting computations.</p>
+</note>
+<div2 id="time-expression-semantics-clock">
+<head>Clock Time Base</head>
+<p>When operating with the <code>clock</code> time base, the following semantics should be applied for interpreting time expressions,
+as defined by <loc href="#timing-value-timeExpression"><timeExpression></loc>, and their relationship to media time and local real time.</p>
+<p>The clock time base <phrase role="strong"><code>C</code></phrase> is related to local real time <phrase role="strong"><code>R</code></phrase>
+expressed in an arbitrary (implementation defined) epoch <phrase role="strong"><code>E</code></phrase>
+as follows:</p>
+<table id="clock-time-and-real-time" role="semantics">
+<caption>TTML Semantics – Clock Time and Real Time Relationship</caption>
+<tbody>
+<tr>
+<td>
+<slist>
+<sitem/>
+<sitem>
+<code>R = C + epochOffset + discontinuityOffset</code>
+</sitem>
+<sitem/>
+<sitem>
+where <code>C ∈ ℜ</code>, <code>0 ≤ C < ∞</code>, <code>C</code> in seconds since the most immediately prior midnight of the reference clock base;
+</sitem>
+<sitem/>
+<sitem>
+<code>epochOffset ∈ ℜ</code>, <code>0 ≤ epochOffset < ∞</code>, <code>epochOffset</code> in seconds, with 0 being the beginning
+of epoch <code>E</code>, and where the value of <code>epochOffset</code> is determined from the computed value of the <code>ttp:clockMode</code> parameter
+as follows:
+</sitem>
+<sitem/>
+<sitem>
+(1) if <code>local</code>, then the difference between the local real time at the most immediately prior local midnight and the local real time
+at the beginning of epoch <code>E</code>, expressed in seconds;
+</sitem>
+<sitem/>
+<sitem>
+(2) if <code>gps</code>, then the difference between the GPS time at the most immediately prior GPS midnight
+and the GPS time at the beginning of epoch <code>E</code>, expressed in seconds;
+</sitem>
+<sitem/>
+<sitem>
+(3) if <code>utc</code>, then the difference between the UTC time at the most immediately prior UTC midnight
+and the UTC time at the beginning of epoch <code>E</code>, expressed in seconds;
+</sitem>
+<sitem/>
+<sitem>
+<code>discontinuityOffset ∈ ℜ</code>, <code>−∞ < discontinuityOffset < ∞</code>, <code>discontinuityOffset</code> in seconds,
+and where the value of <code>discontinuityOffset</code> is equal to the sum of leap seconds (and fractions thereof) that have been added (or subtracted) since the
+most immediately prior midnight in the reference clock base;
+</sitem>
+<sitem/>
+<sitem>
+and <code>epochOffset</code> and <code>discontinuityOffset</code> are determined once and only once prior to the beginning of the <emph>Root Temporal Extent</emph> such that
+during the period between value determination and the beginning of the <emph>Root Temporal Extent</emph> there occurs no local midnight or reference clock base discontinuity.
+</sitem>
+<sitem/>
+</slist>
+</td>
+</tr>
+</tbody>
+</table>
+<p>Time value expressions, as denoted by a <loc href="#timing-value-timeExpression"><timeExpression></loc>, are related to
+clock time <phrase role="strong"><code>C</code></phrase> as follows:</p>
+<table id="time-expressions-and-clock-time" role="semantics">
+<caption>TTML Semantics – Time Expressions and Clock Time Relationship</caption>
+<tbody>
+<tr>
+<td>
+<slist>
+<sitem/>
+<sitem>
+If a time expression uses the <emph>clock-time</emph> form or an <emph>offset-time</emph> form that doesn't use the ticks (<code>t</code>) metric, then:
+</sitem>
+<sitem/>
+<sitem>
+<code>C = 3600 * hours + 60 * minutes + seconds</code>
+</sitem>
+<sitem/>
+<sitem>
+where
+<code>hours</code>,
+<code>minutes</code>,
+<code>seconds</code> components are extracted from time expression if present, or zero if not present.
+</sitem>
+<sitem/>
+<sitem>
+Otherwise, if a time expression uses an <emph>offset-time</emph> form that uses the ticks (<code>t</code>) metric, then:
+</sitem>
+<sitem/>
+<sitem>
+<code>C = ticks / tickRate</code>
+</sitem>
+<sitem/>
+</slist>
+</td>
+</tr>
+</tbody>
+</table>
+<note role="clarification">
+<p>The <emph>frames</emph> and <emph>sub-frames</emph> terms and the frames (<code>f</code>) metric of time expressions do not apply when using
+the <code>clock</code> time base.</p>
+</note>
+<p>The clock time base <phrase role="strong"><code>C</code></phrase> is independent of media time <phrase role="strong"><code>M</code></phrase>:</p>
+<table id="clock-time-and-media-time" role="semantics">
+<caption>TTML Semantics – Clock Time and Media Time Relationship</caption>
+<tbody>
+<tr>
+<td>
+<slist>
+<sitem/>
+<sitem>
+<code>M ¬∝ C</code>
+</sitem>
+<sitem/>
+</slist>
+</td>
+</tr>
+</tbody>
+</table>
+<note role="elaboration">
+<p>That is to say, timing is disconnected from (not necessarily proportional to) media time when
+the <code>clock</code> time base is used. For example, if the media play rate is zero (0), media playback is suspended; however, timing coordinates
+will continue to advance according to the natural progression of clock time in direct proportion to the reference clock base. Furthermore, if the media play rate changes
+during playback, presentation timing is not affected.
+</p>
+</note>
+</div2>
+<div2 id="time-expression-semantics-media">
+<head>Media Time Base</head>
+<p>When operating with the <code>media</code> time base, the following semantics should be applied for interpreting time expressions,
+as defined by <loc href="#timing-value-timeExpression"><timeExpression></loc>, and their relationship to media time and local real time.</p>
+<p>The media time base <phrase role="strong"><code>M</code></phrase> is related to local real time <phrase role="strong"><code>R</code></phrase>
+expressed in an arbitrary (implementation defined) epoch <phrase role="strong"><code>E</code></phrase> as follows:</p>
+<table id="media-time-and-real-time" role="semantics">
+<caption>TTML Semantics – Media Time and Real Time Relationship</caption>
+<tbody>
+<tr>
+<td>
+<slist>
+<sitem/>
+<sitem>
+<code>R = playRate * M + epochOffset</code>
+</sitem>
+<sitem/>
+<sitem>
+where <code>M ∈ ℜ</code>, <code>0 ≤ M < ∞</code>, <code>M</code> in seconds, with 0 corresponding to the beginning of the <emph>Root Temporal Extent</emph>;
+</sitem>
+<sitem/>
+<sitem>
+<code>playRate ∈ ℜ</code>, <code>−∞ < playRate < ∞</code>, <code>playRate</code> is unit-less, and where the value of
+<code>playRate</code> is determined by the document processing context;
+</sitem>
+<sitem/>
+<sitem>
+and <code>epochOffset ∈ ℜ</code>, <code>0 ≤ epochOffset < ∞</code>, <code>epochOffset</code> in seconds, with 0 corresponding to the beginning of
+an epoch <code>E</code>, and where the value of <code>epochOffset</code> is the difference between the local real time at the beginning of the
+<emph>Root Temporal Extent</emph> and the local real time at the the beginning of epoch <code>E</code>, expressed in seconds.
+</sitem>
+</slist>
+</td>
+</tr>
+</tbody>
+</table>
+<p>Time value expressions, as denoted by a <loc href="#timing-value-timeExpression"><timeExpression></loc>, are related to
+media time <phrase role="strong"><code>M</code></phrase> in accordance to the
+<code>ttp:frameRate</code>, <code>ttp:subFrameRate</code>, and <code>ttp:frameRateMultipler</code> parameters as follows:</p>
+<table id="time-expressions-and-media-time" role="semantics">
+<caption>TTML Semantics – Time Expressions and Media Time Relationship</caption>
+<tbody>
+<tr>
+<td>
+<slist>
+<sitem/>
+<sitem>
+If a time expression uses a <emph>clock-time</emph> form or an <emph>offset-time</emph> form that doesn't use the ticks (<code>t</code>) metric, then:
+</sitem>
+<sitem/>
+<sitem>
+<code>
+M = referenceBegin + 3600 * hours + 60 * minutes + seconds + ((frames + (subFrames / subFrameRate)) / effectiveFrameRate)
+</code>
+</sitem>
+<sitem/>
+<sitem>
+where <code>referenceBegin</code> is determined according to whether the nearest ancestor time container employs
+parallel (<code>par</code>) or sequential (<code>seq</code>) semantics: if parallel or if sequential and no prior sibling
+timed element exists, then <code>referenceBegin</code>
+is the media time that corresponds to the beginning of the nearest ancestor time container or
+zero (0) if this time container is the <emph>Root Temporal Extent</emph>; otherwise, if sequential and a prior sibling
+timed element exists, then <code>referenceBegin</code> is the media time that corresponds to the active end of the
+immediate prior sibling timed element;
+</sitem>
+<sitem/>
+<sitem>
+the <code>hours</code>, <code>minutes</code>, <code>seconds</code>, <code>frames</code>, <code>subFrames</code> components
+are extracted from time expression if present, or zero if not present;
+</sitem>
+<sitem/>
+<sitem>
+<code>subFrameRate</code> is the computed value of the <att>ttp:subFrameRate</att> parameter;
+</sitem>
+<sitem/>
+<sitem>
+and <code>effectiveFrameRate</code> (in frames per second) is <code>frameRate * frameRateMultipler</code> where
+<code>frameRate</code> is the computed value of the <att>ttp:frameRate</att> parameter and
+<code>frameRateMultipler</code> is the computed value of the <att>ttp:frameRateMultiplier</att> parameter.
+</sitem>
+<sitem/>
+<sitem>
+Otherwise, if a time expression uses an <emph>offset-time</emph> form that uses the ticks (<code>t</code>) metric, then:
+</sitem>
+<sitem/>
+<sitem>
+<code>
+M = referenceBegin + ticks / tickRate
+</code>
+</sitem>
+<sitem/>
+<sitem>
+where <code>referenceBegin</code> is as described above;
+</sitem>
+<sitem/>
+<sitem>
+the <code>ticks</code> component is extracted from time expression;
+</sitem>
+<sitem/>
+<sitem>
+and <code>tickRate</code> is the computed value of the <att>ttp:tickRate</att> parameter;
+</sitem>
+<sitem/>
+</slist>
+</td>
+</tr>
+</tbody>
+</table>
+<note role="elaboration">
+<p>If the computed <code>frameRateMultipler</code> ratio is not integral, then <code>effectiveFrameRate</code> will be a non-integral rational.</p>
+</note>
+<note role="clarification">
+<p>The above formalisms assumes that the <emph>Root Temporal Extent</emph> corresponds with the beginning of a related media object. If
+this assumption doesn't hold, then an additional offset that accounts for the difference may be introduced when computing media time <code>M</code>.</p>
+</note>
+</div2>
+<div2 id="time-expression-semantics-smpte">
+<head>SMPTE Time Base</head>
+<p>When operating with the <code>smpte</code> time base, the following semantics should be applied for interpreting time expressions,
+as defined by <loc href="#timing-value-timeExpression"><timeExpression></loc>, and their relationship to media time and local real time.</p>
+<p>If the computed value of the <att>ttp:markerMode</att> parameter is <code>discontinuous</code>, then there is no direct relationship between
+time expressions and media time <phrase role="strong"><code>M</code></phrase> or local real time <phrase role="strong"><code>R</code></phrase>. In
+this case, time expressions refer to synchronization events (markers) emitted by the <emph>Document Processing Context</emph> when <emph>SMPTE Time
+Codes</emph> are encountered in the <emph>Related Media Object</emph>.</p>
+<p>Otherwise, if the computed value of the <att>ttp:markerMode</att> parameter is <code>continuous</code>, then the relationships between time expressions and
+local real time and media time are as described below in terms of a <emph>Synthetic SMPTE Document Syncbase</emph>, here referred to as the
+SMPTE time base <phrase role="strong"><code>S</code></phrase>.</p>
+<table id="time-expressions-and-smpte-time" role="semantics">
+<caption>TTML Semantics – Time Expressions and SMPTE Time Relationship</caption>
+<tbody>
+<tr>
+<td>
+<slist>
+<sitem/>
+<sitem>
+<code>S = (countedFrames - droppedFrames + (subFrames / subFrameRate)) / effectiveFrameRate</code>
+</sitem>
+<sitem/>
+<sitem>where</sitem>
+<sitem/>
+<sitem>
+<code>countedFrames = (3600 * hours + 60 * minutes + seconds) * frameRate + frames</code>
+</sitem>
+<sitem/>
+<sitem>
+<code>hours</code>, <code>minutes</code>, <code>seconds</code>, <code>frames</code>, <code>subFrames</code> components
+are extracted from time expression if present, or zero if not present;
+</sitem>
+<sitem/>
+<sitem>
+<code>droppedFrames</code> is computed as follows:
+</sitem>
+<sitem/>
+<sitem>
+1. let <emph>dropMode</emph> be the computed value of the <att>ttp:dropMode</att> parameter;
+</sitem>
+<sitem/>
+<sitem>
+2. if <emph>dropMode</emph> is <code>dropNTSC</code>, let
+<code>droppedFrames = (hours * 54 + floor(minutes - minutes/10)) * 2</code>;
+</sitem>
+<sitem/>
+<sitem>
+3. otherwise, if <emph>dropMode</emph> is <code>dropPAL</code>, let
+<code>droppedFrames = (hours * 27 + floor(minutes/2 - minutes/20)) * 4</code>;
+</sitem>
+<sitem/>
+<sitem>
+4. otherwise, let
+<code>droppedFrames = 0</code>;
+</sitem>
+<sitem/>
+<sitem>
+<code>frameRate</code> is the computed value of the <att>ttp:frameRate</att> parameter;
+</sitem>
+<sitem/>
+<sitem>
+<code>subFrameRate</code> is the computed value of the <att>ttp:subFrameRate</att> parameter;
+</sitem>
+<sitem/>
+<sitem>
+and <code>effectiveFrameRate</code> (in frames per second) is <code>frameRate * frameRateMultipler</code> where
+<code>frameRate</code> is the computed value of the <att>ttp:frameRate</att> parameter and
+<code>frameRateMultipler</code> is the computed value of the <att>ttp:frameRateMultiplier</att> parameter.
+</sitem>
+<sitem/>
+<sitem>
+Notwithstanding the above, if a time expression contains a frame code that is designated as
+dropped according to <specref ref="parameter-attribute-dropMode"/>, then that time expression
+should be considered to be invalid for purposes of validation assessment.
+</sitem>
+<sitem/>
+</slist>
+</td>
+</tr>
+</tbody>
+</table>
+<p>The SMPTE time base <phrase role="strong"><code>S</code></phrase> is related to the media time base <phrase role="strong"><code>M</code></phrase> as follows:</p>
+<table id="smpte-time-and-media-time" role="semantics">
+<caption>TTML Semantics – SMPTE Time and Media Time Relationship</caption>
+<tbody>
+<tr>
+<td>
+<slist>
+<sitem/>
+<sitem>
+<code>M = referenceBegin + S</code>
+</sitem>
+<sitem/>
+<sitem>
+where <code>referenceBegin</code> is determined according to whether the nearest ancestor time container employs
+parallel (<code>par</code>) or sequential (<code>seq</code>) semantics: if parallel or if sequential and no prior sibling
+timed element exists, then <code>referenceBegin</code>
+is the SMPTE time that corresponds to the beginning of the nearest ancestor time container or
+zero (0) if this time container is the <emph>Root Temporal Extent</emph>; otherwise, if sequential and a prior sibling
+timed element exists, then <code>referenceBegin</code> is the SMPTE time that corresponds to the active end of the
+immediate prior sibling timed element;
+</sitem>
+<sitem/>
+</slist>
+</td>
+</tr>
+</tbody>
+</table>
+<p>Given the derived media time base as described above, then
+media time base <phrase role="strong"><code>M</code></phrase> is related to the local real time <phrase role="strong"><code>R</code></phrase>
+as described in <specref ref="time-expression-semantics-media"/> above.</p>
+</div2>
+</inform-div1>
+<inform-div1 id="common-styling">
+<head>Common Caption Style Examples</head>
+<p>This section provides examples of the following common caption styles using TTML Content
+to obtain the desired behavior:</p>
+<ulist>
+<item><p>Pop-On Captions</p></item>
+<item><p>Roll-Up Captions</p></item>
+<item><p>Paint-On Captions</p></item>
+</ulist>
+<div2 id="pop-on-example">
+<head>Pop-On Caption Example</head>
+<p>An example of paint-on captions. In this example, two regions are targeted with alternating, paint-on content, where content is timed
+using explicit sequential time containment rules. Each paragraph is non-overlapping in time and appears in the same single row
+of its targeted region.</p>
+<table id="pop-on-example-1-s" role="example">
+<caption>Example – Pop-On Captions</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">&ttml-ex2-pop-on;</eg>
+</td>
+</tr>
+</tbody>
+</table>
+</div2>
+<div2 id="roll-up-example">
+<head>Roll-Up Caption Example</head>
+<p>An example of roll-up captions. Roll-up effects are achieved by using overlapped time intervals, where zero, one, or two paragraphs appear in the region
+at a given time. Each paragraph consumes a single row (line) of the region since no wrapping occurs. Depending on whether a presentation processor supports
+<loc href="#semantics-smooth-scrolling-recommendation">smooth scrolling between adjacent synchronic intermediate document instances</loc>, the transitions, i.e., moving an
+old paragraph (line) out and a new paragraph (line) in, will be either smooth or discrete.</p>
+<table id="roll-up-example-1-s" role="example">
+<caption>Example – Roll-Up Captions</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">&ttml-ex2-roll-up;</eg>
+</td>
+</tr>
+</tbody>
+</table>
+</div2>
+<div2 id="paint-on-example">
+<head>Paint-On Caption Example</head>
+<p>An example of paint-on captions. Paint-on effects are achieved by using timed <el>span</el> elements in order to expose (paint) inline text units, e.g., words,
+over some time interval. Here, five paragraphs have their individual words sequentially timed in order to paint one new word every second. The end of the active duration of
+each inline element coincides with the end of the <el>div</el> element's parallel time container, so that once a word is painted, it remains in the region (on its rendered line) until the <el>div</el> element's active time interval lapses.</p>
+<table id="paint-on-example-1-s" role="example">
+<caption>Example – Paint-On Captions</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">&ttml-ex2-paint-on;</eg>
+</td>
+</tr>
+</tbody>
+</table>
+</div2>
+</inform-div1>
+&acknowledgements;
+</back>
+</spec>