Embedding MusicXML in MNX

Hi all,

I'm currently writing an application that makes SVG instantiations of 
the MNX files in /MNX by Example/ [1].
This (C#) app is planned to have 5 phases:
1. parse the MNX file into a data structure.
2. set up the spatial info (page format --margins, staff sizes etc.)
3. set up the temporal info (tempo)
4. convert the data structure from 1, into the data structure used by my 
current SVG-MIDI writer [2].
5. output strongly typed SVG-MIDI.

The parser already copes with a lot more than just the current examples [3].
I have lots of existing software that will help with the remaining 
stages, and intend to complete this application as planned.

However:
It occurs to me that things could be made easier for the MusicXML 
community if MNX-Common was actually (the latest version of) MusicXML 
embedded in an MNX wrapper:

<mnx> <score> <mnx-common profile="standard"> <!-- MusicXML code -> 
</mnx-common> </score> </mnx>

The community would not then have to go through the intermediate step of 
converting MusicXML to MNX-Common.
Would that be a good or a bad thing?

If MusicXML *were* to be embedded then, given a corresponding parser 
(dll) that delivered a standard internal data structure, I ought to ba 
able to complete stage 4 for that parser too. Presumably, the data 
structure for embedded MusicXML would not be too different from the one 
I arrived at using the current MNX examples and Draft Spec [4].

Any thoughts?

All the best,
James
(notator)

[1] https://w3c.github.io/mnx/by-example/
[2] The SVG-MIDI writer currently has some shortcomings (e.g. it does 
not yet write slurs or tuplet brackets), but I'll solve those when I get 
there.
[3] The whole (C#, Visual Studio) project is currently in a private 
repository on GitHub. If anyone wants to take a look, please let me know.
[4] https://w3c.github.io/mnx/specification/common/

-- 
email signature

https://james-ingram-act-two.de
https://github.com/notator

Received on Saturday, 18 April 2020 10:12:14 UTC