Skip to content

Instantly share code, notes, and snippets.

@raffazizzi
Created July 26, 2015 22:49
Show Gist options
  • Save raffazizzi/e92c15a36e6203846fbb to your computer and use it in GitHub Desktop.
Save raffazizzi/e92c15a36e6203846fbb to your computer and use it in GitHub Desktop.
<elementSpec ident="ornament" module="MEI.cmnOrnaments">
<desc>An element indicating an ornament that is not a mordent, turn, or trill.
</desc>
<classes>
<memberOf key="att.common"/>
<memberOf key="att.facsimile"/>
<memberOf key="att.ornament.log"/>
<memberOf key="att.ornament.vis"/>
<memberOf key="att.ornament.ges"/>
<memberOf key="att.ornament.anl"/>
<memberOf key="model.ornamentLike.cmn"/>
</classes>
<content>
<rng:empty/>
</content>
<constraintSpec ident="ornament_start-type_attributes_required" scheme="isoschematron">
<constraint>
<sch:rule context="mei:ornament">
<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:rule>
</constraint>
</constraintSpec>
<remarks>
<p>The glyph of the ornament may be indicated with the <att>altsym</att> attribute, and it is recommended to provide
an expansion of the ornament on the staff content.
The starting point of the ornament may be indicated by either a <att>startid</att>,
<att>tstamp</att>, <att>tstamp.ges</att>, or <att>tstamp.real</att> attribute. It is a
semantic error not to specify one of these attributes.</p>
</remarks>
</elementSpec>
<classSpec ident="att.ornament.log" module="MEI.cmnOrnaments" type="atts">
<desc>Logical domain attributes.</desc>
<classes>
<memberOf key="att.controlevent"/>
<memberOf key="att.duration.additive"/>
<memberOf key="att.ornamentaccid"/>
<memberOf key="att.startendid"/>
<memberOf key="att.timestamp2.musical"/>
</classes>
</classSpec>
<classSpec ident="att.ornament.vis" module="MEI.cmnOrnaments" type="atts">
<desc>Visual domain attributes.</desc>
<classes>
<memberOf key="att.color"/>
<memberOf key="att.placement"/>
<memberOf key="att.visualoffset"/>
<memberOf key="att.visualoffset2.ho"/>
<memberOf key="att.visualoffset2.to"/>
<memberOf key="att.xy"/>
</classes>
</classSpec>
<classSpec ident="att.ornament.ges" module="MEI.shared" type="atts">
<desc>Gestural domain attributes.</desc>
<classes>
<memberOf key="att.duration.performed"/>
</classes>
</classSpec>
<classSpec ident="att.ornament.anl" module="MEI.cmnOrnaments" type="atts">
<desc>Analytical domain attributes.</desc>
<classes>
<memberOf key="att.common.anl"/>
</classes>
</classSpec>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment