att.staff.log

Logical domain attributes.
Module
Attributes
@def, @metcon
@def(optional)Provides a mechanism for linking the staff to a staffDef element. Value conforms to data.URI.
@metcon(optional)Indicates the relationship between the content of a staff or layer and the prevailing meter. Allowed values are: "c" (Complete; , conformant with the prevailing meter.), "i" (Incomplete; , not enough beats.), "o" (Overfull; , too many beats.)
@def(optional)Provides a mechanism for linking the staff to a staffDef element. Value conforms to data.URI.
(MEI.shared) Attributes that provide information about a structure’s conformance to the prevailing meter.
@metcon(optional)Indicates the relationship between the content of a staff or layer and the prevailing meter. Allowed values are: "c" (Complete; , conformant with the prevailing meter.), "i" (Incomplete; , not enough beats.), "o" (Overfull; , too many beats.)
Component declarations that are shared between two or more modules.
@def(optional)Provides a mechanism for linking the staff to a staffDef element. Value conforms to data.URI.
@metcon(optional)Indicates the relationship between the content of a staff or layer and the prevailing meter. Allowed values are: "c" (Complete; , conformant with the prevailing meter.), "i" (Incomplete; , not enough beats.), "o" (Overfull; , too many beats.)
Available at
<oStaff>A staff that holds an alternative passage which may be played instead of the original material.
<staff>A group of equidistant horizontal lines on which notes are placed in order to represent pitch or a grouping element for individual 'strands' of notes, rests, etc. that may or may not actually be rendered on staff lines; that is, both diastematic and non-diastematic signs.
Common Music Notation (CMN) repertoire component declarations.
<oStaff>A staff that holds an alternative passage which may be played instead of the original material.
Component declarations that are shared between two or more modules.
<staff>A group of equidistant horizontal lines on which notes are placed in order to represent pitch or a grouping element for individual 'strands' of notes, rests, etc. that may or may not actually be rendered on staff lines; that is, both diastematic and non-diastematic signs.
Constraints

@def attribute should have content.
The value in @def should correspond to the @xml:id attribute of a staffDef element.

Declaration
<classSpec ident="att.staff.log" module="MEI.shared" type="atts">
<desc xml:lang="en">Logical domain attributes.</desc>
<classes>
<memberOf key="att.meterConformance"/>
</classes>
<attList>
<attDef ident="def" usage="opt">
<desc xml:lang="en">Provides a mechanism for linking the staff to a staffDef element.</desc>
<datatype>
<rng:ref name="data.URI"/>
</datatype>
<constraintSpec ident="check_defTarget_staff" scheme="schematron">
<constraint>
<sch:rule context="mei:staff/@def">
<sch:assert role="warning" test="not(normalize-space(.) eq '')">@def attribute should have content.</sch:assert>
<sch:assert role="warning" test="every $i in tokenize(., '\s+') satisfies substring($i,2)=//mei:staffDef/@xml:id">The value in @def should correspond to the @xml:id attribute of a staffDef element.</sch:assert>
</sch:rule>
</constraint>
</constraintSpec>
</attDef>
</attList>
</classSpec>