- From: Joe Berkovitz <joe@noteflight.com>
- Date: Mon, 27 Mar 2017 12:42:55 -0400
- To: Adrian Holovaty <adrian@holovaty.com>
- Cc: public-music-notation-contrib@w3.org
- Message-ID: <CA+ojG-YGiZJXV=oM7JRd1qW0MCr8ADEcHmMfS+6EZviMkESHoQ@mail.gmail.com>
I think Adrian's and Christof's points illustrated my thinking perfectly. In MusicXML one must track a cursor that can go in any direction at any time, by units that are unconstrained with respect to beat or meter. This allows the construction of measures whose rendering as music notation is not well defined. One must also track whether a chord is being accumulated, whether a run of grace notes is in effect, whether a tuplet is in effect, and so on. I wanted to avoid cluttering the document with MusicXML-vs-MNX examples as I felt it might be confusing. But a conceptual summary of the cursor problem is easy to offer. Imagine this entirely allowable sequence of MusicXML constructs, in a 4/4 measure: - quarter note - move the cursor forwards by a quintuplet 16th note - eighth note rest - move the cursor backwards by a triplet 8th note - dotted half note Of course we can imagine ways of notating this, but they all require stepping outside CWMN and doing something nonstandard. Let me point out that the idea of positional bookkeeping is not completely dead in MNX: it includes a proposal for a cursor within <sequence>s which is advanced by <event>s. However this cursor only advances by <event> durations (i.e. regular note values) and cannot move backwards, so it is much simpler than MusicXML's cursor. In effect, this cursor limits <event> positions to those that are valid within the constraints of CWMN. . . . . . ...Joe
Received on Monday, 27 March 2017 16:43:29 UTC