MusicXML

MusicXML（，音乐扩展标记语言）是一个开放的基于XML的记录西式乐谱的檔案格式。该格式是完全自由、开放记录的，并依据W3C社区的许可协议自由使用。

 历史 
MusicXML由Reccordare公司开发，该技术源于几个现有的基于学术上的关键技术和想法，比如Walter Hewlett的MuseData和David Huron的Humdrum。被设计用来做为乐谱信息的交换格式，特别是在不同的制谱软件之间进行交换。随着MakeMusic公司于2011年收购Recordare，MusicXML的开发由MakeMusic管理。从2015年7月起，MusicXML的移交文档给W3C Music Notation Community Group。

MusicXML的1.0版由Recordare公司在2004年1月发布。在2005年5月发布1.1版，包含对文件格式支持的改进。在2007年6月发布了2.0版，并且包含了标准的压缩格式。所有这些都建立在一系列的文档类型定义（DTD）之上。2.0版的XML Schema定义（XSD）的实现于2008年9月发布。3.0版在2011年8月发布，改进了对虚拟乐器的支持。同时包含在DTD和XSD版本中。3.1版在2017年12月发布，包含对Standard Music Font Layout （SMuFL）的支持的改进。MusicXML DTD和XSD版本都可以通过W3C Community Final Specification Agreement自由发布。

支持
截止2017年12月，MusicXML被估计得到了超过230个乐谱程序的支持。这些程序包括：
 大多数乐谱编写程序，包括Finale、Sibelius和MuseScore。
 大多数音乐OCR程序，包括SmartScore和PhotoScore。
 大多数音序程序，包括Cubase、Logic Pro、Digital Performer和SONAR。
此外，还可以通过使用HTML5 canvas元素和JavaScript在网页浏览器中产生合理的乐曲。 源码可从Google Code 、Github 和Bitbucket 获取。

功能包括调号、拍号、谱号、符杠信息、符杆的方向、圆滑线、装饰音、小节和书写上的重复。Juan Pablo Bello, Elaine Chew, Douglas Turnbull (2008) ISMIR 2008: Proceedings of the 9th International Conference p.365 

 示例 
MusicXML像所有基于XML的格式一样，用于简单的由自动化工具分析和操纵。即使MusicXML可以通过手工创建，像Finale和MuseScore那样的交互式的乐谱编写软件大大简化了MusicXML文件的读取、编写和修改。

下面是一个C大调，G谱号，4/4拍，包含一个中央C全音符的例子。

<?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>

以上的文字演示是繁杂的，MusicXML v2.0通过压缩成ZIP格式并加上.mxl后缀的处理使文件体积减小到20分之一。

参考资料

 外部链接 
MusicXML Version 3.1 Final Community Group Report
W3C Music Notation Community Group
MakeMusic上的官方网站
MusicXML viewer

Category:基于XML的标准
Category:樂譜檔案格式
Category:音乐标记语言
Category:W3C标准