[MEI-L] clef as milestone element
Andrew Hankinson, Mr
andrew.hankinson at mail.mcgill.ca
Tue May 31 01:18:37 CEST 2011
Hi all,
tl;dr Should clefs be considered a milestone element?
The <clef> element in MEI is currently only allowed within <clefchange> and <staffdef> elements. I can understand why, since <staff> is supposed to reflect musical linearity and not be affected by system breaks, which is more a physical artifact of page layout. So, a <clef> should only occur if a) it's part of the staff definition, or b) it's changing.
*However*, an interesting question comes up when encoding clefs at the beginning of systems. Currently, the only way to encode this is to wrap a <clef> in a <clefchange>, but for most of the time, it's not actually changing; it's only a "courtesy" clef.
So, to give an example. Suppose the following:
<staff n="1">
<layer n="1">
<sb n="1"/>
<clef line="3" shape="F"/>
<note pname="f" oct="3"/>
<note pname="g" oct="3"/>
...
<sb n="2" />
<clef line="3" shape="F"/>
<note pname="c" oct="3"/>
<note pname="d" oct="3"/>
...etc...
This is currently invalid MEI, but I'm not really sure how to capture the clefs at the beginning of each system without a) incorporating them into a <clefchange> (semantically wrong), b) allowing <clef> directly within layer, or (really crazy) c) changing <sb> to include clef information (e.g., allow <clef> within <sb>, and/or add @clef.shape and @clef.line directly on <sb>.
What I'd like to suggest is option b), but I'm sure there's a very good reason why I'm wrong. :)
-Andrew
More information about the mei-l
mailing list