[MEI-L] Debussy La Danse de Puck clef

Andrew Hankinson, Mr andrew.hankinson at mail.mcgill.ca
Fri Jun 10 17:58:06 CEST 2011


On 2011-06-10, at 11:02 AM, Roland, Perry (pdr4h) wrote:

> As you say, in the next measure it is assumed that the clef for this staff reverts to the clef.shape and clef.line values set by a preceding <staffDef>.  Or, more precisely, that the clef for layer 1 never actually changed, only the one in layer 2.  And, yes, there should be more attributes on <clefChange> and <clef> to better indicate the clef's relative size and position.  In MEI "geek-speak", it's a matter of making <clef> and <clefChange> members of existing attribute classes (att.relativesize, for example) or adding new attribute classes, if existing classes don't have the desired attributes.

I always get a bit antsy when I see the word "assumed" in dealing with documents that are ultimately meant to be consumed by a computer, and not a human. In general, MEI makes extensive use of milestone elements to denote the beginnings of something, but this is at the expense of actually knowing when to end something. In this case, we have an explicit <clefChange /> as a child of layer 2, but no explicit "<endClefChange />" (which would be ridiculous, of course...).

This is fine in the local context, but should there need to be *another* layer 2 in the next measure (for a different reason), would it be safe to say that the new layer inherits from the previous layer 2? I suspect that in this case, the answer is "no," because in this case a layer is a layer in the graphic sense -- it's something that's outside of the base flow that when flattened makes sense, but needs to have some sort of separation from the underlying notation.

However, this stance immediately becomes problematic when you equate "layers" with "voices," as the current documentation for layer alludes. Layers seem to want to continue over measures in order to give some sense of continuity of the voice. If a clef change happened in a previous layer in a previous staff or measure when layer is functioning as a voice, I assume that it should hold until another clef change in the same voice. This gives us two conflicting cases where, in some instances the <clefChange /> is a local change that only holds until the end of the layer, and in others it holds until the next milestone is reached.




More information about the mei-l mailing list