XML.orgXML.org
FOCUS AREAS |XML-DEV |XML.org DAILY NEWSLINK |REGISTRY |RESOURCES |ABOUT
OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]
Creating a "General MusicXML" format using W3C XML Schemas

Dear xml-dev list members,

Over the years, we have received many requests to make MusicXML
(www.recordare.com/xml.html) easier to use from an application
programming perspective. These requests have tended to fall into a few
categories:

1) Use a more strongly-typed XML definition (e.g. W3C XML Schema or
Relax NG) than DTDs.  This would let XML validation perform many error
checks that currently require custom code, as text elements get turned
into enumeration elements. It would also make MusicXML work better
with data binding frameworks, such as what ProxyMusic manually
provides for Java using JAXB.

2) Remove some of the flexibility that is useful for supporting a very
broad class of applications in order to make things easier for
building common classes of applications. One example is the request
that MusicXML require a voice element within the note and forward
elements. Removing deprecated features would be another way to
simplify development.

3) Improve the documentation and tool support for the MusicXML
language, including providing a proper specification together with
more complete tutorials, examples, and test suites.

We have not addressed these requests in the past, in large part due to
prioritization issues. Up until MusicXML 2.0, adding more features to
the language has had much higher priority from our customers than
these ease-of-development improvements. After all, if you cannot
implement a feature that is crucial for your application, it does not
much matter if implementing something else becomes incrementally
easier.

With the June 2007 release of Version 2.0, the MusicXML format has
reached a level of maturity where it now makes sense to address these
issues. I would like to get the xml-dev community's feedback on one
approach to meeting these needs.

We are considering building one or more "MusicXML profiles" that
define MusicXML subsets for particular applications. This idea is
inspired by past efforts, specifically the General MIDI profile based
on the MIDI specification.

General MIDI added more requirements to the base MIDI specification in
order to provide a better, more consistent customer experience when
using different MIDI products. Similarly, a "General MusicXML" format
would add more requirements to the base MusicXML specification in
order to provide a better, more consistent customer experience when
using different MusicXML products.

One problem that has kept us from addressing the strong typing and
flexibility issues in the past is that they involve subsetting the
MusicXML format. We have always wanted to have all valid MusicXML 1.0
files be valid MusicXML 2.0 files. Adding one or more profiles should
allow us to have the best of both worlds. We can have a more rigorous
specification to create more consistent and easier-to-develop
applications within a particular domain, while keeping the full
flexibility of the MusicXML DTDs for applications and data that need
it.

We would most likely use the W3C XML Schema format to define these
profiles. This is due to its extensive software support, including
pervasive parser support, comprehensive tool support, and integration
into other XML technologies like JAXB and XQuery.

This would be a big change for the MusicXML world. I would very much
appreciate the advice of the XML experts on this list regarding this
idea. Are there other examples of formats adding W3C XML Schema
profiles to existing DTD-based formats? How has this worked? Are there
case studies that we can refer to? What technical dangers should we
look out for? What technical opportunities should we look to exploit?

Thank you very much for any assistance you can offer regarding the
idea of creating a "General MusicXML" profile using W3C XML Schemas.

Best regards,

Michael Good
Recordare LLC
www.recordare.com


[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]


News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 1993-2007 XML.org. This site is hosted by OASIS