• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Music and XML again
 

Music and XML again

on

  • 1,022 views

 

Statistics

Views

Total Views
1,022
Views on SlideShare
1,021
Embed Views
1

Actions

Likes
0
Downloads
10
Comments
0

1 Embed 1

http://localhost 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • Hello, I’m Baron Schwartz. My thesis project was transforming XML into music notation. I’d like to thank Perry Roland and Worthy Martin for their help and support.

Music and XML again Music and XML again Presentation Transcript

  • 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
  • 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!
  • 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
  • Transformation
    • I used XSLT to transform the files
    • Typesetting music is complicated, so I used Mup as an intermediate format
    MEI File XSLT Script XSLT Processor Notation Mup Mup File
  • XML <staff> </staff> <chord> </chord> <note></note> <note></note> <note></note> <staff> <chord> <note> <note> <note>
  • 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>
  • XSLT XSLT Processor <staff> <chord> <note> <note> <note> <xsl:stylesheet> <xsl:template> <xsl:template>
  • Sample File Fragments 1: 4c; 4e; 2g; bar Mup <bar n=&quot;2&quot;> <staff def=&quot;_s1&quot;> <note dur=&quot;4&quot; pname=&quot;c&quot; /> <note dur=&quot;4&quot; pname=&quot;e&quot; /> <note dur=&quot;2&quot; pname=&quot;g&quot; /> </staff> </bar> MEI
  •  
  •  
  •  
  • Results and Conclusions
    • MEI can represent notation
    • MEI is probably useful for other purposes
    • Future work
      • More transformations
      • Native file format
  • Are there any other formats?
    • MIDI
      • Commonly used, but very limited
    • MusicXML
      • Commercially motivated
      • Explicitly designed for interchange
      • Some serious design mistakes
  • 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
  • What Are the Requirements?
    • Comprehensive
    • Declarative
    • Explicit
    • Interpreted
    • Hierarchical
    • Formal
    • Flexible
    • Extensible
  • What Uses Exist?
    • Notation (most important)
    • Interchange & Transmission
    • Analysis
    • Preservation
    • Historical Works
    • E-Texts for Digital Libraries
    • Searching and Cataloguing/Bibliographies
    • Automatic Performance
  • 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