Home Learn About MIDI About US Specifications Career Center Public Forum Store

MIDI Names, Device Types, & Events in XML

The objectives of the MIDI XML Specifications are:

  • Provide a standard XML representation of a MIDI event, for use as a building block in other XML documents.
  • Create standard data interchange formats for information about MIDI devices (including virtual devices), including their MIDI transmission/reception capabilities and their patches/notes/controls.
  • Represent numeric MIDI events (Patch Numbers, Note Numbers, Controller Numbers) with alpha-numeric names in order to Improve the user experience.
  • Describe the contents of an SMF file in XML.

MIDIEvents defines the grammar for XML representations of MIDI events, which is used in the XML Specification "MIDINameDocument" and may be used in additional XML Specifications in the future

MIDIDeviceType documents contain information about capabilities of one device type (a single device or a family of devices with the same features) -- primarily its MIDI transmission and reception capabilities. A collection of MIDIDeviceType documents is an effective database from which applications may automatically load device information (if they support the Universal Inquiry message), or from which a user may select an appropriate device description within the application.

MIDINameDocuments describe corresponding names for a MIDI device's patch numbers, note numbers (for drum kits and sample sets where different sounds are triggered by different keys) and MIDI controller numbers (also RPNs/NRPNs). This allows an application to display the name of the object they trigger/effect, instead of simply showing bank selects/program changes/notes/controls in numeric form.

Status

July 2003 - This specification has been approved (RP-038) by MMA/AMEI. The three MIDI XML "DTD"s (for XML parser verification use) are located at http://www.midi.org/dtds. Developers with experience in both MIDI and XML should be able to understand the specification from the three DTDs. An initial implementation has been done by Apple for CoreMIDI. An explanatory text of the specification is still in development. Futher extensions and clarifications are in progress.

HTML-formatted (for human readers) versions of each MIDI XML DTD may be viewed here:

MIDIEvents10  |  MIDIDeviceTypes10  |  MIDINameDocument10 

All materials, graphics, and text copyright © 1995-2014 MIDI Manufacturers Association Incorporated.
Use is prohibited without written permission.