[ttml10se] resolve open action items and issues in preparation for final review before publishing
authorGlenn Adams <glenn@skynav.com>
Wed, 01 May 2013 22:57:02 -0700
changeset 355 0109adf79055
parent 354 8d252918b6d5
child 356 ac0403c5df63
[ttml10se] resolve open action items and issues in preparation for final review before publishing
ttml10/spec/acknowledgements-current.txt
ttml10/spec/acknowledgements.xml
ttml10/spec/build.xml
ttml10/spec/examples/ex2-paint-on.xml
ttml10/spec/examples/ex2-pop-on.xml
ttml10/spec/examples/ex2-roll-up.xml
ttml10/spec/rnc/schema.zip
ttml10/spec/ttaf1-dfxp.xml
ttml10/spec/xmlspec.xsl
ttml10/spec/xsd/schema.zip
--- a/ttml10/spec/acknowledgements-current.txt	Sat Apr 13 18:15:49 2013 -0600
+++ b/ttml10/spec/acknowledgements-current.txt	Wed May 01 22:57:02 2013 -0700
@@ -1,1 +1,42 @@
-Glenn Adams (Samsung Electronics Co., Ltd.), John Birch (Invited expert), Kees Blom (CWI), Dick Bulterman (CWI), Frans de Jong (Invited expert), Mike Dolan (W3C Invited Experts), Geoff Freed (WGBH National Center for Accessible Media), Sean Hayes (Microsoft Corporation), David Kirby (British Broadcasting Corporation), Andrew Kirkpatrick (Adobe Systems Inc.), Philippe Le Hégaret (W3C/MIT), Matthew May (Adobe Systems Inc.), Soohong Daniel Park (Samsung Electronics Co., Ltd.), Brad Botkin, Donald Evans, Markus Gylling, Markku Hakkinen, Erik Hodge, Masahiko Kaneko, George Kerscher, Chris Lilley, Thierry Michel, Patrick Schmitz, David Singer.
+Glenn Adams,
+Thomas Bause-Mason,
+John Birch,
+Kees Blom,
+Bert Bos,
+Brad Botkin,
+Dick Bulterman,
+Frans de Jong,
+Mike Dolan,
+Martin D&uuml;rst,
+Donald Evans,
+Geoff Freed,
+Al Gilman,
+Giles Godart-Brown,
+Markus Gylling,
+Markku Hakkinen,
+Sean Hayes,
+Erik Hodge,
+Philipp Hoschka,
+Suzi Hyun,
+Michael Jordan,
+Masahiko Kaneko,
+Courtney Kennedy,
+George Kerscher,
+David Kirby,
+Andrew Kirkpatrick,
+Philippe Le Hégaret,
+Chris Lilley,
+Pierre-Anthony Lemieux,
+Jason Livingston,
+Monica Martin,
+Thierry Michel,
+Matthew May,
+Frank Olivier,
+Soohong Daniel Park,
+Silvia Pfeiffer,
+Brian Raymor,
+David Ronca,
+Patrick Schmitz,
+David Singer,
+Craig Smithpeters,
+and Mohamed Zergaoui.
--- a/ttml10/spec/acknowledgements.xml	Sat Apr 13 18:15:49 2013 -0600
+++ b/ttml10/spec/acknowledgements.xml	Wed May 01 22:57:02 2013 -0700
@@ -1,32 +1,15 @@
 <?xml version="1.0" encoding="utf-8"?>
 <inform-div1 id="acknowledgments">
 <head>Acknowledgments</head>
-<p>The editor acknowledges the members of the Timed Text Working
+<p>The editor acknowledges the current and former members of the Timed Text Working
 Group, the members of other W3C Working Groups, and industry experts
 in other forums who have contributed directly or indirectly to the
-process or content of creating this document.</p>
-<p>The current and former members of the Timed Text Working Group are:
-&acknowledgements-current;
-</p>
+process or content of this document as follows:</p>
+<p>&acknowledgements-current;</p>
 <p>The editor wishes to especially acknowledge the following contributions
 by members: Micheal Dolan (SMPTE time codes, streaming; SMPTE liaison), David
 Kirby (introductory example document; SMPTE time codes, descriptive metadata; EBU/AAF liaison), Geoff Freed (styling
 and example images of style properties), Sean Hayes (advanced profile
 concepts, including applicative timing), Eric Hodge (timing),
 Thierry Michel (metadata), and Dave Singer (animation, scrolling).</p>
-<p>The Timed Text Working Group has benefited in its work from the
-participation and contributions of a number of people not currently
-members of the Working Group, including in particular those named
-below. Affiliations given are those current at the time of their work
-with the WG.</p>
-<p>
-John Birch, Screen Subtitling Systems;
-Bert Bos, W3C (chair, CSS WG);
-Martin D&uuml;rst, W3C (leader, I18N Activity);
-Al Gilman (chair, WAI Protocol and Formats WG);
-Philipp Hoschka, W3C (leader, Interaction Domain);
-Chris Lilley, W3C (chair, SVG WG).
-</p>
-<p>The editor wishes to especially acknowledge the following contributions
-by non-members: John Birch (dynamic flow).</p>
 </inform-div1>
--- a/ttml10/spec/build.xml	Sat Apr 13 18:15:49 2013 -0600
+++ b/ttml10/spec/build.xml	Wed May 01 22:57:02 2013 -0700
@@ -20,15 +20,11 @@
 
     <patternset id="escapable">
       <include name="examples/*.xml"/>
-      <include name="rnc/*.rnc"/>
-      <include name="xsd/*.xsd"/>
       <include name="profiles/*.xml"/>
     </patternset>
 
     <patternset id="escaped">
       <include name="examples/*.esc"/>
-      <include name="rnc/*.esc"/>
-      <include name="xsd/*.esc"/>
       <include name="profiles/*.esc"/>
     </patternset>
 
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ttml10/spec/examples/ex2-paint-on.xml	Wed May 01 22:57:02 2013 -0700
@@ -0,0 +1,47 @@
+<tt ttp:cellResolution="60 20" xml:lang="en" xmlns="http://www.w3.org/ns/ttml"
+  xmlns:tts="http://www.w3.org/ns/ttml#parameter" xmlns:tts="http://www.w3.org/ns/ttml#styling">
+  <head>
+    <layout>
+      <region xml:id="r1" tts:color="white" tts:origin="10c 4c" tts:extent="40c 5c"/>
+    </layout>
+  </head>
+  <body>
+    <div begin="0s" end="25s">
+      <p>
+        <span begin="0s">Lorem</span>
+        <span begin="1s">ipsum</span>
+        <span begin="2s">dolor</span>
+        <span begin="3s">sit</span>
+      </p>
+      <p>
+        <span begin="4s">Amet</span>                
+        <span begin="5s">consectetur</span>
+        <span begin="6s">adipiscing</span>
+        <span begin="7s">elit</span>
+      </p>
+      <p>
+        <span begin="8s">Sed</span>
+        <span begin="9s">do</span>
+        <span begin="10s">eiusmod</span>
+        <span begin="11s">tempor</span>
+        <span begin="12s">incididunt </span>
+        <span begin="13s">labore</span>
+     </p>
+     <p>
+        <span begin="14s">et</span>
+        <span begin="15s">dolore</span>
+        <span begin="16s">magna</span>
+        <span begin="17s">aliqua</span>
+      </p>
+      <p>
+        <span begin="18s">Ut</span>
+        <span begin="19s">enim</span>
+        <span begin="20s">ad</span>
+        <span begin="21s">minim</span>
+        <span begin="22s">veniam</span>
+        <span begin="23s">quis,</span>
+        <span begin="24s">nostrud</span>
+      </p>
+    </div>
+  </body>
+</tt>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ttml10/spec/examples/ex2-pop-on.xml	Wed May 01 22:57:02 2013 -0700
@@ -0,0 +1,27 @@
+<tt ttp:cellResolution="60 20" xml:lang="en" xmlns="http://www.w3.org/ns/ttml"
+  xmlns:tts="http://www.w3.org/ns/ttml#parameter" xmlns:tts="http://www.w3.org/ns/ttml#styling">
+  <head>
+    <layout>
+      <region xml:id="r1" tts:color="white" tts:origin="10c 4c" tts:extent="40c 1c"/>
+      <region xml:id="r2" tts:color="yellow" tts:origin="10c 8c" tts:extent="40c 1c"/>
+    </layout>
+  </head>
+  <body>
+    <!-- using default 'par' time containment -->
+    <div region="r1">
+      <p begin="0s" end="4s">Lorem ipsum dolor sit</p
+      <p begin="4s" end="8s">Amet consectetur adipiscing elit</p>
+      <p begin="8s" end="14s">Sed do eiusmod tempor incididunt labore</p>
+      <p begin="14s" end="18s">et dolore magna aliqua</p>
+      <p begin="18s" end="25s">Ut enim ad minim veniam quis, nostrud</p>
+    </div>
+    <!-- using explicit 'seq' time containment -->
+    <div region="r2" timeContainer="seq">
+      <p dur="4s">Lorem ipsum dolor sit</p
+      <p dur="4s">Amet consectetur adipiscing elit</p>
+      <p dur="6s">Sed do eiusmod tempor incididunt labore</p>
+      <p dur="4s">et dolore magna aliqua</p>
+      <p dur="7s">Ut enim ad minim veniam quis, nostrud</p>
+    </div>
+  </body>
+</tt>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ttml10/spec/examples/ex2-roll-up.xml	Wed May 01 22:57:02 2013 -0700
@@ -0,0 +1,17 @@
+<tt ttp:cellResolution="60 20" xml:lang="en" xmlns="http://www.w3.org/ns/ttml"
+  xmlns:tts="http://www.w3.org/ns/ttml#parameter" xmlns:tts="http://www.w3.org/ns/ttml#styling">
+  <head>
+    <layout>
+      <region xml:id="r1" tts:color="white" tts:origin="10c 4c" tts:extent="40c 2c"/>
+    </layout>
+  </head>
+  <body>
+    <div region="r1">
+      <p begin="0s" end="8s">Lorem ipsum dolor sit</p
+      <p begin="4s" end="12s">Amet consectetur adipiscing elit</p>
+      <p begin="8s" end="18s">Sed do eiusmod tempor incididunt labore</p>
+      <p begin="14s" end="25s">et dolore magna aliqua</p>
+      <p begin="18s" end="29s">Ut enim ad minim veniam quis, nostrud</p>
+    </div>
+  </body>
+</tt>
Binary file ttml10/spec/rnc/schema.zip has changed
--- a/ttml10/spec/ttaf1-dfxp.xml	Sat Apr 13 18:15:49 2013 -0600
+++ b/ttml10/spec/ttaf1-dfxp.xml	Wed May 01 22:57:02 2013 -0700
@@ -38,42 +38,9 @@
 <!ENTITY dfxp-ex1-p-0 SYSTEM "./examples/ex1-p-0.xml.esc">
 <!ENTITY dfxp-ex1-x-1 SYSTEM "./examples/ex1-x-1.xml.esc">
 <!ENTITY dfxp-ex1-x-2 SYSTEM "./examples/ex1-x-2.xml.esc">
-<!ENTITY rnc-dfxp-driver SYSTEM "./rnc/ttaf1-dfxp.rnc.esc">
-<!ENTITY rnc-dfxp-animation-module SYSTEM "./rnc/ttaf1-dfxp-animation.rnc.esc">
-<!ENTITY rnc-dfxp-classes-module SYSTEM "./rnc/ttaf1-dfxp-classes.rnc.esc">
-<!ENTITY rnc-dfxp-content-module SYSTEM "./rnc/ttaf1-dfxp-content.rnc.esc">
-<!ENTITY rnc-dfxp-core-attribs-module SYSTEM "./rnc/ttaf1-dfxp-core-attribs.rnc.esc">
-<!ENTITY rnc-dfxp-datatypes-module SYSTEM "./rnc/ttaf1-dfxp-datatypes.rnc.esc">
-<!ENTITY rnc-dfxp-document-module SYSTEM "./rnc/ttaf1-dfxp-document.rnc.esc">
-<!ENTITY rnc-dfxp-head-module SYSTEM "./rnc/ttaf1-dfxp-head.rnc.esc">
-<!ENTITY rnc-dfxp-metadata-module SYSTEM "./rnc/ttaf1-dfxp-metadata.rnc.esc">
-<!ENTITY rnc-dfxp-metadata-items-module SYSTEM "./rnc/ttaf1-dfxp-metadata-items.rnc.esc">
-<!ENTITY rnc-dfxp-metadata-attribs-module SYSTEM "./rnc/ttaf1-dfxp-metadata-attribs.rnc.esc">
-<!ENTITY rnc-dfxp-parameters-module SYSTEM "./rnc/ttaf1-dfxp-parameters.rnc.esc">
-<!ENTITY rnc-dfxp-parameter-items-module SYSTEM "./rnc/ttaf1-dfxp-parameter-items.rnc.esc">
-<!ENTITY rnc-dfxp-parameter-attribs-module SYSTEM "./rnc/ttaf1-dfxp-parameter-attribs.rnc.esc">
-<!ENTITY rnc-dfxp-styling-attribs-module SYSTEM "./rnc/ttaf1-dfxp-styling-attribs.rnc.esc">
-<!ENTITY rnc-dfxp-styling-module SYSTEM "./rnc/ttaf1-dfxp-styling.rnc.esc">
-<!ENTITY rnc-dfxp-layout-module SYSTEM "./rnc/ttaf1-dfxp-layout.rnc.esc">
-<!ENTITY rnc-dfxp-timing-attribs-module SYSTEM "./rnc/ttaf1-dfxp-timing-attribs.rnc.esc">
-<!ENTITY xsd-dfxp-driver SYSTEM "./xsd/ttaf1-dfxp.xsd.esc">
-<!ENTITY xsd-dfxp-animation-module SYSTEM "./xsd/ttaf1-dfxp-animation.xsd.esc">
-<!ENTITY xsd-dfxp-content-module SYSTEM "./xsd/ttaf1-dfxp-content.xsd.esc">
-<!ENTITY xsd-dfxp-core-attribs-module SYSTEM "./xsd/ttaf1-dfxp-core-attribs.xsd.esc">
-<!ENTITY xsd-dfxp-datatypes-module SYSTEM "./xsd/ttaf1-dfxp-datatypes.xsd.esc">
-<!ENTITY xsd-dfxp-document-module SYSTEM "./xsd/ttaf1-dfxp-document.xsd.esc">
-<!ENTITY xsd-dfxp-head-module SYSTEM "./xsd/ttaf1-dfxp-head.xsd.esc">
-<!ENTITY xsd-dfxp-metadata-module SYSTEM "./xsd/ttaf1-dfxp-metadata.xsd.esc">
-<!ENTITY xsd-dfxp-metadata-items-module SYSTEM "./xsd/ttaf1-dfxp-metadata-items.xsd.esc">
-<!ENTITY xsd-dfxp-metadata-attribs-module SYSTEM "./xsd/ttaf1-dfxp-metadata-attribs.xsd.esc">
-<!ENTITY xsd-dfxp-parameters-module SYSTEM "./xsd/ttaf1-dfxp-parameters.xsd.esc">
-<!ENTITY xsd-dfxp-parameter-items-module SYSTEM "./xsd/ttaf1-dfxp-parameter-items.xsd.esc">
-<!ENTITY xsd-dfxp-parameter-attribs-module SYSTEM "./xsd/ttaf1-dfxp-parameter-attribs.xsd.esc">
-<!ENTITY xsd-dfxp-styling-attribs-module SYSTEM "./xsd/ttaf1-dfxp-styling-attribs.xsd.esc">
-<!ENTITY xsd-dfxp-styling-module SYSTEM "./xsd/ttaf1-dfxp-styling.xsd.esc">
-<!ENTITY xsd-dfxp-layout-module SYSTEM "./xsd/ttaf1-dfxp-layout.xsd.esc">
-<!ENTITY xsd-dfxp-timing-attribs-module SYSTEM "./xsd/ttaf1-dfxp-timing-attribs.xsd.esc">
-<!ENTITY xsd-dfxp-xml-attrs-module SYSTEM "./xsd/xml.xsd.esc">
+<!ENTITY dfxp-ex2-pop-on SYSTEM "./examples/ex2-pop-on.xml.esc">
+<!ENTITY dfxp-ex2-roll-up SYSTEM "./examples/ex2-roll-up.xml.esc">
+<!ENTITY dfxp-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">
@@ -640,6 +607,14 @@
 </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>
@@ -745,6 +720,18 @@
 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>
 </glist>
 </div2>
 <div2 id="conventions">
@@ -1043,7 +1030,7 @@
 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
+<p>This specification defines two types of 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>
@@ -2182,6 +2169,15 @@
 requires the use of a monospaced font and a font size whose EM square exactly
 matches the cell size.</p>
 </note>
+<note role="explanation">
+<p>When a <loc href="#style-value-length">&lt;length&gt;</loc> expressed in
+cells applies to a dimension parallel to the inline or block progression dimension,
+a cell's dimension in the inline or block progression dimension applies, respectively.
+For example, if padding (on all four edges) is specified as 0.1c, the cell resolution
+is 20 by 10, and the root container extent is 640 by 480, then, assuming top to bottom,
+left to right writing mode, the start and end padding will be 640 / 20 * 0.1 pixels and the
+before and after padding will be 480 / 10 * 0.1 pixels.</p>
+</note>
 </div3>
 <div3 id="parameter-attribute-clockMode">
 <head>ttp:clockMode</head>
@@ -2432,6 +2428,12 @@
 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 
+<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
@@ -3020,6 +3022,12 @@
 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
+imply 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>
@@ -3111,9 +3119,9 @@
 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.
+intended to produce the same effect as the control character
+<code>CR</code> (U+000D)
+followed by the control code <code>NL</code> (U+000A) when presented on a teletype device.
 Therefore, two <el>br</el> elements in sequence will produce a
 different effect than a single <el>br</el> element.</p>
 </note>
@@ -3972,7 +3980,8 @@
 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>
+<emph>height</emph>, where, if either <emph>width</emph> or <emph>height</emph> is negative or zero, then
+extent must be considered zero in both inline and block progression dimensions.</p>
 <p>If the value of this attribute is <code>auto</code>, then the initial value
 of the style property must be considered to be the same as the root container extent.
 </p>
@@ -6880,6 +6889,11 @@
 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
@@ -7278,6 +7292,7 @@
 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">
@@ -7311,12 +7326,13 @@
 </tr>
 </tbody>
 </table>
+-->
 <p>The result of performing the processing described above will be a sequence of
 <emph>N</emph> intermediate  synchronic
 document instances,
 <emph>DOC<sub><phrase>inter<sub>0</sub></phrase></sub></emph> &hellip;
 <emph>DOC<sub><phrase>inter<sub>N&minus;1</sub></phrase></sub></emph>.</p>
-<note role="elaboration">
+<note id="semantics-smooth-scrolling-recommendation" role="elaboration">
 <p>Where an implementation is able to detect significant similarity between two
 adjacent synchronic document instances,
 <emph>DOC<sub><phrase>inter<sub>N</sub></phrase></sub></emph>
@@ -8628,165 +8644,21 @@
 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>
+<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="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>
+<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-type-registration">
@@ -8826,9 +8698,7 @@
 <gitem>
 <label>charset</label>
 <def>
-<p>If specified, must be <code>utf-8</code> or <code>utf-16</code>; otherwise, if not specified or
-if the specified value is inconsistent with the value of the <code>encoding</code> parameter of the XML Declaration
-(if present), then the semantics of <bibref ref="rfc3023"/> &sect;3.2 apply.</p>
+<p>If specified, the <code>charset</code> parameter must match the XML encoding declaration, or if absent, the actual encoding.</p>
 </def>
 </gitem>
 <gitem>
@@ -8849,7 +8719,7 @@
 <gitem>
 <label>Encoding considerations:</label>
 <def>
-<p>Same for application/xml. See <bibref ref="xml-media"/>, Section
+<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>
@@ -8864,6 +8734,7 @@
 <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
@@ -8871,6 +8742,8 @@
 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>
@@ -8891,7 +8764,9 @@
 <gitem>
 <label>Published specification:</label>
 <def>
-<p><loc
+<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>
@@ -11397,286 +11272,6 @@
 <eg xml:space="preserve">&profile-dfxp-full;</eg>
 </div2>
 </div1>
-<div1 id="concrete-encoding">
-<head>Concrete Encoding</head>
-<p><emph>This appendix is normative.</emph></p>
-<p>In the absence of other requirements, a TTML document should be concretely encoded as a
-well-formed XML 1.0 <bibref ref="xml10"/> document using the UTF-8 character encoding.</p>
-</div1>
-
-<div1 id="time-expression-semantics">
-<head>Time Expression Semantics</head>
-<p><emph>This appendix is normative.</emph></p>
-
-<div2 id="time-expression-semantics-clock">
-<head>Clock Time Base</head>
-<p>When operating with the <code>clock</code> time base, the following semantics apply for interpreting time expressions,
-as defined by <loc href="#timing-value-timeExpression">&lt;timeExpression&gt;</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 &ndash; Clock Time and Real Time Relationship</caption>
-<tbody>
-<tr>
-<td>
-<slist>
-<sitem/>
-<sitem>
-<code role="formulae">R = C + epochOffset + discontinuityOffset</code>
-</sitem>
-<sitem/>
-<sitem/>
-<sitem>
-where <code>C &isin; &real;</code>, <code>0 &le; C &lt; &infin;</code>, <code>C</code> in seconds since the most immediately prior midnight of the reference clock base;
-</sitem>
-<sitem/>
-<sitem>
-<code>epochOffset &isin; &real;</code>, <code>0 &le; epochOffset &lt; &infin;</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 &isin; &real;</code>, <code>&minus;&infin; &lt; discontinuityOffset &lt; &infin;</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">&lt;timeExpression&gt;</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 &ndash; Time Expressions and Clock Time Relationship</caption>
-<tbody>
-<tr>
-<td>
-<slist>
-<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/>
-<sitem>
-<code role="formulae">
-C = 3600 * hours + 60 * minutes + seconds
-</code>
-</sitem>
-<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/>
-<sitem>
-<code role="formulae">
-C = ticks / tickRate
-</code>
-</sitem>
-<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 &ndash; Clock Time and Media Time Relationship</caption>
-<tbody>
-<tr>
-<td>
-<slist>
-<sitem/>
-<sitem>
-<code role="formulae">M &not;&prop; C</code>
-</sitem>
-<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 apply for interpreting time expressions,
-as defined by <loc href="#timing-value-timeExpression">&lt;timeExpression&gt;</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 &ndash; Media Time and Real Time Relationship</caption>
-<tbody>
-<tr>
-<td>
-<slist>
-<sitem/>
-<sitem>
-<code role="formulae">R = playRate * M + epochOffset</code>
-</sitem>
-<sitem/>
-<sitem/>
-<sitem>
-where <code>M &isin; &real;</code>, <code>0 &le; M &lt; &infin;</code>, <code>M</code> in seconds, with 0 corresponding to the beginning of the <emph>Root Temporal Extent</emph>;
-</sitem>
-<sitem/>
-<sitem>
-<code>playRate &isin; &real;</code>, <code>&minus;&infin; &lt; playRate &lt; &infin;</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 &isin; &real;</code>, <code>0 &le; epochOffset &lt; &infin;</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">&lt;timeExpression&gt;</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 &ndash; Time Expressions and Media Time Relationship</caption>
-<tbody>
-<tr>
-<td>
-<slist>
-<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/>
-<sitem>
-<code role="formulae">
-M = containerBegin + 3600 * hours + 60 * minutes + seconds + ((frames + (subFrames / subFrameRate)) / effectiveFrameRate)
-</code>
-</sitem>
-<sitem/>
-<sitem/>
-<sitem>
-where <code>containerBegin</code> is the media time that corresponds to the beginning of the nearest ancestor time container or
-zero (0) if this time container is the <emph>Root Temporal Extent</emph>;
-</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/>
-<sitem>
-<code role="formulae">
-M = containerBegin + ticks / tickRate
-</code>
-</sitem>
-<sitem/>
-<sitem/>
-<sitem>
-where <code>containerBegin</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 apply for interpreting time expressions,
-as defined by <loc href="#timing-value-timeExpression">&lt;timeExpression&gt;</loc>, and their relationship to media time and local real time.</p>
-</div2>
-
-</div1>
 
 <div1 id="references">
 <head>References</head>
@@ -13473,6 +13068,392 @@
 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 TTML document 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 TTML documents.</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 speeding up or slowing down 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">&lt;timeExpression&gt;</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 &ndash; Clock Time and Real Time Relationship</caption>
+<tbody>
+<tr>
+<td>
+<slist>
+<sitem>
+<code>R = C + epochOffset + discontinuityOffset</code>
+</sitem>
+<sitem/>
+<sitem>
+where <code>C &isin; &real;</code>, <code>0 &le; C &lt; &infin;</code>, <code>C</code> in seconds since the most immediately prior midnight of the reference clock base;
+</sitem>
+<sitem/>
+<sitem>
+<code>epochOffset &isin; &real;</code>, <code>0 &le; epochOffset &lt; &infin;</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 &isin; &real;</code>, <code>&minus;&infin; &lt; discontinuityOffset &lt; &infin;</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">&lt;timeExpression&gt;</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 &ndash; Time Expressions and Clock Time Relationship</caption>
+<tbody>
+<tr>
+<td>
+<slist>
+<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 &ndash; Clock Time and Media Time Relationship</caption>
+<tbody>
+<tr>
+<td>
+<slist>
+<sitem>
+<code>M &not;&prop; 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">&lt;timeExpression&gt;</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 &ndash; Media Time and Real Time Relationship</caption>
+<tbody>
+<tr>
+<td>
+<slist>
+<sitem>
+<code>R = playRate * M + epochOffset</code>
+</sitem>
+<sitem/>
+<sitem>
+where <code>M &isin; &real;</code>, <code>0 &le; M &lt; &infin;</code>, <code>M</code> in seconds, with 0 corresponding to the beginning of the <emph>Root Temporal Extent</emph>;
+</sitem>
+<sitem/>
+<sitem>
+<code>playRate &isin; &real;</code>, <code>&minus;&infin; &lt; playRate &lt; &infin;</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 &isin; &real;</code>, <code>0 &le; epochOffset &lt; &infin;</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">&lt;timeExpression&gt;</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 &ndash; Time Expressions and Media Time Relationship</caption>
+<tbody>
+<tr>
+<td>
+<slist>
+<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 = containerBegin + 3600 * hours + 60 * minutes + seconds + ((frames + (subFrames / subFrameRate)) / effectiveFrameRate)
+</code>
+</sitem>
+<sitem/>
+<sitem>
+where <code>containerBegin</code> is the media time that corresponds to the beginning of the nearest ancestor time container or
+zero (0) if this time container is the <emph>Root Temporal Extent</emph>;
+</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 = containerBegin + ticks / tickRate
+</code>
+</sitem>
+<sitem/>
+<sitem>
+where <code>containerBegin</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">&lt;timeExpression&gt;</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 &ndash; Time Expressions and SMPTE Time Relationship</caption>
+<tbody>
+<tr>
+<td>
+<slist>
+<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 &ndash; SMPTE Time and Media Time Relationship</caption>
+<tbody>
+<tr>
+<td>
+<slist>
+<sitem>
+<code>M = containerBegin + S</code>
+</sitem>
+<sitem/>
+<sitem>
+where <code>containerBegin</code> is the SMPTE time that corresponds to the beginning of the nearest ancestor time container or
+zero (0) if this time container is the <emph>Root Temporal Extent</emph>;
+</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
@@ -13484,15 +13465,52 @@
 </ulist>
 <div2 id="pop-on-example">
 <head>Pop-On Caption Example</head>
-<p>&tbd;</p>
+<p>An example of paint-on captions. In this example, two regions are targeted with the same content, where in the first region,
+content is timed using the default parallel time containment rules, and in the second, content is timed using explicit sequential
+time containment rules. Each paragraph is non-overlapping in time and appears in the same single row of the respective region.</p>
+<table id="pop-on-example-1-s" role="example">
+<caption>Example &ndash; Pop-On Captions</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">&dfxp-ex2-pop-on;</eg>
+</td>
+</tr>
+</tbody>
+</table>
 </div2>
 <div2 id="roll-up-example">
 <head>Roll-Up Caption Example</head>
-<p>&tbd;</p>
+<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 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 &ndash; Roll-Up Captions</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">&dfxp-ex2-roll-up;</eg>
+</td>
+</tr>
+</tbody>
+</table>
 </div2>
 <div2 id="paint-on-example">
 <head>Paint-On Caption Example</head>
-<p>&tbd;</p>
+<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 parapraphs 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 &ndash; Paint-On Captions</caption>
+<tbody>
+<tr>
+<td>
+<eg xml:space="preserve">&dfxp-ex2-paint-on;</eg>
+</td>
+</tr>
+</tbody>
+</table>
 </div2>
 </inform-div1>
 &acknowledgements;
--- a/ttml10/spec/xmlspec.xsl	Sat Apr 13 18:15:49 2013 -0600
+++ b/ttml10/spec/xmlspec.xsl	Wed May 01 22:57:02 2013 -0700
@@ -1364,6 +1364,11 @@
   <!-- note: a note about the spec -->
   <xsl:template match="note">
     <div xmlns="http://www.w3.org/1999/xhtml" class="note">
+      <xsl:if test="@id">
+        <xsl:attribute name="id">
+          <xsl:value-of select="@id"/>
+        </xsl:attribute>
+      </xsl:if>
       <p class="prefix">
         <b>Note:</b>
       </p>
Binary file ttml10/spec/xsd/schema.zip has changed