<sch:rule context="mei:note[@extremis]">
<sch:assert test="not(@pname.ges) and not(@oct.ges)">When the @extremis attribute is used,
the @pname.ges and @oct.ges attributes are not allowed.</sch:assert>
</sch:rule>
<classSpec ident="att.note.ges" module="MEI.gestural" type="atts">
<desc>Gestural domain attributes.</desc>
<classes>
<memberOf
key="att.accidental.gestural"/>
<memberOf
key="att.articulation.gestural"/>
<memberOf
key="att.duration.gestural"/>
<memberOf
key="att.instrumentIdent"/>
<memberOf
key="att.midiVelocity"/>
<memberOf
key="att.note.ges.mensural"/>
<memberOf
key="att.stringtab"/>
</classes>
<constraintSpec ident="extremis_disallows_gestural_pitch" scheme="isoschematron">
<constraint>
<sch:rule context="mei:note[@extremis]">
<sch:assert test="not(@pname.ges) and not(@oct.ges)">When the @extremis attribute is used,
the @pname.ges and @oct.ges attributes are not allowed.</sch:assert>
</sch:rule>
</constraint>
</constraintSpec>
<attList org="group">
<attDef ident="extremis" usage="opt">
<desc>Indicates an extreme, indefinite performed pitch.</desc>
<valList type="closed">
<valItem ident="highest">
<desc>Highest note the performer can play.</desc>
</valItem>
<valItem ident="lowest">
<desc>Lowest note the performer can play.</desc>
</valItem>
</valList>
<remarks>
<p part="N">On a wind instrument, the "highest note possible" depends on the player's abilities.
On
a string instrument, the "lowest note possible" depends on how much a string is
de-tuned; that is, loosened using the tuning peg. Use of the
<att scheme="TEI">pname</att> and
<att scheme="TEI">oct</att> or
<att scheme="TEI">ploc</att> and
<att scheme="TEI">oloc</att> or
<att scheme="TEI">loc</att> attributes is
necessary to record the written pitch and octave of the symbol for this note.</p>
</remarks>
</attDef>
<attDef ident="oct.ges" usage="opt">
<desc>Records performed octave information that differs from the written value.</desc>
</attDef>
<attDef ident="pname.ges" usage="opt">
<desc>Contains a performed pitch name that differs from the written value.</desc>
</attDef>
<attDef ident="pnum" usage="opt">
<desc>Holds a pitch-to-number mapping, a base-40 or MIDI note number, for example.</desc>
</attDef>
</attList>
</classSpec>