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
scoreDefContainer for score meta-information.
staffDefContainer for staff meta-information.
Component declarations that are shared between two or more modules.
scoreDefContainer for score meta-information.
staffDefContainer 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>