The @dis and @dis.place attributes record the amount and direction of displacement, respectively. The @lform and @lwidth attributes capture the appearance of the continuation line associated with the octave displacement. The starting point of the octave displacement may be indicated by either a @startid, @tstamp, @tstamp.ges, or @tstamp.real attribute, while the ending point may be recorded by either a @dur, @dur.ges, @endid, or @tstamp2 attribute. It is a semantic error not to specify one starting and one ending type of attribute. Also, note that the @dur attribute is not required because the octave displacement can be visually instantaneous.
<elementSpec ident="octave" module="MEI.cmn">
<desc xml:lang="en">An indication that a passage should be performed one or more octaves above or below
its
written pitch.</desc>
<classes>
<memberOf key="att.common"/>
<memberOf key="att.facsimile"/>
<memberOf key="att.octave.log"/>
<memberOf key="att.octave.vis"/>
<memberOf key="att.octave.ges"/>
<memberOf key="att.octave.anl"/>
<memberOf key="model.controlEventLike.cmn"/>
</classes>
<content>
<rng:zeroOrMore>
</rng:zeroOrMore>
</content>
<constraintSpec ident="octave_start-_and_end-type_attributes_required" scheme="schematron">
<constraint>
<sch:rule context="mei:octave">
<sch:assert test="@startid or @tstamp or @tstamp.ges or @tstamp.real">Must have one of the
attributes: startid, tstamp, tstamp.ges or tstamp.real.</sch:assert>
<sch:assert test="@dur or @dur.ges or @endid or @tstamp2">Must have one of the attributes:
dur, dur.ges, endid, or tstamp2.</sch:assert>
</sch:rule>
</constraint>
</constraintSpec>
<remarks xml:lang="en">
<p>The <att>dis</att> and <att>dis.place</att> attributes record the amount and direction of
displacement, respectively. The <att>lform</att> and <att>lwidth</att> attributes capture
the appearance of the continuation line associated with the octave displacement. The
starting point of the octave displacement may be indicated by either a <att>startid</att>,
<att>tstamp</att>, <att>tstamp.ges</att>, or <att>tstamp.real</att> attribute, while the
ending point may be recorded by either a <att>dur</att>, <att>dur.ges</att>,
<att>endid</att>, or <att>tstamp2</att> attribute. It is a semantic error not to specify one
starting and one ending type of attribute. Also, note that the <att>dur</att> attribute is
not required because the octave displacement can be visually instantaneous.</p>
</remarks>
</elementSpec>