Open lemzwerg opened 1 month ago
I wrote a scraper for the MusicXML examples at https://github.com/infojunkie/musicxml-midi/blob/main/src/js/musicxml-examples.js
I had to create a MusicXML wrapping to convert the examples to actual MusicXML files. While the generated files are all technically passing validation against musicxml.xsd
(except for a few that I flagged at #496) I did not verify (and highly doubt) that they make sense semantically.
I do think the examples would be more useful to the community if they included the full MusicXML structures, instead of fragments.
Here's the current example for
<octave-shift>
IMHO, it has two major problems.
It is incomplete. In particular, it doesn't show where the ending
<octave-shift>
element should be positioned – probably one of the reasons that lead to the current situation as discussed in #552.It uses
<offset>
, which IMHO is bad. The starting position of the '8va' symbol relative to the associated note head should be fixed and not depend on the layout. In other words,<offset>
should be replaced with arelative-x
attribute.Of course, using
<offset>
per se is not wrong (and it probably makes sense in some situations if applied to the end of an ottava so that it stops right before a bar line), but I think it would be best if the MusicXML examples also show good practice. BTW, the value -4 of<offset>
in the example is meaningless if the value of<divisions>
isn't also given or mentioned.