18
Transforming XML Into Music Notation Baron Schwartz, Computer Science Perry Roland, Digital Library Worthy Martin, Computer Science

Transforming XML Into Music Notation Baron Schwartz, Computer Science Perry Roland, Digital Library Worthy Martin, Computer Science

Embed Size (px)

Citation preview

Page 1: Transforming XML Into Music Notation Baron Schwartz, Computer Science Perry Roland, Digital Library Worthy Martin, Computer Science

Transforming XML Into Music Notation

Baron Schwartz, Computer SciencePerry Roland, Digital Library

Worthy Martin, Computer Science

Page 2: Transforming XML Into Music Notation Baron Schwartz, Computer Science Perry Roland, Digital Library Worthy Martin, Computer Science

Overview

• Project Motivation• MEI and Research Objectives• XML and XSLT• A Sample Transformation• Results and Conclusions

Page 3: Transforming XML Into Music Notation Baron Schwartz, Computer Science Perry Roland, Digital Library Worthy Martin, Computer Science

Motivation

• There is no good, universal way to encode musical data in a computer file– There are dozens of good ones for specific

purposes– There are many uses: analysis, printing, and

bibliography to name a few– Commercially important: $711 million/yr industry

• There is a huge amount of material– UVA Library has 65,000+ scores and books– RISM project identified 1.5 million works – 50

years ago!

Page 4: Transforming XML Into Music Notation Baron Schwartz, Computer Science Perry Roland, Digital Library Worthy Martin, Computer Science

MEI and This Project

• MEI – the Music Encoding Initiative– An XML file format by Perry Roland– Designed to enable storing and

retrieving musical information– Not an audio file format – “music” is

an abstract concept• My job: prove the MEI concept

– Transform MEI-encoded music into notation

Page 5: Transforming XML Into Music Notation Baron Schwartz, Computer Science Perry Roland, Digital Library Worthy Martin, Computer Science

Transformation• I used XSLT to transform the files• Typesetting music is complicated,

so I used Mup as an intermediate format

MEIFile

XSLTScript

XSLTProcessor

NotationMupMupFile

Page 6: Transforming XML Into Music Notation Baron Schwartz, Computer Science Perry Roland, Digital Library Worthy Martin, Computer Science

XML

<staff>

</staff>

<chord>

</chord>

<note></note>

<note></note>

<note></note>

<staff>

<chord>

<note> <note><note>

Page 7: Transforming XML Into Music Notation Baron Schwartz, Computer Science Perry Roland, Digital Library Worthy Martin, Computer Science

XSLT<xsl:stylesheet>

<xsl:template match=“chord”>… do something …

</xsl:template>

<xsl:template match=“staff”>… do something …

</xsl:template>

<xsl:template match=“note”>… do something …

</xsl:template>

</xsl:template>

Page 8: Transforming XML Into Music Notation Baron Schwartz, Computer Science Perry Roland, Digital Library Worthy Martin, Computer Science

<staff>

<chord>

<note> <note><note>

<xsl:stylesheet>

<xsl:template> <xsl:template>

XSLT

XSLTProcessor

Page 9: Transforming XML Into Music Notation Baron Schwartz, Computer Science Perry Roland, Digital Library Worthy Martin, Computer Science

Sample File Fragments

1: 4c; 4e; 2g;bar

Mup

<bar n="2"> <staff def="_s1"> <note dur="4" pname="c" /> <note dur="4" pname="e" /> <note dur="2" pname="g" /> </staff></bar>

MEI

Page 10: Transforming XML Into Music Notation Baron Schwartz, Computer Science Perry Roland, Digital Library Worthy Martin, Computer Science
Page 11: Transforming XML Into Music Notation Baron Schwartz, Computer Science Perry Roland, Digital Library Worthy Martin, Computer Science
Page 12: Transforming XML Into Music Notation Baron Schwartz, Computer Science Perry Roland, Digital Library Worthy Martin, Computer Science
Page 13: Transforming XML Into Music Notation Baron Schwartz, Computer Science Perry Roland, Digital Library Worthy Martin, Computer Science

Results and Conclusions

• MEI can represent notation• MEI is probably useful for other

purposes• Future work

– More transformations– Native file format

Page 14: Transforming XML Into Music Notation Baron Schwartz, Computer Science Perry Roland, Digital Library Worthy Martin, Computer Science

Are there any other formats?

• MIDI– Commonly used, but very limited

• MusicXML– Commercially motivated– Explicitly designed for interchange– Some serious design mistakes

Page 15: Transforming XML Into Music Notation Baron Schwartz, Computer Science Perry Roland, Digital Library Worthy Martin, Computer Science

What about MIDI?

• MIDI encodes a single performance• MIDI can’t tell a D-flat from a C-

sharp• MIDI can’t store complicated

information, such as visual layout

Page 16: Transforming XML Into Music Notation Baron Schwartz, Computer Science Perry Roland, Digital Library Worthy Martin, Computer Science

What Are the Requirements?

• Comprehensive• Declarative• Explicit• Interpreted• Hierarchical• Formal • Flexible• Extensible

Page 17: Transforming XML Into Music Notation Baron Schwartz, Computer Science Perry Roland, Digital Library Worthy Martin, Computer Science

What Uses Exist?

• Notation (most important)• Interchange & Transmission• Analysis• Preservation• Historical Works• E-Texts for Digital Libraries• Searching and Cataloguing/Bibliographies• Automatic Performance

Page 18: Transforming XML Into Music Notation Baron Schwartz, Computer Science Perry Roland, Digital Library Worthy Martin, Computer Science

Other Work

• Changes to the MEI format– Representing information atomically

• Suggestions to preserve MEI’s flexibility– A rendering model– A definition for auxiliary languages– A stylesheet namespace model