att.layer.log

Logical domain attributes.
Module
Attributes
@cue, @def, @metcon
@cue(optional) Value conforms to data.BOOLEAN.
@def(optional)Provides a mechanism for linking the layer to a layerDef 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 layer to a layerDef element. Value conforms to data.URI.
(MEI.shared) Attributes that describe "cue-ness".
@cue(optional) Value conforms to data.BOOLEAN.
(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.
@cue(optional) Value conforms to data.BOOLEAN.
@def(optional)Provides a mechanism for linking the layer to a layerDef 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
<layer>An independent stream of events on a staff.
<oLayer>A layer that contains an alternative to material in another layer.
Common Music Notation (CMN) repertoire component declarations.
<oLayer>A layer that contains an alternative to material in another layer.
Component declarations that are shared between two or more modules.
<layer>An independent stream of events on a staff.
Constraints

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

Declaration
<classSpec ident="att.layer.log" module="MEI.shared" type="atts">
<desc xml:lang="en">Logical domain attributes.</desc>
<classes>
<memberOf key="att.cue"/>
<memberOf key="att.meterConformance"/>
</classes>
<attList>
<attDef ident="def" usage="opt">
<desc xml:lang="en">Provides a mechanism for linking the layer to a layerDef element.</desc>
<datatype>
<rng:ref name="data.URI"/>
</datatype>
<constraintSpec ident="check_defTarget_layer" scheme="schematron">
<constraint>
<sch:rule context="mei:layer/@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:layerDef/@xml:id">The value in @def should correspond to the @xml:id attribute of a layerDef element.</sch:assert>
</sch:rule>
</constraint>
</constraintSpec>
</attDef>
</attList>
</classSpec>