Music Markup Language (MML) is an attempt to mark music objects and events with an XML-based language. Marking such objects should enable managing music documents for various purposes, ranging from music theory and notation to practical performance. This project is not complete and a work in progress.
The first draft of a possible DTD is available and a few examples are provided of music pieces marked with MML that result in well-formed as well as valid documents.
The approach is modular. Many modules are still incomplete and need more research and attention.
Markup languages for music depend on many cultural assumptions, and on how music is conceptualised. Technically speaking, the ontology of music as object is important in deciding what is to be marked, and what not.
This description depends on the concepts investigated by the disciplines (called differently in different countries) of Music Informatics, Systematic Musicology, or Scientific Musicology.
To investigate these matters, a book, Structuring Music through Markup Language: Designs and Architectures, (published by IGI) was put together with contributions from all over the world. See more details.
Music Markup Language (MML) is an XML-based language for describing music objects and events. As music is such a complex object, MML consists of several layered modules that could be called upon, depending on requirements.
Music is defined as a function of time and frequency, hence the Time and Frequency modules would always be used - they are the Music Core Modules.
Note that Common Western Music Notation is also based on this time-frequency relationship.
Additional modules that are presently identified in Music Markup Language and described are:
MML (Music Markup Language) focuses on the structure of music and music related processes with the aim to write the specifications of a markup language. This language should be human readable along the lines of HTML and XML that are used for Web-based documents.
MML should form a "layer" between machine-level code and the user interface:
The vision for MML is best understood in terms of an analogy with the presentation of web documents.
When a web document is marked properly with HTML (especially when it is XHTML-compliant) it can be delivered on many different kinds of devices such as a PC screen, on TV-Web, on a web-cellphone, read by a speech synthesizer on a car stereo system, and many more. The document can even be delivered on a web-enabled freezer or microwave-oven! Such a web document can be used with different style sheets to be delivered in many different ways.
MML should function similarly. If a piece of music is marked by using MML it should be deliverable in at least the following formats:
With MML it should be possible to "sequence" a piece of music without having to use expensive software. So anybody with a text editor (such as Windows Notepad) should be able to sequence music in this way.
MML is not intended to replace MIDI, but to add value to it. MIDI is not human-friendly except through a friendly user interface. MML at least uses human language elements so it is easier to understand than MIDI. MML is envisaged as a universal layer supplying a common language that can be understood by different devices, including MIDI devices.
Some of the envisaged applications are as follows:
Music will be defined very liberally as any sound that is used for a specific music function. Technically, music will be regarded as a function of frequency and time. This broad definition would embrace all kinds of music, including the paradigms of expressions such as those of John Cage and Industrial Music where sounds from the environment that are ordinarily regarded as noise are assigned a musical function. To put it in other words, any sound that is regarded as music becomes music by being regarded as such. The ringing tone of the traditional phone, the bell in a lift, the honking of a car hooter and many more may thus be regarded as music.
This broad definition of music has the implication for MML that sound effects and background noise should also be described in order to be marked in music documents.
The envisaged range of MML is thus much wider than other known attempts at creating XML-based languages for marking music. Most of these attempts focus on a subset of CWN.
MML documents will be well-formed, valid XML documents. It will be possible to display MML document content in textual format using any XML-compliant parser. However, rendering content in other media will require additional programs that will function along the lines of plug-ins. For example, if MML needs to be displayed in traditional Common Western Notation format, a graphics rendering engine is needed. If a synthesizer needs to be triggered by the markup, a triggering engine will be required.
© 1999, 2000 Author: Jacques Steyn