Merge
authorpal@sandflow.org
Fri, 11 Jul 2014 18:43:53 -0700
changeset 652 05fcca85e051
parent 651 c6af2ff635f9 (current diff)
parent 648 c83001e0c5e2 (diff)
child 653 f994e1cbd7cd
Merge
Binary file ttml2/spec/rnc/schema.zip has changed
--- a/ttml2/spec/rnc/ttml2-content.rnc	Fri Jul 11 18:43:33 2014 -0700
+++ b/ttml2/spec/rnc/ttml2-content.rnc	Fri Jul 11 18:43:53 2014 -0700
@@ -40,6 +40,7 @@
 TTAF.div.content =
   (TTAF.Metadata.class*,
    TTAF.Animation.class*,
+   TTAF.Layout.class?,
    (TTAF.Block.class | TTAF.div.content.extra)*)
 
 # p - paragraph
@@ -60,6 +61,7 @@
 TTAF.p.content =
   (TTAF.Metadata.class*,
    TTAF.Animation.class*,
+   TTAF.Layout.class?,
    (TTAF.Inline.class |
     TTAF.p.content.extra)*)
 
--- a/ttml2/spec/rnc/ttml2-layout.rnc	Fri Jul 11 18:43:33 2014 -0700
+++ b/ttml2/spec/rnc/ttml2-layout.rnc	Fri Jul 11 18:43:53 2014 -0700
@@ -47,6 +47,11 @@
    TTAF.styling.style*,
    TTAF.layout.region.content.extra*)
 
+TTAF.Layout.extra = empty
+TTAF.Layout.class |=
+  TTAF.layout.region |
+  TTAF.Layout.extra
+
 # .......................................................................
 # .......................................................................
 # .......................................................................
--- a/ttml2/spec/ttml2-changes.html	Fri Jul 11 18:43:33 2014 -0700
+++ b/ttml2/spec/ttml2-changes.html	Fri Jul 11 18:43:53 2014 -0700
@@ -85,25 +85,25 @@
   ttp:extension element in order to express superset/subset relations between an
   extension and another feature or extension.
 
-* In 6.2, add 'ttp:contentProfiles parameter attribute.
+* In 6.2, add 'ttp:contentProfiles' parameter attribute.
 
-* In 6.2, add 'ttp:contentProfileCombination parameter attribute.
+* In 6.2, add 'ttp:contentProfileCombination' parameter attribute.
 
 * In 6.2, add 'ttp:inferProcessorProfileMethod' parameter attribute.
 
 * In 6.2, add 'ttp:inferProcessorProfileSource' parameter attribute.
 
-* In 6.2, add 'ttp:permitFeatureNarrowing parameter attribute.
+* In 6.2, add 'ttp:permitFeatureNarrowing' parameter attribute.
 
-* In 6.2, add 'ttp:permitFeatureWidening parameter attribute.
+* In 6.2, add 'ttp:permitFeatureWidening' parameter attribute.
 
-* In 6.2, add 'ttp:processorProfiles parameter attribute.
+* In 6.2, add 'ttp:processorProfiles' parameter attribute.
 
-* In 6.2, add 'ttp:processorProfileCombination parameter attribute.
+* In 6.2, add 'ttp:processorProfileCombination' parameter attribute.
 
 * In 6.2, add 'ttp:version' parameter attribute.
 
-* In 6.2.7, deprecate 'ttp:markerMode parameter attribute, requiring it be
+* In 6.2.7, deprecate 'ttp:markerMode' parameter attribute, requiring it be
   ignored (and treated as if 'discontinuous' were specified) unless either
   #markerMode or #markerMode-discontinuous feature is required by the effective
   processor profile.
@@ -114,21 +114,27 @@
 * In 7.1.2, add new 'animation' container element as optional child of 'head'
   element.
 
-* In 7.1.4, specify semantics of using tts:extent and/or tts:origin with 'div'
+* In 7.1.4, extend content model of 'div' to permit zero or one 'region' element
+  child (in the Layout.class) prior to any content element.
+
+* In 7.1.4, specify semantics of using 'tts:extent' and/or 'tts:origin' with 'div'
   element to imply an anonymous inline region.
 
-* In 7.1.5, specify semantics of using tts:extent and/or tts:origin with p
+* In 7.1.5, extend content model of 'p' to permit zero or one 'region' element
+  child (in the Layout.class) prior to any content element.
+
+* In 7.1.5, specify semantics of using 'tts:extent' and/or 'tts:origin' with 'p'
   element to imply an anonymous inline region.
 
-* In 7.1.7, add region attribute to 'br' element.
+* In 7.1.7, add 'region' attribute to 'br' element.
 
 * In 7.1.7, add timing attributes to 'br' element.
 
 * In 8.1.2, add Metadata.class children to 'style' element.
 
-* In 8.2, add tts:border styling attribute.
+* In 8.2, add 'tts:border' styling attribute.
 
-* In 8.2, add tts:textOrientation styling attribute.
+* In 8.2, add 'tts:textOrientation' styling attribute.
 
 * In 8.2.1, add 'set' element to enumeration of element types to which 'style'
   attribute applies.
@@ -172,6 +178,12 @@
 * In 8.4.4, add semantics for determining specified style set and computed
   style set for 'set' element.
 
+* In 9.3.1, qualify default region in terms of out-of-line region(s).
+
+* In 9.3.2, define inline region processing semantics.
+
+* In 10.2.3, specify that a duration (@dur) of zero is explicitly permitted.
+
 * In 11, add new sub-section (11.3) defining animation specific value
   expressions.
 
@@ -215,7 +227,7 @@
 <span class="strong">Editorial Changes</span>
 
 * In 2.2, add definitions: "anonymous profile", "baseline profile",
-  "content profile", "designated profile", "enclosing document
+  "content profile", "default profile", "designated profile", "enclosing document
   instance", "extension specification", "feature specification",
   "fragment identifier", "implied inline region", "inline animation",
   "inline region", "nested profile", "nesting profile", "non-nesting profile",
@@ -223,6 +235,9 @@
   "profile designator", "profile fragment identifier", "profile specification",
   "top-level profile", "undesignated profile".
 
+* In 2.2, refine definition of "out-of-line region" to better account for
+  default region implication.
+
 * In 2.3, add convention for deprecated syntactic features (using distinct
   background color).
 
@@ -241,7 +256,8 @@
 * In 9.2.1, add 'br' element to list of elements on which region attribute may
   be specified.
 
-* In 9.3, add "Inline Regions" sub-section.
+* In 9.3, insert "Inline Regions" as sub-section 9.3.2, renumbering following
+  sub-sections.
 
 * In Appendix G, add (normative) reference to RFC2396 (URI).
 
--- a/ttml2/spec/ttml2.html	Fri Jul 11 18:43:33 2014 -0700
+++ b/ttml2/spec/ttml2.html	Fri Jul 11 18:43:53 2014 -0700
@@ -82,9 +82,9 @@
 .obsoleted { background-color: #f26d7d }
 .reqattr { font-weight: bold }
 .optattr { font-style: italic }
-</style><link rel="stylesheet" type="text/css" href="https://www.w3.org/StyleSheets/TR/W3C-ED.css"></head><body>Last Modified: $Date: 2014/05/26 01:06:55 $<div id="revisions"></div><div class="head">
+</style><link rel="stylesheet" type="text/css" href="https://www.w3.org/StyleSheets/TR/W3C-ED.css"></head><body>Last Modified: $Date: 2014/07/10 15:05:04 $<div id="revisions"></div><div class="head">
 <h1><a id="title"></a>Timed Text Markup Language 2 (TTML2)</h1>
-<h2><a id="w3c-doctype"></a>Editors' copy $Date: 2014/05/26 01:06:55 $ @@ @@@@ @@@@</h2><dl><dt>This version:</dt><dd>
+<h2><a id="w3c-doctype"></a>Editors' copy $Date: 2014/07/10 15:05:04 $ @@ @@@@ @@@@</h2><dl><dt>This version:</dt><dd>
 <a href="ttml2.html">ttml2.html</a>
 </dd><dt>Latest version:</dt><dd><a href="https://dvcs.w3.org/hg/ttml/raw-file/default/ttml2/spec/ttml2.html?content-type=text/html;charset=utf-8">https://dvcs.w3.org/hg/ttml/raw-file/default/ttml2/spec/ttml2.html?content-type=text/html;charset=utf-8</a></dd><dt>Previous version:</dt><dd>
 <a href="http://www.w3.org/TR/2010/REC-ttaf1-dfxp-20101118/">http://www.w3.org/TR/2010/REC-ttaf1-dfxp-20101118/</a>
@@ -437,11 +437,11 @@
 H <a href="#other-references">Other References</a> (Non-Normative)<br>
 I <a href="#requirements">Requirements</a> (Non-Normative)<br>
 J <a href="#derivation">Vocabulary Derivation</a> (Non-Normative)<br>
-&nbsp;&nbsp;&nbsp;&nbsp;J.1 <a href="#d3e24469">Element Derivation</a><br>
-&nbsp;&nbsp;&nbsp;&nbsp;J.2 <a href="#d3e24986">Attribute Derivation</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;J.1 <a href="#d3e25166">Element Derivation</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;J.2 <a href="#d3e25683">Attribute Derivation</a><br>
 K <a href="#qa">QA Framework Compliance</a> (Non-Normative)<br>
-&nbsp;&nbsp;&nbsp;&nbsp;K.1 <a href="#d3e25979">Requirements</a><br>
-&nbsp;&nbsp;&nbsp;&nbsp;K.2 <a href="#d3e26143">Guidelines</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;K.1 <a href="#d3e26676">Requirements</a><br>
+&nbsp;&nbsp;&nbsp;&nbsp;K.2 <a href="#d3e26840">Guidelines</a><br>
 L <a href="#streaming">Streaming TTML Content</a> (Non-Normative)<br>
 M <a href="#concrete-encoding">Concrete Encoding</a><br>
 N <a href="#time-expression-semantics">Time Expression Semantics</a><br>
@@ -663,7 +663,10 @@
 axis, where the column and row counts are determined by the <code>ttp:cellResolution</code> parameter attribute.</p></dd><dt class="label"><a id="terms-content-element"></a>[content element]</dt><dd><p>Any of the element types defined by the <a href="#element-vocab-type-content">Content Module</a>.</p></dd><dt class="label"><a id="terms-content-processor"></a>[content processor]</dt><dd><p>A processing system capable of importing (receiving) Timed Text Markup Language
 content for the purpose of transforming, presenting, or otherwise processing the content.</p></dd><dt class="label"><a id="terms-content-profile"></a>[content profile]</dt><dd><p>A collection of <a href="#terms-feature">features</a> and <a href="#terms-extension">extensions</a> that must not, must, or may be employed by
 Timed Text Markup Language content.</p><p></p></dd><dt class="label"><a id="terms-content-region"></a>[content region]</dt><dd><p>A logical region into which rendered content is placed when modeling or
-performing presentation processing.</p></dd><dt class="label"><a id="terms-designated-profile"></a>[designated profile]</dt><dd><p>A <a href="#terms-profile">profile</a> that is associated with a <a href="#terms-profile-designator">profile designator</a> by
+performing presentation processing.</p></dd><dt class="label"><a id="terms-default-region"></a>[default region]</dt><dd><p>A default <a href="#terms-out-of-line-region">out-of-line region</a> that is implied in the absence of
+an explicitly specified out-of-line <a href="#layout-vocabulary-region"><code>region</code></a> element, i.e.,
+when no <a href="#layout-vocabulary-region"><code>region</code></a> element is specified as a child of
+a <a href="#layout-vocabulary-layout"><code>layout</code></a> element.</p></dd><dt class="label"><a id="terms-designated-profile"></a>[designated profile]</dt><dd><p>A <a href="#terms-profile">profile</a> that is associated with a <a href="#terms-profile-designator">profile designator</a> by
 means of a <code>designator</code> attribute or prose text in a specification of profile.</p></dd><dt class="label"><a id="terms-document-instance"></a>[document instance]</dt><dd><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
@@ -690,15 +693,19 @@
 future revision of this specification).</p></dd><dt class="label"><a id="terms-feature-specification"></a>[feature specification]</dt><dd><p>A specification of a constraint or requirement that relates to an
 <a href="#terms-feature">feature</a>, typically expressed by
 an <a href="#parameter-vocabulary-feature"><code>ttp:feature</code></a> element.</p></dd><dt class="label"><a id="terms-fragment-identifier"></a>[fragment identifier]</dt><dd><p>A syntactic expression that adheres to the fragment identifer syntax defined by <a href="#uri">[URI]</a>,
-Section 4.1.</p></dd><dt class="label"><a id="terms-implied-inline-region"></a>[implied inline region]</dt><dd><p>An anonymous (unidentified) <a href="#terms-inline-region">inline region</a> that is implied in the context of a block level content element
+Section 4.1.</p></dd><dt class="label"><a id="terms-implied-inline-region"></a>[implied inline region]</dt><dd><p>An anonymous (unidentified) <a href="#terms-inline-region">inline region</a> that is implied in the context of a block level
+<a href="#terms-content-element">content element</a>
 due the presence of a <a href="#style-attribute-extent"><code>tts:extent</code></a> or <a href="#style-attribute-origin"><code>tts:origin</code></a>
-style attribute on the content element.</p></dd><dt class="label"><a id="terms-inline-animation"></a>[inline animation]</dt><dd><p>An <a href="#animation-vocabulary-animate"><code>animate</code></a> or <a href="#animation-vocabulary-set"><code>set</code></a> element
+style attribute on the <a href="#terms-content-element">content element</a>.</p></dd><dt class="label"><a id="terms-inline-animation"></a>[inline animation]</dt><dd><p>An <a href="#animation-vocabulary-animate"><code>animate</code></a> or <a href="#animation-vocabulary-set"><code>set</code></a> element
 that is defined inline as an immediate child of
 a <a href="#terms-content-element">content element</a> or <a href="#layout-vocabulary-region"><code>region</code></a> element targetted by the animation.
 There is a one-to-one relation between
 an inline animation element and its parent <a href="#terms-content-element">content element</a> or <a href="#layout-vocabulary-region"><code>region</code></a> element.
-An inline animation does not specify an <code>xlink:href</code> attribute.</p></dd><dt class="label"><a id="terms-inline-region"></a>[inline region]</dt><dd><p>A <a href="#layout-vocabulary-region"><code>region</code></a> element that is defined inline as an immediate child of
-a <a href="#terms-content-element">content element</a> to be selected into (targetted to) the region.
+An inline animation does not specify an <code>xlink:href</code> attribute.</p></dd><dt class="label"><a id="terms-inline-region"></a>[inline region]</dt><dd><p>A <a href="#terms-region">region</a> that is defined in an inline manner with respect to some
+<a href="#terms-content-element">content element</a>  to be selected into (targetted to) the region.
+An inline region is specified either explicitly by a <a href="#layout-vocabulary-region"><code>region</code></a> element child of
+a <a href="#terms-content-element">content element</a> or implicitly by specifying a <a href="#style-attribute-extent">tts:extent</a>
+or <a href="#style-attribute-origin">tts:origin</a> style attribute on a <a href="#terms-content-element">content element</a>.
 There is a one-to-one relation between an inline <a href="#layout-vocabulary-region"><code>region</code></a> element and its
 parent <a href="#terms-content-element">content element</a>. An inline region is assigned its parent element's time interval as its active
 time interval. No <code>region</code> attribute makes reference to an inline region.</p></dd><dt class="label"><a id="terms-nested-profile"></a>[nested profile]</dt><dd><p>A constituent <a href="#terms-profile">profile</a> of a <a href="#terms-nesting-profile">nesting profile</a>, i.e., one of the
@@ -712,13 +719,16 @@
 of a <a href="#terms-document-instance">document instance</a>, and specifies an <code>xlink:href</code> attribute
 that associates it with the element to be animated. There is a one-to-one relation between
 an out-of-line animation element and a <a href="#terms-content-element">content element</a> or
-<a href="#layout-vocabulary-region"><code>region</code></a> element.</p></dd><dt class="label"><a id="terms-out-of-line-region"></a>[out-of-line region]</dt><dd><p>A <a href="#layout-vocabulary-region"><code>region</code></a> element that is defined out-of-line from
-the <a href="#terms-content-element">content element(s)</a> to be selected into (targetted to) the region. An out-of-line region appears
-as a child of a <a href="#layout-vocabulary-layout"><code>layout</code></a> element in the header
+<a href="#layout-vocabulary-region"><code>region</code></a> element.</p></dd><dt class="label"><a id="terms-out-of-line-region"></a>[out-of-line region]</dt><dd><p>A <a href="#terms-region">region</a> that is defined in an out-of-line manner from
+the <a href="#terms-content-element">content element(s)</a> to be selected into (targetted to) the region. An out-of-line region is
+specified using a <a href="#layout-vocabulary-region"><code>region</code></a> element
+child of a <a href="#layout-vocabulary-layout"><code>layout</code></a> element in the header
 (<a href="#document-structure-vocabulary-head"><code>head</code></a> element)
 of a <a href="#terms-document-instance">document instance</a>, and specifies an <code>xml:id</code> attribute
 in order to allow <a href="#terms-content-element">content elements</a> to be associated with the region by means of a
-<code>region</code> attribute. There is a one-to-many relationship between an out-of-line region
+<code>region</code> attribute. A <a href="#terms-default-region">default out-of-line region</a> is implied if no
+<a href="#terms-out-of-line-region">out-of-line region</a> is specified explicitly.
+There is a one-to-many relationship between an out-of-line region
 and the <a href="#terms-content-element">content element(s)</a> to be selected into (targetted to) the region.</p></dd><dt class="label"><a id="terms-presentation-processor"></a>[presentation processor]</dt><dd><p>A <a href="#terms-content-processor">content processor</a> which purpose is to layout, format, and render,
 i.e., to present, <a href="#terms-timed-text-markup-language">Timed Text Markup Language</a> content by applying the presentation semantics
 defined in this specification.</p></dd><dt class="label"><a id="terms-processor"></a>[processor]</dt><dd><p>See <a href="#terms-content-processor">content processor</a>.</p></dd><dt class="label"><a id="terms-processor-profile"></a>[processor profile]</dt><dd><p>A collection of <a href="#terms-feature">features</a> and <a href="#terms-extension">extensions</a> that must or may be implemented (supported) by
@@ -792,8 +802,13 @@
 defined in <a href="#xsd-2">[XML Schema Part 2]</a>, a hyperlink to its definition
 therein is given.</p><p>An information item depicted with a <span class="deprecated">light yellow orange</span> background color is deprecated (e.g.,
 the <span class="deprecated">tiny</span> value of the <code>size</code> attribute shown above).
+An information item that is <span class="deprecated">deprecated</span> may but should not appear in a TTML document instance,
+and a validating processor should report a warning if it does appear.
 An information item depicted with a <span class="obsoleted">light magenta red</span> background color is obsoleted (e.g.,
-the <span class="obsoleted">micro</span> value of the <code>size</code> attribute shown above). These designations of the item
+the <span class="obsoleted">micro</span> value of the <code>size</code> attribute shown above).
+An information item that is <span class="obsoleted">obsoleted</span> must not appear in a TTML document instance,
+and a validating processor should report an error if it does appear.
+These designations of an item
 are also explicitly called out in specification text.</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
@@ -837,7 +852,7 @@
 should satisfy the web content accessibility guidelines specified by
 <a href="#wcag">[WCAG]</a>.</p></li></ol></div><div class="div2">
 <h3><a id="conformance-processor"></a>3.2 Processor Conformance</h3><div class="div3">
-<h4><a id="conformance-generic-processor"></a>3.2.1 Generic Processor Conformance</h4><table border="1" class="ednote" summary="Editorial note: Profile Processing"><tr class="ednote-r1"><td align="left" valign="top"><b>Editorial note: Profile Processing</b></td><td align="right" valign="top">2014-05-21</td></tr><tr class="ednote-r2"><td colspan="2" align="left" valign="top">Add requirement to invoke <span class="strong">abort if unsupported processor profile</span> procedure.</td></tr></table><p></p><table border="1" class="ednote" summary="Editorial note: Validation Processing"><tr class="ednote-r1"><td align="left" valign="top"><b>Editorial note: Validation Processing</b></td><td align="right" valign="top">2014-05-21</td></tr><tr class="ednote-r2"><td colspan="2" align="left" valign="top">Add requirement to invoke validation processing procedure.</td></tr></table><p>A TTML <a href="#terms-content-processor">content processor</a> conforms to this specification if the following
+<h4><a id="conformance-generic-processor"></a>3.2.1 Generic Processor Conformance</h4><table border="1" class="ednote" summary="Editorial note: Profile Processing"><tr class="ednote-r1"><td align="left" valign="top"><b>Editorial note: Profile Processing</b></td><td align="right" valign="top">2014-05-21</td></tr><tr class="ednote-r2"><td colspan="2" align="left" valign="top">Add requirement to invoke <span class="strong">abort if unsupported processor profile</span> procedure.</td></tr></table><p></p><table border="1" class="ednote" summary="Editorial note: Validation Processing"><tr class="ednote-r1"><td align="left" valign="top"><b>Editorial note: Validation Processing</b></td><td align="right" valign="top">2014-05-21</td></tr><tr class="ednote-r2"><td colspan="2" align="left" valign="top">Add requirement to invoke validation processing procedure. Add and use definition of 'validating processor'.</td></tr></table><p>A TTML <a href="#terms-content-processor">content processor</a> conforms to this specification if the following
 generic processor criteria are
 satisfied:</p><ol class="enumar"><li><p>The processor provides at least one mechanism for notionally
 instantiating a <a href="#terms-reduced-xml-infoset">reduced xml infoset</a>
@@ -1114,28 +1129,28 @@
 of the profile designated by this attribute;
 </p></li><li><p>otherwise, the <a href="#terms-effective-processor-profile">effective processor profile</a> is the
 result of performing the <a href="#semantics-procedure-construct-inferred-processor-profile"><span class="strong">construct inferred processor profile</span></a>
-procedure;</p></li></ol></dd><dt class="label"><a id="semantics-procedure-construct-inferred-processor-profile"></a>[construct inferred processor profile]</dt><dd><ol class="enumar"><li><p>set <em>ECP</em> to the <a href="#terms-effective-content-profile">effective content profile</a>;</p></li><li><p>if <em>ECP</em> is not <code>null</code>, then perform the following steps:</p><ol class="enumla"><li><p>if the computed value of the <code>ttp:inferProcessorProfileSource</code> attribute is <code>combine</code>, then
+procedure;</p></li></ol></dd><dt class="label"><a id="semantics-procedure-construct-inferred-processor-profile"></a>[construct inferred processor profile]</dt><dd><ol class="enumar"><li><p>set <em>ECP</em> to the <a href="#terms-effective-content-profile">effective content profile</a>;</p></li><li><p>if <em>ECP</em> is not <code>null</code>, then perform the following steps:</p><ol class="enumla"><li><p>if the computed value of the <code>ttp:inferProcessorProfileSource</code> parameter is <code>combine</code>, then
 the <a href="#terms-inferred-processor-profile">inferred processor profile</a> is the result of applying the
 <a href="#semantics-procedure-infer-processor-profile"><span class="strong">infer processor profile</span></a> function
-to the combined profile specification set of <em>ECP</em>;</p></li><li><p>otherwise, if the computed value of the <code>ttp:inferProcessorProfileSource</code> attribute is <code>first</code>, then
+to the combined profile specification set of <em>ECP</em>;</p></li><li><p>otherwise, if the computed value of the <code>ttp:inferProcessorProfileSource</code> parameter is <code>first</code>, then
 the <a href="#terms-inferred-processor-profile">inferred processor profile</a> is the first inferred processor profile, <em>IPP</em>, produced by applying the
 <a href="#semantics-procedure-infer-processor-profile"><span class="strong">infer processor profile</span></a> function
 to the combined profile specification set of each constituent of <em>ECP</em> such that
 <em>IPP</em> is supported by the <a href="#terms-content-processor">content processor</a>;</p></li></ol></li><li><p>otherwise, the <a href="#terms-inferred-processor-profile">inferred processor profile</a> is the
 result of performing the <a href="#semantics-procedure-construct-default-processor-profile"><span class="strong">construct default processor profile</span></a>
 procedure;</p></li></ol></dd><dt class="label"><a id="semantics-procedure-infer-processor-profile"></a>[infer processor profile](content profile <em>CP</em>)</dt><dd><ol class="enumar"><li><p>initialize inferred processor profile <em>IPP</em> to the empty combined profile specification set;</p></li><li><p>for each profile specification, <em>S</em>, in the combined profile specification set of content profile <em>CP</em>:</p><ol class="enumla"><li><p>map content profile specification <em>S</em> to processor profile specification <em>S'&nbsp;</em> according to the computed
-value of the <code>ttp:inferPresentationProfileMethod</code> attribute and <a href="#infer-processor-profile-method-table"><b>Table 6-2 – Infer Processor Profile Method</b></a>;</p></li><li><p>add <em>S'&nbsp;</em> to the combined profile specification set of <em>IPP</em>;</p></li></ol></li><li><p>return <em>IPP</em> as the inferred processor profile;</p></li></ol></dd><dt class="label"><a id="semantics-procedure-construct-default-processor-profile"></a>[construct default processor profile]</dt><dd><ol class="enumar"><li><p>if the <a href="#terms-document-interchange-context">document interchange context</a> is associated with a
+value of the <code>ttp:inferPresentationProfileMethod</code> parameter and <a href="#infer-processor-profile-method-table"><b>Table 6-2 – Infer Processor Profile Method</b></a>;</p></li><li><p>add <em>S'&nbsp;</em> to the combined profile specification set of <em>IPP</em>;</p></li></ol></li><li><p>return <em>IPP</em> as the inferred processor profile;</p></li></ol></dd><dt class="label"><a id="semantics-procedure-construct-default-processor-profile"></a>[construct default processor profile]</dt><dd><ol class="enumar"><li><p>if the <a href="#terms-document-interchange-context">document interchange context</a> is associated with a
 <a href="#terms-processor-profile">processor profile</a> or with a <a href="#terms-content-profile">content profile</a>
 from which a <a href="#terms-processor-profile">processor profile</a> can be inferred, then the
 <a href="#terms-default-processor-profile">default processor profile</a> is that <a href="#terms-processor-profile">processor profile</a>;</p></li><li><p>otherwise, if the <a href="#terms-content-processor">content processor</a> is primarily characterized as a
 <a href="#terms-presentation-processor">presentation processor</a>, then:</p><ol class="enumla"><li><p>if the <a href="#parameter-attribute-version"><code>ttp:version</code></a> is not specified on the root <code>tt</code> element or
-if its computed value is <code>1</code> (one), then the <a href="#terms-default-processor-profile">default processor profile</a> is
+if its computed value of this parameter is <code>1</code> (one), then the <a href="#terms-default-processor-profile">default processor profile</a> is
 the <a href="#semantics-profile-state-profile">profile</a> constructed by interning the DFXP Presentation profile
 (<code>http://www.w3.org/ns/ttml/profile/dfxp-presentation</code>);</p></li><li><p>otherwise, the <a href="#terms-default-processor-profile">default processor profile</a> is
 the <a href="#semantics-profile-state-profile">profile</a> constructed by interning the TTML2 Presentation profile
 (<code>http://www.w3.org/ns/ttml/profile/ttml2-presentation</code>);</p></li></ol></li><li><p>otherwise, if the <a href="#terms-content-processor">content processor</a> is primarily characterized as a
 <a href="#terms-transformation-processor">transformation processor</a>, then:</p><ol class="enumla"><li><p>if the <a href="#parameter-attribute-version"><code>ttp:version</code></a> is not specified on the root <code>tt</code> element or
-if its computed value is <code>1</code> (one), then the <a href="#terms-default-processor-profile">default processor profile</a> is
+if its computed value of this parameter is <code>1</code> (one), then the <a href="#terms-default-processor-profile">default processor profile</a> is
 the <a href="#semantics-profile-state-profile">profile</a> constructed by interning the DFXP Transformation profile
 (<code>http://www.w3.org/ns/ttml/profile/dfxp-transformation</code>);</p></li><li><p>otherwise, the <a href="#terms-default-processor-profile">default processor profile</a> is
 the <a href="#semantics-profile-state-profile">profile</a> constructed by interning the TTML2 Transformation profile
@@ -1531,16 +1546,16 @@
 </p></li><li><p>if the value is <code>required</code>, then perform the following steps:</p><ol class="enumar"><li><p>if the feature is implemented or otherwise supported by a processor, then continue processing
 the document;</p></li><li><p>otherwise, if
 (1) the <code>extends</code> attribute is specified on the root <code>tt</code> element,
-(2) the computed value of the <code>extends</code> attribute designates a feature that is implemented or otherwise supported by
+(2) the value of the <code>extends</code> attribute designates a feature that is implemented or otherwise supported by
 a processor, and
 (3) the computed value of the <a href="#parameter-attribute-permitFeatureNarrowing"><code>ttp:permitFeatureNarrowing</code></a>
-parameter attribute of the root <code>tt</code> element is not <code>false</code>,
+parameter property of the root <code>tt</code> element is not <code>false</code>,
 then continue processing the document;</p></li><li><p>otherwise, if
 (1) the <code>restricts</code> attribute is specified on the root <code>tt</code> element,
-(2) the computed value of the <code>restricts</code> attribute designates a feature that is implemented or otherwise supported by
+(2) the value of the <code>restricts</code> attribute designates a feature that is implemented or otherwise supported by
 a processor, and
 (3) the computed value of the <a href="#parameter-attribute-permitFeatureWidening"><code>ttp:permitFeatureWidening</code></a>
-parameter attribute of the root <code>tt</code> element is not <code>false</code>,
+parameter property of the root <code>tt</code> element is not <code>false</code>,
 then continue processing the document;</p></li><li><p>otherwise, abort processing the document unless overridden by the end-user or some implementation specific parameter
 traceable to an end-user or to a user or system configuration setting.</p></li></ol></li><li><p>
 if the value attribute is not specified, then the feature specification
@@ -1666,16 +1681,16 @@
 </p></li><li><p>if the value is <code>required</code>, then perform the following steps:</p><ol class="enumar"><li><p>if the extension is implemented or otherwise supported by a processor, then continue processing
 the document;</p></li><li><p>otherwise, if
 (1) the <code>extends</code> attribute is specified on the root <code>tt</code> element,
-(2) the computed value of the <code>extends</code> attribute designates an extension that is implemented or otherwise supported by
+(2) the value of the <code>extends</code> attribute designates an extension that is implemented or otherwise supported by
 a processor, and
 (3) the computed value of the <a href="#parameter-attribute-permitFeatureNarrowing"><code>ttp:permitFeatureNarrowing</code></a>
-parameter attribute of the root <code>tt</code> element is not <code>false</code>,
+parameter property of the root <code>tt</code> element is not <code>false</code>,
 then continue processing the document;</p></li><li><p>otherwise, if
 (1) the <code>restricts</code> attribute is specified on the root <code>tt</code> element,
-(2) the computed value of the <code>restricts</code> attribute designates an extension that is implemented or otherwise supported by
+(2) the value of the <code>restricts</code> attribute designates an extension that is implemented or otherwise supported by
 a processor, and
 (3) the computed value of the <a href="#parameter-attribute-permitFeatureWidening"><code>ttp:permitFeatureWidening</code></a>
-parameter attribute of the root <code>tt</code> element is not <code>false</code>,
+parameter property of the root <code>tt</code> element is not <code>false</code>,
 then continue processing the document;</p></li><li><p>otherwise, abort processing the document unless overridden by the end-user or some implementation specific parameter
 traceable to an end-user or to a user or system configuration setting.</p></li></ol></li><li><p>
 if the value attribute is not specified, then the extension specification
@@ -2231,7 +2246,7 @@
 other types of processing, e.g., presentation or transformation processing.</p><p>If this parameter's value is <code>required</code>, then, a <a href="#terms-validating-content-processor">validating content processor</a>
 must perform validation processing on a TTML <a href="#terms-document-instance">document instance</a> prior to performing
 other types of processing, e.g., presentation or transformation processing.</p><p>If validation processing is performed on a TTML <a href="#terms-document-instance">document instance</a> and validation fails, then the computed value of
-the <code>ttp:validationAction</code> attribute is used to determine what action to take before performing further processing.</p><p>If not specified, the value of this parameter must be considered
+the <code>ttp:validationAction</code> parameter property is used to determine what action to take before performing further processing.</p><p>If not specified, the value of this parameter must be considered
 to be <code>optional</code>.</p><p>A <code>ttp:validation</code> attribute is considered to be significant only
 when specified on the <code>tt</code> element.</p></div><div class="div3">
 <h4><a id="parameter-attribute-validationAction"></a>6.2.21 ttp:validationAction</h4><p>The <code>ttp:validationAction</code> attribute is used to specify what action is to be taken
@@ -2246,8 +2261,9 @@
 </td></tr></tbody></table><p>If this parameter's value is <code>abort</code>, then, a <a href="#terms-validating-content-processor">validating content processor</a>
 must abort processing of a TTML <a href="#terms-document-instance">document instance</a> when validation processing fails.</p><p>If this parameter's value is <code>warn</code>, then, a <a href="#terms-validating-content-processor">validating content processor</a>
 should warn the end-user when validation processing fails, and, give the end-user the option to continue or abort processing.</p><p>If this parameter's value is <code>ignore</code>, then, a <a href="#terms-validating-content-processor">validating content processor</a>
-should not abort and should not warn the end-user when validation processing fails.</p><p>If not specified, the value of this parameter must be considered
-to be <code>abort</code>.</p><p>A <code>ttp:validationAction</code> attribute is considered to be significant only
+should not abort and should not warn the end-user when validation processing fails.</p><p>If not specified, the value of this parameter is determined as follows:
+if the computed value of the <a href="#parameter-attribute-validation"><code>ttp:validation</code></a> parameter property is <code>optional</code>,
+then the value must be considered to be <code>warn</code>; otherwise, it must be considered to be <code>abort</code>.</p><p>A <code>ttp:validationAction</code> attribute is considered to be significant only
 when specified on the <code>tt</code> element.</p></div><div class="div3">
 <h4><a id="parameter-attribute-version"></a>6.2.22 ttp:version</h4><p>The <code>ttp:version</code> attribute is used to specify which version of the
 <a href="#terms-timed-text-markup-language">Timed Text Markup Language</a>
@@ -2401,8 +2417,8 @@
 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
-elements in the <code>Layout.class</code> element group,
+followed by zero or one
+element in the <code>Layout.class</code> element group,
 followed by
 zero or more
 <code>div</code> or 
@@ -2423,7 +2439,7 @@
   {<em>any attribute in TT Metadata namespace</em>}
   {<em>any attribute in TT Style namespace</em>}
   {<em>any attribute not in default or any TT namespace</em>}&gt;
-  <em>Content:</em> <a href="#element-vocab-group-table">Metadata.class</a>*, <a href="#element-vocab-group-table">Animation.class</a>*, <a href="#element-vocab-group-table">Layout.class</a>*, <a href="#element-vocab-group-table">Block.class</a>*
+  <em>Content:</em> <a href="#element-vocab-group-table">Metadata.class</a>*, <a href="#element-vocab-group-table">Animation.class</a>*, <a href="#element-vocab-group-table">Layout.class</a>?, <a href="#element-vocab-group-table">Block.class</a>*
 &lt;/div&gt;
 </pre></div>
 </td></tr></tbody></table><p>An author may associate a set of style properties with a <code>div</code> element by means of either
@@ -2445,8 +2461,8 @@
 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
-elements in the <code>Layout.class</code> element group,
+followed by zero or one
+element in the <code>Layout.class</code> element group,
 followed by
 zero or more intermixed
 <code>span</code> elements,
@@ -2468,7 +2484,7 @@
   {<em>any attribute in TT Metadata namespace</em>}
   {<em>any attribute in TT Style namespace</em>}
   {<em>any attribute not in default or any TT namespace</em>}&gt;
-  <em>Content:</em> <a href="#element-vocab-group-table">Metadata.class</a>*, <a href="#element-vocab-group-table">Animation.class</a>*, <a href="#element-vocab-group-table">Layout.class</a>*, <a href="#element-vocab-group-table">Inline.class</a>*
+  <em>Content:</em> <a href="#element-vocab-group-table">Metadata.class</a>*, <a href="#element-vocab-group-table">Animation.class</a>*, <a href="#element-vocab-group-table">Layout.class</a>?, <a href="#element-vocab-group-table">Inline.class</a>*
 &lt;/p&gt;
 </pre></div>
 </td></tr></tbody></table><p>An author may associate a set of style properties with a
@@ -2739,7 +2755,7 @@
 <code>none</code> were specified.</p><p>If a computed value of the border style associated with this attribute is not supported,
 then a <a href="#terms-presentation-processor">presentation processor</a> must use the value <code>solid</code>.</p><p>If no border color is specified in the value of the <code>tts:border</code> property,
 then the border color must be interpreted as if a color equal
-to the computed value of the element's <code>tts:color</code> property were specified.</p><p>The <code>tts:border</code> style is illustrated by the following example.</p><a id="style-attribute-border-example-1"></a><table class="example"><caption>Example Fragment – Background Color</caption><tbody><tr><td>
+to the computed value of the element's <code>tts:color</code> style property were specified.</p><p>The <code>tts:border</code> style is illustrated by the following example.</p><a id="style-attribute-border-example-1"></a><table class="example"><caption>Example Fragment – Border</caption><tbody><tr><td>
 <div class="exampleInner"><pre>
 &lt;region xml:id="r1"&gt;
   &lt;style tts:extent="306px 114px"/&gt;
@@ -2966,7 +2982,10 @@
 value of this attribute.</p><p>If a computed value of the property associated with this attribute is not supported,
 then a <a href="#terms-presentation-processor">presentation processor</a> must use the closest supported value.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>In this context, the phrase <em>closest supported value</em> means the value for which the Euclidean distance between
 the computed extent and the supported extent is minimized. If there are multiple closest supported values equally distant from
-the computed value, then the value most distant from [0,0], i.e., of greatest extent, is used.</p></div><p>The <code>tts:extent</code> style is illustrated by the following example.</p><a id="style-attribute-extent-example-1"></a><table class="example"><caption>Example Fragment – Extent</caption><tbody><tr><td>
+the computed value, then the value most distant from [0,0], i.e., of greatest extent, is used.</p><p>Unlike other style attributes, the rule for resolving <em>closest supported value</em> for the <code>tts:extent</code> attribute
+makes use of the nearest larger rather than nearest smaller supported distance. The rationale for this difference in treatment is
+that use of a larger extent ensures that the affected content will be contained in the region area without causing region overflow,
+while use of a smaller extent makes region overflow more likely.</p></div><p>The <code>tts:extent</code> style is illustrated by the following example.</p><a id="style-attribute-extent-example-1"></a><table class="example"><caption>Example Fragment – Extent</caption><tbody><tr><td>
 <div class="exampleInner"><pre>
 &lt;region xml:id="r1"&gt;
   &lt;style <span class="strong">tts:extent="330px 122px"</span>/&gt;
@@ -4647,10 +4666,11 @@
 implementation is permitted provided that the externally observable
 results are consistent with the results produced by this model.
 </p><div class="div3">
-<h4><a id="semantics-default-region"></a>9.3.1 Default Region</h4><p>If a <a href="#terms-document-instance">document instance</a> does not specify a
-<a href="#layout-vocabulary-region"><code>region</code></a> element,
-then a <em>default region</em> is implied with the following characteristics:</p><ul><li><p>the identity of the default region is considered to be anonymous;</p></li><li><p>the extent of the default region is the same as the extent of the <a href="#terms-root-container-region">root container region</a>;</p></li><li><p>the temporal interval of the default region is the same as the interval defined by the <a href="#terms-root-temporal-extent">root temporal extent</a>;</p></li></ul><p>Furthermore, if no <a href="#layout-vocabulary-region"><code>region</code></a> element is
-specified, then the <a href="#layout-attribute-region"><code>region</code></a> attribute must
+<h4><a id="semantics-default-region"></a>9.3.1 Default Region</h4><p>If a <a href="#terms-document-instance">document instance</a> does not specify an
+<a href="#terms-out-of-line-region">out-of-line region</a>,
+then a <em>default region</em> is implied with the following characteristics:</p><ul><li><p>the identity of the default region is considered to be an anonymous <a href="#terms-out-of-line-region">out-of-line region</a>;</p></li><li><p>the extent of the default region is the same as the extent of the <a href="#terms-root-container-region">root container region</a>;</p></li><li><p>the temporal interval of the default region is the same as the interval defined by the <a href="#terms-root-temporal-extent">root temporal extent</a>;</p></li></ul><p>Furthermore, if no
+<a href="#terms-out-of-line-region">out-of-line region</a> is specified, then the
+<a href="#layout-attribute-region"><code>region</code></a> attribute must
 not be specified on any <a href="#terms-content-element">content element</a> in the <a href="#terms-document-instance">document instance</a>.</p><p>If a default region is implied for a given <a href="#terms-document-instance">document instance</a>, then
 the <a href="#document-structure-vocabulary-body"><code>body</code></a> element
 is implicitly targeted to (associated with) the default region.</p><p>When implying a default region, the <a href="#terms-document-instance">document instance</a> is to be
@@ -4673,8 +4693,131 @@
 </td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><p>In the above example, a default <code>region</code> element and <code>region</code>
 attribute are implied. In addition, a <code>layout</code> container element is implied for
 the implied <code>region</code> element.</p></div></div><div class="div3">
-<h4><a id="semantics-inline-regions"></a>9.3.2 Inline Regions</h4><p><span class="tbd">To Be Defined</span></p><p></p><table border="1" class="ednote" summary="Editorial note: Multiple Region Reference Semantics"><tr class="ednote-r1"><td align="left" valign="top"><b>Editorial note: Multiple Region Reference Semantics</b></td><td align="right" valign="top">2014-03-27</td></tr><tr class="ednote-r2"><td colspan="2" align="left" valign="top">Define semantics related to use combination of inline regions and reference to out-of-line region by same content element.
-See also editorial note <span class="strong">Inline Region Association</span> below under <span class="strong">[associate region]</span>.</td></tr></table></div><div class="div3">
+<h4><a id="semantics-inline-regions"></a>9.3.2 Inline Regions</h4><p>An <a href="#terms-inline-region">inline region</a> is a syntactic mechanism for specifying a
+<a href="#terms-region">region</a> in a way that minimizes the syntactic distance between a region
+specification and the content that references that region. Semantically, each
+<a href="#terms-inline-region">inline region</a> is equivalent to specifying a unique
+<a href="#terms-out-of-line-region">out-of-line region</a> referenced implicitly only by the
+<a href="#terms-content-element">content element</a> in whose context the
+<a href="#terms-inline-region">inline region</a> is specified (or implied).</p><p>An <a href="#terms-inline-region">inline region</a> is declared in one of two ways:
+(1) by specifying a <a href="#style-attribute-extent"><code>tts:extent</code></a> or
+<a href="#style-attribute-origin"><code>tts:origin</code></a> style attribute on
+a <a href="#terms-content-element">content element</a>
+in the <a href="#element-vocab-group-table">Block.class</a> element group, or
+(2) by specifying an explicit  <a href="#layout-vocabulary-region"><code>region</code></a> element
+child of a <a href="#terms-content-element">content element</a>
+in the <a href="#element-vocab-group-table">Block.class</a> element group. The
+former is referred to as an <em>implied inline region specification</em>,
+the latter as an <em>explicit inline region specification</em>; furthermore, the former is considered
+to be a syntactic shorthand for the latter, and is processed by converting it into the latter as
+described below.</p><p>Inline regions are processed in accordance with the procedure
+<span class="strong"><a href="#procedure-process-inline-regions">[process inline regions]</a></span>, which
+entails first generating implied inline regions, and then generating out-of-line regions that correspond with implied
+or explicit inline regions. This latter procedure additionally binds content elements associated with inline regions
+to the corresponding generated out-of-line regions.</p><div class="note"><p class="prefix"><b>Note:</b></p><p>A <a href="#terms-content-element">content element</a> can only be associated with a single
+<a href="#terms-region">region</a>. Consequently, if a <a href="#terms-content-element">content element</a>
+specifies a <a href="#layout-attribute-region"><code>region</code></a> attribute, then any <em>implied inline region specification</em>
+or <em>explicit inline region specification</em> is ignored. If the <a href="#terms-content-element">content element</a> does not specify a
+<a href="#layout-attribute-region"><code>region</code></a> attribute, but it includes
+both an <em>implied inline region specification</em> and an <em>explicit inline region specification</em>,
+then the former is ignored in favor of the latter.</p></div><dl><dt class="label"><a id="procedure-process-inline-regions"></a>[process inline regions]</dt><dd><ol class="enumar"><li><p>perform procedure <span class="strong"><a href="#procedure-generate-inline-regions">[generate inline regions]</a></span>;</p></li><li><p>perform procedure <span class="strong"><a href="procedure-generate-out-of-line-regions">[generate out-of-line regions]</a></span>;</p></li></ol></dd><dt class="label"><a id="procedure-generate-inline-regions"></a>[generate inline regions]</dt><dd><p>For each <a href="#terms-content-element">content element</a> <em>B</em>
+in the <a href="#element-vocab-group-table">Block.class</a> element group,
+perform the following ordered steps:</p><ol class="enumar"><li><p>if the <code>[attributes]</code> information item property of <em>B</em> contains
+neither <a href="#style-attribute-extent"><code>tts:extent</code></a> nor
+<a href="#style-attribute-origin"><code>tts:origin</code></a> style attribute, then exit this procedure;</p></li><li><p>if the <code>[attributes]</code> information item property of <em>B</em> contains a
+<a href="#layout-attribute-region"><code>region</code></a> attribute, then exit this procedure</p></li><li><p>if the <code>[children]</code> information item property of <em>B</em> contains a
+<a href="#layout-vocabulary-region"><code>region</code></a> element, then exit this procedure;</p></li><li><p>create an empty <a href="#layout-vocabulary-region"><code>region</code></a> element <em>R</em>,
+initialized as follows:</p><ul><li><p>if the <code>[attributes]</code> information item property of <em>B</em> contains a
+<a href="#style-attribute-extent"><code>tts:extent</code></a> attribute,
+then copy that attribute to the <code>[attributes]</code> information item property of <em>R</em>;
+otherwise, add a <a href="#style-attribute-extent"><code>tts:extent</code></a> attribute with value <code>auto</code>
+to the <code>[attributes]</code> information item property of <em>R</em>;</p></li><li><p>if the <code>[attributes]</code> information item property of <em>B</em> contains a
+<a href="#style-attribute-origin"><code>tts:origin</code></a> attribute,
+then copy that attribute to the <code>[attributes]</code> information item property of <em>R</em>;
+otherwise, add a <a href="#style-attribute-origin"><code>tts:origin</code></a> attribute with value <code>auto</code>
+to the <code>[attributes]</code> information item property of <em>R</em>;</p></li></ul></li><li><p>insert <em>R</em> into the <code>[children]</code> information item property of <em>B</em>
+such that <em>R</em> immediately precedes the first <a href="#terms-content-element">content element</a>
+child of <em>B</em>, or, if none is present, then <em>R</em> is the last child element of <em>B</em>;</p></li><li><p>remove the <a href="#style-attribute-extent"><code>tts:extent</code></a> and
+<a href="#style-attribute-origin"><code>tts:origin</code></a> style attributes, if present, from the
+<code>[attributes]</code> information item property of <em>B</em>;</p></li></ol></dd><dt class="label"><a id="procedure-generate-out-of-line-regions"></a>[generate out-of-line regions]</dt><dd><p>For each <a href="#terms-content-element">content element</a> <em>B</em>
+in the <a href="#element-vocab-group-table">Block.class</a> element group,
+perform the following ordered steps:</p><ol class="enumar"><li><p>if the <code>[attributes]</code> information item property of <em>B</em> contains a
+<a href="#layout-attribute-region"><code>region</code></a> attribute, then exit this procedure</p></li><li><p>if the <code>[children]</code> information item property of <em>B</em> does not contain
+a <a href="#layout-vocabulary-region"><code>region</code></a> element <em>R</em>, then exit this procedure;</p></li><li><p>create an empty <a href="#layout-vocabulary-region"><code>region</code></a> element <em>R'&nbsp;</em>,
+initialized as follows:</p><ul><li><p>set the <code>[children]</code> information item property of <em>R'&nbsp;</em> to a deep copy of
+the <code>[children]</code> information item property of <em>R</em>;</p></li><li><p>set the <code>[attributes]</code> information item property of <em>R'&nbsp;</em> to a deep copy of
+the <code>[attributes]</code> information item property of <em>R</em>;</p></li><li><p>if the <code>[attributes]</code> information item property of <em>R'&nbsp;</em> does not include
+an <code>xml:id</code> attribute, then add an implied <code>xml:id</code> attribute with a generated value
+<em>ID</em> that is unique within the scope of the TTML <a href="#terms-document-instance">document instance</a>;
+otherwise, let <em>ID</em> be the value of the <code>xml:id</code> attribute of <em>R'&nbsp;</em>;</p></li><li><p>if present, remove the following attributes from the <code>[attributes]</code> information item property of <em>R'&nbsp;</em>:
+<code>begin</code>,
+<code>dur</code>, and
+<code>end</code>;</p></li><li><p>add a <code>begin</code> attribute to the <code>[attributes]</code> information item property of <em>R'&nbsp;</em> with
+a value equivalent to the computed begin time of <em>B</em> within the root temporal extent;</p></li><li><p>add a <code>dur</code> attribute to the <code>[attributes]</code> information item property of <em>R'&nbsp;</em> with
+a value equivalent to the computed simple duration of <em>B</em>;</p></li></ul></li><li><p>if the TTML <a href="#terms-document-instance">document instance</a> does not have a
+<a href="#document-structure-vocabulary-head"><code>head</code></a> element, then insert an empty
+<a href="#document-structure-vocabulary-head"><code>head</code></a> element as the first child of
+the <a href="#document-structure-vocabulary-tt"><code>tt</code></a> element;</p></li><li><p>if the <a href="#document-structure-vocabulary-head"><code>head</code></a> element does not have
+a <a href="#layout-vocabulary-layout"><code>layout</code></a> child element, then insert an empty
+<a href="#layout-vocabulary-layout"><code>layout</code></a> element immediately after a
+<a href="#styling-vocabulary-styling"><code>styling</code></a> element, if present, and immediately before an
+<a href="#animation-vocabulary-styling"><code>animation</code></a> element, if present, or as the last child of
+the <a href="#document-structure-vocabulary-head"><code>head</code></a> element if neither are present;</p></li><li><p>append <em>R'&nbsp;</em> to the <code>[children]</code> information item property of the
+<a href="#layout-vocabulary-layout"><code>layout</code></a> element child of the 
+<a href="#document-structure-vocabulary-head"><code>head</code></a> element;</p></li><li><p>add a <a href="#layout-attribute-region"><code>region</code></a> attribute with value <em>ID</em> to the <code>[attributes]</code> information
+item property of <em>B</em>;</p></li><li><p>remove <em>R</em> from the <code>[children]</code> information item property of <em>B</em>;</p></li></ol></dd></dl><p>The use of an <em>implied inline region specification</em> and the resulting generated inline region is shown by the following two example documents.</p><a id="semantics-inline-region-input-example-1-implied"></a><table class="example"><caption>Example – Implied Inline Region Specification</caption><tbody><tr><td>
+<div class="exampleInner"><pre>
+&lt;tt xml:lang="" xmlns="http://www.w3.org/ns/ttml"&gt;
+  &lt;head/&gt;
+  &lt;body&gt;
+    &lt;div <span class="strong">tts:extent="540px 100px" tts:origin="50px 339px"</span>&gt;
+      &lt;p&gt;Some Content&lt;/p&gt;
+    &lt;div/&gt;
+  &lt;body/&gt;
+&lt;/tt&gt;
+</pre></div>
+</td></tr></tbody></table><p></p><a id="semantics-generated-out-of-line-region-example-1-implied"></a><table class="example"><caption>Example – Generated Inline Region</caption><tbody><tr><td>
+<div class="exampleInner"><pre>
+&lt;tt xml:lang="" xmlns="http://www.w3.org/ns/ttml"&gt;
+  &lt;head/&gt;
+  &lt;body&gt;
+    &lt;div&gt;
+      <span class="strong">&lt;region tts:extent="540px 100px" tts:origin="50px 339px"/&gt;</span>
+      &lt;p&gt;Some Content&lt;/p&gt;
+    &lt;div/&gt;
+  &lt;body/&gt;
+&lt;/tt&gt;
+</pre></div>
+</td></tr></tbody></table><p>The use of an <em>explicit inline region specification</em> or a generated inline region that derives from
+an <em>implicit inline region specification</em>
+and the resulting generated out-of-line region is shown by the following two example documents.</p><a id="semantics-inline-region-input-example-2-explicit"></a><table class="example"><caption>Example – Explicit or Generated Inline Region Specification</caption><tbody><tr><td>
+<div class="exampleInner"><pre>
+&lt;tt xml:lang="" xmlns="http://www.w3.org/ns/ttml"&gt;
+  &lt;head/&gt;
+  &lt;body&gt;
+    &lt;div begin="5s" dur="10s"&gt;
+      <span class="strong">&lt;region tts:extent="540px 100px" tts:origin="50px 339px"/&gt;</span>
+      &lt;p&gt;Some Content&lt;/p&gt;
+    &lt;div/&gt;
+  &lt;body/&gt;
+&lt;/tt&gt;
+</pre></div>
+</td></tr></tbody></table><p></p><a id="semantics-generated-out-of-line-region-example-2-explicit"></a><table class="example"><caption>Example – Generated Out-of-line Region</caption><tbody><tr><td>
+<div class="exampleInner"><pre>
+&lt;tt xml:lang="" xmlns="http://www.w3.org/ns/ttml"&gt;
+  &lt;head&gt;
+    <span class="strong">&lt;layout&gt;
+      &lt;region xml:id="region3451" begin="5s" dur="10s" tts:extent="540px 100px" tts:origin="50px 339px"/&gt;
+    &lt;/layout&gt;</span>
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div begin="5s" dur="10s" <span class="strong">region="region3451"</span>&gt;
+      &lt;p&gt;Some Content&lt;/p&gt;
+    &lt;div/&gt;
+  &lt;body/&gt;
+&lt;/tt&gt;
+</pre></div>
+</td></tr></tbody></table></div><div class="div3">
 <h4><a id="semantics-region-layout-step-1"></a>9.3.3 Intermediate Synchronic Document Construction</h4><p>For the purposes of performing presentation processing, the active time
 duration of a <a href="#terms-document-instance">document instance</a> is divided into a sequence of time coordinates where at
 each time coordinate, some element becomes temporally active or inactive,
@@ -4683,13 +4826,13 @@
 to an intermediate
 synchronic document form,
 <em>DOC<sub>inter</sub></em> , according to the
-<span class="strong">[construct intermediate document]</span> procedure:</p><dl><dt class="label">[construct intermediate document]</dt><dd><ol class="enumar"><li><p>for each temporally active region <em>R</em>, replicate the
+<span class="strong"><a href="#procedure-construct-intermediate-document">[construct intermediate document]</a></span> procedure:</p><dl><dt class="label"><a id="procedure-construct-intermediate-document"></a>[construct intermediate document]</dt><dd><ol class="enumar"><li><p>perform procedure <span class="strong"><a href="#procedure-process-inline-regions">[process inline regions]</a></span>;</p></li><li><p>for each temporally active region <em>R</em>, replicate the
 sub-tree
  of <em>DOC<sub>source</sub></em>
 headed by the <code>body</code> element;</p></li><li><p>evaluating this sub-tree in a postorder traversal, prune elements if they
 are not a <a href="#terms-content-element">content element</a>, if they are temporally inactive, if they are empty,
 or if they aren't associated with region <em>R</em> according to the
-<span class="strong">[associate region]</span> procedure;</p></li><li><p>if the pruned sub-tree is non-empty, then reparent it to the <em>R</em>
+<span class="strong"><a href="procedure-associate-region">[associate region]</a></span> procedure;</p></li><li><p>if the pruned sub-tree is non-empty, then reparent it to the <em>R</em>
 element;</p></li><li><p>finally, after completing the above steps, prune the original <code>body</code>
 element from the intermediate document, then prune all <code>region</code>,
 <code>begin</code>, <code>end</code>, and <code>dur</code> attributes, which are no
@@ -4698,7 +4841,7 @@
 which, in turn, implies that the descendants of the pruned element will no longer
 be descendants of the element's parent. When <em>prune</em> is used in
 reference to an attribute, it means that attribute is to be removed from its
-associated (owning) element node.</p></div></dd><dt class="label">[associate region]</dt><dd><p></p><table border="1" class="ednote" summary="Editorial note: Inline Region Association"><tr class="ednote-r1"><td align="left" valign="top"><b>Editorial note: Inline Region Association</b></td><td align="right" valign="top">2013-08-28</td></tr><tr class="ednote-r2"><td colspan="2" align="left" valign="top">Define inline region association.</td></tr></table><p>A <a href="#terms-content-element">content element</a> is associated with a region according
+associated (owning) element node.</p></div></dd><dt class="label"><a id="procedure-associate-region"></a>[associate region]</dt><dd><p></p><table border="1" class="ednote" summary="Editorial note: Inline Region Association"><tr class="ednote-r1"><td align="left" valign="top"><b>Editorial note: Inline Region Association</b></td><td align="right" valign="top">2013-08-28</td></tr><tr class="ednote-r2"><td colspan="2" align="left" valign="top">Define inline region association.</td></tr></table><p>A <a href="#terms-content-element">content element</a> is associated with a region according
 to the following ordered rules, where the first rule satisfied
 is used and remaining rules are skipped:</p><ol class="enumar"><li><p>if the element specifies a <a href="#layout-attribute-region"><code>region</code></a> attribute,
 then the element is associated with the region referenced by that
@@ -5116,7 +5259,7 @@
 element.</p><p>The semantics of the <code>dur</code> attribute are those defined
 by <a href="#smil3">[SMIL 3.0]</a>, § 5.4.3,
 while taking into account any overriding semantics defined by this specification.
-In a willful violation of <a href="#smil3">[SMIL 3.0]</a>, § 5.4.3, the value of
+In a deliberate divergence from <a href="#smil3">[SMIL 3.0]</a>, § 5.4.3, the value of
 the <code>dur</code> attribute is permitted to be zero (0).</p><div class="note"><p class="prefix"><b>Note:</b></p><p>In the context of the subset of <a href="#smil3">[SMIL 3.0]</a> semantics supported by
 this specification, the active duration of an element that specifies both
 <code>end</code> and <code>dur</code> attributes is equal to the lesser of the value of
@@ -5301,7 +5444,7 @@
 repeat count (via <code>animation-iteration-count</code>). Since the duration of a single animation iteration is known, it is
 straightforward to map @repeatDur to an appropriate non-integer repeat count.</td></tr></table><p>Except for the constraints or variations enumerated below, the semantics of the <code>animate</code> element and its attributes
 enumerated above are defined to be those specified by <a href="#svg11">[SVG 1.1]</a>, §19.2.12:</p><ol class="enumar"><li><p>For the purpose of interpreting an <code>attributeName</code> attribute, an <code>attributeType</code>
-with a value of <code>XML</code> applies, about which see <a href="#svg11">[SVG 1.1]</a>, §19.2.5.</p></li><li><p>If no <code>accumulate</code> attribute is specified, then an <em>accumlate</em> value of <code>none</code> applies.</p></li><li><p>If no <code>additive</code> attribute is specified, then an <em>additive</em> value of <code>replace</code> applies.</p></li><li><p>If no <code>calcMode</code> attribute is specified, then a <em>calcMode</em> value of <code>linear</code> applies.</p></li><li><p>If no <code>fill</code> attribute is specified, then a <em>fill</em> value of <code>remove</code> applies.</p></li><li><p>If an <code>xlink:href</code> attribute is specified, then the <code>animate</code> element must be a child of an
+with a value of <code>XML</code> applies, about which see <a href="#svg11">[SVG 1.1]</a>, §19.2.5.</p></li><li><p>If no <code>accumulate</code> attribute is specified, then an <em>accumulate</em> value of <code>none</code> applies.</p></li><li><p>If no <code>additive</code> attribute is specified, then an <em>additive</em> value of <code>replace</code> applies.</p></li><li><p>If no <code>calcMode</code> attribute is specified, then a <em>calcMode</em> value of <code>linear</code> applies.</p></li><li><p>If no <code>fill</code> attribute is specified, then a <em>fill</em> value of <code>remove</code> applies.</p></li><li><p>If an <code>xlink:href</code> attribute is specified, then the <code>animate</code> element must be a child of an
 <a href="#animation-vocabulary-animation">animation</a> element; conversely, if an <code>animate</code> element is a child of
 an <a href="#animation-vocabulary-animation">animation</a> element, then it must specify an <code>xlink:href</code> attribute.</p></li></ol><p>An example of using the <code>animate</code> element to animate content
 styling is illustrated below:</p><a id="animation-vocabulary-animate-example-1"></a><table class="example"><caption>Example Fragment – Content Style Animation</caption><tbody><tr><td>
@@ -7490,7 +7633,7 @@
 <h2><a id="derivation"></a>J Vocabulary Derivation (Non-Normative)</h2><p>This appendix provides information about the derivation of TTML
 vocabulary, separately describing derivation of elements and
 attributes.</p><div class="div2">
-<h3><a id="d3e24469"></a>J.1 Element Derivation</h3><p>The first column of <a href="#element-vocab-derivation-table"><b>Table J-1 – Elements</b></a>
+<h3><a id="d3e25166"></a>J.1 Element Derivation</h3><p>The first column of <a href="#element-vocab-derivation-table"><b>Table J-1 – Elements</b></a>
 specifies a TTML element vocabulary item; the second column specifies the
 syntactic and/or semantic model on which the vocabulary item is based;
 the third column specifies the reference that defines
@@ -7547,7 +7690,7 @@
 and <code>@version</code> on the <code>svg:svg</code> element.</p></li><li><p>Conceptually derived from existing <code>tt:layout</code> element,
 which is a generic container for layout specifications, but for use
 in defining animation specifications that apply to targetted elements.</p></li></ol></div></div><div class="div2">
-<h3><a id="d3e24986"></a>J.2 Attribute Derivation</h3><p>The first column of <a href="#attribute-vocab-derivation-table"><b>Table J-2 – Attributes</b></a>
+<h3><a id="d3e25683"></a>J.2 Attribute Derivation</h3><p>The first column of <a href="#attribute-vocab-derivation-table"><b>Table J-2 – Attributes</b></a>
 specifies a TTML attribute vocabulary item; the second column specifies the
 syntactic and/or semantic model on which the vocabulary item is based;
 the third column specifies the reference that defines
@@ -7639,9 +7782,9 @@
 <h2><a id="qa"></a>K QA Framework Compliance (Non-Normative)</h2><p>This appendix specifies the compliance of this specification with the
 requirements and guidelines defined by <a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/">QA
 Framework Specifications Guidelines</a>&nbsp;<a href="#qaf-sg">[QAF SG]</a>.</p><div class="div2">
-<h3><a id="d3e25979"></a>K.1 Requirements</h3><a id="qa-framework-requirements-table"></a><table class="common"><caption>Table K-1 – QA Framework Requirements Checklist</caption><col width="76%" span="1"><col width="6%" align="center" span="1"><col width="6%" align="center" span="1"><col width="6%" align="center" span="1"><col width="6%" align="center" span="1"><tbody><tr><td><span class="strong">Requirement</span></td><td><span class="strong">YES</span></td><td><span class="strong">NO</span></td><td><span class="strong">N/A</span></td><td><span class="strong">Notes</span></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#include-conformance-clause-principle">Requirement 01: Include a conformance
+<h3><a id="d3e26676"></a>K.1 Requirements</h3><a id="qa-framework-requirements-table"></a><table class="common"><caption>Table K-1 – QA Framework Requirements Checklist</caption><col width="76%" span="1"><col width="6%" align="center" span="1"><col width="6%" align="center" span="1"><col width="6%" align="center" span="1"><col width="6%" align="center" span="1"><tbody><tr><td><span class="strong">Requirement</span></td><td><span class="strong">YES</span></td><td><span class="strong">NO</span></td><td><span class="strong">N/A</span></td><td><span class="strong">Notes</span></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#include-conformance-clause-principle">Requirement 01: Include a conformance
 clause</a></td><td><a href="#conformance">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#define-scope-principle">Requirement 02: Define the scope.</a></td><td><a href="#intro">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#implement-principle">Requirement 03: Identify who or what will implement the specification.</a></td><td><a href="#conformance">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#ref-norm-principle">Requirement 04: Make a list of normative references.</a></td><td><a href="#references">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#define-terms-principle">Requirement 05: Define the terms used in the normative parts of the specification.</a></td><td><a href="#definitions">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#conf-label-principle">Requirement 06: Create conformance labels for each part of the conformance model.</a></td><td><a href="#conformance">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#consistent-style-principle">Requirement 07: Use a consistent style for conformance requirements and explain how to distinguish them.</a></td><td><a href="#conventions">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#req-opt-conf-principle">Requirement 08: Indicate which conformance requirements are mandatory, which are recommended, and which are optional.</a></td><td><a href="#conventions">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#subdivide-mandatory-principle">Requirement 09: If the technology is subdivided, then indicate which subdivisions are mandatory for conformance.</a></td><td><a href="#conformance">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#subdiv-constraints-principle">Requirement 10: If the technology is subdivided, then address subdivision constraints.</a></td><td><a href="#conformance">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#likehood-extension-principle">Requirement 11: Address Extensibility.</a></td><td><a href="#doctypes">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#deprecated-feature-principle">Requirement 12: Identify deprecated features.</a></td><td></td><td></td><td>N/A</td><td>1</td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#degree-support-principle">Requirement 13: Define how each class of product handles each deprecated feature.</a></td><td></td><td></td><td>N/A</td><td>1</td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><ol class="enumar"><li><p>No feature is deprecated by this version of this specification.</p></li></ol></div></div><div class="div2">
-<h3><a id="d3e26143"></a>K.2 Guidelines</h3><a id="qa-framework-guidelines-table"></a><table class="common"><caption>Table K-2 – QA Framework Guidelines Checklist</caption><col width="76%" span="1"><col width="6%" align="center" span="1"><col width="6%" align="center" span="1"><col width="6%" align="center" span="1"><col width="6%" align="center" span="1"><tbody><tr><td><span class="strong">Guideline</span></td><td><span class="strong">YES</span></td><td><span class="strong">NO</span></td><td><span class="strong">N/A</span></td><td><span class="strong">Notes</span></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#conformance-model-gp">Good Practice 01: Define the specification's conformance model in the conformance clause.</a></td><td><a href="#conformance">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#norm-informative-gp">Good Practice 02: Specify in the conformance clause how to distinguish normative from informative content.</a></td><td><a href="#conventions">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#conformance-claim-gp">Good Practice 03: Provide the wording for conformance claims.</a></td><td><a href="#claims">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#ics-gp">Good Practice 04: Provide an Implementation Conformance Statement Pro Forma.</a></td><td></td><td>NO</td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#ics-claim-gp">Good Practice 05: Require an Implementation Conformance Statement as part of valid conformance claims.</a></td><td><a href="#claims">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#use-example-gp">Good Practice 06: Provide examples, use cases, and graphics.</a></td><td><a href="#example">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#write-sample-gp">Good Practice 07: Write sample code or tests.</a></td><td>YES</td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#ref-define-practice">Good Practice 08: When imposing requirements by normative references, address conformance dependencies.</a></td><td><a href="#references">YES</a></td><td></td><td></td><td>1</td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#define-terms-inline-gp">Good Practice 09: Define unfamiliar terms in-line and consolidate the definitions in a glossary section.</a></td><td><a href="#definitions">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#reuse-terms-gp">Good Practice 10: Use terms already defined without changing their definition.</a></td><td><a href="#definitions">YES</a></td><td></td><td></td><td>2</td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#formal-language-gp">Good Practice 11: Use formal languages when possible.</a></td><td><a href="#schemas">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#write-assertion-gp">Good Practice 12: Write Test Assertions.</a></td><td></td><td>NO</td><td></td><td>3</td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#subdivide-foster-gp">Good Practice 13: Create subdivisions of the technology when warranted.</a></td><td><a href="#conformance">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#rules-profiles-gp">Good Practice 14: If the technology is profiled, define rules for creating new profiles.</a></td><td><a href="#vocabulary-profiles">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#need-option-gp">Good Practice 15:Use optional features as warranted.</a></td><td>YES</td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#label-options-gp">Good Practice 16: Clearly identify optional features.</a></td><td>YES</td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#constraints-gp">Good Practice 17: Indicate any limitations or constraints on optional features.</a></td><td>YES</td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#extensions-prohibited-gp">Good Practice 18: If extensibility is allowed, define an extension mechanism.</a></td><td><a href="#extension-vocabulary-overview">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#breaking-conformance-gp">Good Practice 19: Warn extension creators to create extensions that do not interfere with conformance.</a></td><td><a href="#extension-vocabulary-overview">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#define-error-gp">Good Practice 20: Define error-handling for unknown extensions.</a></td><td><a href="#conformance-processor">YES</a></td><td></td><td></td><td>4</td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#workaround-gp">Good Practice 21: Explain how to avoid using a deprecated feature.</a></td><td></td><td></td><td>N/A</td><td>5</td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#obsolete-gp">Good Practice 22: Identify obsolete features.</a></td><td></td><td></td><td>N/A</td><td>5</td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#error-handling-gp">Good Practice 23: Define an error handling mechanism.</a></td><td><a href="#reduced-infoset">YES</a></td><td></td><td></td><td></td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><ol class="enumar"><li><p>When making normative references to external specifications,
+<h3><a id="d3e26840"></a>K.2 Guidelines</h3><a id="qa-framework-guidelines-table"></a><table class="common"><caption>Table K-2 – QA Framework Guidelines Checklist</caption><col width="76%" span="1"><col width="6%" align="center" span="1"><col width="6%" align="center" span="1"><col width="6%" align="center" span="1"><col width="6%" align="center" span="1"><tbody><tr><td><span class="strong">Guideline</span></td><td><span class="strong">YES</span></td><td><span class="strong">NO</span></td><td><span class="strong">N/A</span></td><td><span class="strong">Notes</span></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#conformance-model-gp">Good Practice 01: Define the specification's conformance model in the conformance clause.</a></td><td><a href="#conformance">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#norm-informative-gp">Good Practice 02: Specify in the conformance clause how to distinguish normative from informative content.</a></td><td><a href="#conventions">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#conformance-claim-gp">Good Practice 03: Provide the wording for conformance claims.</a></td><td><a href="#claims">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#ics-gp">Good Practice 04: Provide an Implementation Conformance Statement Pro Forma.</a></td><td></td><td>NO</td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#ics-claim-gp">Good Practice 05: Require an Implementation Conformance Statement as part of valid conformance claims.</a></td><td><a href="#claims">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#use-example-gp">Good Practice 06: Provide examples, use cases, and graphics.</a></td><td><a href="#example">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#write-sample-gp">Good Practice 07: Write sample code or tests.</a></td><td>YES</td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#ref-define-practice">Good Practice 08: When imposing requirements by normative references, address conformance dependencies.</a></td><td><a href="#references">YES</a></td><td></td><td></td><td>1</td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#define-terms-inline-gp">Good Practice 09: Define unfamiliar terms in-line and consolidate the definitions in a glossary section.</a></td><td><a href="#definitions">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#reuse-terms-gp">Good Practice 10: Use terms already defined without changing their definition.</a></td><td><a href="#definitions">YES</a></td><td></td><td></td><td>2</td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#formal-language-gp">Good Practice 11: Use formal languages when possible.</a></td><td><a href="#schemas">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#write-assertion-gp">Good Practice 12: Write Test Assertions.</a></td><td></td><td>NO</td><td></td><td>3</td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#subdivide-foster-gp">Good Practice 13: Create subdivisions of the technology when warranted.</a></td><td><a href="#conformance">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#rules-profiles-gp">Good Practice 14: If the technology is profiled, define rules for creating new profiles.</a></td><td><a href="#vocabulary-profiles">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#need-option-gp">Good Practice 15:Use optional features as warranted.</a></td><td>YES</td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#label-options-gp">Good Practice 16: Clearly identify optional features.</a></td><td>YES</td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#constraints-gp">Good Practice 17: Indicate any limitations or constraints on optional features.</a></td><td>YES</td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#extensions-prohibited-gp">Good Practice 18: If extensibility is allowed, define an extension mechanism.</a></td><td><a href="#extension-vocabulary-overview">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#breaking-conformance-gp">Good Practice 19: Warn extension creators to create extensions that do not interfere with conformance.</a></td><td><a href="#extension-vocabulary-overview">YES</a></td><td></td><td></td><td></td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#define-error-gp">Good Practice 20: Define error-handling for unknown extensions.</a></td><td><a href="#conformance-processor">YES</a></td><td></td><td></td><td>4</td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#workaround-gp">Good Practice 21: Explain how to avoid using a deprecated feature.</a></td><td></td><td></td><td>N/A</td><td>5</td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#obsolete-gp">Good Practice 22: Identify obsolete features.</a></td><td></td><td></td><td>N/A</td><td>5</td></tr><tr><td><a href="http://www.w3.org/TR/2005/REC-qaframe-spec-20050817/#error-handling-gp">Good Practice 23: Define an error handling mechanism.</a></td><td><a href="#reduced-infoset">YES</a></td><td></td><td></td><td></td></tr></tbody></table><div class="note"><p class="prefix"><b>Note:</b></p><ol class="enumar"><li><p>When making normative references to external specifications,
 specific clauses or sections are cited.</p></li><li><p>See also <a href="#derivation"><b>J Vocabulary Derivation</b></a>.</p></li><li><p>Test assertions and test suites will be provided prior to entering
 Proposed Recommendation (PR) phase.</p></li><li><p>See criterion #3 in <a href="#conformance-processor"><b>3.2 Processor Conformance</b></a> and definition of
 TTML <a href="#doctypes">Abstract Document Instance</a>.</p></li><li><p>No feature is deprecated or obsoleted by this version of this specification.</p></li></ol></div></div></div><div class="div1">
--- a/ttml2/spec/ttml2.xml	Fri Jul 11 18:43:33 2014 -0700
+++ b/ttml2/spec/ttml2.xml	Fri Jul 11 18:43:53 2014 -0700
@@ -608,6 +608,15 @@
 performing presentation processing.</p>
 </def>
 </gitem>
+<gitem id="terms-default-region">
+<label>[default region]</label>
+<def>
+<p>A default <loc href="#terms-out-of-line-region">out-of-line region</loc> that is implied in the absence of
+an explicitly specified out-of-line <loc href="#layout-vocabulary-region"><el>region</el></loc> element, i.e.,
+when no <loc href="#layout-vocabulary-region"><el>region</el></loc> element is specified as a child of
+a <loc href="#layout-vocabulary-layout"><el>layout</el></loc> element.</p>
+</def>
+</gitem>
 <gitem id="terms-designated-profile">
 <label>[designated profile]</label>
 <def>
@@ -722,9 +731,10 @@
 <gitem id="terms-implied-inline-region">
 <label>[implied inline region]</label>
 <def>
-<p>An anonymous (unidentified) <loc href="#terms-inline-region">inline region</loc> that is implied in the context of a block level content element
+<p>An anonymous (unidentified) <loc href="#terms-inline-region">inline region</loc> that is implied in the context of a block level
+<loc href="#terms-content-element">content element</loc>
 due the presence of a <loc href="#style-attribute-extent"><att>tts:extent</att></loc> or <loc href="#style-attribute-origin"><att>tts:origin</att></loc>
-style attribute on the content element.</p>
+style attribute on the <loc href="#terms-content-element">content element</loc>.</p>
 </def>
 </gitem>
 <gitem id="terms-inline-animation">
@@ -741,8 +751,11 @@
 <gitem id="terms-inline-region">
 <label>[inline region]</label>
 <def>
-<p>A <loc href="#layout-vocabulary-region"><el>region</el></loc> element that is defined inline as an immediate child of
-a <loc href="#terms-content-element">content element</loc> to be selected into (targetted to) the region.
+<p>A <loc href="#terms-region">region</loc> that is defined in an inline manner with respect to some
+<loc href="#terms-content-element">content element</loc>  to be selected into (targetted to) the region.
+An inline region is specified either explicitly by a <loc href="#layout-vocabulary-region"><el>region</el></loc> element child of
+a <loc href="#terms-content-element">content element</loc> or implicitly by specifying a <loc href="#style-attribute-extent">tts:extent</loc>
+or <loc href="#style-attribute-origin">tts:origin</loc> style attribute on a <loc href="#terms-content-element">content element</loc>.
 There is a one-to-one relation between an inline <loc href="#layout-vocabulary-region"><el>region</el></loc> element and its
 parent <loc href="#terms-content-element">content element</loc>. An inline region is assigned its parent element's time interval as its active
 time interval. No <att>region</att> attribute makes reference to an inline region.</p>
@@ -786,13 +799,16 @@
 <gitem id="terms-out-of-line-region">
 <label>[out-of-line region]</label>
 <def>
-<p>A <loc href="#layout-vocabulary-region"><el>region</el></loc> element that is defined out-of-line from
-the <loc href="#terms-content-element">content element(s)</loc> to be selected into (targetted to) the region. An out-of-line region appears
-as a child of a <loc href="#layout-vocabulary-layout"><el>layout</el></loc> element in the header
+<p>A <loc href="#terms-region">region</loc> that is defined in an out-of-line manner from
+the <loc href="#terms-content-element">content element(s)</loc> to be selected into (targetted to) the region. An out-of-line region is
+specified using a <loc href="#layout-vocabulary-region"><el>region</el></loc> element
+child of a <loc href="#layout-vocabulary-layout"><el>layout</el></loc> element in the header
 (<loc href="#document-structure-vocabulary-head"><el>head</el></loc> element)
 of a <loc href="#terms-document-instance">document instance</loc>, and specifies an <att>xml:id</att> attribute
 in order to allow <loc href="#terms-content-element">content elements</loc> to be associated with the region by means of a
-<att>region</att> attribute. There is a one-to-many relationship between an out-of-line region
+<att>region</att> attribute. A <loc href="#terms-default-region">default out-of-line region</loc> is implied if no
+<loc href="#terms-out-of-line-region">out-of-line region</loc> is specified explicitly.
+There is a one-to-many relationship between an out-of-line region
 and the <loc href="#terms-content-element">content element(s)</loc> to be selected into (targetted to) the region.</p>
 </def>
 </gitem>
@@ -1053,8 +1069,13 @@
 therein is given.</p>
 <p>An information item depicted with a <phrase role="deprecated">light yellow orange</phrase> background color is deprecated (e.g.,
 the <phrase role="deprecated">tiny</phrase> value of the <code>size</code> attribute shown above).
+An information item that is <phrase role="deprecated">deprecated</phrase> may but should not appear in a TTML document instance,
+and a validating processor should report a warning if it does appear.
 An information item depicted with a <phrase role="obsoleted">light magenta red</phrase> background color is obsoleted (e.g.,
-the <phrase role="obsoleted">micro</phrase> value of the <code>size</code> attribute shown above). These designations of the item
+the <phrase role="obsoleted">micro</phrase> value of the <code>size</code> attribute shown above).
+An information item that is <phrase role="obsoleted">obsoleted</phrase> must not appear in a TTML document instance,
+and a validating processor should report an error if it does appear.
+These designations of an item
 are also explicitly called out in specification text.</p>
 <p>The allowed content of the information item is shown as a grammar
 fragment, using the Kleene operators <code>?</code>, <code>*</code>
@@ -1151,7 +1172,7 @@
 <ednote>
 <name>Validation Processing</name>
 <date>2014-05-21</date>
-<edtext>Add requirement to invoke validation processing procedure.</edtext>
+<edtext>Add requirement to invoke validation processing procedure. Add and use definition of 'validating processor'.</edtext>
 </ednote>
 
 <p>A TTML <loc href="#terms-content-processor">content processor</loc> conforms to this specification if the following
@@ -1959,13 +1980,13 @@
 <p>if <emph>ECP</emph> is not <code>null</code>, then perform the following steps:</p>
 <olist>
 <item>
-<p>if the computed value of the <att>ttp:inferProcessorProfileSource</att> attribute is <code>combine</code>, then
+<p>if the computed value of the <att>ttp:inferProcessorProfileSource</att> parameter is <code>combine</code>, then
 the <loc href="#terms-inferred-processor-profile">inferred processor profile</loc> is the result of applying the
 <loc href="#semantics-procedure-infer-processor-profile"><phrase role="strong">infer processor profile</phrase></loc> function
 to the combined profile specification set of <emph>ECP</emph>;</p>
 </item>
 <item>
-<p>otherwise, if the computed value of the <att>ttp:inferProcessorProfileSource</att> attribute is <code>first</code>, then
+<p>otherwise, if the computed value of the <att>ttp:inferProcessorProfileSource</att> parameter is <code>first</code>, then
 the <loc href="#terms-inferred-processor-profile">inferred processor profile</loc> is the first inferred processor profile, <emph>IPP</emph>, produced by applying the
 <loc href="#semantics-procedure-infer-processor-profile"><phrase role="strong">infer processor profile</phrase></loc> function
 to the combined profile specification set of each constituent of <emph>ECP</emph> such that
@@ -1993,7 +2014,7 @@
 <olist>
 <item>
 <p>map content profile specification <emph>S</emph> to processor profile specification <emph>S'&nbsp;</emph> according to the computed
-value of the <att>ttp:inferPresentationProfileMethod</att> attribute and <specref ref="infer-processor-profile-method-table"/>;</p>
+value of the <att>ttp:inferPresentationProfileMethod</att> parameter and <specref ref="infer-processor-profile-method-table"/>;</p>
 </item>
 <item>
 <p>add <emph>S'&nbsp;</emph> to the combined profile specification set of <emph>IPP</emph>;</p>
@@ -2024,7 +2045,7 @@
 <olist>
 <item>
 <p>if the <loc href="#parameter-attribute-version"><att>ttp:version</att></loc> is not specified on the root <el>tt</el> element or
-if its computed value is <code>1</code> (one), then the <loc href="#terms-default-processor-profile">default processor profile</loc> is
+if its computed value of this parameter is <code>1</code> (one), then the <loc href="#terms-default-processor-profile">default processor profile</loc> is
 the <loc href="#semantics-profile-state-profile">profile</loc> constructed by interning the DFXP Presentation profile
 (<code>http://www.w3.org/ns/ttml/profile/dfxp-presentation</code>);</p>
 </item>
@@ -2042,7 +2063,7 @@
 <olist>
 <item>
 <p>if the <loc href="#parameter-attribute-version"><att>ttp:version</att></loc> is not specified on the root <el>tt</el> element or
-if its computed value is <code>1</code> (one), then the <loc href="#terms-default-processor-profile">default processor profile</loc> is
+if its computed value of this parameter is <code>1</code> (one), then the <loc href="#terms-default-processor-profile">default processor profile</loc> is
 the <loc href="#semantics-profile-state-profile">profile</loc> constructed by interning the DFXP Transformation profile
 (<code>http://www.w3.org/ns/ttml/profile/dfxp-transformation</code>);</p>
 </item>
@@ -2724,18 +2745,18 @@
 the document;</p></item>
 <item><p>otherwise, if
 (1) the <att>extends</att> attribute is specified on the root <el>tt</el> element,
-(2) the computed value of the <att>extends</att> attribute designates a feature that is implemented or otherwise supported by
+(2) the value of the <att>extends</att> attribute designates a feature that is implemented or otherwise supported by
 a processor, and
 (3) the computed value of the <loc href="#parameter-attribute-permitFeatureNarrowing"><att>ttp:permitFeatureNarrowing</att></loc>
-parameter attribute of the root <el>tt</el> element is not <code>false</code>,
+parameter property of the root <el>tt</el> element is not <code>false</code>,
 then continue processing the document;</p>
 </item>
 <item><p>otherwise, if
 (1) the <att>restricts</att> attribute is specified on the root <el>tt</el> element,
-(2) the computed value of the <att>restricts</att> attribute designates a feature that is implemented or otherwise supported by
+(2) the value of the <att>restricts</att> attribute designates a feature that is implemented or otherwise supported by
 a processor, and
 (3) the computed value of the <loc href="#parameter-attribute-permitFeatureWidening"><att>ttp:permitFeatureWidening</att></loc>
-parameter attribute of the root <el>tt</el> element is not <code>false</code>,
+parameter property of the root <el>tt</el> element is not <code>false</code>,
 then continue processing the document;</p>
 </item>
 <item><p>otherwise, abort processing the document unless overridden by the end-user or some implementation specific parameter
@@ -2932,18 +2953,18 @@
 the document;</p></item>
 <item><p>otherwise, if
 (1) the <att>extends</att> attribute is specified on the root <el>tt</el> element,
-(2) the computed value of the <att>extends</att> attribute designates an extension that is implemented or otherwise supported by
+(2) the value of the <att>extends</att> attribute designates an extension that is implemented or otherwise supported by
 a processor, and
 (3) the computed value of the <loc href="#parameter-attribute-permitFeatureNarrowing"><att>ttp:permitFeatureNarrowing</att></loc>
-parameter attribute of the root <el>tt</el> element is not <code>false</code>,
+parameter property of the root <el>tt</el> element is not <code>false</code>,
 then continue processing the document;</p>
 </item>
 <item><p>otherwise, if
 (1) the <att>restricts</att> attribute is specified on the root <el>tt</el> element,
-(2) the computed value of the <att>restricts</att> attribute designates an extension that is implemented or otherwise supported by
+(2) the value of the <att>restricts</att> attribute designates an extension that is implemented or otherwise supported by
 a processor, and
 (3) the computed value of the <loc href="#parameter-attribute-permitFeatureWidening"><att>ttp:permitFeatureWidening</att></loc>
-parameter attribute of the root <el>tt</el> element is not <code>false</code>,
+parameter property of the root <el>tt</el> element is not <code>false</code>,
 then continue processing the document;</p>
 </item>
 <item><p>otherwise, abort processing the document unless overridden by the end-user or some implementation specific parameter
@@ -4111,7 +4132,7 @@
 must perform validation processing on a TTML <loc href="#terms-document-instance">document instance</loc> prior to performing
 other types of processing, e.g., presentation or transformation processing.</p>
 <p>If validation processing is performed on a TTML <loc href="#terms-document-instance">document instance</loc> and validation fails, then the computed value of
-the <att>ttp:validationAction</att> attribute is used to determine what action to take before performing further processing.</p>
+the <att>ttp:validationAction</att> parameter property is used to determine what action to take before performing further processing.</p>
 <p>If not specified, the value of this parameter must be considered
 to be <code>optional</code>.</p>
 <p>A <att>ttp:validation</att> attribute is considered to be significant only
@@ -4145,8 +4166,9 @@
 should warn the end-user when validation processing fails, and, give the end-user the option to continue or abort processing.</p>
 <p>If this parameter's value is <code>ignore</code>, then, a <loc href="#terms-validating-content-processor">validating content processor</loc>
 should not abort and should not warn the end-user when validation processing fails.</p>
-<p>If not specified, the value of this parameter must be considered
-to be <code>abort</code>.</p>
+<p>If not specified, the value of this parameter is determined as follows:
+if the computed value of the <loc href="#parameter-attribute-validation"><att>ttp:validation</att></loc> parameter property is <code>optional</code>,
+then the value must be considered to be <code>warn</code>; otherwise, it must be considered to be <code>abort</code>.</p>
 <p>A <att>ttp:validationAction</att> attribute is considered to be significant only
 when specified on the <el>tt</el> element.</p>
 </div3>
@@ -4422,8 +4444,8 @@
 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
-elements in the <code>Layout.class</code> element group,
+followed by zero or one
+element in the <code>Layout.class</code> element group,
 followed by
 zero or more
 <el>div</el> or 
@@ -4454,7 +4476,7 @@
   <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">Layout.class</loc>*, <loc
+  href="#element-vocab-group-table">Layout.class</loc>?, <loc
   href="#element-vocab-group-table">Block.class</loc>*
 &lt;/div&gt;
 </eg>
@@ -4490,8 +4512,8 @@
 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
-elements in the <code>Layout.class</code> element group,
+followed by zero or one
+element in the <code>Layout.class</code> element group,
 followed by
 zero or more intermixed
 <code>span</code> elements,
@@ -4523,7 +4545,7 @@
   <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">Layout.class</loc>*, <loc
+  href="#element-vocab-group-table">Layout.class</loc>?, <loc
   href="#element-vocab-group-table">Inline.class</loc>*
 &lt;/p&gt;
 </eg>
@@ -5123,10 +5145,10 @@
 then a <loc href="#terms-presentation-processor">presentation processor</loc> must use the value <code>solid</code>.</p>
 <p>If no border color is specified in the value of the <att>tts:border</att> property,
 then the border color must be interpreted as if a color equal
-to the computed value of the element's <code>tts:color</code> property were specified.</p>
+to the computed value of the element's <code>tts:color</code> style property were specified.</p>
 <p>The <att>tts:border</att> style is illustrated by the following example.</p>
 <table id="style-attribute-border-example-1" role="example">
-<caption>Example Fragment &ndash; Background Color</caption>
+<caption>Example Fragment &ndash; Border</caption>
 <tbody>
 <tr>
 <td>
@@ -5663,6 +5685,10 @@
 <p>In this context, the phrase <emph>closest supported value</emph> means the value for which the Euclidean distance between
 the computed extent and the supported extent is minimized. If there are multiple closest supported values equally distant from
 the computed value, then the value most distant from [0,0], i.e., of greatest extent, is used.</p>
+<p>Unlike other style attributes, the rule for resolving <emph>closest supported value</emph> for the <att>tts:extent</att> attribute
+makes use of the nearest larger rather than nearest smaller supported distance. The rationale for this difference in treatment is
+that use of a larger extent ensures that the affected content will be contained in the region area without causing region overflow,
+while use of a smaller extent makes region overflow more likely.</p>
 </note>
 <p>The <att>tts:extent</att> style is illustrated by the following example.</p>
 <table id="style-attribute-extent-example-1" role="example">
@@ -9132,12 +9158,12 @@
 </p>
 <div3 id="semantics-default-region">
 <head>Default Region</head>
-<p>If a <loc href="#terms-document-instance">document instance</loc> does not specify a
-<loc href="#layout-vocabulary-region"><el>region</el></loc> element,
+<p>If a <loc href="#terms-document-instance">document instance</loc> does not specify an
+<loc href="#terms-out-of-line-region">out-of-line region</loc>,
 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>
+<p>the identity of the default region is considered to be an anonymous <loc href="#terms-out-of-line-region">out-of-line region</loc>;</p>
 </item>
 <item>
 <p>the extent of the default region is the same as the extent of the <loc href="#terms-root-container-region">root container region</loc>;</p>
@@ -9146,10 +9172,9 @@
 <p>the temporal interval of the default region is the same as the interval defined by the <loc href="#terms-root-temporal-extent">root temporal extent</loc>;</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
+<p>Furthermore, if no
+<loc href="#terms-out-of-line-region">out-of-line region</loc> is specified, then the
+<loc href="#layout-attribute-region"><att>region</att></loc> attribute must
 not be specified on any <loc href="#terms-content-element">content element</loc> in the <loc href="#terms-document-instance">document instance</loc>.</p>
 <p>If a default region is implied for a given <loc href="#terms-document-instance">document instance</loc>, then
 the <loc href="#document-structure-vocabulary-body"><el>body</el></loc> element
@@ -9192,14 +9217,281 @@
 </div3>
 <div3 id="semantics-inline-regions">
 <head>Inline Regions</head>
-<p>&tbd;</p>
+<p>An <loc href="#terms-inline-region">inline region</loc> is a syntactic mechanism for specifying a
+<loc href="#terms-region">region</loc> in a way that minimizes the syntactic distance between a region
+specification and the content that references that region. Semantically, each
+<loc href="#terms-inline-region">inline region</loc> is equivalent to specifying a unique
+<loc href="#terms-out-of-line-region">out-of-line region</loc> referenced implicitly only by the
+<loc href="#terms-content-element">content element</loc> in whose context the
+<loc href="#terms-inline-region">inline region</loc> is specified (or implied).</p>
+<p>An <loc href="#terms-inline-region">inline region</loc> is declared in one of two ways:
+(1) by specifying a <loc href="#style-attribute-extent"><att>tts:extent</att></loc> or
+<loc href="#style-attribute-origin"><att>tts:origin</att></loc> style attribute on
+a <loc href="#terms-content-element">content element</loc>
+in the <loc href="#element-vocab-group-table">Block.class</loc> element group, or
+(2) by specifying an explicit  <loc href="#layout-vocabulary-region"><el>region</el></loc> element
+child of a <loc href="#terms-content-element">content element</loc>
+in the <loc href="#element-vocab-group-table">Block.class</loc> element group. The
+former is referred to as an <emph>implied inline region specification</emph>,
+the latter as an <emph>explicit inline region specification</emph>; furthermore, the former is considered
+to be a syntactic shorthand for the latter, and is processed by converting it into the latter as
+described below.</p>
+
+<p>Inline regions are processed in accordance with the procedure
+<phrase role="strong"><loc href="#procedure-process-inline-regions">[process inline regions]</loc></phrase>, which
+entails first generating implied inline regions, and then generating out-of-line regions that correspond with implied
+or explicit inline regions. This latter procedure additionally binds content elements associated with inline regions
+to the corresponding generated out-of-line regions.</p>
+
+<note role="elaboration">
+<p>A <loc href="#terms-content-element">content element</loc> can only be associated with a single
+<loc href="#terms-region">region</loc>. Consequently, if a <loc href="#terms-content-element">content element</loc>
+specifies a <loc href="#layout-attribute-region"><att>region</att></loc> attribute, then any <emph>implied inline region specification</emph>
+or <emph>explicit inline region specification</emph> is ignored. If the <loc href="#terms-content-element">content element</loc> does not specify a
+<loc href="#layout-attribute-region"><att>region</att></loc> attribute, but it includes
+both an <emph>implied inline region specification</emph> and an <emph>explicit inline region specification</emph>,
+then the former is ignored in favor of the latter.</p>
+</note>
+
+<glist>
+<gitem id="procedure-process-inline-regions">
+<label>[process inline regions]</label>
+<def>
+<olist>
+<item>
+<p>perform procedure <phrase role="strong"><loc href="#procedure-generate-inline-regions">[generate inline regions]</loc></phrase>;</p>
+</item>
+<item>
+<p>perform procedure <phrase role="strong"><loc href="procedure-generate-out-of-line-regions">[generate out-of-line regions]</loc></phrase>;</p>
+</item>
+</olist>
+</def>
+</gitem>
+<gitem id="procedure-generate-inline-regions">
+<label>[generate inline regions]</label>
+<def>
+<p>For each <loc href="#terms-content-element">content element</loc> <emph>B</emph>
+in the <loc href="#element-vocab-group-table">Block.class</loc> element group,
+perform the following ordered steps:</p>
+<olist>
+<item>
+<p>if the <code>[attributes]</code> information item property of <emph>B</emph> contains
+neither <loc href="#style-attribute-extent"><att>tts:extent</att></loc> nor
+<loc href="#style-attribute-origin"><att>tts:origin</att></loc> style attribute, then exit this procedure;</p>
+</item>
+<item>
+<p>if the <code>[attributes]</code> information item property of <emph>B</emph> contains a
+<loc href="#layout-attribute-region"><att>region</att></loc> attribute, then exit this procedure</p>
+</item>
+<item>
+<p>if the <code>[children]</code> information item property of <emph>B</emph> contains a
+<loc href="#layout-vocabulary-region"><el>region</el></loc> element, then exit this procedure;</p>
+</item>
+<item>
+<p>create an empty <loc href="#layout-vocabulary-region"><el>region</el></loc> element <emph>R</emph>,
+initialized as follows:</p>
+<ulist>
+<item>
+<p>if the <code>[attributes]</code> information item property of <emph>B</emph> contains a
+<loc href="#style-attribute-extent"><att>tts:extent</att></loc> attribute,
+then copy that attribute to the <code>[attributes]</code> information item property of <emph>R</emph>;
+otherwise, add a <loc href="#style-attribute-extent"><att>tts:extent</att></loc> attribute with value <code>auto</code>
+to the <code>[attributes]</code> information item property of <emph>R</emph>;</p>
+</item>
+<item>
+<p>if the <code>[attributes]</code> information item property of <emph>B</emph> contains a
+<loc href="#style-attribute-origin"><att>tts:origin</att></loc> attribute,
+then copy that attribute to the <code>[attributes]</code> information item property of <emph>R</emph>;
+otherwise, add a <loc href="#style-attribute-origin"><att>tts:origin</att></loc> attribute with value <code>auto</code>
+to the <code>[attributes]</code> information item property of <emph>R</emph>;</p>
+</item>
+</ulist>
+</item>
+<item>
+<p>insert <emph>R</emph> into the <code>[children]</code> information item property of <emph>B</emph>
+such that <emph>R</emph> immediately precedes the first <loc href="#terms-content-element">content element</loc>
+child of <emph>B</emph>, or, if none is present, then <emph>R</emph> is the last child element of <emph>B</emph>;</p>
+</item>
+<item>
+<p>remove the <loc href="#style-attribute-extent"><att>tts:extent</att></loc> and
+<loc href="#style-attribute-origin"><att>tts:origin</att></loc> style attributes, if present, from the
+<code>[attributes]</code> information item property of <emph>B</emph>;</p>
+</item>
+</olist>
+</def>
+</gitem>
+<gitem id="procedure-generate-out-of-line-regions">
+<label>[generate out-of-line regions]</label>
+<def>
+<p>For each <loc href="#terms-content-element">content element</loc> <emph>B</emph>
+in the <loc href="#element-vocab-group-table">Block.class</loc> element group,
+perform the following ordered steps:</p>
+<olist>
+<item>
+<p>if the <code>[attributes]</code> information item property of <emph>B</emph> contains a
+<loc href="#layout-attribute-region"><att>region</att></loc> attribute, then exit this procedure</p>
+</item>
+<item>
+<p>if the <code>[children]</code> information item property of <emph>B</emph> does not contain
+a <loc href="#layout-vocabulary-region"><el>region</el></loc> element <emph>R</emph>, then exit this procedure;</p>
+</item>
+<item><p>create an empty <loc href="#layout-vocabulary-region"><el>region</el></loc> element <emph>R'&nbsp;</emph>,
+initialized as follows:</p>
+<ulist>
+<item>
+<p>set the <code>[children]</code> information item property of <emph>R'&nbsp;</emph> to a deep copy of
+the <code>[children]</code> information item property of <emph>R</emph>;</p>
+</item>
+<item>
+<p>set the <code>[attributes]</code> information item property of <emph>R'&nbsp;</emph> to a deep copy of
+the <code>[attributes]</code> information item property of <emph>R</emph>;</p>
+</item>
+<item>
+<p>if the <code>[attributes]</code> information item property of <emph>R'&nbsp;</emph> does not include
+an <att>xml:id</att> attribute, then add an implied <att>xml:id</att> attribute with a generated value
+<emph>ID</emph> that is unique within the scope of the TTML <loc href="#terms-document-instance">document instance</loc>;
+otherwise, let <emph>ID</emph> be the value of the <att>xml:id</att> attribute of <emph>R'&nbsp;</emph>;</p>
+</item>
+<item>
+<p>if present, remove the following attributes from the <code>[attributes]</code> information item property of <emph>R'&nbsp;</emph>:
+<att>begin</att>,
+<att>dur</att>, and
+<att>end</att>;</p>
+</item>
+<item>
+<p>add a <att>begin</att> attribute to the <code>[attributes]</code> information item property of <emph>R'&nbsp;</emph> with
+a value equivalent to the computed begin time of <emph>B</emph> within the root temporal extent;</p>
+</item>
+<item>
+<p>add a <att>dur</att> attribute to the <code>[attributes]</code> information item property of <emph>R'&nbsp;</emph> with
+a value equivalent to the computed simple duration of <emph>B</emph>;</p>
+</item>
+</ulist>
+</item>
+<item>
+<p>if the TTML <loc href="#terms-document-instance">document instance</loc> does not have a
+<loc href="#document-structure-vocabulary-head"><el>head</el></loc> element, then insert an empty
+<loc href="#document-structure-vocabulary-head"><el>head</el></loc> element as the first child of
+the <loc href="#document-structure-vocabulary-tt"><el>tt</el></loc> element;</p>
+</item>
+<item>
+<p>if the <loc href="#document-structure-vocabulary-head"><el>head</el></loc> element does not have
+a <loc href="#layout-vocabulary-layout"><el>layout</el></loc> child element, then insert an empty
+<loc href="#layout-vocabulary-layout"><el>layout</el></loc> element immediately after a
+<loc href="#styling-vocabulary-styling"><el>styling</el></loc> element, if present, and immediately before an
+<loc href="#animation-vocabulary-styling"><el>animation</el></loc> element, if present, or as the last child of
+the <loc href="#document-structure-vocabulary-head"><el>head</el></loc> element if neither are present;</p>
+</item>
+<item>
+<p>append <emph>R'&nbsp;</emph> to the <code>[children]</code> information item property of the
+<loc href="#layout-vocabulary-layout"><el>layout</el></loc> element child of the 
+<loc href="#document-structure-vocabulary-head"><el>head</el></loc> element;</p>
+</item>
+<item>
+<p>add a <loc href="#layout-attribute-region"><att>region</att></loc> attribute with value <emph>ID</emph> to the <code>[attributes]</code> information
+item property of <emph>B</emph>;</p>
+</item>
+<item>
+<p>remove <emph>R</emph> from the <code>[children]</code> information item property of <emph>B</emph>;</p>
+</item>
+</olist>
+</def>
+</gitem>
+</glist>
+
+<p>The use of an <emph>implied inline region specification</emph> and the resulting generated inline region is shown by the following two example documents.</p>
+
+<table id="semantics-inline-region-input-example-1-implied" role="example">
+<caption>Example &ndash; Implied Inline Region Specification</caption>
+<tbody>
+<tr>
+<td>
+<eg>
+&lt;tt xml:lang="" xmlns="http://www.w3.org/ns/ttml"&gt;
+  &lt;head/&gt;
+  &lt;body&gt;
+    &lt;div <phrase role="strong">tts:extent="540px 100px" tts:origin="50px 339px"</phrase>&gt;
+      &lt;p&gt;Some Content&lt;/p&gt;
+    &lt;div/&gt;
+  &lt;body/&gt;
+&lt;/tt&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+
 <p></p>
-<ednote>
-<name>Multiple Region Reference Semantics</name>
-<date>2014-03-27</date>
-<edtext>Define semantics related to use combination of inline regions and reference to out-of-line region by same content element.
-See also editorial note <phrase role="strong">Inline Region Association</phrase> below under <phrase role="strong">[associate region]</phrase>.</edtext>
-</ednote>
+<table id="semantics-generated-out-of-line-region-example-1-implied" role="example">
+<caption>Example &ndash; Generated Inline Region</caption>
+<tbody>
+<tr>
+<td>
+<eg>
+&lt;tt xml:lang="" xmlns="http://www.w3.org/ns/ttml"&gt;
+  &lt;head/&gt;
+  &lt;body&gt;
+    &lt;div&gt;
+      <phrase role="strong">&lt;region tts:extent="540px 100px" tts:origin="50px 339px"/&gt;</phrase>
+      &lt;p&gt;Some Content&lt;/p&gt;
+    &lt;div/&gt;
+  &lt;body/&gt;
+&lt;/tt&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+
+<p>The use of an <emph>explicit inline region specification</emph> or a generated inline region that derives from
+an <emph>implicit inline region specification</emph>
+and the resulting generated out-of-line region is shown by the following two example documents.</p>
+
+<table id="semantics-inline-region-input-example-2-explicit" role="example">
+<caption>Example &ndash; Explicit or Generated Inline Region Specification</caption>
+<tbody>
+<tr>
+<td>
+<eg>
+&lt;tt xml:lang="" xmlns="http://www.w3.org/ns/ttml"&gt;
+  &lt;head/&gt;
+  &lt;body&gt;
+    &lt;div begin="5s" dur="10s"&gt;
+      <phrase role="strong">&lt;region tts:extent="540px 100px" tts:origin="50px 339px"/&gt;</phrase>
+      &lt;p&gt;Some Content&lt;/p&gt;
+    &lt;div/&gt;
+  &lt;body/&gt;
+&lt;/tt&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
+
+<p></p>
+<table id="semantics-generated-out-of-line-region-example-2-explicit" role="example">
+<caption>Example &ndash; Generated Out-of-line Region</caption>
+<tbody>
+<tr>
+<td>
+<eg>
+&lt;tt xml:lang="" xmlns="http://www.w3.org/ns/ttml"&gt;
+  &lt;head&gt;
+    <phrase role="strong">&lt;layout&gt;
+      &lt;region xml:id="region3451" begin="5s" dur="10s" tts:extent="540px 100px" tts:origin="50px 339px"/&gt;
+    &lt;/layout&gt;</phrase>
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div begin="5s" dur="10s" <phrase role="strong">region="region3451"</phrase>&gt;
+      &lt;p&gt;Some Content&lt;/p&gt;
+    &lt;div/&gt;
+  &lt;body/&gt;
+&lt;/tt&gt;
+</eg>
+</td>
+</tr>
+</tbody>
+</table>
 </div3>
 <div3 id="semantics-region-layout-step-1">
 <head>Intermediate Synchronic Document Construction</head>
@@ -9211,13 +9503,16 @@
 to an intermediate
 synchronic document form,
 <emph>DOC<sub>inter</sub></emph>&thinsp;, according to the
-<phrase role="strong">[construct intermediate document]</phrase> procedure:</p>
+<phrase role="strong"><loc href="#procedure-construct-intermediate-document">[construct intermediate document]</loc></phrase> procedure:</p>
 <glist>
-<gitem>
+<gitem id="procedure-construct-intermediate-document">
 <label>[construct intermediate document]</label>
 <def>
 <olist>
 <item>
+<p>perform procedure <phrase role="strong"><loc href="#procedure-process-inline-regions">[process inline regions]</loc></phrase>;</p>
+</item>
+<item>
 <p>for each temporally active region <emph>R</emph>, replicate the
 sub-tree
  of <emph>DOC<sub>source</sub></emph>
@@ -9227,7 +9522,7 @@
 <p>evaluating this sub-tree in a postorder traversal, prune elements if they
 are not a <loc href="#terms-content-element">content element</loc>, 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>
+<phrase role="strong"><loc href="procedure-associate-region">[associate region]</loc></phrase> procedure;</p>
 </item>
 <item>
 <p>if the pruned sub-tree is non-empty, then reparent it to the <emph>R</emph>
@@ -9250,7 +9545,7 @@
 </note>
 </def>
 </gitem>
-<gitem>
+<gitem id="procedure-associate-region">
 <label>[associate region]</label>
 <def>
 <p></p>
@@ -9651,7 +9946,7 @@
 <p>The semantics of the <att>dur</att> attribute are those defined
 by <bibref ref="smil3"/>, &sect; 5.4.3,
 while taking into account any overriding semantics defined by this specification.
-In a willful violation of <bibref ref="smil3"/>, &sect; 5.4.3, the value of
+In a deliberate divergence from <bibref ref="smil3"/>, &sect; 5.4.3, the value of
 the <att>dur</att> attribute is permitted to be zero (0).</p>
 <note role="elaboration">
 <p>In the context of the subset of <bibref ref="smil3"/> semantics supported by
@@ -9998,7 +10293,7 @@
 <olist>
 <item><p>For the purpose of interpreting an <att>attributeName</att> attribute, an <att>attributeType</att>
 with a value of <code>XML</code> applies, about which see <bibref ref="svg11"/>, &sect;19.2.5.</p></item>
-<item><p>If no <att>accumulate</att> attribute is specified, then an <emph>accumlate</emph> value of <code>none</code> applies.</p></item>
+<item><p>If no <att>accumulate</att> attribute is specified, then an <emph>accumulate</emph> value of <code>none</code> applies.</p></item>
 <item><p>If no <att>additive</att> attribute is specified, then an <emph>additive</emph> value of <code>replace</code> applies.</p></item>
 <item><p>If no <att>calcMode</att> attribute is specified, then a <emph>calcMode</emph> value of <code>linear</code> applies.</p></item>
 <item><p>If no <att>fill</att> attribute is specified, then a <emph>fill</emph> value of <code>remove</code> applies.</p></item>
Binary file ttml2/spec/xsd/schema.zip has changed
--- a/ttml2/spec/xsd/ttml2-bindings.xjb	Fri Jul 11 18:43:33 2014 -0700
+++ b/ttml2/spec/xsd/ttml2-bindings.xjb	Fri Jul 11 18:43:53 2014 -0700
@@ -1,5 +1,10 @@
 <?xml version="1.0" encoding="utf-8"?>
 <jxb:bindings version="2.1" xmlns:jxb="http://java.sun.com/xml/ns/jaxb" xmlns:xs="http://www.w3.org/2001/XMLSchema">
+  <jxb:bindings schemaLocation="ttml2-layout.xsd">
+    <jxb:bindings node="//xs:attributeGroup[@name='RegionBinding.attrib.class']/xs:attribute[@name='region']">
+      <jxb:property name="regionAttribute"/>
+    </jxb:bindings>
+  </jxb:bindings>
   <jxb:bindings schemaLocation="ttml2-styling.xsd">
     <jxb:bindings node="//xs:attributeGroup[@name='StyleBinding.attrib.class']/xs:attribute[@name='style']">
       <jxb:property name="styleAttribute"/>
@@ -17,4 +22,4 @@
       </jxb:bindings>
     </jxb:bindings>
   </jxb:bindings>
-</jxb:bindings>
\ No newline at end of file
+</jxb:bindings>
--- a/ttml2/spec/xsd/ttml2-content.xsd	Fri Jul 11 18:43:33 2014 -0700
+++ b/ttml2/spec/xsd/ttml2-content.xsd	Fri Jul 11 18:43:53 2014 -0700
@@ -59,6 +59,7 @@
     <xs:sequence>
       <xs:group ref="tt:Metadata.class" minOccurs="0" maxOccurs="unbounded"/>
       <xs:group ref="tt:Animation.class" minOccurs="0" maxOccurs="unbounded"/>
+      <xs:group ref="tt:Layout.class" minOccurs="0" maxOccurs="1"/>
       <xs:group ref="tt:Block.class" minOccurs="0" maxOccurs="unbounded"/>
     </xs:sequence>
     <xs:attributeGroup ref="tt:div.attlist"/>
@@ -67,6 +68,7 @@
     <xs:sequence>
       <xs:group ref="tt:Metadata.class" minOccurs="0" maxOccurs="unbounded"/>
       <xs:group ref="tt:Animation.class" minOccurs="0" maxOccurs="unbounded"/>
+      <xs:group ref="tt:Layout.class" minOccurs="0" maxOccurs="1"/>
       <xs:group ref="tt:Inline.class" minOccurs="0" maxOccurs="unbounded"/>
     </xs:sequence>
     <xs:attributeGroup ref="tt:p.attlist"/>
--- a/ttml2/spec/xsd/ttml2-layout.xsd	Fri Jul 11 18:43:33 2014 -0700
+++ b/ttml2/spec/xsd/ttml2-layout.xsd	Fri Jul 11 18:43:53 2014 -0700
@@ -39,4 +39,9 @@
   </xs:complexType>
   <xs:element name="layout" type="tt:layout.eltype"/>
   <xs:element name="region" type="tt:region.eltype"/>
+  <xs:group name="Layout.class">
+    <xs:choice>
+      <xs:element ref="tt:region"/>
+    </xs:choice>
+  </xs:group>
 </xs:schema>