[ttml2] add animate and animation elements (issues 22, 23, 72, 227)
authorGlenn Adams <glenn@skynav.com>
Mon, 26 Aug 2013 19:04:37 -0600
changeset 4991d13586de640
parent 498 ff956a5437cf
child 500 c95e843b4e35
[ttml2] add animate and animation elements (issues 22, 23, 72, 227)
ttml1/spec/ttml1-changes.html
ttml1/spec/ttml1.xml
ttml2/spec/rnc/schema.zip
ttml2/spec/rnc/ttml2-animation.rnc
ttml2/spec/rnc/ttml2-datatypes.rnc
ttml2/spec/rnc/ttml2-head.rnc
ttml2/spec/ttml2-changes.html
ttml2/spec/ttml2.xml
ttml2/spec/xsd/schema.zip
ttml2/spec/xsd/ttml2-animation.xsd
ttml2/spec/xsd/ttml2-datatypes.xsd
ttml2/spec/xsd/ttml2-head.xsd
ttml2/spec/xsd/xlink.xsd
     1.1 --- a/ttml1/spec/ttml1-changes.html	Sun Aug 25 11:03:10 2013 -0600
     1.2 +++ b/ttml1/spec/ttml1-changes.html	Mon Aug 26 19:04:37 2013 -0600
     1.3 @@ -100,6 +100,8 @@
     1.4    container region and that clipping behavior on the root container region is not
     1.5    specified.
     1.6  
     1.7 +* In 11.1.1, correct note to show derivation from SVG 1.1, not SMIL 2.1.
     1.8 +
     1.9  * In 12.1.7, clarify that agent attribute on ttm:actor must reference a "significant"
    1.10    ttm:agent element, i.e., a ttm:agent appearing as a child of head or a child of a
    1.11    metadata child of head.
     2.1 --- a/ttml1/spec/ttml1.xml	Sun Aug 25 11:03:10 2013 -0600
     2.2 +++ b/ttml1/spec/ttml1.xml	Mon Aug 26 19:04:37 2013 -0600
     2.3 @@ -8070,8 +8070,8 @@
     2.4  </note>
     2.5  <note role="derivation">
     2.6  <p>The semantics of the <el>set</el> element
     2.7 -are based upon that defined by <bibref ref="smil21"/>,
     2.8 -&sect; 3.6.2.</p>
     2.9 +are based upon that defined by <bibref ref="svg11"/>,
    2.10 +&sect; 6.2.13.</p>
    2.11  </note>
    2.12  </div3>
    2.13  </div2>
     3.1 Binary file ttml2/spec/rnc/schema.zip has changed
     4.1 --- a/ttml2/spec/rnc/ttml2-animation.rnc	Sun Aug 25 11:03:10 2013 -0600
     4.2 +++ b/ttml2/spec/rnc/ttml2-animation.rnc	Mon Aug 26 19:04:37 2013 -0600
     4.3 @@ -2,26 +2,76 @@
     4.4  # TT-AF 1.0 DFXP Animation Module .......................................
     4.5  # .......................................................................
     4.6  
     4.7 -# set - discrete animation
     4.8 -TTAF.set =
     4.9 -  element set {
    4.10 -    TTAF.set.attlist,
    4.11 -    TTAF.set.content
    4.12 +namespace xlink = "http://www.w3.org/1999/xlink"
    4.13 +
    4.14 +# animation - generic animation container
    4.15 +TTAF.animation =
    4.16 +  element animation {
    4.17 +    TTAF.animation.attlist,
    4.18 +    TTAF.animation.content
    4.19    }
    4.20  
    4.21 -TTAF.set.attlist &=
    4.22 +TTAF.animation.attlist &=
    4.23 +  TTAF.Core.attrib.class
    4.24 +
    4.25 +TTAF.animation.content.extra = empty
    4.26 +TTAF.animation.content =
    4.27 +  (TTAF.Metadata.class*,
    4.28 +   TTAF.animation.animate*,
    4.29 +   TTAF.animation.content.extra*)
    4.30 +
    4.31 +# animate - general animation
    4.32 +TTAF.animation.animate =
    4.33 +  element animate {
    4.34 +    TTAF.animation.animate.attlist,
    4.35 +    TTAF.animation.animate.content
    4.36 +  }
    4.37 +
    4.38 +TTAF.animation.animate.attlist &=
    4.39 +  TTAF.Core.attrib.class,
    4.40 +  TTAF.Styled.attrib.class,
    4.41 +  TTAF.Timed.attrib.class,
    4.42 +  attribute accumulate { TTAF.Accumulate.datatype }?,
    4.43 +  attribute additive { TTAF.Accumulate.datatype }?,
    4.44 +  attribute attributeName { TTAF.QualifiedName.datatype },
    4.45 +  attribute by { TTAF.AnimationValue.datatype }?,
    4.46 +  attribute calcMode { TTAF.CalcMode.datatype }?,
    4.47 +  attribute fill { TTAF.Fill.datatype }?,
    4.48 +  attribute from { TTAF.AnimationValue.datatype }?,
    4.49 +  attribute keySplines { TTAF.KeySplines.datatype }?,
    4.50 +  attribute keyTimes { TTAF.KeyTimes.datatype }?,
    4.51 +  attribute repeatCount { TTAF.RepeatCount.datatype }?,
    4.52 +  attribute repeatDur { TTAF.RepeatDur.datatype }?,
    4.53 +  attribute to { TTAF.AnimationValue.datatype }?,
    4.54 +  attribute values { TTAF.AnimationValueList.datatype }?,
    4.55 +  attribute xlink:href { xsd:anyURI }?
    4.56 +
    4.57 +TTAF.animation.animate.content.extra = empty
    4.58 +TTAF.animation.animate.content =
    4.59 +  (TTAF.Metadata.class*,
    4.60 +   TTAF.animation.animate.content.extra*)
    4.61 +
    4.62 +# set - discrete animation
    4.63 +TTAF.animation.set =
    4.64 +  element set {
    4.65 +    TTAF.animation.set.attlist,
    4.66 +    TTAF.animation.set.content
    4.67 +  }
    4.68 +
    4.69 +TTAF.animation.set.attlist &=
    4.70    TTAF.Core.attrib.class,
    4.71    TTAF.Styled.attrib.class,
    4.72    TTAF.Timed.attrib.class
    4.73  
    4.74 -TTAF.set.content.extra = empty
    4.75 -TTAF.set.content =
    4.76 +TTAF.animation.set.content.extra = empty
    4.77 +TTAF.animation.set.content =
    4.78    (TTAF.Metadata.class*,
    4.79 -   TTAF.set.content.extra*)
    4.80 +   TTAF.animation.set.content.extra*)
    4.81  
    4.82  TTAF.Animation.extra = empty
    4.83  TTAF.Animation.class |=
    4.84 -  TTAF.set |
    4.85 +  TTAF.animation.animate |
    4.86 +  TTAF.animation.set |
    4.87    TTAF.Animation.extra
    4.88  
    4.89  # .......................................................................
     5.1 --- a/ttml2/spec/rnc/ttml2-datatypes.rnc	Sun Aug 25 11:03:10 2013 -0600
     5.2 +++ b/ttml2/spec/rnc/ttml2-datatypes.rnc	Mon Aug 26 19:04:37 2013 -0600
     5.3 @@ -2,15 +2,35 @@
     5.4  # TT-AF 1.0 DFXP Datatypes Module .......................................
     5.5  # .......................................................................
     5.6  
     5.7 -TTAF.Alpha.datatype =
     5.8 -  xsd:float
     5.9 +TTAF.Accumulate.datatype =
    5.10 +  "none" |
    5.11 +  "sum"
    5.12 +
    5.13 +TTAF.Additive.datatype =
    5.14 +  "replace" |
    5.15 +  "sum"
    5.16  
    5.17  TTAF.Agent.datatype =
    5.18    xsd:IDREFS
    5.19  
    5.20 +TTAF.Alpha.datatype =
    5.21 +  xsd:float
    5.22 +
    5.23 +TTAF.AnimationValue.datatype =
    5.24 +  string
    5.25 +
    5.26 +TTAF.AnimationValueList.datatype =
    5.27 +  string
    5.28 +
    5.29  TTAF.Border.datatype =
    5.30    string
    5.31  
    5.32 +TTAF.CalcMode.datatype =
    5.33 +  "discrete" |
    5.34 +  "linear" |
    5.35 +  "displace" |
    5.36 +  "spline"
    5.37 +
    5.38  TTAF.CellResolution.datatype =
    5.39    string
    5.40  
    5.41 @@ -61,6 +81,10 @@
    5.42   "use"      |
    5.43   "prohibited"
    5.44  
    5.45 +TTAF.Fill.datatype =
    5.46 +  "freeze" |
    5.47 +  "remove"
    5.48 +
    5.49  TTAF.FontFamily.datatype =
    5.50    string
    5.51  
    5.52 @@ -76,12 +100,21 @@
    5.53    "normal" |
    5.54    "bold"
    5.55  
    5.56 +TTAF.FragmentIdentifier.datatype =
    5.57 +  xsd:anyURI
    5.58 +
    5.59  TTAF.FrameRate.datatype =
    5.60    xsd:positiveInteger
    5.61  
    5.62  TTAF.FrameRateMultiplier.datatype =
    5.63    xsd:string { pattern = "\p{Nd}+\s+\p{Nd}+" }
    5.64  
    5.65 +TTAF.KeySplines.datatype =
    5.66 +  string
    5.67 +
    5.68 +TTAF.KeyTimes.datatype =
    5.69 +  string
    5.70 +
    5.71  TTAF.LanguageCode.datatype =
    5.72    "" |
    5.73    xsd:language
    5.74 @@ -150,6 +183,15 @@
    5.75   "union  " |
    5.76   "intersection"
    5.77  
    5.78 +TTAF.QualifiedName.datatype =
    5.79 +  xsd:QName
    5.80 +
    5.81 +TTAF.RepeatCount.datatype =
    5.82 +  string
    5.83 +
    5.84 +TTAF.RepeatDur.datatype =
    5.85 +  string
    5.86 +
    5.87  TTAF.Role.datatype =
    5.88    list { TTAF.RoleItem.datatype+ }
    5.89  
     6.1 --- a/ttml2/spec/rnc/ttml2-head.rnc	Sun Aug 25 11:03:10 2013 -0600
     6.2 +++ b/ttml2/spec/rnc/ttml2-head.rnc	Mon Aug 26 19:04:37 2013 -0600
     6.3 @@ -18,6 +18,7 @@
     6.4     TTAF.Parameters.class*,
     6.5     TTAF.styling?,
     6.6     TTAF.layout?,
     6.7 +   TTAF.animation?,
     6.8     TTAF.head.content.extra*)
     6.9  
    6.10  # .......................................................................
     7.1 --- a/ttml2/spec/ttml2-changes.html	Sun Aug 25 11:03:10 2013 -0600
     7.2 +++ b/ttml2/spec/ttml2-changes.html	Mon Aug 26 19:04:37 2013 -0600
     7.3 @@ -33,6 +33,13 @@
     7.4  <pre>
     7.5  <span class="strong">Technical Changes</span>
     7.6  
     7.7 +* In 5.3.1, add new animation vocabulary, 'animation' and 'animate', to Table 3.
     7.8 +
     7.9 +* In 5.3.1, add new animation vocabulary, 'animate' to Animation.class in Table 4.
    7.10 +
    7.11 +* In 5.3.1, add new attribute vocabulary, 'tts:border' and 'tts:textOrientation'
    7.12 +  to Table 5.
    7.13 +
    7.14  * In 6.1.1, add 'combine' attribute to ttp:profile element, including normative
    7.15    processing semantics.
    7.16  
    7.17 @@ -42,6 +49,9 @@
    7.18  * In 6.1.5, add 'prohibited' value to 'value' attribute of ttp:extension element,
    7.19    including normative processing semantics.
    7.20  
    7.21 +* In 7.1.2, add new 'animation' container element as optional child of 'head'
    7.22 +  element.
    7.23 +
    7.24  * In 7.1.7, add region attribute to 'br' element.
    7.25  
    7.26  * In 7.1.7, add timing attributes to 'br' element.
    7.27 @@ -64,9 +74,15 @@
    7.28  * In 8.4.4, add semantics for determining specified style set and computed style set
    7.29    for 'set' element.
    7.30  
    7.31 -* In 11.1.1, add 'style' attribute to 'set' element.
    7.32 +* In 11, add new sub-section (11.3) defining animation specific value expressions.
    7.33  
    7.34 -* In 11.1.1, permit multiple attributes from TT Style Namespace on 'set' element.
    7.35 +* In 11.1, add 'animate' element.
    7.36 +
    7.37 +* In 11.1, add 'animation' element.
    7.38 +
    7.39 +* In 11.1.3, add 'style' attribute to 'set' element.
    7.40 +
    7.41 +* In 11.1.3, permit multiple attributes from TT Style Namespace on 'set' element.
    7.42  
    7.43  * In Appendix C, remove contents for mediate type registration, since registration
    7.44    has (will have) already occurred (by the time TTML2 goes to FPWD).
    7.45 @@ -75,8 +91,6 @@
    7.46  
    7.47  * In Appendix F, add #border and #textOrientation feature designators in standard profiles.
    7.48  
    7.49 -* In Appendix J, add derivation of tts:border and tts:textOrientation attributes.
    7.50 -
    7.51  * In Appendix O, change appendix designation to normative, effectively changing
    7.52    the informative concrete encoding recommendation to a normative recommendation.
    7.53  
    7.54 @@ -87,7 +101,21 @@
    7.55  
    7.56  * In 8.2, add note about the use of non-applicable style attributes.
    7.57  
    7.58 +* In Appendix G, add (normative) reference to RFC2396 (URI).
    7.59 +
    7.60 +* In Appendix G, move SVG1.1 reference from Appendix H and update to Second Edition.
    7.61 +
    7.62  * In Appendix H, add (non-normative) reference to CSS Writing Modes Level 3.
    7.63 +
    7.64 +* In Appendix H, add (non-normative) reference to TTML1.
    7.65 +
    7.66 +* In Appendix H, update SMIL reference to SMIL3.0.
    7.67 +
    7.68 +* In Appendix J, add derivation of tt:animate and tt:animation elements.
    7.69 +
    7.70 +* In Appendix J, add derivation of tts:border and tts:textOrientation attributes.
    7.71 +
    7.72 +* Update SMIL section number references to track SMIL3.
    7.73  </pre>
    7.74  </div>
    7.75  </div>
     8.1 --- a/ttml2/spec/ttml2.xml	Sun Aug 25 11:03:10 2013 -0600
     8.2 +++ b/ttml2/spec/ttml2.xml	Mon Aug 26 19:04:37 2013 -0600
     8.3 @@ -120,7 +120,7 @@
     8.4  for example, providing a standard content format to reference from a <el>&lt;track&gt;</el>
     8.5  element in an HTML5 document, or a <el>&lt;text&gt;</el> or 
     8.6  <el>&lt;textstream&gt;</el> media element in a <bibref
     8.7 -ref="smil21"/> document.</p>
     8.8 +ref="smil3"/> document.</p>
     8.9  </abstract>
    8.10  &status;
    8.11  <langusage><language id='en-us'>English</language></langusage>
    8.12 @@ -144,7 +144,7 @@
    8.13  example, a standard content format to reference from a <el>&lt;track&gt;</el>
    8.14  element in an HTML5 document, or a <el>&lt;text&gt;</el> or 
    8.15  <el>&lt;textstream&gt;</el> media element in a <bibref
    8.16 -ref="smil21"/> document. Certain properties of TTML support
    8.17 +ref="smil3"/> document. Certain properties of TTML support
    8.18  streamability of content, as described in <specref ref="streaming"/>.</p>
    8.19  <note>
    8.20  <p>While TTML is not expressly designed for direct (embedded) integration into an
    8.21 @@ -736,8 +736,8 @@
    8.22  <gitem>
    8.23  <label>Synthetic Document Syncbase</label>
    8.24  <def>
    8.25 -<p>A document level <xspecref href="http://www.w3.org/TR/2005/REC-SMIL2-20051213/smil-timing.html#Timing-Syncbases">syncbase</xspecref>
    8.26 -<bibref ref="smil21"/>, &sect; 10.7.1, synthesized or otherwise established by
    8.27 +<p>A document level <xspecref href="http://www.w3.org/TR/2008/REC-SMIL3-20081201/smil30.html#smil-timing-q158">syncbase</xspecref>
    8.28 +<bibref ref="smil3"/>, &sect; 5.7.1, synthesized or otherwise established by
    8.29  the <emph>Document Processing Context</emph> in accordance with the
    8.30  <emph>Related Media Object</emph> or other processing criteria.</p>
    8.31  </def>
    8.32 @@ -1447,6 +1447,8 @@
    8.33  Animation
    8.34  </td>
    8.35  <td>
    8.36 +<loc href="#animation-vocabulary-animate">animate</loc>,
    8.37 +<loc href="#animation-vocabulary-animation">animation</loc>,
    8.38  <loc href="#animation-vocabulary-set">set</loc>
    8.39  </td>
    8.40  </tr>
    8.41 @@ -1545,6 +1547,7 @@
    8.42  Animation.class
    8.43  </td>
    8.44  <td>
    8.45 +<loc href="#animation-vocabulary-animate">animate</loc> |
    8.46  <loc href="#animation-vocabulary-set">set</loc>
    8.47  </td>
    8.48  </tr>
    8.49 @@ -2821,7 +2824,7 @@
    8.50  <note role="explanation">
    8.51  <p>When the time base is designated as <code>smpte</code>,
    8.52  every time expression denotes a media marker value akin to that
    8.53 -defined by <bibref ref="smil21"/>, &sect; 10.4.1, except instead
    8.54 +defined by <bibref ref="smil3"/>, &sect; 5.4.1, except instead
    8.55  of using an opaque marker name, a structured <bibref ref="smpte12m"/>
    8.56  time coordinate serves as the marker name.</p>
    8.57  </note>
    8.58 @@ -2938,7 +2941,8 @@
    8.59  followed by zero or more elements in the
    8.60  <code>Parameters.class</code> element group,
    8.61  followed by zero or one <el>styling</el> element,
    8.62 -followed by zero or one <el>layout</el> element.</p>
    8.63 +followed by zero or one <el>layout</el> element,
    8.64 +followed by zero or one <el>animation</el> element.</p>
    8.65  <p>Any metadata specified by children in the <code>Metadata.class</code>
    8.66  element group applies semantically to the <emph>Document Instance</emph> as a
    8.67  whole, and not just the <el>head</el> element.</p>
    8.68 @@ -2950,6 +2954,9 @@
    8.69  <loc href="#element-vocab-type-content">Content</loc> elements.</p>
    8.70  <p>A <el>layout</el> child element is used to specify layout constructs that
    8.71  are referenced by <loc href="#element-vocab-type-content">Content</loc> elements.</p>
    8.72 +<p>An <el>animation</el> child element is used to specify animation constructs that
    8.73 +target animatable <loc href="#element-vocab-type-content">Content</loc>
    8.74 +or <loc href="#element-vocab-type-layout">Layout</loc> elements.</p>
    8.75  <table id="elt-syntax-head" role="syntax">
    8.76  <caption>XML Representation &ndash; Element Information Item: head</caption>
    8.77  <tbody>
    8.78 @@ -2961,7 +2968,7 @@
    8.79    <loc href="#content-attribute-lang">xml:lang</loc> = string
    8.80    <loc href="#content-attribute-space">xml:space</loc> = (<emph>default</emph>|<emph>preserve</emph>)
    8.81    {<emph>any attribute not in default or any TT namespace</emph>}&gt;
    8.82 -  <emph>Content:</emph> <loc href="#element-vocab-group-table">Metadata.class</loc>*, <loc href="#element-vocab-group-table">Parameters.class</loc>*, <loc href="#styling-vocabulary-styling">styling</loc>?, <loc href="#layout-vocabulary-layout">layout</loc>?
    8.83 +  <emph>Content:</emph> <loc href="#element-vocab-group-table">Metadata.class</loc>*, <loc href="#element-vocab-group-table">Parameters.class</loc>*, <loc href="#styling-vocabulary-styling">styling</loc>?, <loc href="#layout-vocabulary-layout">layout</loc>?, <loc href="#animation-vocabulary-animation">animation</loc>?
    8.84  &lt;/head&gt;
    8.85  </eg>
    8.86  </td>
    8.87 @@ -3559,6 +3566,7 @@
    8.88  <p>The <att>style</att> attribute may be specified by an instance of the following
    8.89  element types:</p>
    8.90  <ulist>
    8.91 +<item><p><loc href="#animation-vocabulary-animate"><el>animate</el></loc></p></item>
    8.92  <item><p><loc href="#document-structure-vocabulary-body"><el>body</el></loc></p></item>
    8.93  <item><p><loc href="#content-vocabulary-div"><el>div</el></loc></p></item>
    8.94  <item><p><loc href="#content-vocabulary-p"><el>p</el></loc></p></item>
    8.95 @@ -5358,8 +5366,8 @@
    8.96  </table>
    8.97  <note role="derivation">
    8.98  <p>The semantics of the style property
    8.99 -represented by this attribute are based upon that defined by <bibref ref="smil21"/>,
   8.100 -&sect; 5.3.3.</p>
   8.101 +represented by this attribute are based upon that defined by <bibref ref="smil3"/>,
   8.102 +&sect; 7.4.2.</p>
   8.103  </note>
   8.104  </div3>
   8.105  <div3 id="style-attribute-textAlign">
   8.106 @@ -6603,11 +6611,9 @@
   8.107  <item><p>a &lt;familyName&gt; that takes the form of a <code>quoted-string</code> whose content (unquoted value)
   8.108  matches (by case sensitive comparison) a &lt;genericFamilyName&gt; must not be interpreted as that &lt;genericFamilyName&gt;, but as
   8.109  the actual name of a non-generic font family.</p></item>
   8.110 +<item><p>The syntactic element <emph><code>char</code></emph> is to be interpreted according
   8.111 +to the <code>Char</code> production defined by <bibref ref="xml10"/>&nbsp;&sect;2.2.</p></item>
   8.112  </ulist>
   8.113 -<note role="notation">
   8.114 -<p>The syntactic element <emph><code>char</code></emph> is to be interpreted according
   8.115 -to the <code>Char</code> production defined by <bibref ref="xml10"/>&nbsp;&sect;2.2.</p>
   8.116 -</note>
   8.117  <note role="elaboration">
   8.118  <p>The <code>{unicode}</code> escape mechanism defined by <bibref ref="css2"/>&nbsp;&sect;4.1.1
   8.119  is not supported by this syntax; rather, authors are expected to either (1) directly encode the character
   8.120 @@ -8078,7 +8084,7 @@
   8.121  <p>The begin point of a temporal interval is included in the
   8.122  interval; i.e., the interval is left-wise closed.</p>
   8.123  <p>The semantics of the <att>begin</att> attribute are those defined
   8.124 -by <bibref ref="smil21"/>, &sect; 10.4.1,
   8.125 +by <bibref ref="smil3"/>, &sect; 5.4.1,
   8.126  while taking into account any overriding semantics defined by this specification.</p>
   8.127  </div3>
   8.128  <div3 id="timing-attribute-end">
   8.129 @@ -8102,7 +8108,7 @@
   8.130  as [300f,310f).</p>
   8.131  </note>
   8.132  <p>The semantics of the <att>end</att> attribute are those defined
   8.133 -by <bibref ref="smil21"/>, &sect; 10.4.1,
   8.134 +by <bibref ref="smil3"/>, &sect; 5.4.1,
   8.135  while taking into account any overriding semantics defined by this specification.</p>
   8.136  </div3>
   8.137  <div3 id="timing-attribute-dur">
   8.138 @@ -8122,10 +8128,10 @@
   8.139  mode, a (well-formed) <att>dur</att> attribute must not be specified on any
   8.140  element.</p>
   8.141  <p>The semantics of the <att>dur</att> attribute are those defined
   8.142 -by <bibref ref="smil21"/>, &sect; 10.4.1,
   8.143 +by <bibref ref="smil3"/>, &sect; 5.4.1,
   8.144  while taking into account any overriding semantics defined by this specification.</p>
   8.145  <note role="elaboration">
   8.146 -<p>In the context of the subset of <bibref ref="smil21"/> semantics supported by
   8.147 +<p>In the context of the subset of <bibref ref="smil3"/> semantics supported by
   8.148  this specification, the active duration of an element that specifies both
   8.149  <att>end</att> and <att>dur</att> attributes is equal to the lesser of the value of
   8.150  the <att>dur</att> attribute and the difference between the value of the
   8.151 @@ -8147,11 +8153,11 @@
   8.152  parallel, i.e., simultaneously in time. Furthermore, the specification of
   8.153  the time interval of each child element is considered to be relative to the temporal
   8.154  interval of the container element instance. For the purpose of determining the
   8.155 -<bibref ref="smil21"/> <code>endsync</code> semantics of a <code>par</code>
   8.156 +<bibref ref="smil3"/> <code>endsync</code> semantics of a <code>par</code>
   8.157  time container, a default value of <code>all</code> applies.</p>
   8.158  <note role="elaboration">
   8.159  <p>The use of a default value of <code>all</code> for the <code>endsync</code>
   8.160 -behavior is distinct from <bibref ref="smil21"/> which uses a default value
   8.161 +behavior is distinct from <bibref ref="smil3"/> which uses a default value
   8.162  of <code>last</code>.</p>
   8.163  </note>
   8.164  <p>If the time container semantics of an element instance is <code>seq</code>,
   8.165 @@ -8174,7 +8180,7 @@
   8.166  <item><p><loc href="#content-vocabulary-span"><el>span</el></loc></p></item>
   8.167  </ulist>
   8.168  <p>The semantics of parallel and sequential time
   8.169 -containment are those defined by <bibref ref="smil21"/>, &sect; 10.4.2,
   8.170 +containment are those defined by <bibref ref="smil3"/>, &sect; 5.4.2,
   8.171  while taking into account any overriding semantics defined by this specification.</p>
   8.172  </div3>
   8.173  </div2>
   8.174 @@ -8273,7 +8279,7 @@
   8.175  <div2 id="timing-time-intervals">
   8.176  <head>Time Intervals</head>
   8.177  <p>The semantics of time containment, durations, and intervals defined by
   8.178 -<bibref ref="smil21"/> apply to the interpretation of like-named timed elements and timing
   8.179 +<bibref ref="smil3"/> apply to the interpretation of like-named timed elements and timing
   8.180  vocabulary defined by this specification, given the following
   8.181  constraints:</p>
   8.182  <ulist>
   8.183 @@ -8281,7 +8287,7 @@
   8.184  <p>The implicit duration of an anonymous span is defined as follows: if
   8.185  the anonymous span's parent time container is a parallel time container, then
   8.186  the implicit duration is equivalent to the <code>indefinite</code>
   8.187 -duration value as defined by <bibref ref="smil21"/>; if the anonymous span's
   8.188 +duration value as defined by <bibref ref="smil3"/>; if the anonymous span's
   8.189  parent time container is a sequential time container, then the implicit duration
   8.190  is equivalent to zero.</p>
   8.191  </item>
   8.192 @@ -8290,30 +8296,30 @@
   8.193  or <el>span</el> element is determined in accordance to (1) whether
   8.194  the element is a parallel or sequential time container, (2) the default
   8.195  <code>endsync</code> semantics defined above by <specref ref="timing-attribute-timeContainer"/>,
   8.196 -and (3) the semantics of <bibref ref="smil21"/> as applied to these time
   8.197 +and (3) the semantics of <bibref ref="smil3"/> as applied to these time
   8.198  containers.</p>
   8.199  </item>
   8.200  <item>
   8.201  <p>The implicit duration of the <el>region</el> element is defined to
   8.202  be equivalent to the <code>indefinite</code>
   8.203 -duration value as defined by <bibref ref="smil21"/>.</p>
   8.204 +duration value as defined by <bibref ref="smil3"/>.</p>
   8.205  </item>
   8.206  <item>
   8.207  <p>If the governing time base is <code>clock</code>, then time
   8.208  expressions are considered to be equivalent to wall-clock
   8.209 -based timing in <bibref ref="smil21"/>, where the specific semantics of
   8.210 +based timing in <bibref ref="smil3"/>, where the specific semantics of
   8.211  <specref ref="time-expression-semantics-clock"/> apply.</p>
   8.212  </item>
   8.213  <item>
   8.214  <p>If the governing time base is <code>media</code>, then time
   8.215  expressions are considered to be equivalent to offset based timing
   8.216 -in <bibref ref="smil21"/>, where the specific semantics of
   8.217 +in <bibref ref="smil3"/>, where the specific semantics of
   8.218  <specref ref="time-expression-semantics-media"/> apply.</p>
   8.219  </item>
   8.220  <item>
   8.221  <p>If the governing time base is <code>smpte</code>, then time
   8.222  expressions are considered to be equivalent to either offset
   8.223 -based timing or event based timing in <bibref ref="smil21"/>, where the specific semantics of
   8.224 +based timing or event based timing in <bibref ref="smil3"/>, where the specific semantics of
   8.225  <specref ref="time-expression-semantics-smpte"/> apply.</p>
   8.226  </item>
   8.227  </ulist>
   8.228 @@ -8331,8 +8337,175 @@
   8.229  <p>The following elements specify the structure and principal animation aspects of a
   8.230  <emph>Document Instance</emph>:</p>
   8.231  <ulist>
   8.232 +<item><p><specref ref="animation-vocabulary-animation"/></p></item>
   8.233 +<item><p><specref ref="animation-vocabulary-animate"/></p></item>
   8.234  <item><p><specref ref="animation-vocabulary-set"/></p></item>
   8.235  </ulist>
   8.236 +<div3 id="animation-vocabulary-animation">
   8.237 +<head>animation</head>
   8.238 +<p>The <el>animation</el> element is a container element used to group
   8.239 +animation matter, including metadata that applies to animation matter.</p>
   8.240 +<p>The <el>animation</el> element accepts as its children zero or more
   8.241 +elements in the <code>Metadata.class</code> element group, followed by
   8.242 +zero or more <el>animate</el> elements.</p>
   8.243 +<table id="elt-syntax-animation" role="syntax">
   8.244 +<caption>XML Representation &ndash; Element Information Item: animation</caption>
   8.245 +<tbody>
   8.246 +<tr>
   8.247 +<td>
   8.248 +<eg xml:space="preserve">
   8.249 +&lt;animation
   8.250 +  <loc href="#content-attribute-id">xml:id</loc> = ID
   8.251 +  <loc href="#content-attribute-lang">xml:lang</loc> = string
   8.252 +  <loc href="#content-attribute-space">xml:space</loc> = (<emph>default</emph>|<emph>preserve</emph>)
   8.253 +  {<emph>any attribute not in default or any TT namespace</emph>}&gt;
   8.254 +  <emph>Content:</emph> <loc href="#element-vocab-group-table">Metadata.class</loc>*, <loc href="#animation-vocabulary-animate">animate</loc>*
   8.255 +&lt;/animation&gt;
   8.256 +</eg>
   8.257 +</td>
   8.258 +</tr>
   8.259 +</tbody>
   8.260 +</table>
   8.261 +<p>To the extent that time semantics apply to the content of the
   8.262 +<el>animation</el> element, the implied time interval of this element is
   8.263 +defined to be coterminous with the <emph>Root Temporal Extent</emph>.</p>
   8.264 +</div3>
   8.265 +<div3 id="animation-vocabulary-animate">
   8.266 +<head>animate</head>
   8.267 +<p>The <el>animate</el> element expresses a series of changes (animations) to be applied to a targetted attribute
   8.268 +of a targetted element.</p>
   8.269 +<p>An <el>animate</el> element may appear as either (1) a child of a
   8.270 +<loc href="#element-vocab-type-content">Content</loc> or <el>region</el> element or
   8.271 +(2) a child of an <loc href="#animation-vocabulary-animation">animation</loc> element. In the former
   8.272 +case, the targetted element of the animation is the parent of the <el>animate</el> element; in the latter
   8.273 +case, the targetted element is the element referenced by the <att>xlink:href</att> attribute on the
   8.274 +<el>animate</el> element.</p>
   8.275 +<p>The targetted attribute (property) is specified by the <att>attributeName</att> attribute.</p>
   8.276 +<p>The <el>animate</el> element accepts as its children zero or more
   8.277 +elements in the <code>Metadata.class</code> element group.</p>
   8.278 +<table id="elt-syntax-animate" role="syntax">
   8.279 +<caption>XML Representation &ndash; Element Information Item: animate</caption>
   8.280 +<tbody>
   8.281 +<tr>
   8.282 +<td>
   8.283 +<eg xml:space="preserve">
   8.284 +&lt;animate
   8.285 +  accumulate = <loc href="#animation-value-accumulate">&lt;accumulate&gt;</loc>
   8.286 +  additive = <loc href="#animation-value-additive">&lt;additive&gt;</loc>
   8.287 +  <phrase role="strong">attributeName</phrase> = <loc href="#animation-value-qualifiedName">&lt;qualifiedName&gt;</loc>
   8.288 +  <loc href="#timing-attribute-begin">begin</loc> = <loc href="#timing-value-timeExpression">&lt;timeExpression&gt;</loc>
   8.289 +  by = <loc href="#animation-value-animationValue">&lt;animationValue&gt;</loc>
   8.290 +  calcMode = <loc href="#animation-value-calcMode">&lt;calcMode&gt;</loc>
   8.291 +  <loc href="#timing-attribute-dur">dur</loc> = <loc href="#timing-value-timeExpression">&lt;timeExpression&gt;</loc>
   8.292 +  <loc href="#timing-attribute-end">end</loc> = <loc href="#timing-value-timeExpression">&lt;timeExpression&gt;</loc>
   8.293 +  fill = <loc href="#animation-value-fill">&lt;fill&gt;</loc>
   8.294 +  from = <loc href="#animation-value-animationValue">&lt;animationValue&gt;</loc>
   8.295 +  keySplines = <loc href="#animation-value-keySplines">&lt;keySplines&gt;</loc>
   8.296 +  keyTimes = <loc href="#animation-value-keyTimes">&lt;keyTimes&gt;</loc>
   8.297 +  repeatCount = <loc href="#animation-value-repeatCount">&lt;repeatCount&gt;</loc>
   8.298 +  repeatDur = <loc href="#animation-value-repeatDur">&lt;repeatDur&gt;</loc>
   8.299 +  <loc href="#style-attribute-style">style</loc> = IDREFS
   8.300 +  to = <loc href="#animation-value-animationValue">&lt;animationValue&gt;</loc>
   8.301 +  values = <loc href="#animation-value-animationValueList">&lt;animationValueList&gt;</loc>
   8.302 +  <loc href="#content-attribute-id">xlink:href</loc> = <loc href="#animation-value-fragmentIdentifier">&lt;fragmentIdentifier&gt;</loc>
   8.303 +  <loc href="#content-attribute-id">xml:id</loc> = ID
   8.304 +  <loc href="#content-attribute-lang">xml:lang</loc> = string
   8.305 +  <loc href="#content-attribute-space">xml:space</loc> = (<emph>default</emph>|<emph>preserve</emph>)
   8.306 +  {<emph>any attribute not in default or any TT namespace</emph>}&gt;
   8.307 +  <emph>Content:</emph> <loc href="#element-vocab-group-table">Metadata.class</loc>*
   8.308 +&lt;/animate&gt;
   8.309 +</eg>
   8.310 +</td>
   8.311 +</tr>
   8.312 +</tbody>
   8.313 +</table>
   8.314 +<p/>
   8.315 +<p>Except for the constraints or variations enumerated below, the semantics of the <el>animate</el> element and its attributes
   8.316 +enumerated above are defined to be those specified by <bibref ref="svg11"/>, &sect;19.2.12:</p>
   8.317 +<olist>
   8.318 +<item><p>For the purpose of interpreting an <att>attributeName</att> attribute, an <att>attributeType</att>
   8.319 +with a value of <code>XML</code> applies, about which see <bibref ref="svg11"/>, &sect;19.2.5.</p></item>
   8.320 +<item><p>If no <att>accumulate</att> attribute is specified, then an <emph>accumlate</emph> value of <code>none</code> applies.</p></item>
   8.321 +<item><p>If no <att>additive</att> attribute is specified, then an <emph>additive</emph> value of <code>replace</code> applies.</p></item>
   8.322 +<item><p>If no <att>calcMode</att> attribute is specified, then a <emph>calcMode</emph> value of <code>linear</code> applies.</p></item>
   8.323 +<item><p>If no <att>fill</att> attribute is specified, then a <emph>fill</emph> value of <code>remove</code> applies.</p></item>
   8.324 +<item><p>If an <att>xlink:href</att> attribute is specified, then the <el>animate</el> element must be a child of an
   8.325 +<loc href="#animation-vocabulary-animation">animation</loc> element; conversely, if an <el>animate</el> element is a child of
   8.326 +an <loc href="#animation-vocabulary-animation">animation</loc> element, then it must specify an <att>xlink:href</att> attribute.</p></item>
   8.327 +</olist>
   8.328 +<p>An example of using the <el>animate</el> element to animate content
   8.329 +styling is illustrated below:</p>
   8.330 +<table id="animation-vocabulary-animate-example-1" role="example">
   8.331 +<caption>Example Fragment &ndash; Content Style Animation</caption>
   8.332 +<tbody>
   8.333 +<tr>
   8.334 +<td>
   8.335 +<eg xml:space="preserve">
   8.336 +...
   8.337 +&lt;p dur="5s" tts:color="yellow"&gt;
   8.338 +<phrase role="strong">&lt;animate attributeName="tts:color" values="yellow,red,green,blue,yellow"/&gt;</phrase>
   8.339 +Text with Continuously Varying Colors!
   8.340 +&lt;/p&gt;
   8.341 +...
   8.342 +</eg>
   8.343 +</td>
   8.344 +</tr>
   8.345 +</tbody>
   8.346 +</table>
   8.347 +<note role="explanation">
   8.348 +<p>In the above example, the foreground color of the content "Text
   8.349 +with Continuously Varying Colors!" is continuously animated from yellow, to red, to green, to
   8.350 +red, then back to yellow over a 5 second period.</p>
   8.351 +</note>
   8.352 +
   8.353 +<p>An example of using the <el>animate</el> element to animate region
   8.354 +styling is illustrated below:</p>
   8.355 +<table id="animation-vocabulary-animate-example-2" role="example">
   8.356 +<caption>Example Fragment &ndash; Region Style Animation</caption>
   8.357 +<tbody>
   8.358 +<tr>
   8.359 +<td>
   8.360 +<eg xml:space="preserve">
   8.361 +&lt;tt xml:lang="" xmlns="http://www.w3.org/ns/ttml"
   8.362 +    xmlns:ttp="http://www.w3.org/ns/ttml#parameter"
   8.363 +    xmlns:tts="http://www.w3.org/ns/ttml#styling"
   8.364 +    ttp:extent="640px 480px"&gt;
   8.365 +    &lt;head&gt;
   8.366 +      &lt;layout&gt;
   8.367 +	&lt;region xml:id="r1" timeContainer="seq" tts:opacity="0"&gt;
   8.368 +	  <phrase role="strong">&lt;animate dur="1s" attributeName="tts:opacity" to="1"/&gt;</phrase>
   8.369 +	  &lt;set dur="5s" tts:opacity="1"/&gt;
   8.370 +	  <phrase role="strong">&lt;animate dur="1s" attributeName="tts:opacity" to="0"/&gt;</phrase>
   8.371 +	  &lt;style tts:extent="480px 60px"/&gt;
   8.372 +	  &lt;style tts:origin="80px 400px"/&gt;
   8.373 +	&lt;/region&gt;
   8.374 +      &lt;/layout&gt;
   8.375 +    &lt;/head&gt;
   8.376 +    &lt;body region="r1"&gt;...&lt;/body&gt;
   8.377 +&lt;/tt&gt;
   8.378 +</eg>
   8.379 +</td>
   8.380 +</tr>
   8.381 +</tbody>
   8.382 +</table>
   8.383 +<note role="explanation">
   8.384 +<p>In the above example, a region, <code>r1</code>, is initially set to 0% opacity,
   8.385 +fully transparent, then is faded in to 100% opacity, fully opaque, over a one second
   8.386 +interval. Opacity remains at 100% for five more seconds, and then is faded out to 0%
   8.387 +over a one second interval, where it remains.</p>
   8.388 +</note>
   8.389 +<p></p>
   8.390 +<ednote>
   8.391 +<name>Animate Example Images</name>
   8.392 +<date>2013-08-25</date>
   8.393 +<edtext>Insert animated SVG images of animate examples.</edtext>
   8.394 +</ednote>
   8.395 +<note role="derivation">
   8.396 +<p>The semantics of the <el>animate</el> element
   8.397 +are based upon that defined by <bibref ref="svg11"/>,
   8.398 +&sect; 6.2.12, which, in turn, is based upon <bibref ref="smil3"/>, &sect;12.</p>
   8.399 +</note>
   8.400 +</div3>
   8.401  <div3 id="animation-vocabulary-set">
   8.402  <head>set</head>
   8.403  <p>The <el>set</el> element is used as a child element of a
   8.404 @@ -8399,7 +8572,7 @@
   8.405  </table>
   8.406  <note role="explanation">
   8.407  <p>In the above example, the foreground color of the content "Text
   8.408 -with Flashing Colors" is animated from yellow, to red, to green, to
   8.409 +with Flashing Colors!" is animated from yellow, to red, to green, to
   8.410  red, then back to yellow over a 5 second period.</p>
   8.411  </note>
   8.412  
   8.413 @@ -8442,10 +8615,16 @@
   8.414  create an effect of moving the region, which may be desirable so as
   8.415  to avoid obscuring characters in an underlying video with captions.</p>
   8.416  </note>
   8.417 +<p></p>
   8.418 +<ednote>
   8.419 +<name>Set Example Images</name>
   8.420 +<date>2013-08-25</date>
   8.421 +<edtext>Insert animated SVG images of set examples.</edtext>
   8.422 +</ednote>
   8.423  <note role="derivation">
   8.424  <p>The semantics of the <el>set</el> element
   8.425 -are based upon that defined by <bibref ref="smil21"/>,
   8.426 -&sect; 3.6.2.</p>
   8.427 +are based upon that defined by <bibref ref="svg11"/>,
   8.428 +&sect; 6.2.13, which, in turn, is based upon <bibref ref="smil3"/>, &sect;12.</p>
   8.429  </note>
   8.430  </div3>
   8.431  </div2>
   8.432 @@ -8454,6 +8633,346 @@
   8.433  <p>No animation related attribute vocabulary is defined for use in the
   8.434  core vocabulary catalog.</p>
   8.435  </div2>
   8.436 +<div2 id="animation-value-expressions">
   8.437 +<head>Animation Value Expressions</head>
   8.438 +<p>Animation attribute values include the use of the following expressions:</p>
   8.439 +<ulist>
   8.440 +<item><p><specref ref="animation-value-accumulate"/></p></item>
   8.441 +<item><p><specref ref="animation-value-additive"/></p></item>
   8.442 +<item><p><specref ref="animation-value-animationValue"/></p></item>
   8.443 +<item><p><specref ref="animation-value-animationValueList"/></p></item>
   8.444 +<item><p><specref ref="animation-value-calcMode"/></p></item>
   8.445 +<item><p><specref ref="animation-value-fill"/></p></item>
   8.446 +<item><p><specref ref="animation-value-fragmentIdentifier"/></p></item>
   8.447 +<item><p><specref ref="animation-value-keySplines"/></p></item>
   8.448 +<item><p><specref ref="animation-value-keyTimes"/></p></item>
   8.449 +<item><p><specref ref="animation-value-qualifiedName"/></p></item>
   8.450 +<item><p><specref ref="animation-value-repeatCount"/></p></item>
   8.451 +<item><p><specref ref="animation-value-repeatDur"/></p></item>
   8.452 +</ulist>
   8.453 +<div3 id="animation-value-accumulate">
   8.454 +<head>&lt;accumulate&gt;</head>
   8.455 +<p>An &lt;accumulate&gt; expression is used to control whether animation is cumulative or not.</p>
   8.456 +<table id="accumulate-syntax" role="syntax">
   8.457 +<caption>Syntax Representation &ndash; &lt;accumulate&gt;</caption>
   8.458 +<tbody>
   8.459 +<tr>
   8.460 +<td>
   8.461 +<eg xml:space="preserve">
   8.462 +&lt;accumulate&gt;
   8.463 +  : "none"
   8.464 +  | "sum"
   8.465 +</eg>
   8.466 +</td>
   8.467 +</tr>
   8.468 +</tbody>
   8.469 +</table>
   8.470 +<p>The semantics of an &lt;accumulate&gt; expression are those defined by
   8.471 +<bibref ref="svg11"/>, &sect;19.2.10.</p>
   8.472 +</div3>
   8.473 +<div3 id="animation-value-additive">
   8.474 +<head>&lt;additive&gt;</head>
   8.475 +<p>An &lt;additive&gt; expression is used to control whether animation is additive.</p>
   8.476 +<table id="additive-syntax" role="syntax">
   8.477 +<caption>Syntax Representation &ndash; &lt;additive&gt;</caption>
   8.478 +<tbody>
   8.479 +<tr>
   8.480 +<td>
   8.481 +<eg xml:space="preserve">
   8.482 +&lt;additive&gt;
   8.483 +  : "replace"
   8.484 +  | "sum"
   8.485 +</eg>
   8.486 +</td>
   8.487 +</tr>
   8.488 +</tbody>
   8.489 +</table>
   8.490 +<p>The semantics of an &lt;additive&gt; expression are those defined by
   8.491 +<bibref ref="svg11"/>, &sect;19.2.10.</p>
   8.492 +</div3>
   8.493 +<div3 id="animation-value-animationValue">
   8.494 +<head>&lt;animationValue&gt;</head>
   8.495 +<p>An &lt;animationValue&gt; expression is used to specify the starting (initial), intermediate,
   8.496 +or ending (final) of the attribute targetted by the animation.</p>
   8.497 +<table id="animationValue-syntax" role="syntax">
   8.498 +<caption>Syntax Representation &ndash; &lt;animationValue&gt;</caption>
   8.499 +<tbody>
   8.500 +<tr>
   8.501 +<td>
   8.502 +<eg xml:space="preserve">
   8.503 +&lt;animationValue&gt;
   8.504 +  : string
   8.505 +</eg>
   8.506 +</td>
   8.507 +</tr>
   8.508 +</tbody>
   8.509 +</table>
   8.510 +<p>The syntax of an &lt;animationValue&gt; expression must satisfy all syntax
   8.511 +requirements that apply to the attribute targetted by the animation.</p>
   8.512 +<p>The semantics of an &lt;animationValue&gt; expression are those defined by
   8.513 +<bibref ref="svg11"/>, &sect;19.2.9.</p>
   8.514 +</div3>
   8.515 +<div3 id="animation-value-animationValueList">
   8.516 +<head>&lt;animationValueList&gt;</head>
   8.517 +<p>An &lt;animationValueList&gt; expression is used to specify a list of animation values that sequentially
   8.518 +apply to the attribute targetted by the animation, wherein each pair of values is separated by a SEMICOLON (U+003B) character
   8.519 +optionally surrounded by linear white-space (LWSP) characters.</p>
   8.520 +<table id="animationValueList-syntax" role="syntax">
   8.521 +<caption>Syntax Representation &ndash; &lt;animationValueList&gt;</caption>
   8.522 +<tbody>
   8.523 +<tr>
   8.524 +<td>
   8.525 +<eg xml:space="preserve">
   8.526 +&lt;animationValueList&gt;
   8.527 +  : <loc href="#animation-value-animationValue">&lt;animationValue&gt;</loc> [ ";" <loc href="#animation-value-animationValue">&lt;animationValue&gt;</loc> ]*
   8.528 +</eg>
   8.529 +</td>
   8.530 +</tr>
   8.531 +</tbody>
   8.532 +</table>
   8.533 +<p>The syntax of an &lt;animationValue&gt; in an &lt;animationValueList&gt; expression must satisfy all syntax
   8.534 +requirements that apply to the attribute targetted by the animation.</p>
   8.535 +<p>The semantics of an &lt;animationValueList&gt; expression are those defined by
   8.536 +<bibref ref="svg11"/>, &sect;19.2.9.</p>
   8.537 +</div3>
   8.538 +<div3 id="animation-value-calcMode">
   8.539 +<head>&lt;calcMode&gt;</head>
   8.540 +<p>A &lt;calcMode&gt; expression is used to control the interpolation mode of the animation.</p>
   8.541 +<table id="calcMode-syntax" role="syntax">
   8.542 +<caption>Syntax Representation &ndash; &lt;calcMode&gt;</caption>
   8.543 +<tbody>
   8.544 +<tr>
   8.545 +<td>
   8.546 +<eg xml:space="preserve">
   8.547 +&lt;calcMode&gt;
   8.548 +  : "discrete"
   8.549 +  | "linear"
   8.550 +  | "displaced"
   8.551 +  | "spline"
   8.552 +</eg>
   8.553 +</td>
   8.554 +</tr>
   8.555 +</tbody>
   8.556 +</table>
   8.557 +<p>The semantics of a &lt;calcMode&gt; expression are those defined by
   8.558 +<bibref ref="svg11"/>, &sect;19.2.9.</p>
   8.559 +</div3>
   8.560 +<div3 id="animation-value-fill">
   8.561 +<head>&lt;fill&gt;</head>
   8.562 +<p>A &lt;fill&gt; expression is used to determine effect of the animation after the active end of the animation.</p>
   8.563 +<table id="fill-syntax" role="syntax">
   8.564 +<caption>Syntax Representation &ndash; &lt;fill&gt;</caption>
   8.565 +<tbody>
   8.566 +<tr>
   8.567 +<td>
   8.568 +<eg xml:space="preserve">
   8.569 +&lt;fill&gt;
   8.570 +  : "freeze"
   8.571 +  | "remove"
   8.572 +</eg>
   8.573 +</td>
   8.574 +</tr>
   8.575 +</tbody>
   8.576 +</table>
   8.577 +<p>The semantics of a &lt;fill&gt; expression are those defined by
   8.578 +<bibref ref="svg11"/>, &sect;19.2.8.</p>
   8.579 +</div3>
   8.580 +<div3 id="animation-value-fragmentIdentifier">
   8.581 +<head>&lt;fragmentIdentifier&gt;</head>
   8.582 +<p>A &lt;fragmentIdentifier&gt; expression is used to target (refer to) an animation to a specific element in the same <emph>Document Instance</emph>.</p>
   8.583 +<table id="fragmentIdentifier-syntax" role="syntax">
   8.584 +<caption>Syntax Representation &ndash; &lt;fragmentIdentifier&gt;</caption>
   8.585 +<tbody>
   8.586 +<tr>
   8.587 +<td>
   8.588 +<eg xml:space="preserve">
   8.589 +&lt;fragmentIdentifier&gt;
   8.590 +  : "#" fragment
   8.591 +
   8.592 +fragment
   8.593 +  : uric+
   8.594 +
   8.595 +uric
   8.596 +  : reserved
   8.597 +  | unreserved
   8.598 +  | escaped
   8.599 +
   8.600 +reserved
   8.601 +  : [;/?:@&amp;=+$,]
   8.602 +
   8.603 +unreserved
   8.604 +  : [a-zA-Z]
   8.605 +  | [0-9]
   8.606 +  | [-_.!~*'()]
   8.607 +
   8.608 +escaped
   8.609 +  : "%" hex hex
   8.610 +
   8.611 +hex
   8.612 +  : [0-9a-fA-F]
   8.613 +</eg>
   8.614 +</td>
   8.615 +</tr>
   8.616 +</tbody>
   8.617 +</table>
   8.618 +<p>Except for the constraints on syntax and semantics that follow below, the semantics of a &lt;fragmentIdentifier&gt;
   8.619 +expression are those defined to apply to an "&lt;iri&gt;" expression in <bibref ref="svg11"/>, &sect;19.2.4.</p>
   8.620 +<p>A &lt;fragmentIdentifer&gt; must adhere
   8.621 +to the <code>xsd:anyURI</code> data type defined by <bibref ref="xsd-2"/>. Furthermore, it
   8.622 +must adhere to the fragment identifer syntax defined by <bibref ref="uri"/>,
   8.623 +Section 4.1, and is a strict subset thereof, since at least one character must appear in
   8.624 +the fragment component.</p>
   8.625 +<p>No linear white-space (LWSP) is permitted to appear within a fragment identifier.</p>
   8.626 +<p>A &lt;fragmentIdentifer&gt; expression must refer to an element in the same <emph>Document Instance</emph>,
   8.627 +i.e., the fragment component must be a valid IDREF.</p>
   8.628 +</div3>
   8.629 +<div3 id="animation-value-keySplines">
   8.630 +<head>&lt;keySplines&gt;</head>
   8.631 +<p>An &lt;keySplines&gt; expression is used to specify a list of Bezier control points that control the pacing of an
   8.632 +animation, wherein each pair of values is separated by a SEMICOLON (U+003B) character
   8.633 +optionally surrounded by linear white-space (LWSP) characters.</p>
   8.634 +<table id="keySplines-syntax" role="syntax">
   8.635 +<caption>Syntax Representation &ndash; &lt;keySplines&gt;</caption>
   8.636 +<tbody>
   8.637 +<tr>
   8.638 +<td>
   8.639 +<eg xml:space="preserve">
   8.640 +&lt;keySplines&gt;
   8.641 +  : control [ lwsp? ";" lwsp? control ]*
   8.642 +
   8.643 +control
   8.644 +  : x1 comma? y1 comma? x2 comma? y2
   8.645 +
   8.646 +x1, x2, y1, y2
   8.647 +  : coordinate
   8.648 +
   8.649 +coordinate                                // 0 &ge; <emph>value</emph> &ge; 1
   8.650 +  : whole
   8.651 +  | whole "." fraction
   8.652 +  | "." fraction
   8.653 +
   8.654 +whole, fraction
   8.655 +  : <loc href="#style-value-digit">&lt;digit&gt;</loc>+
   8.656 +
   8.657 +comma
   8.658 +  : ","
   8.659 +
   8.660 +lwsp
   8.661 +  : ( ' ' | '\t' | '\n' | '\r' )+
   8.662 +</eg>
   8.663 +</td>
   8.664 +</tr>
   8.665 +</tbody>
   8.666 +</table>
   8.667 +<p>The semantics of a &lt;keySplines&gt; expression are those defined by
   8.668 +<bibref ref="svg11"/>, &sect;19.2.9, as apply to the <att>keySplines</att> attribute.</p>
   8.669 +</div3>
   8.670 +<div3 id="animation-value-keyTimes">
   8.671 +<head>&lt;keyTimes&gt;</head>
   8.672 +<p>An &lt;keyTimes&gt; expression is used to specify a list of relative time values that control the pacing of an
   8.673 +animation, wherein each pair of values is separated by a SEMICOLON (U+003B) character
   8.674 +optionally surrounded by linear white-space (LWSP) characters.</p>
   8.675 +<table id="keyTimes-syntax" role="syntax">
   8.676 +<caption>Syntax Representation &ndash; &lt;keyTimes&gt;</caption>
   8.677 +<tbody>
   8.678 +<tr>
   8.679 +<td>
   8.680 +<eg xml:space="preserve">
   8.681 +&lt;keyTimes&gt;
   8.682 +  : time [ lwsp? ";" lwsp? time ]*
   8.683 +
   8.684 +time                                // 0 &ge; <emph>value</emph> &ge; 1
   8.685 +  : whole
   8.686 +  | whole "." fraction
   8.687 +  | "." fraction
   8.688 +
   8.689 +whole, fraction
   8.690 +  : <loc href="#style-value-digit">&lt;digit&gt;</loc>+
   8.691 +
   8.692 +lwsp
   8.693 +  : ( ' ' | '\t' | '\n' | '\r' )+
   8.694 +</eg>
   8.695 +</td>
   8.696 +</tr>
   8.697 +</tbody>
   8.698 +</table>
   8.699 +<p>The semantics of a &lt;keyTimes&gt; expression are those defined by
   8.700 +<bibref ref="svg11"/>, &sect;19.2.9, as apply to the <att>keyTimes</att> attribute.</p>
   8.701 +</div3>
   8.702 +<div3 id="animation-value-qualifiedName">
   8.703 +<head>&lt;qualifiedName&gt;</head>
   8.704 +<p>A &lt;qualifiedName&gt; expression is used to specify the attribute targetted by the animation.</p>
   8.705 +<table id="qualifiedName-syntax" role="syntax">
   8.706 +<caption>Syntax Representation &ndash; &lt;qualifiedName&gt;</caption>
   8.707 +<tbody>
   8.708 +<tr>
   8.709 +<td>
   8.710 +<eg xml:space="preserve">
   8.711 +&lt;qualifiedName&gt;
   8.712 +  : prefix ":" local
   8.713 +  | local
   8.714 +
   8.715 +prefix
   8.716 +  : <emph>nmchar</emph>+
   8.717 +
   8.718 +local
   8.719 +  : <emph>nmchar</emph>+
   8.720 +</eg>
   8.721 +</td>
   8.722 +</tr>
   8.723 +</tbody>
   8.724 +</table>
   8.725 +<p>The syntactic element <emph><code>nmchar</code></emph> is to be interpreted according
   8.726 +to the <code>NameChar</code> production defined by <bibref ref="xml10"/>&nbsp;&sect;2.3,
   8.727 +except that the COLON (U+003A) character is excluded.</p>
   8.728 +<p>The semantics of a &lt;qualifiedName&gt; expression are those defined by
   8.729 +<bibref ref="svg11"/>, &sect;19.2.5, as applying to an <code>attributeName</code> attribute
   8.730 +according to an implied <code>attributeType</code> of <code>XML</code>.</p>
   8.731 +</div3>
   8.732 +<div3 id="animation-value-repeatCount">
   8.733 +<head>&lt;repeatCount&gt;</head>
   8.734 +<p>A &lt;repeatCount&gt; expression is used to determine the number of iterations of a repeated animation.</p>
   8.735 +<table id="repeatCount-syntax" role="syntax">
   8.736 +<caption>Syntax Representation &ndash; &lt;repeatCount&gt;</caption>
   8.737 +<tbody>
   8.738 +<tr>
   8.739 +<td>
   8.740 +<eg xml:space="preserve">
   8.741 +&lt;repeatCount&gt;
   8.742 +  : count
   8.743 +  | "indefinite"
   8.744 +
   8.745 +count:
   8.746 +  : <loc href="#style-value-digit">&lt;digit&gt;</loc>+                       // <emph>value</emph> > 0
   8.747 +</eg>
   8.748 +</td>
   8.749 +</tr>
   8.750 +</tbody>
   8.751 +</table>
   8.752 +<p>The semantics of a &lt;repeatCount&gt; expression are those defined by
   8.753 +<bibref ref="svg11"/>, &sect;19.2.8.</p>
   8.754 +</div3>
   8.755 +<div3 id="animation-value-repeatDur">
   8.756 +<head>&lt;repeatDur&gt;</head>
   8.757 +<p>A &lt;repeatDur&gt; expression is used to control the total duration for a repeated animation.</p>
   8.758 +<table id="repeatDur-syntax" role="syntax">
   8.759 +<caption>Syntax Representation &ndash; &lt;repeatDur&gt;</caption>
   8.760 +<tbody>
   8.761 +<tr>
   8.762 +<td>
   8.763 +<eg xml:space="preserve">
   8.764 +&lt;repeatDur&gt;
   8.765 +  : <loc href="#timing-value-timeExpression">&lt;timeExpression&gt;</loc>
   8.766 +  | "indefinite"
   8.767 +</eg>
   8.768 +</td>
   8.769 +</tr>
   8.770 +</tbody>
   8.771 +</table>
   8.772 +<p>The semantics of a &lt;repeatDur&gt; expression are those defined by
   8.773 +<bibref ref="svg11"/>, &sect;19.2.8.</p>
   8.774 +</div3>
   8.775 +</div2>
   8.776  </div1>
   8.777  <div1 id="metadata">
   8.778  <head>Metadata</head>
   8.779 @@ -9085,17 +9604,9 @@
   8.780  as relative URIs (fragment identifiers) with respect to the 
   8.781  TT Feature Namespace base URI.</p>
   8.782  <ednote>
   8.783 -<name>#animation-referential</name>
   8.784 -<date>2013-07-10</date>
   8.785 -<edtext>Consider adding <code>#animation-referential</code> to designate use of <code>style</code> attribute
   8.786 -on <el>set</el> element.</edtext>
   8.787 -</ednote>
   8.788 -<p/>
   8.789 -<ednote>
   8.790 -<name>#animation-targeted</name>
   8.791 -<date>2013-07-10</date>
   8.792 -<edtext>Consider adding <code>#animation-targeted</code> to designate use of <code>xml:href</code> or
   8.793 -<code>targetElement</code> attribute on <el>set</el> element (if added).</edtext>
   8.794 +<name>#animation subset features</name>
   8.795 +<date>2013-08-26</date>
   8.796 +<edtext>Add fine grained subset features of #animation.</edtext>
   8.797  </ednote>
   8.798  <div3 id="feature-animation">
   8.799  <head>#animation</head>
   8.800 @@ -9103,6 +9614,8 @@
   8.801  feature if it recognizes and is capable of transforming the following
   8.802  vocabulary defined by <specref ref="animation"/>:</p>
   8.803  <ulist>
   8.804 +<item><p><loc href="#animation-vocabulary-animation"><el>animation</el></loc></p></item>
   8.805 +<item><p><loc href="#animation-vocabulary-animate"><el>animate</el></loc></p></item>
   8.806  <item><p><loc href="#animation-vocabulary-set"><el>set</el></loc></p></item>
   8.807  </ulist>
   8.808  <p>A TTML presentation processor supports the <code>#animation</code>
   8.809 @@ -11650,11 +12163,11 @@
   8.810  Schema Definition Language (DSDL) &ndash; Part 2: Regular-grammar-based validation &ndash; RELAX NG</titleref>,
   8.811  International Organization for Standardization (ISO).
   8.812  </bibl>
   8.813 -<bibl id="smil21" key="SMIL 2.1">Dick Bultermann, et al.,
   8.814 -<titleref href="http://www.w3.org/TR/2005/REC-SMIL2-20051213/">Synchronized
   8.815 -Multimedia Integration Language (SMIL 2.1)</titleref>,
   8.816 -W3C Recommendation, 13 December 2005. (See
   8.817 -<xspecref href="http://www.w3.org/TR/2005/REC-SMIL2-20051213/">http://www.w3.org/TR/2005/REC-SMIL2-20051213/</xspecref>.)
   8.818 +<bibl id="smil3" key="SMIL 3.0">Dick Bultermann, et al.,
   8.819 +<titleref href="http://www.w3.org/TR/2008/REC-SMIL3-20081201/">Synchronized
   8.820 +Multimedia Integration Language (SMIL 3.0)</titleref>,
   8.821 +W3C Recommendation, 1 December 2008. (See
   8.822 +<xspecref href="http://www.w3.org/TR/2008/REC-SMIL3-20081201/">http://www.w3.org/TR/2008/REC-SMIL3-20081201/</xspecref>.)
   8.823  </bibl>
   8.824  <bibl id="smpte12m" key="SMPTE 12M">ANSI/SMPTE 12M,
   8.825  <titleref href="https://www.smpte.org/">Television, Audio and Film &ndash;
   8.826 @@ -11668,6 +12181,13 @@
   8.827  &ndash; sRGB</titleref>, International Electrotechnical
   8.828  Commission (IEC).
   8.829  </bibl>
   8.830 +<bibl id="svg11" key="SVG 1.1">Erik Dahlström et al., Eds.,
   8.831 +<titleref
   8.832 +href="http://www.w3.org/TR/2011/REC-SVG11-20110816/">Scalable
   8.833 +Vector Graphics (SVG) 1.1 Second Edition</titleref>, W3C Recommendation, 16
   8.834 +August 2011. (See
   8.835 +<xspecref href="http://www.w3.org/TR/2011/REC-SVG11-20110816/">http://www.w3.org/TR/2011/REC-SVG11-20110816/</xspecref>.)
   8.836 +</bibl>
   8.837  <bibl id="uaag" key="UAAG">Ian Jacobs, Jon Gunderson, and Eric Hansen, Eds.,
   8.838  <titleref href="http://www.w3.org/TR/2002/REC-UAAG10-20021217/">User
   8.839  Agent Accessibility Guidelines 1.0</titleref>, W3C Recommendation, 17
   8.840 @@ -11680,6 +12200,12 @@
   8.841  <xspecref
   8.842  href="http://www.unicode.org/reports/tr14/tr14-17.html">http://www.unicode.org/reports/tr14/tr14-17.html</xspecref>.)
   8.843  </bibl>
   8.844 +<bibl id="uri" key="URI">T. Berner-Lee, R. Fielding, and L. Masinter,
   8.845 +<titleref
   8.846 +href="http://www.rfc-editor.org/rfc/rfc2396.txt">Uniform Resource Identifiers (URI): Generic Syntax</titleref>,
   8.847 +RFC 2396, August 1998, IETF.(See
   8.848 +<xspecref href="http://www.rfc-editor.org/rfc/rfc2396.txt">http://www.rfc-editor.org/rfc/rfc2396.txt</xspecref>.)
   8.849 +</bibl>
   8.850  <bibl id="utc" key="UTC">
   8.851  Recommendation TF.460,
   8.852  <titleref
   8.853 @@ -11805,13 +12331,6 @@
   8.854  href="http://www.smpte.org/">Conversion from CEA-708 Caption Data to SMPTE-TT</titleref>,
   8.855  SMPTE Recommended Practice.
   8.856  </bibl>
   8.857 -<bibl id="svg11" key="SVG 1.1">Jon Ferraiolo, Jun Fujisawa, Dean Jackson, Eds.,
   8.858 -<titleref
   8.859 -href="http://www.w3.org/TR/2003/REC-SVG11-20030114/">Scalable
   8.860 -Vector Graphics (SVG) 1.1 Specification</titleref>, W3C Recommendation, 14
   8.861 -January 2003. (See
   8.862 -<xspecref href="http://www.w3.org/TR/2003/REC-SVG11-20030114/">http://www.w3.org/TR/2003/REC-SVG11-20030114/</xspecref>.)
   8.863 -</bibl>
   8.864  <bibl id="ttaf1-req" key="TTAF1-REQ">Glenn Adams, Ed.,
   8.865  <titleref href="http://www.w3.org/TR/2006/NOTE-ttaf1-req-20060427/">Timed Text (TT) Authoring Format 1.0 Use
   8.866  Cases and Requirements</titleref>,
   8.867 @@ -11819,6 +12338,11 @@
   8.868  <xspecref
   8.869  href="http://www.w3.org/TR/2006/NOTE-ttaf1-req-20060427/">http://www.w3.org/TR/2006/NOTE-ttaf1-req-20060427/</xspecref>.)
   8.870  </bibl>
   8.871 +<bibl id="ttml1" key="TTML1">Glenn Adams, Ed.,
   8.872 +<titleref href="https://dvcs.w3.org/hg/ttml/raw-file/default/ttml1/spec/ttml1.html">Timed Text Markup Language 1 (TTML1) (Second Edition)</titleref>,
   8.873 +W3C Editor's Draft. (See
   8.874 +<xspecref href="https://dvcs.w3.org/hg/ttml/raw-file/default/ttml1/spec/ttml1.html">https://dvcs.w3.org/hg/ttml/raw-file/default/ttml1/spec/ttml1.html</xspecref>.)
   8.875 +</bibl>
   8.876  <bibl id="xhtml10" key="XHTML 1.0">Steven Pemberton, et al.,
   8.877  <titleref
   8.878  href="http://www.w3.org/TR/2002/REC-xhtml1-20020801/">XHTML&trade; 1.0,
   8.879 @@ -12306,6 +12830,20 @@
   8.880  <td><phrase role="strong">Notes</phrase></td>
   8.881  </tr>
   8.882  <tr>
   8.883 +<td><loc href="#animation-vocabulary-animate"><code>tt:animate</code></loc></td>
   8.884 +<td><code>svg:animate</code></td>
   8.885 +<td><bibref ref="svg11"/></td>
   8.886 +<td>-@* except begin, dur, end; +@tts:*, +@xml:lang, +@xml:space</td>
   8.887 +<td>3,6</td>
   8.888 +</tr>
   8.889 +<tr>
   8.890 +<td><loc href="#animation-vocabulary-animation"><code>tt:animation</code></loc></td>
   8.891 +<td><code>tt:layout</code></td>
   8.892 +<td><bibref ref="ttml1"/></td>
   8.893 +<td>conceptual derivation</td>
   8.894 +<td>12</td>
   8.895 +</tr>
   8.896 +<tr>
   8.897  <td><loc href="#document-structure-vocabulary-body"><code>tt:body</code></loc></td>
   8.898  <td><code>xhtml:body</code></td>
   8.899  <td><bibref ref="xhtml10"/></td>
   8.900 @@ -12550,6 +13088,11 @@
   8.901  <p>Derived from the use of <code>@baseProfile</code>
   8.902  and <code>@version</code> on the <code>svg:svg</code> element.</p>
   8.903  </item>
   8.904 +<item>
   8.905 +<p>Conceptually derived from existing <el>tt:layout</el> element,
   8.906 +which is a generic container for layout specifications, but for use
   8.907 +in defining animation specifications that apply to targetted elements.</p>
   8.908 +</item>
   8.909  </olist>
   8.910  </note>
   8.911  </div2>
   8.912 @@ -12598,21 +13141,21 @@
   8.913  <tr>
   8.914  <td><loc href="#timing-attribute-begin"><code>begin</code></loc></td>
   8.915  <td><code>begin</code></td>
   8.916 -<td><bibref ref="smil21"/></td>
   8.917 +<td><bibref ref="smil3"/></td>
   8.918  <td>see notes</td>
   8.919  <td>2,3,4</td>
   8.920  </tr>
   8.921  <tr>
   8.922  <td><loc href="#timing-attribute-dur"><code>dur</code></loc></td>
   8.923  <td><code>dur</code></td>
   8.924 -<td><bibref ref="smil21"/></td>
   8.925 +<td><bibref ref="smil3"/></td>
   8.926  <td>see notes</td>
   8.927  <td>2,3,4</td>
   8.928  </tr>
   8.929  <tr>
   8.930  <td><loc href="#timing-attribute-end"><code>end</code></loc></td>
   8.931  <td><code>end</code></td>
   8.932 -<td><bibref ref="smil21"/></td>
   8.933 +<td><bibref ref="smil3"/></td>
   8.934  <td>see notes</td>
   8.935  <td>2,3,4</td>
   8.936  </tr>
   8.937 @@ -12633,7 +13176,7 @@
   8.938  <tr>
   8.939  <td><loc href="#timing-attribute-timeContainer"><code>timeContainer</code></loc></td>
   8.940  <td><code>timeContainer</code></td>
   8.941 -<td><bibref ref="smil21"/></td>
   8.942 +<td><bibref ref="smil3"/></td>
   8.943  <td>
   8.944  -<code>excl</code>,
   8.945  -<code>none</code>;
   8.946 @@ -12847,7 +13390,7 @@
   8.947  <tr>
   8.948  <td><loc href="#style-attribute-showBackground"><code>tts:showBackground</code></loc></td>
   8.949  <td><code>showBackground</code></td>
   8.950 -<td><bibref ref="smil21"/></td>
   8.951 +<td><bibref ref="smil3"/></td>
   8.952  <td>-<code>inherit</code></td>
   8.953  <td></td>
   8.954  </tr>
   8.955 @@ -12971,7 +13514,7 @@
   8.956  </item>
   8.957  <item>
   8.958  <p>Syntactically subsets and supersets the <bibref
   8.959 -ref="smil21"/>&nbsp;<code>Clock-value</code> syntax as follows:
   8.960 +ref="smil3"/>&nbsp;<code>Clock-value</code> syntax as follows:
   8.961  (1) requires non-negative <code>Full-clock-value</code> or
   8.962  <code>Timecount-value</code>;
   8.963  (2) if <code>Full-clock-value</code>
     9.1 Binary file ttml2/spec/xsd/schema.zip has changed
    10.1 --- a/ttml2/spec/xsd/ttml2-animation.xsd	Sun Aug 25 11:03:10 2013 -0600
    10.2 +++ b/ttml2/spec/xsd/ttml2-animation.xsd	Mon Aug 26 19:04:37 2013 -0600
    10.3 @@ -1,13 +1,54 @@
    10.4  <xs:schema targetNamespace="http://www.w3.org/ns/ttml" xml:lang="en"
    10.5    xmlns:xs="http://www.w3.org/2001/XMLSchema"
    10.6    xmlns:tt="http://www.w3.org/ns/ttml"
    10.7 +  xmlns:ttd="http://www.w3.org/ns/ttml#datatype"
    10.8    xmlns:ttm="http://www.w3.org/ns/ttml#metadata"
    10.9 -  xmlns:tts="http://www.w3.org/ns/ttml#styling">
   10.10 +  xmlns:tts="http://www.w3.org/ns/ttml#styling"
   10.11 +  xmlns:xlink="http://www.w3.org/1999/xlink">
   10.12    <xs:include schemaLocation="ttml2-core-attribs.xsd"/>
   10.13    <xs:include schemaLocation="ttml2-timing-attribs.xsd"/>
   10.14    <xs:include schemaLocation="ttml2-metadata.xsd"/>
   10.15    <xs:import namespace="http://www.w3.org/ns/ttml#styling"
   10.16      schemaLocation="ttml2-styling-attribs.xsd"/>
   10.17 +  <xs:import namespace="http://www.w3.org/ns/ttml#datatype"
   10.18 +    schemaLocation="ttml2-datatypes.xsd"/>
   10.19 +  <xs:import namespace="http://www.w3.org/1999/xlink"
   10.20 +    schemaLocation="xlink.xsd"/>
   10.21 +  <xs:attributeGroup name="animation.attlist">
   10.22 +    <xs:attributeGroup ref="tt:Core.attrib.class"/>
   10.23 +  </xs:attributeGroup>
   10.24 +  <xs:complexType name="animation.eltype">
   10.25 +    <xs:sequence>
   10.26 +      <xs:group ref="tt:Metadata.class" minOccurs="0" maxOccurs="unbounded"/>
   10.27 +      <xs:element ref="tt:animate" minOccurs="0" maxOccurs="unbounded"/>
   10.28 +    </xs:sequence>
   10.29 +    <xs:attributeGroup ref="tt:animation.attlist"/>
   10.30 +  </xs:complexType>
   10.31 +  <xs:attributeGroup name="animate.attlist">
   10.32 +    <xs:attributeGroup ref="tt:Core.attrib.class" />
   10.33 +    <xs:attributeGroup ref="tt:Timed.attrib.class" />
   10.34 +    <xs:attributeGroup ref="tt:Styled.attrib.class"/>
   10.35 +    <xs:attribute name="accumulate" type="ttd:accumulate"/>
   10.36 +    <xs:attribute name="additive" type="ttd:additive"/>
   10.37 +    <xs:attribute name="attributeName" type="ttd:qualifiedName" use="required"/>
   10.38 +    <xs:attribute name="by" type="ttd:animationValue"/>
   10.39 +    <xs:attribute name="calcMode" type="ttd:calcMode"/>
   10.40 +    <xs:attribute name="fill" type="ttd:fill"/>
   10.41 +    <xs:attribute name="from" type="ttd:animationValue"/>
   10.42 +    <xs:attribute name="keySplines" type="ttd:keySplines"/>
   10.43 +    <xs:attribute name="keyTimes" type="ttd:keyTimes"/>
   10.44 +    <xs:attribute name="repeatCount" type="ttd:repeatCount"/>
   10.45 +    <xs:attribute name="repeatDur" type="ttd:repeatDur"/>
   10.46 +    <xs:attribute name="to" type="ttd:animationValue"/>
   10.47 +    <xs:attribute name="values" type="ttd:animationValueList"/>
   10.48 +    <xs:attribute ref="xlink:href"/>
   10.49 +  </xs:attributeGroup>
   10.50 +  <xs:complexType name="animate.eltype">
   10.51 +    <xs:sequence>
   10.52 +      <xs:group ref="tt:Metadata.class" minOccurs="0" maxOccurs="unbounded"/>
   10.53 +    </xs:sequence>
   10.54 +    <xs:attributeGroup ref="tt:animate.attlist"/>
   10.55 +  </xs:complexType>
   10.56    <xs:attributeGroup name="set.attlist">
   10.57      <xs:attributeGroup ref="tt:Core.attrib.class" />
   10.58      <xs:attributeGroup ref="tt:Timed.attrib.class" />
   10.59 @@ -19,9 +60,12 @@
   10.60      </xs:sequence>
   10.61      <xs:attributeGroup ref="tt:set.attlist"/>
   10.62    </xs:complexType>
   10.63 +  <xs:element name="animation" type="tt:animation.eltype"/>
   10.64 +  <xs:element name="animate" type="tt:animate.eltype"/>
   10.65    <xs:element name="set" type="tt:set.eltype"/>
   10.66    <xs:group name="Animation.class">
   10.67      <xs:choice>
   10.68 +      <xs:element ref="tt:animate"/>
   10.69        <xs:element ref="tt:set"/>
   10.70      </xs:choice>
   10.71    </xs:group>
    11.1 --- a/ttml2/spec/xsd/ttml2-datatypes.xsd	Sun Aug 25 11:03:10 2013 -0600
    11.2 +++ b/ttml2/spec/xsd/ttml2-datatypes.xsd	Mon Aug 26 19:04:37 2013 -0600
    11.3 @@ -2,11 +2,32 @@
    11.4  <xs:schema targetNamespace="http://www.w3.org/ns/ttml#datatype"
    11.5          xml:lang="en" xmlns:xs="http://www.w3.org/2001/XMLSchema"
    11.6          xmlns:ttd="http://www.w3.org/ns/ttml#datatype">
    11.7 +  <xs:simpleType name="accumulate">
    11.8 +    <xs:restriction base="xs:token">
    11.9 +      <xs:enumeration value="none"/>
   11.10 +      <xs:enumeration value="sum"/>
   11.11 +    </xs:restriction>
   11.12 +  </xs:simpleType>
   11.13 +  <xs:simpleType name="additive">
   11.14 +    <xs:restriction base="xs:token">
   11.15 +      <xs:enumeration value="replace"/>
   11.16 +      <xs:enumeration value="sum"/>
   11.17 +    </xs:restriction>
   11.18 +  </xs:simpleType>
   11.19 +  <xs:simpleType name="agent">
   11.20 +    <xs:restriction base="xs:IDREFS"/>
   11.21 +  </xs:simpleType>
   11.22    <xs:simpleType name="alpha">
   11.23      <xs:restriction base="xs:float"/>
   11.24    </xs:simpleType>
   11.25 -  <xs:simpleType name="agent">
   11.26 -    <xs:restriction base="xs:IDREFS"/>
   11.27 +  <xs:simpleType name="animationValue">
   11.28 +    <xs:restriction base="xs:string"/>
   11.29 +  </xs:simpleType>
   11.30 +  <xs:simpleType name="animationValueList">
   11.31 +    <xs:annotation>
   11.32 +      <xs:documentation>animationValue [ ";" animationValue ]*</xs:documentation>
   11.33 +    </xs:annotation>
   11.34 +    <xs:restriction base="xs:string"/>
   11.35    </xs:simpleType>
   11.36    <xs:simpleType name="border">
   11.37      <xs:annotation>
   11.38 @@ -14,6 +35,14 @@
   11.39      </xs:annotation>
   11.40      <xs:restriction base="xs:string"/>
   11.41    </xs:simpleType>
   11.42 +  <xs:simpleType name="calcMode">
   11.43 +    <xs:restriction base="xs:token">
   11.44 +      <xs:enumeration value="discrete"/>
   11.45 +      <xs:enumeration value="linear"/>
   11.46 +      <xs:enumeration value="displaced"/>
   11.47 +      <xs:enumeration value="spline"/>
   11.48 +    </xs:restriction>
   11.49 +  </xs:simpleType>
   11.50    <xs:simpleType name="cellResolution">
   11.51      <xs:annotation>
   11.52        <xs:documentation>positiveInteger positiveInteger</xs:documentation>
   11.53 @@ -84,6 +113,12 @@
   11.54        <xs:enumeration value="prohibited"/>
   11.55      </xs:restriction>
   11.56    </xs:simpleType>
   11.57 +  <xs:simpleType name="fill">
   11.58 +    <xs:restriction base="xs:token">
   11.59 +      <xs:enumeration value="freeze"/>
   11.60 +      <xs:enumeration value="remove"/>
   11.61 +    </xs:restriction>
   11.62 +  </xs:simpleType>
   11.63    <xs:simpleType name="fontFamily">
   11.64      <xs:restriction base="xs:string"/>
   11.65    </xs:simpleType>
   11.66 @@ -106,6 +141,37 @@
   11.67        <xs:enumeration value="bold"/>
   11.68      </xs:restriction>
   11.69    </xs:simpleType>
   11.70 +  <xs:simpleType name="fragmentIdentifier">
   11.71 +    <xs:annotation>
   11.72 +      <xs:documentation>
   11.73 +        fragmentIdentifier
   11.74 +          : "#" fragment
   11.75 +
   11.76 +        fragment
   11.77 +          : uric+
   11.78 +
   11.79 +        uric
   11.80 +          : reserved
   11.81 +          | unreserved
   11.82 +          | escaped
   11.83 +
   11.84 +        reserved
   11.85 +          : [;/?:@&amp;=+$,]
   11.86 +
   11.87 +        unreserved
   11.88 +          : [a-zA-Z]
   11.89 +          | [0-9]
   11.90 +          | [-_.!~*'()]
   11.91 +
   11.92 +        escaped
   11.93 +          : "%" hex hex
   11.94 +
   11.95 +        hex
   11.96 +          : [0-9a-fA-F]
   11.97 +      </xs:documentation>
   11.98 +    </xs:annotation>
   11.99 +    <xs:restriction base="xs:anyURI"/>
  11.100 +  </xs:simpleType>
  11.101    <xs:simpleType name="frameRate">
  11.102      <xs:restriction base="xs:positiveInteger"/>
  11.103    </xs:simpleType>
  11.104 @@ -117,6 +183,55 @@
  11.105        <xs:pattern value="\p{Nd}+\s+\p{Nd}+"/>
  11.106      </xs:restriction>
  11.107    </xs:simpleType>
  11.108 +  <xs:simpleType name="keySplines">
  11.109 +    <xs:annotation>
  11.110 +      <xs:documentation>
  11.111 +        keySplines
  11.112 +          : control [ lwsp? ";" lwsp? control ]*
  11.113 +
  11.114 +        control
  11.115 +          : x1 comma? y1 comma? x2 comma? y2
  11.116 +
  11.117 +        x1, x2, y1, y2
  11.118 +          : coordinate
  11.119 +
  11.120 +        coordinate                                // 0 ≥ value ≥ 1
  11.121 +          : whole
  11.122 +          | whole "." fraction
  11.123 +          | "." fraction
  11.124 +
  11.125 +        whole, fraction
  11.126 +          : digit+
  11.127 +
  11.128 +        comma
  11.129 +          : ","
  11.130 +
  11.131 +        lwsp
  11.132 +          : ( ' ' | '\t' | '\n' | '\r' )+
  11.133 +      </xs:documentation>
  11.134 +    </xs:annotation>
  11.135 +    <xs:restriction base="xs:string"/>
  11.136 +  </xs:simpleType>
  11.137 +  <xs:simpleType name="keyTimes">
  11.138 +    <xs:annotation>
  11.139 +      <xs:documentation>
  11.140 +        keyTimes
  11.141 +          : time [ lwsp? ";" lwsp? time ]*
  11.142 +
  11.143 +        time                                // 0 ≥ value ≥ 1
  11.144 +          : whole
  11.145 +          | whole "." fraction
  11.146 +          | "." fraction
  11.147 +
  11.148 +        whole, fraction
  11.149 +          : digit+
  11.150 +
  11.151 +        lwsp
  11.152 +          : ( ' ' | '\t' | '\n' | '\r' )+
  11.153 +      </xs:documentation>
  11.154 +    </xs:annotation>
  11.155 +    <xs:restriction base="xs:string"/>
  11.156 +  </xs:simpleType>
  11.157    <xs:simpleType name="lineHeight">
  11.158      <xs:annotation>
  11.159        <xs:documentation>normal | length</xs:documentation>
  11.160 @@ -206,6 +321,32 @@
  11.161    <xs:simpleType name="profile">
  11.162      <xs:restriction base="xs:anyURI"/>
  11.163    </xs:simpleType>
  11.164 +  <xs:simpleType name="qualifiedName">
  11.165 +    <xs:restriction base="xs:QName"/>
  11.166 +  </xs:simpleType>
  11.167 +  <xs:simpleType name="repeatCount">
  11.168 +    <xs:annotation>
  11.169 +      <xs:documentation>
  11.170 +        repeatCount
  11.171 +          : count
  11.172 +          | "indefinite"
  11.173 +
  11.174 +        count:
  11.175 +          : digit+                         // value > 0
  11.176 +      </xs:documentation>
  11.177 +    </xs:annotation>
  11.178 +    <xs:restriction base="xs:string"/>
  11.179 +  </xs:simpleType>
  11.180 +  <xs:simpleType name="repeatDur">
  11.181 +    <xs:annotation>
  11.182 +      <xs:documentation>
  11.183 +        repeatDur
  11.184 +          : timeExpression
  11.185 +          | "indefinite"
  11.186 +      </xs:documentation>
  11.187 +    </xs:annotation>
  11.188 +    <xs:restriction base="xs:string"/>
  11.189 +  </xs:simpleType>
  11.190    <xs:simpleType name="role">
  11.191      <xs:restriction>
  11.192        <xs:simpleType>
    12.1 --- a/ttml2/spec/xsd/ttml2-head.xsd	Sun Aug 25 11:03:10 2013 -0600
    12.2 +++ b/ttml2/spec/xsd/ttml2-head.xsd	Mon Aug 26 19:04:37 2013 -0600
    12.3 @@ -9,6 +9,7 @@
    12.4    <xs:include schemaLocation="ttml2-parameters.xsd"/>
    12.5    <xs:include schemaLocation="ttml2-styling.xsd"/>
    12.6    <xs:include schemaLocation="ttml2-layout.xsd"/>
    12.7 +  <xs:include schemaLocation="ttml2-animation.xsd"/>
    12.8    <xs:attributeGroup name="head.attlist">
    12.9      <xs:attributeGroup ref="tt:Core.attrib.class"/>
   12.10    </xs:attributeGroup>
   12.11 @@ -18,6 +19,7 @@
   12.12        <xs:group ref="tt:Parameters.class" minOccurs="0" maxOccurs="unbounded"/>
   12.13        <xs:element ref="tt:styling" minOccurs="0" maxOccurs="1"/>
   12.14        <xs:element ref="tt:layout" minOccurs="0" maxOccurs="1"/>
   12.15 +      <xs:element ref="tt:animation" minOccurs="0" maxOccurs="1"/>
   12.16      </xs:sequence>
   12.17      <xs:attributeGroup ref="tt:head.attlist"/>
   12.18    </xs:complexType>
    13.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    13.2 +++ b/ttml2/spec/xsd/xlink.xsd	Mon Aug 26 19:04:37 2013 -0600
    13.3 @@ -0,0 +1,4 @@
    13.4 +<xs:schema targetNamespace="http://www.w3.org/1999/xlink" xml:lang="en"
    13.5 +  xmlns:xs="http://www.w3.org/2001/XMLSchema">
    13.6 +  <xs:attribute name="href" type="xs:anyURI"/>
    13.7 +</xs:schema>