[This local archive copy is from the official and canonical URL, http://is.up.ac.za/mml/scope.htm; please refer to the canonical source document if possible.]
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.
This is a discussion document for a proposed standard of a markup language for music, Music Markup Language (MML). This language is an SGML (Standard General Markup Language; ISO 8879) subset, following the approach to SGML by XML (eXtensible Markup Language). MML describes the structure of various aspects of music production, such as:
The Music Markup Language should be applicable to many different music-related environments, such as:
The function of music notation is threefold:
With the available modern technologies the function to preserve music is done much better with recording techniques. Traditional Western music notation dominates the world, yet it is not a perfect system, as indicated by the many adaptations over the past few hundred years have shown. Especially during the twentieth century many alternative notation systems have been introduced, eg Schoenberg, Penderecki, Karkoschka, Feldman, Pousseur, Schenker and many more.
For this discussion here there are two types of notation:
The idea that music notation could be precise stems from a positivistic view. In practice, no matter how precise notation may or can be, the performer nevertheless interprets the notation and expresses it in terms of his or her own experiences. Notation thus merely serves as an indication of how a piece of music should be performed.
Symbolic systems are far less rigid than physical systems, but they are easier to interpret by the human mind. It is probably impossible to perform from a score of wave printouts.
Given this background, MML will not be an atempt to fully accommodate Western music notation. Many concepts of this system are nevertheless useful to describe the structures of music.
Western Staff Notation cannot handle non-western scales and tunings, nor styles where small differences in pitch or volume are regarded as being important. A language describing all music systems shold be able to handle these variations as well. For a practical starting point, however, these variations will be ignored (yet kept in mind) in order to make progress for the descritpion of the most dominant music forms in the world today.
There are various strategies that could be followed to create and compile a markup language. One method would be to begin with the DTD (Document Type Definition). The method followed here is a bottom-up approach and its implication is envisaged as follows:
For each of the identified elements the context is described first, then the element is loosely defined. Input and feedback is required from many different participants in order to streamline contexts and definitions. A Revised document will be released after a period of six months of discussions.
Scholars have struggled for centuries devising a system for describing music. Music is a continuous analogue system in terms of the physics of sound waves. Any system describing this is typically digital. The notes on a staff in traditional Western music notation are digital incisions, translating the analogue continuum. Ideally a system for describing the structure of music should be analogue, but systems doing that, such as Fourier analysis are highly mathematical and difficult to interpret by the performers.
It is assumed that a human language, such as English, is the best method of description for the structure of music. Such a language, however, is also discrete and digital. At best such a system makes snapshots along the continuum of music in two directions: frequency and time. In terms of frequency the smallest discrete unit that will b eused in MML will be the cent. In terms of time the smallest unit will be the millisecond (ms), or portions thereof.
Theoretically snapshots can be made at nano-second level, or anywhere on the time continuum. The purpose, however, of MML is to provide an easy human-ready form of description.
Music structure (called cantus in SMDL) is distinguished from the delivery methods of a particular structure (related to the gestural and visual domains of SMDL). A piece of music that is marked up can be delivered in many different ways:
Audio rendering can be generated in at least two ways:
The role of MML given the above background is as follows. MML marks the structural objects or elements of a piece of music. Apart from direct human interface, it should be possible to render a marked piece of music by means of any of the delivery systems. The structure of a piece of music is thus "neutral". The actual delivery of the piece of music will depend on many different aspects, ranging from the music style (eg baroque, rock, jazz, etc) the musical instruments (violin, drums, marimba, etc), phrasing, environmental acoustics, sound processing and so on.
A useful analogy to understand this distinction is the role that CSS (Cascading Style Sheets) plays in HTML (HyperText Markup Language) documents. Just as HTML marks the structure of the document, the structure of a piece of music can be marked. And just as the appearance or delivery of an HTML document can vary according to the selected style sheet, a piece of music can be delivered in many different ways.
This analogy breaks down to the extent that in an orchestrated piece of music each instrument "plays its own part". This means that there may be many different melodic lines in a song -- many different "songs" contained in a song. Or to put it differently, there are many different possible styles that are to be presented simultaneously in a piece of music, so there are in effect many different layers of "text". In terms of the analogy, there are numerous style sheets that are implemented simultaneously.
Music as a layered form of communication is thus more complex to present in a visual format than human languages.
The MML project should incorporate the ability to deliver the structure of music pieces in many different systems. From a notational point of view, such systems should include traditional Western notation and any of the numerous different systems introduced since the 1950s such as ASCII coding systems.
The minimum required structural systems for describing music are the following, each consisting of several subsystems:
MIDI is the acronym for Musical Instrument Digital Interface, a protocol allowing electronic devices (synthesizers, computers, VCR’s, multi-track recorders, etc.) to interact and work in synchronization with other MIDI compatible devices. The standard was introduced in 1983 by major music industry electronic instrument manufacturers such Roland, Yamaha, Korg and others.
The MML system is not meant to replace the MIDI system, but to complement it. MIDI code is written in the 16-base hexadecimal system and thus difficult to understand and read. In this context MML will provide a language to state MIDI parameters in a human readable format. It is envisaged that there will be a "map" enabling the translation of MIDI functions into MML, and vice versa. It is also envisaged that MIDI-related aspects will be a subset of MML as the latter addresses a wider scope.
Due to the constraints of technology at the time of the release of the MIDI standard, values were indicated on a scale 0-121.
There are a number of projects that appear to be similar to the MML project.
SDML focuses on music document archival storage of music, while NIFF focuses on printouts. MNML focuses on the Web delivery of music notation, but considers only very basic music concepts.
On one hand SDML is too complex, and the element names not really human friendly. Consider, for example, these parameter entity names: exrecon, exspec, pls2gran, conloc. SDML is for music theorists, while MML is for the popular markup of music. In this sense the relationship between HTML and SGML is the same as that between MML and SDML.
On a more abstract level, SDML distinguishes between four domains:
These distinctions are useful, but MML makes another distinction not so apparent from these domains. This distinction is on the meta-level and makes an artificial distinction between a note and its manipulation. From the point of the physics of music this distinction is artificial, but from a music description point of view it is useful.
In very basic terms, this distinction assumes a basic note entity related to its "basic" frequency. This note can be manipulated in various ways. On a human performer's side it can be played with different attacks and nuances. On the music studio side it can be manipulated with various effect units. The basic abstract note in MML will be marked with the note element. Such a note can be manipulated and processed in various ways.
SMDL is too complex, while on the other hand, MNML is too simplified, and focuses on the graphic presentation of music on a Web page. Apart from focusing only on notation, thus relates to NIFF, the concepts in MNML are very basic.
MML will attempt to present the common midway between these extremes. There is no point in reinventing the wheel, so there will be a common base of concepts. That may not be due to borrowing, but rather to the fact that all these languages share a common object of description.
1999 © Author: Jacques Steyn, University of Pretoria, South Africa