att.cleffing.log

Used by staffDef and scoreDef to provide default values for attributes in the logical domain related to clefs.
Module
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>Container for score meta-information.
<staffDef>Container for staff meta-information.
Component declarations that are shared between two or more modules.
<scoreDef>Container for score meta-information.
<staffDef>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 xml:lang="en">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="schematron">
<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 xml:lang="en">Encodes a value for the clef symbol.</desc>
<datatype>
<rng:ref name="data.CLEFSHAPE"/>
</datatype>
</attDef>
<attDef ident="clef.line" usage="opt">
<desc xml:lang="en">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 xml:lang="en">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 xml:lang="en">Records the direction of octave displacement to be applied to the clef.</desc>
<datatype>
<rng:ref name="data.STAFFREL.basic"/>
</datatype>
</attDef>
</attList>
</classSpec>