w3c / musicxml

MusicXML specification
508 stars 57 forks source link

Guidance on Endings where multiple bars #433

Closed alanwhite closed 2 years ago

alanwhite commented 2 years ago

Something I've not managed to figure out in MusicXML 4.0 is how to represent where in a piece of music that is 8 measures long, and the ending is 4 of those measures long for the 1st time and 4 different measures for the 2nd time. Another of way of explaining this might be play 4 measures that are common, the 4 measures of the 1st time ending, then the 4 measures in common again followed by the 4 measures of the 2nd time.

The documentation states that end ending-type is either start, stop or discontinue. For the first of the 4 measures that make up the 1st time ending I can see this would be ending-type = start, and for the 4th measure in the 1st time ending it would be ending-type = stop. How should the middle 2 measures be annotated to show they are part of the first time?

Is there an expectation that software should implicitly continue the ending from the prior bar, until such times as it is stopped? Thanks!

mdgood commented 2 years ago

@alanwhite Could you please post or link to a graphic with the type of notation you're describing? It sounds like you're describing a form that would not be notated; both endings would need to be written out in full. But without seeing an example I don't know if I am understanding correctly.

alanwhite commented 2 years ago

Hi @mdgood thank you, here's an image from the software that currently saves files in a proprietary xml format, I'm wanting to add MusicXML interchange possibilities. In this style of music (pipe band drumming), variance in the last 4 measures is a common pattern.

Image 02-11-2021 at 22 43

mdgood commented 2 years ago

@alanwhite Thanks! In this example you would write out all 12 measures in full. The first ending would start at the beginning of bar 5 and stop at the end of bar 8. The second ending would start at the beginning of bar 9 and stop at the end of bar 12. You would only have <ending> elements in those four bars, not bars 6 and 7 or 10 and 11.

Does that help? I see that our <ending> element example can be a bit confusing because we accidentally left out the discontinue type for the the 3rd ending.

Like lots of things in MusicXML that don't fit in a hierarchy of parts and measures, endings are represented just at the beginning and the end.

alanwhite commented 2 years ago

Really appreciate the rapid clarification @mdgood thank you. Just to reflect what I think I understand now is that any software reading that notation in MusicXML would take "start" directive and that remains in force until it encounters a "stop" which could be many measures later.

I have seen that as a pattern elsewhere I think, e.g. if you add attributes to a part (time wise) such as hiding lines 1,2,4 & 5 (as per the example above, that attributes annotation doesn't get duplicated in every subsequent measure/part, it "carries forward" until changed.