att.noteHeads

Attributes pertaining to the notehead part of a note.
Module
MEI.shared
Attributes
head.altsym, head.auth, head.color, head.fill, head.fillcolor, head.mod, head.rotation, head.shape, head.visible
head.altsym(optional)Provides a way of pointing to a user-defined symbol. It must contain a reference to an ID of a symbolDef element elsewhere in the document. Value conforms to data.URI.
head.auth(optional)A name or label associated with the controlled vocabulary from which a numerical value of head.shape is taken. Allowed values are: "smufl" (Standard Music Font Layout.)
head.color(optional)Captures the overall color of a notehead. Value conforms to data.COLOR.
head.fill(optional)Describes how/if the notehead is filled. Value conforms to data.FILL.
head.fillcolor(optional)Captures the fill color of a notehead if different from the overall note color. Value conforms to data.COLOR.
head.mod(optional)Records any additional symbols applied to the notehead. One or more values from data.NOTEHEADMODIFIER, separated by spaces.
head.rotation(optional)Describes rotation applied to the basic notehead shape. A positive value rotates the notehead in a counter-clockwise fashion, while negative values produce clockwise rotation. Value conforms to data.ROTATION.
head.shape(optional)Used to override the head shape normally used for the given duration. Value conforms to data.HEADSHAPE.
head.visible(optional)Indicates if a feature should be rendered when the notation is presented graphically or sounded when it is presented in an aural form. Value conforms to data.BOOLEAN.
head.altsym(optional)Provides a way of pointing to a user-defined symbol. It must contain a reference to an ID of a symbolDef element elsewhere in the document. Value conforms to data.URI.
head.auth(optional)A name or label associated with the controlled vocabulary from which a numerical value of head.shape is taken. Allowed values are: "smufl" (Standard Music Font Layout.)
head.color(optional)Captures the overall color of a notehead. Value conforms to data.COLOR.
head.fill(optional)Describes how/if the notehead is filled. Value conforms to data.FILL.
head.fillcolor(optional)Captures the fill color of a notehead if different from the overall note color. Value conforms to data.COLOR.
head.mod(optional)Records any additional symbols applied to the notehead. One or more values from data.NOTEHEADMODIFIER, separated by spaces.
head.rotation(optional)Describes rotation applied to the basic notehead shape. A positive value rotates the notehead in a counter-clockwise fashion, while negative values produce clockwise rotation. Value conforms to data.ROTATION.
head.shape(optional)Used to override the head shape normally used for the given duration. Value conforms to data.HEADSHAPE.
head.visible(optional)Indicates if a feature should be rendered when the notation is presented graphically or sounded when it is presented in an aural form. Value conforms to data.BOOLEAN.
Component declarations that are shared between two or more modules.
head.altsym(optional)Provides a way of pointing to a user-defined symbol. It must contain a reference to an ID of a symbolDef element elsewhere in the document. Value conforms to data.URI.
head.auth(optional)A name or label associated with the controlled vocabulary from which a numerical value of head.shape is taken. Allowed values are: "smufl" (Standard Music Font Layout.)
head.color(optional)Captures the overall color of a notehead. Value conforms to data.COLOR.
head.fill(optional)Describes how/if the notehead is filled. Value conforms to data.FILL.
head.fillcolor(optional)Captures the fill color of a notehead if different from the overall note color. Value conforms to data.COLOR.
head.mod(optional)Records any additional symbols applied to the notehead. One or more values from data.NOTEHEADMODIFIER, separated by spaces.
head.rotation(optional)Describes rotation applied to the basic notehead shape. A positive value rotates the notehead in a counter-clockwise fashion, while negative values produce clockwise rotation. Value conforms to data.ROTATION.
head.shape(optional)Used to override the head shape normally used for the given duration. Value conforms to data.HEADSHAPE.
head.visible(optional)Indicates if a feature should be rendered when the notation is presented graphically or sounded when it is presented in an aural form. Value conforms to data.BOOLEAN.
Available at
ambNoteHighest or lowest pitch in a score, staff, or layer.
noteA single pitched event.
Component declarations that are shared between two or more modules.
ambNoteHighest or lowest pitch in a score, staff, or layer.
noteA single pitched event.
Constraints

@head.altsym attribute should have content.
The value in @head.altsym should correspond to the @xml:id attribute of a symbolDef element.
When @head.auth matches 'smufl', @head.shape must contain a numeric glyph reference in hexadecimal notation, e.g. "#xE000" or "U+E000".
SMuFL version 1.18 uses the range U+E000 - U+ECBF.

Declaration
<classSpec ident="att.noteHeads" module="MEI.shared" type="atts">
<desc>Attributes pertaining to the notehead part of a note.</desc>
<attList>
<attDef ident="head.altsym" usage="opt">
<desc>Provides a way of pointing to a user-defined symbol. It must contain a reference to an ID of a
<gi scheme="MEI">symbolDef</gi>
element elsewhere in the document.</desc>
<datatype>
<rng:ref name="data.URI"/>
</datatype>
<constraintSpec ident="check_head.altsymTarget" scheme="isoschematron">
<constraint>
<sch:rule context="@head.altsym">
<sch:assert role="warning" test="not(normalize-space(.) eq '')">@head.altsym attribute should have content.</sch:assert>
<sch:assert role="warning" test="every $i in tokenize(., '\s+') satisfies substring($i,2)=//mei:symbolDef/@xml:id">The value in @head.altsym should correspond to the @xml:id attribute of a symbolDef element.</sch:assert>
</sch:rule>
</constraint>
</constraintSpec>
</attDef>
<attDef ident="head.auth" usage="opt">
<desc>A name or label associated with the controlled vocabulary from which a numerical value of
<att>head.shape</att>
is taken.</desc>
<datatype>
<rng:data type="NMTOKEN"/>
</datatype>
<constraintSpec ident="check_head.auth" scheme="isoschematron">
<constraint>
<sch:rule context="mei:*[lower-case(@head.auth) eq 'smufl']">
<sch:assert test="matches(@head.shape, '^#x') or matches(@head.shape, '^U+')">When @head.auth matches 'smufl', @head.shape must contain a numeric glyph reference in hexadecimal notation, e.g. "#xE000" or "U+E000".</sch:assert>
</sch:rule>
</constraint>
</constraintSpec>
<valList type="semi">
<valItem ident="smufl">
<desc>Standard Music Font Layout.</desc>
</valItem>
</valList>
</attDef>
<attDef ident="head.color" usage="opt">
<desc>Captures the overall color of a notehead.</desc>
<datatype>
<rng:ref name="data.COLOR"/>
</datatype>
</attDef>
<attDef ident="head.fill" usage="opt">
<desc>Describes how/if the notehead is filled.</desc>
<datatype>
<rng:ref name="data.FILL"/>
</datatype>
</attDef>
<attDef ident="head.fillcolor" usage="opt">
<desc>Captures the fill color of a notehead if different from the overall note color.</desc>
<datatype>
<rng:ref name="data.COLOR"/>
</datatype>
</attDef>
<attDef ident="head.mod" usage="opt">
<desc>Records any additional symbols applied to the notehead.</desc>
<datatype maxOccurs="unbounded">
<rng:ref name="data.NOTEHEADMODIFIER"/>
</datatype>
</attDef>
<attDef ident="head.rotation" usage="opt">
<desc>Describes rotation applied to the basic notehead shape. A positive value rotates the notehead in a counter-clockwise fashion, while negative values produce clockwise rotation.</desc>
<datatype>
<rng:ref name="data.ROTATION"/>
</datatype>
</attDef>
<attDef ident="head.shape" usage="opt">
<desc>Used to override the head shape normally used for the given duration.</desc>
<datatype>
<rng:ref name="data.HEADSHAPE"/>
</datatype>
<constraintSpec ident="check_headshape_num" scheme="isoschematron">
<constraint>
<sch:rule context="mei:*[(matches(@head.shape, '#x') or matches(@head.shape, 'U+')) and (lower-case(@head.auth) eq 'smufl')]">
<sch:assert role="warning" test="matches(normalize-space(@head.shape), '^(#x|U\+)E([0-9AB][0-9A-F][0-9A-F]|C[0-9A][0-9A-F]|CB[0-9A-F])$')">SMuFL version 1.18 uses the range U+E000 - U+ECBF.</sch:assert>
</sch:rule>
</constraint>
</constraintSpec>
</attDef>
<attDef ident="head.visible" usage="opt">
<desc>Indicates if a feature should be rendered when the notation is presented graphically or sounded when it is presented in an aural form.</desc>
<datatype>
<rng:ref name="data.BOOLEAN"/>
</datatype>
</attDef>
</attList>
</classSpec>