<timeline>

<timeline> (timeline) provides a set of ordered points in time which can be linked to elements of a spoken text to create a temporal alignment of that text. 16.5.2 Placing Synchronous Events in Time
Module linking — 16 Linking, Segmentation, and Alignment
In addition to global attributes In addition to global attributes
origin designates the origin of the timeline, i.e. the time at which it begins.
Status Recommended when applicable
Datatype

<rng:ref name="data.pointer"/>
data.pointer
Values if suppplied, must point either to one of the when elements in its content, or to another timeline element.
Note
If this attribute is not supplied, the implication is that the time of origin is not known.
unit specifies the unit of time corresponding to the interval value of the timeline or of its constituent points in time.
Status Recommended when applicable
Datatype

<rng:ref name="data.enumerated"/>
data.enumerated
Suggested values include:
d
(days)
h
(hours)
min
(minutes)
s
(seconds)
ms
(milliseconds)
interval specifies the numeric portion of a time interval
Status Optional
Datatype

<rng:choice>
 <rng:data type="float">
  <rng:param name="minExclusive">0</rng:param>
 </rng:data>
 <rng:value>regular</rng:value>
 <rng:value>irregular</rng:value>
</rng:choice>
xsd:float { minExclusive = "0" } | "regular" | "irregular"
Values a positive number, or one of the two special values irregular or regular.
Note
The value irregular indicates uncertainty about all the intervals in the timeline; the value regular indicates that all the intervals are evenly spaced, but the size of the intervals is not known; numeric values indicate evenly spaced values of the size specified. If individual points in time in the timeline are given different values for the interval attribute, those values locally override the value given in the timeline.
Used by
May contain
linking: when
Declaration

<rng:element name="timeline">
 <rng:ref name="att.global.attributes"/>
 <rng:optional>
  <rng:attribute name="origin">
   <rng:ref name="data.pointer"/>
  </rng:attribute>
 </rng:optional>
 <rng:optional>
  <rng:attribute name="unit">
   <rng:choice>
    <rng:value>d</rng:value>
    <rng:value>h</rng:value>
    <rng:value>min</rng:value>
    <rng:value>s</rng:value>
    <rng:value>ms</rng:value>
    <rng:data type="Name"/>
   </rng:choice>
  </rng:attribute>
 </rng:optional>
 <rng:optional>
  <rng:attribute name="interval">
   <rng:choice>
    <rng:data type="float">
     <rng:param name="minExclusive">0</rng:param>
    </rng:data>
    <rng:value>regular</rng:value>
    <rng:value>irregular</rng:value>
   </rng:choice>
  </rng:attribute>
 </rng:optional>
 <rng:oneOrMore>
  <rng:ref name="when"/>
 </rng:oneOrMore>
</rng:element>
element timeline
{
   att.global.attributes,
   attribute origin { data.pointer }?,
   attribute unit { "d" | "h" | "min" | "s" | "ms" | xsd:Name }?,
   attribute interval
   {
      xsd:float { minExclusive = "0" } | "regular" | "irregular"
   }?,
   when+
}
Example
<timeline xml:id="TL01" unit="ms">
 <when xml:id="TL-w0" absolute="11:30:00"/>
 <when xml:id="TL-w1" interval="unknown" since="#TL-w0"/>
 <when xml:id="TL-w2" interval="100" since="#TL-w1"/>
 <when xml:id="TL-w3" interval="200" since="#TL-w2"/>
 <when xml:id="TL-w4" interval="150" since="#TL-w3"/>
 <when xml:id="TL-w5" interval="250" since="#TL-w4"/>
 <when xml:id="TL-w6" interval="100" since="#TL-w5"/>
</timeline>