The data attribute may be used to reference one or more features that occur at this point in time.
The model of this element is based on the when element of the Text Encoding Initiative (TEI).
<elementSpec ident="when" module="MEI.performance">
<desc xml:lang="en">Indicates a point in time either absolutely (using the absolute attribute), or relative
to
another when element (using the since, interval and inttype attributes).</desc>
<constraintSpec ident="check_when_interval" scheme="schematron">
<constraint>
<sch:rule context="mei:when[@interval]">
<sch:assert test="@since">@since must be present when @interval is used.</sch:assert>
<sch:assert role="warning" test="every $i in tokenize(@since, '\s+') satisfies substring($i,2)=//mei:when/@xml:id">The value in @since should correspond to the @xml:id attribute of a when
element.</sch:assert>
</sch:rule>
<sch:rule context="mei:when[matches(@interval, '^[0-9]+$')]">
<sch:assert test="not(@inttype eq 'time')">When @interval contains an integer value,
@inttype cannot be 'time'.</sch:assert>
</sch:rule>
<sch:rule context="mei:when[matches(@interval, ':')]">
<sch:assert test="@inttype eq 'time'">When @interval contains a time value, @inttype must
be 'time'.</sch:assert>
</sch:rule>
</constraint>
</constraintSpec>
<constraintSpec ident="check_when_absolute" scheme="schematron">
<constraint>
<sch:rule context="mei:when[@absolute]">
<sch:assert role="warning" test="@abstype or ancestor::mei:*[@betype]">When @absolute is
present, @abstype should be present or @betype should be present on an
ancestor.</sch:assert>
</sch:rule>
</constraint>
</constraintSpec>
<attList>
<attDef ident="absolute" usage="opt">
<desc xml:lang="en">Provides an absolute value for the time point.</desc>
<datatype>
<rng:text/>
</datatype>
</attDef>
<attDef ident="interval" usage="opt">
<desc xml:lang="en">Specifies the time interval between this time point and the one designated by the
since attribute. This attribute can only be interpreted meaningfully in conjunction
with
the inttype attribute.</desc>
<datatype>
<rng:choice>
<rng:data type="decimal">
<rng:param name="minInclusive">1</rng:param>
</rng:data>
<rng:data type="time"/>
</rng:choice>
</datatype>
</attDef>
<attDef ident="abstype" usage="opt">
<desc xml:lang="en">Specifies the kind of values used in the absolute attribute.</desc>
</attDef>
<attDef ident="inttype" usage="opt">
<desc xml:lang="en">Specifies the kind of values used in the interval attribute.</desc>
</attDef>
<attDef ident="since" usage="opt">
<desc xml:lang="en">Identifies the reference point for determining the time of the current when element,
which is obtained by adding the interval to the time of the reference point. The value
should be the ID of another when element within the same parent element. If the since
attribute is omitted and the absolute attribute is not specified, then the reference
point
is understood to be the immediately preceding when element.</desc>
<constraintSpec ident="check_sinceTarget" scheme="schematron">
<constraint>
<sch:rule context="@since">
<sch:assert role="warning" test="not(normalize-space(.) eq '')">@since attribute
should have content.</sch:assert>
<sch:assert role="warning" test="every $i in tokenize(., '\s+') satisfies substring($i,2)=//mei:when/@xml:id">The value in @since should correspond to the @xml:id attribute of a when
element.</sch:assert>
</sch:rule>
</constraint>
</constraintSpec>
</attDef>
</attList>
<remarks xml:lang="en">
<p>The <att>data</att> attribute may be used to reference one or more features that occur at
this point in time.</p>
</remarks>
<remarks xml:lang="en">
<p>The model of this element is based on the <ref target="https://tei-c.org/release/doc/tei-p5-doc/en/html/ref-when.html">when</ref> element of the Text Encoding Initiative (TEI).</p>
</remarks>
</elementSpec>