att.cleffing.log

Used by staffDef and scoreDef to provide default values for attributes in the logical domain related to clefs.
Module
MEI.shared
Attributes
clef.dis, clef.dis.place, clef.line, clef.shape
clef.dis(optional)Records the amount of octave displacement to be applied to the clef. Value conforms to data.OCTAVE.DIS.
clef.dis.place(optional)Records the direction of octave displacement to be applied to the clef. Value conforms to data.STAFFREL.basic.
clef.line(optional)Contains a default value for the position of the clef. The value must be in the range between 1 and the number of lines on the staff. The numbering of lines starts with the lowest line of the staff. Value conforms to data.CLEFLINE.
clef.shape(optional)Encodes a value for the clef symbol. Value conforms to data.CLEFSHAPE.
clef.shape(optional)Encodes a value for the clef symbol. Value conforms to data.CLEFSHAPE.
clef.line(optional)Contains a default value for the position of the clef. The value must be in the range between 1 and the number of lines on the staff. The numbering of lines starts with the lowest line of the staff. Value conforms to data.CLEFLINE.
clef.dis(optional)Records the amount of octave displacement to be applied to the clef. Value conforms to data.OCTAVE.DIS.
clef.dis.place(optional)Records the direction of octave displacement to be applied to the clef. Value conforms to data.STAFFREL.basic.
Component declarations that are shared between two or more modules.
clef.dis(optional)Records the amount of octave displacement to be applied to the clef. Value conforms to data.OCTAVE.DIS.
clef.dis.place(optional)Records the direction of octave displacement to be applied to the clef. Value conforms to data.STAFFREL.basic.
clef.line(optional)Contains a default value for the position of the clef. The value must be in the range between 1 and the number of lines on the staff. The numbering of lines starts with the lowest line of the staff. Value conforms to data.CLEFLINE.
clef.shape(optional)Encodes a value for the clef symbol. Value conforms to data.CLEFSHAPE.
Available at
scoreDef(score definition) – Container for score meta-information.
staffDef(staff definition) – Container for staff meta-information.
Component declarations that are shared between two or more modules.
scoreDef(score definition) – Container for score meta-information.
staffDef(staff definition) – Container for staff meta-information.
Constraints

An 'F', 'C', or 'G' clef requires that its position be specified.
A TAB or percussion clef requires that the number of lines be specified.

Declaration
<classSpec ident="att.cleffing.log" module="MEI.shared" type="atts">
<desc>Used by staffDef and scoreDef to provide default values for attributes in the logical domain related to clefs.</desc>
<constraintSpec ident="clef_shape_requires_clef_line" scheme="isoschematron">
<constraint>
<sch:rule context="mei:*[matches(@clef.shape, '[FCG]')]">
<sch:assert test="@clef.line">An 'F', 'C', or 'G' clef requires that its position be specified.</sch:assert>
</sch:rule>
<sch:rule context="mei:*[matches(@clef.shape, '(TAB|perc)')]">
<sch:assert test="@lines">A TAB or percussion clef requires that the number of lines be specified.</sch:assert>
</sch:rule>
</constraint>
</constraintSpec>
<attList>
<attDef ident="clef.shape" usage="opt">
<desc>Encodes a value for the clef symbol.</desc>
<datatype>
<rng:ref name="data.CLEFSHAPE"/>
</datatype>
</attDef>
<attDef ident="clef.line" usage="opt">
<desc>Contains a default value for the position of the clef. The value must be in the range between 1 and the number of lines on the staff. The numbering of lines starts with the lowest line of the staff.</desc>
<datatype>
<rng:ref name="data.CLEFLINE"/>
</datatype>
</attDef>
<attDef ident="clef.dis" usage="opt">
<desc>Records the amount of octave displacement to be applied to the clef.</desc>
<datatype>
<rng:ref name="data.OCTAVE.DIS"/>
</datatype>
</attDef>
<attDef ident="clef.dis.place" usage="opt">
<desc>Records the direction of octave displacement to be applied to the clef.</desc>
<datatype>
<rng:ref name="data.STAFFREL.basic"/>
</datatype>
</attDef>
</attList>
</classSpec>