| This is a common complaint, and it's something we're trying to remedy with MNX: https://w3c.github.io/mnx/docs/ Music notation is incredibly complex, and there are many places things can go wrong. There's a wide spectrum of error situations, such as: * The exporting application "thinks" about notation in a different way than the importing application (i.e., it has a different mental model). * MusicXML provides multiple ways of encoding the same musical concept, and some applications don't take the effort to check for all possible scenarios. * Some applications support a certain type of notation while others don't. * MusicXML doesn't have a semantic way of encoding certain musical concepts (leading applications to encode them as simple text (via the words element), if at all. * Good ol' fashioned bugs in MusicXML import or export. (Music notation is complex, so it's easy to introduce bugs!) |
This sounded interesting, so I went to the webpage, and found this point specifically called out:
> It prioritizes interchange, meaning: it can be generated unambiguously, it can be parsed unambiguously, it favors one-and-only-one way to express concepts, and multiple programs reading the same MNX file will interpret it the same way.
But I'm curious to see some examples of this. https://w3c.github.io/mnx/docs/comparisons/musicxml/ provides an interesting comparison (and calls out how the same MusicXML can be interpreted in different ways for things like octave shifts), but it would be nice if the page also included alternate ways that MusicXML can represent the same composition and talk about how certain programs end up misinterpreting/misrepresenting them. The Parts comparison, for instance, mentions how you can represent the same thing in two different ways in MusicXML (score-timewise and score-partwise), but only provides an example for one (score-partwise), and doesn't go into much more detail about if this leads to ambiguity in interpretation or if it's just making things needlessly complex.