Title: Introduction to the Music Encoding Initiative (MEI) DTD
1Introduction to the Music Encoding Initiative
(MEI) DTD
- Perry Roland
- Digital Library Research Development Group
- Alderman Library
- University of Virginia
- pdr4h_at_virginia.edu
- http//www.people.virginia.edu/pdr4h/
2Purpose of the DTD
3Encoding
- not necessarily an input code, but still human
readable (and understandable!) - separation of logical, visual, gestural, and
analytical domains - declarative preferable to procedural
representation - formal verifiable
- interpreted all encoding is interpretation!
- explicit context independent
- flexible selective feature encoding
- extensible unknown uses, future development
- of particular interest musical form, text,
critical apparatus
4Interchange
- comprehensive generalized
- software independent
- N(N-1) vs. N2 translators
5Basic MEI DTD
lt!ELEMENT mei (meihead, work)gt lt!ELEMENT
meicorpus (meihead, mei)gt lt!ELEMENT meihead
(meiid, filedesc, projectdesc?, editorialdecl?,
profiledesc?, revisiondesc?,
sourcedesc)gt lt!ELEMENT work (front?,
(musicgroup), back?)gt lt!ELEMENT group
((workgroup), (workgroup))gt lt!ELEMENT music
(mdiv, mdiv)gt lt!ELEMENT mdiv (score,
parts)gt lt!ELEMENT score ((section, ending)
(bar, (pbsb)?))gt lt!ELEMENT pb EMPTYgt lt!ELEMENT
sb EMPTYgt lt!ELEMENT parts (part)gt lt!ELEMENT part
((section, ending) (bar, (pbsb)?))gt lt!ELEMEN
T section ((section, ending) (bar, (pbsb)?)
(strophe, strophe))gt lt!ELEMENT strophe
((section, ending) (bar, (pbsb)?)
(strophe, strophe))gt lt!ELEMENT ending
((section (bar, (pbsb)?)) (strophe,
strophe))gt lt!ELEMENT bar ((staff (beam
beatrpt btrem chord ftrem note pad
rest space tuplet) msrest msrpt
multirest multirpt), ossia, (arpeg beam2
bend dir dynam gliss hairpin
harm lyrics midi mordent octave pedal
phrase reh slur tempo tie trill
turn), (curve line symbol text),
annot)gt lt!ELEMENT staff (layer (beam
beatrpt btrem chord ftrem note pad
rest space tuplet) msrest
msrpt)gt lt!ELEMENT layer ((beam beatrpt btrem
chord ftrem note pad rest space
tuplet) msrest msrpt)gt
6Document element
- mei (meihead, work) encodes a single work
- separates document into meta-data and data parts,
allowing meta-data to be shared with other
internal and external entities - name cannot be changed in order to assure an
absolute minimum level of MEI compliance
7Alternate document element
- meicorpus (meihead, mei) encodes multiple mei
instances where each requires a header of its own - also provides header for entire file
- name cannot be changed in order to assure an
absolute minimum level of MEI compliance
8meihead element
- encodes bibliographic meta-data for the file
- filedesc element contains bibliographic data,
such as title, agent, and publication status, and
access data, such as vendor, price, and rights
management info, for the file - sourcedesc element describes a source for the
file using the same elements as filedesc, but
also includes physical description, such as
medium, dimensions, provenance - name cannot be changed in order to assure an
absolute minimum level of MEI compliance
9work element
- the "thing" being encoded
- may include not just music notation, but also the
textual matter often found in a critical or
historical edition, composer's textual notes,
advertisements, etc. - name cannot be changed in order to assure an
absolute minimum level of MEI compliance
10work level text
- front and back child elements provide basic
logical and presentational text markup
functionality - accommodating text gives control of the text and
notation to MEI which embedding notation in
another markup scheme, such as TEI, will not do - names cannot be changed in order to assure an
absolute minimum level of MEI compliance
11music element
- the musical, as opposed to the textual, part of
the work - contains highest-level indication of the
structure of the composition one or more
discrete, linear segments, called mdiv ("musical
division") - generic mdiv elements may be typed symphonies
usually consist of movements while operas are
made up of acts
12group element
- facilitates creation of a collection of work
elements that share a bibliographic header a
collection of songs by different composers issued
under a single title, for example - basic meta-data for each work may be encoded in
its own front matter or in sourcedesc elements in
the file header - use meicorpus element when a complete
bibliographic header is required for each member
of a collection
13mdiv element
- may contain one or both of two possible
organizing views score and parts - score element contains a time-oriented view of
the composition a full score - parts element contains part elements each of
which represents a performer's view - it is not always possible or desirable to
generate one view from the other - views intended to accommodate different methods
of organizing the markup no particular
presentation is implied, software may render a
collection of parts as a score or a score as a
collection of parts
14part element
- requires all the encoding features of a full
score content models of score and part
elements are identical - part elements in MEI have nothing to do with
voice-leading, that is, indicating how a part may
be constructed when it uses more than one staff
or when there are multiple voices on a single
staff - voice-leading may be recorded at the event level
using the next or prev attribute
15part element, cont.
- use of parts practical when
- there is no score, only a collection of parts
- parts don't share visual characteristics, such as
typeface or layout with the full score or with
each other - score has non-aligning bar lines
- accommodating software that requires
staff-by-staff encoding
16section element
- part or score may be divided into linear segments
or sections - sections usually function as scoping mechanisms
for clef signs, key and meter signatures, and
expression marks - minimize the need for backward scanning to
establish context when the starting point for
access is not at the beginning - may also be used for user-defined, that is,
analytical or editorial, purposes - may be arbitrarily nested to any level
- when a section contains sections, the expan
attribute on the outer section element may be
used to encode the performance order of the inner
sections
17strophe and ossia elements
- basis of critical apparatus
- used for encoding more than one version in the
same file - strophe used at section level, ossia at bar level
- nested to accommodate variants of variants?
- more work to do!
18ending element
- specialized form of the section element that may
not be recursively nested
19bar element
- contains events, not symbols
- even though events have visual properties,
modeling symbols places too much emphasis on
presentation and makes the markup less useful as
a general "music" (as opposed to "notation")
markup scheme - also contains control events, that is, those
which do not fit the principal hierarchy, such as
dynamics, ties, and phrase marks
20staff and layer elements
- provided in order to indicate division of the
bar's contents into multiple data streams - ltbargt
- ltstaffgtltnote /gtlt/staffgt
- ltstaffgtltnote /gtlt/staffgt
- lt/bargt
- do not necessarily indicate layout!
- alternatively, events may be encoded directly
within the bar element and each event may be
related to a particular data stream via its staff
and layer attributes - ltbargtltnote staff"s1" /gtltnote staff"s2"
/gtlt/bargt
21Introduction to the Music Encoding Initiative
(MEI) DTD
- Perry Roland
- Digital Library Research Development Group
- Alderman Library
- University of Virginia
- pdr4h_at_virginia.edu
- http//www.people.virginia.edu/pdr4h/