This project was created for graduate school circa 2010 and is no longer maintained. Links may be broken.

MXMLiszt 0.9.2 (Beta)

Table of Contents




How it works




MXMLiszt is a web-based delivery and search/retrieval environment for MusicXML files and their manifestations.

MXMLiszt and an accompanying research paper, Beyond Images: Encoding Music for Access and Retrieval, were created in order to complete a Master's in Library and Information Science at the University of Alabama under the direction of Dr. Steven L. MacCall.

On the name "MXMLiszt":

MXMLiszt = MusicXML List.

MXMLiszt is pronounced [mak-suh-muh-list].

MXMLiszt references the great musical maximalist, Franz Liszt.

Installation (Windows 32-bit, home-based server)

MXMLiszt is currently known to work on the following 32-bit Windows servers:

  • Successfully tested for production and hosting on Windows XP Home Edition (Service Pack 3) and Windows 7 (Professional).
  • Successfully tested for hosting on Windows Server 2003.

MXMLiszt uses the following backend software*:

  • Musescore (version 0.9.5)
  • MusicXML Library (version 2.0)
  • ImageMagick (version 6.5.9-5)
  • Zong! Player (version 0.4.48)**
  • Saxon-HE (version 9.2)
  • BaseX (version 6)
  • Additionally, you need the Java Runtime Environment and an Apache server that supports PHP 5.

* Note that many of the software versions are not the most current; this will be addressed in future versions.

** The Zong! Player is included with MXMLiszt 0.9.2.

To get MXMLiszt up and running do the following:

  1. Assuming you don't have an Apache/PHP setup, download XAMPP.
    • Create a "bin" folder inside the root XAMPP folder.
    • Because some of the MXMLiszt scripts take a lot of time to run, increase the maximum execute time in "php.ini" to more than the default of 60 seconds. I used "3600".
  2. Download the file.
    • Extract the files/folders and place the root "MXMLiszt" folder inside XAMPP's "htdocs" folder.
    • Open "setup.php" and change line 5 (below) to replace the default Administrator password from "tausig" to your own password.
      • $validPassword = "tausig";
  3. Download MuseScore.
    • Install MuseScore inside the "bin" folder you made in Step 1.
    • Rename the root folder to just "MuseScore".
    • The program executable should be located at "bin\MuseScore\bin\mscore.exe".
    • Run MuseScore and go to Edit>Preferences>Export and uncheck "Screen shot function".
    • Click "Apply".
    • Go to Edit>Preferences>Score and select "A4" as the default paper size and make sure "Landscape" and "Two sided" are unchecked.
    • Click "Apply".
    • Close the program.
  4. Download MusicXML Library.
    • Create a folder called "libmusicxml" inside your "bin" folder and extract all the MusicXML Library files in that folder.
    • The transposition executable should be located at "bin\libmusicxml\xmltranspose.exe".
  5. Download ImageMagick.
    • Install ImageMagick inside the "bin" folder.
    • Rename the root folder to simply "ImageMagick".
    • The "convert" executable should be located at "bin\ImageMagick\convert.exe".
  6. Download the Java version of BaseX.
    • Place the .jar file in the "bin" folder.
  7. Download Saxon-HE.
    • Extract the .jar file to the "bin" folder.
  8. Run "xampp-control.exe" from the root XAMPP folder and start only the Apache module:

  1. You should now be able to go to "http://localhost/MXMLiszt/" or "" from your browser and see the MXMLiszt welcome page:

  1. Now login via the "Administrator>Login/Logoff" link and execute options 1 through 6; this may take a while.
  2. Hope it works!


Administrator errors:

  1. generateMODS.php not working
    • Make sure Java is installed.
    • You must have a live internet connexion for Saxon to perform XSLT operations due to xsd/schema needs.

User errors:

  1. Zong! Player not working
    • Make sure Java is installed. I use version 1.6.0_20.
    • Make sure you've installed the Java Soundbank.
    • Occassionally, there are MusicXML files Zong! Player cannot play. I plan to contact the programmers and ask why this might happen from time to time.
  2. Some of the PDFs have very odd spacing and page layout issues.
    • I think this is an issue with MuseScore. I own Finale Notepad and it seems to do a better job with MusicXML import. But, I really don't know yet why these things happen from time to time with certain pieces. I should probably experiment more with MuseScore style configurations.

How it works

MXMLiszt works on the principle that while the MusicXML encoding for a given composition is itself a manifestation of a work (i.e. the "composition"), the MusicXML file itself can function as a sub-work capable of birthing derivative image and audio files; manifestations also include musical transpositions in MusicXML format, thus allowing the the transpositions to serve as sub-sub-works also capable of spawning new image and audio content.

The following graphic attempts to depict the essential overall framework of the platform:


  1. Why are you using the Zong! Player? MuseScore can create OGG files from free SoundFonts and the audio can be embedded in the HTML5 <audio> tag.
    • I'm not clear on the licensing situation with SoundFonts even though there are many "free" ones available. Also, Zong! Player doesn't require OGG files to be written and saved to the server, so the Zong! Player applet saves storage space as well.
    • I have thought about adding an OGG/<audio> tag option as a backup for MusicXML files that Zong! Player is not able to play.


  • Arora, Nitin. "MXMLiszt: a preliminary MusicXML digital library platform built on available open-source technologies." OCLC Systems & Services. Retrieved November 20, 2011, from

Related Content: