MusicXML

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
MusicXML
Filename extension
.musicxml, .mxl
Internet media type
application/vnd.recordare.musicxml+xml,[1] application/vnd.recordare.musicxml[2]
Developed byW3C Music Notation Community Group
Latest release
3.1
(December 2017[3])
Type of formatMusical notation
Extended fromXML
Open format?Yes
Websitewww.musicxml.com

MusicXML is an XML-based file format for representing Western musical notation. The format is open, fully documented, and can be freely used under the W3C Community Final Specification Agreement.[4][5]

History[edit]

MusicXML was invented by Michael Good and initially developed by Recordare LLC. It derived several key concepts from existing academic formats (such as Walter Hewlett's ASCII-based MuseData[6] and David Huron's Humdrum)[7]. It is designed for the interchange of scores, particularly between different scorewriters. MusicXML development was managed by MakeMusic following the company's acquisition of Recordare in 2011.[8][9] MusicXML development was transferred to the W3C Music Notation Community Group in July 2015.[10]

Version 1.0 was released in January 2004. Version 1.1 was released in May 2005 with improved formatting support. Version 2.0 was released in June 2007 and included a standard compressed format.[11] All of these versions were defined by a series of document type definitions (DTDs). An XML Schema Definition (XSD) implementation of Version 2.0 was released in September 2008. Version 3.0 was released in August 2011 with improved virtual instrument support, in both DTD and XSD versions.[12][13] Version 3.1 was released in December 2017 with improved support for the Standard Music Font Layout (SMuFL).[3] The MusicXML DTDs and XSDs are each freely redistributable under the W3C Community Final Specification Agreement.[5]

Support[edit]

As of October 2020, MusicXML is supported to varying degrees by over 250 notation programs.[14][15] These programs include:

Additionally, web support is possible through the use of the HTML5 canvas element and JavaScript resulting in the rendering of legible music within a web browser.[16]

Features include key and time signatures, clefs, beaming information, stem directions, slurs, ornaments, barlines, and written repeats.[17]

Example[edit]

Like all XML-based formats, MusicXML is intended to be easy for automated tools to parse and manipulate. Though it is possible to create MusicXML by hand, interactive score writing programs like Finale and MuseScore greatly simplify the reading, writing, and modifying of MusicXML files.

The following example is a score consisting of a single whole note middle C in the key of C major on the Treble Clef.[18]

Representation of middle C on the treble clef created through MusicXML code.
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE score-partwise PUBLIC
    "-//Recordare//DTD MusicXML 3.1 Partwise//EN"
    "http://www.musicxml.org/dtds/partwise.dtd">
<score-partwise version="3.1">
  <part-list>
    <score-part id="P1">
      <part-name>Music</part-name>
    </score-part>
  </part-list>
  <part id="P1">
    <measure number="1">
      <attributes>
        <divisions>1</divisions>
        <key>
          <fifths>0</fifths>
        </key>
        <time>
          <beats>4</beats>
          <beat-type>4</beat-type>
        </time>
        <clef>
          <sign>G</sign>
          <line>2</line>
        </clef>
      </attributes>
      <note>
        <pitch>
          <step>C</step>
          <octave>4</octave>
        </pitch>
        <duration>4</duration>
        <type>whole</type>
      </note>
    </measure>
  </part>
</score-partwise>

The textual representation listed above is verbose; MusicXML v2.0 addresses this by adding a compressed zip format with a .mxl suffix that can make files roughly one-twentieth the size of the uncompressed version.[19]

See also[edit]

References[edit]

  1. ^ "Type name: application : Subtype name: vnd.recordare.musicxml+xml". Iana.org. Retrieved 24 November 2014.
  2. ^ "Type name: application : Subtype name: vnd.recordare.musicxml". Iana.org. Retrieved 24 November 2014.
  3. ^ a b "Working group releases its first MusicXML update". ScoringNotes.com. NYC Music Services. Retrieved 19 December 2017.
  4. ^ "Sustainability of Digital Formats Planning for Library of Congress Collections — MusicXML, Version 3.1". Library of Congress. 9 May 2019. Retrieved 15 October 2020.
  5. ^ a b "W3C Community Final Specification Agreement". W3C. Retrieved 19 December 2017.
  6. ^ Hewlett, Walter B. (1997). "Chapter 27: MuseData: Multipurpose Representation". In Selfridge-Field, Eleanor (ed.). Beyond MIDI: The Handbook of Musical Codes. MIT Press. pp. 402–447. ISBN 0-262-19394-9.
  7. ^ Good, Michael. "MusicXML: An Internet-Friendly Format for Sheet Music". citeseerx.ist.psu.edu. Retrieved 23 August 2020.
  8. ^ "Recordare Closing Release" (PDF). Makemusic.com. Retrieved 13 December 2014.
  9. ^ Phelps, David. "MakeMusic acquires assets of Internet music company". StarTribune. Retrieved 15 October 2020.
  10. ^ "Beyond iTunes: XML boffins target sheet music". The Register. Retrieved 19 December 2017.
  11. ^ "Compressed MXL Files". MusicXML. Retrieved 27 June 2014.
  12. ^ "Version History of MusicXML". Musicxml.com. Retrieved 27 June 2014.
  13. ^ "News: Recordare Adds Finale 2010 Support to Dolet 5 for Finale Plug-In".
  14. ^ "Software". MusicXML. Retrieved 15 October 2020.
  15. ^ "File format". MuseScore. Retrieved 27 June 2014.
  16. ^ "HTML5 MusicXML Viewer". Musicxml-viewer.com. 15 May 2012. Archived from the original on 3 April 2016. Retrieved 27 June 2014. Source code available in Google Code, Github and Bitbucket.
  17. ^ Kirlin, Phillip B.; Utgoff, Paul E. (2008). Bello, Juan Pablo; Chew, Elaine; Turnbull, Douglas (eds.). A Framework for Automated Schenkerian Analysis. ISMIR 2008: Proceedings of the 9th International Conference on Music Information Retrieval. Drexel University, Philadelphia, Pennsylvania. pp. 363–368 at 365. ISBN 978-0-615-24849-3.
  18. ^ "Hello World: A One-Bar Song with a Whole Note on Middle C in 4/4 time". Musicxml.com. Retrieved 19 December 2017.
  19. ^ "MusicXML FAQ". MusicXML. Retrieved 13 December 2014.

External links[edit]