[MEI-L] Jazz Chords in MEI ?

Etienne Fréjaville efreja at wanadoo.fr
Mon Dec 2 00:00:25 CET 2019

Hi Perry,

Thanks very much for your answer. That's a much clearer and a good start.
I have therefore some questions about the ability of MEI to represent some
simple situations in a Jazz grid.
As understood, I suppose that the best I can do to encode the following
measure (the 6th) extracted from Coltrane's "Crescent" is:

  <staffDef n="1" lines="5" clef.shape="G" clef.line="2" />
 <chordDef xml:id="DminDom5f">
  <chordMember pname="d" oct="4"/>
  <chordMember pname="f" oct="4"/>
  <chordMember pname="a" accid.ges="f" oct="4"/>
  <chordMember pname="c" oct="4"/>
 <chordDef xml:id="GDom5s">
  <chordMember pname="g" oct="4"/>
  <chordMember pname="b" oct="4"/>
  <chordMember pname="d" accid.ges="s" oct="4"/>
  <chordMember pname="f" oct="4"/>
 <measure n="1">
  <staff n="1">
   <layer n="1">
    <note pname="a" dur="2" oct="5" />
    <note pname="g" dur="4" oct="5" />
    <note pname="g" dur="4" oct="5" />
  <harm chordref="#DminDom5f" staff="1" tstamp="1">D-7b5/G</harm>
  <harm chordref="#GDom5s" staff="1" tstamp="3">G7#5</harm>

What I can see is :
- I don’t know how to encode the root of the chord. Is it supposed to be
always the lowest note of the chordDef ?
- I don't know how to encode the base of the chord : In my first chord,
it's G (the 11th of the chord) but appears only on the <harm> value which
is not part of the semantics.
- I don’t see how from the <harm> value we can guess how the value must be
drawn (for ex in G7#5, 7#5 is superscripted). In D-7b5/G, -7b5 is
superscripted and /G is less or more placed under D-7b5.

At last, detailing the separate notes on each chordDef is somehow useless
in Jazz as there are some 33 different possible chords for each root note
(D-7b5 is D’s half-diminished chord). But I can quite understand that this
feature may have its use in different situations, so it's not the main

Hoping that my questions are clear…


Le 28/11/2019 18:57, « Roland, Perry D (pdr4h) » <pdr4h at virginia.edu> a
écrit :

>Hi Etienne,
>Actually, chords of all kinds are already supported in MEI.  MEI takes a
>different, and I believe, better approach than MusicXML in that it
>separates the labeling of a chord from its sounded rendition.
>What this means is that you can use whatever label you like, "A7#9" for
>example, in the <harm> element.  Formatting information can be captured
>here if, for instance, you want the "7#9" portion of the label to be
>The sound that corresponds to the label is defined within the <chordDef>
>element.  By defining the sound apart from label, variations in the
>label, "A7#9" vs. "A7(#9)", can be captured independently from the
>sounding information.  Also, the sounding info doesn't have to be
>repeated each time the chord is used -- it can be referred to when
>needed.  Of course, this also makes it possible to have multiple voicings
>for the same label; that is, the label "Cmaj7" can be linked to different
>sounding renditions.
><chordDef> elements are collected within a <chordTable>.  A chord table
>can be defined for each score; that is, inside <scoreDef>.
>Alternatively, it may be encoded in an external file and included within
>a <scoreDef> using xInclude.
>The linkage between <harm> and <chordDef> is achieved using the chordref
>attribute.  For example --
><harm chordref="#myFvChord">A7(♭13)</harm>
>points to --
><chordDef xml:id="myFvChord">
>  <chordMember pname="a" oct="3"/>
>  <chordMember pname="g" oct="4"/>
>  <chordMember pname="c" accid.ges="s" oct="5"/>
>  <chordMember pname="f" oct="5"/>
>for sounding info.  Fretboard diagrams can be created using the
>(optional) @tab.* attributes --
><chordDef xml:id="myFvChord">
>  <chordMember pname="a" oct="3" tab.string="6" tab.fret="5" />
>  <chordMember pname="g" oct="4" tab.string="4" tab.fret="5"/>
>  <chordMember pname="c" accid.ges="s" oct="5" tab.string="3"
>  <chordMember pname="f" oct="5" tab.string="2" tab.fret="6"/>
>The documentation doesn't mention "jazz chords" directly, but
>Details covers the use of <harm>, <chordTable>, and <chordDef> generally.
> It also goes into more detail on how to use the @inth attribute to
>define chords using intervals instead of explicit pitch names and how to
>encode fingering info for a fretboard diagram.
>Hope this helps,
>-----Original Message-----
>From: mei-l <mei-l-bounces+pdr4h=virginia.edu at lists.uni-paderborn.de> On
>Behalf Of Klaus Rettinghaus
>Sent: Thursday, November 28, 2019 6:14 AM
>To: Music Encoding Initiative <mei-l at lists.uni-paderborn.de>
>Subject: Re: [MEI-L] Jazz Chords in MEI ?
>Dear Etienne,
>I don't know of any plans so far. If you have a cunning plan how this
>could be implemented in MEI please go ahead.
>At least you should open a new issue on
>https://github.com/music-encoding/music-encoding explaining why this is
>needed in MEI.
>Am Mo., 18. Nov. 2019 um 22:35 Uhr schrieb Etienne Fréjaville
><efreja at wanadoo.fr>:
>> Dear community,
>> Do you know if MEI has the plan to introduce Jazz Chords as they exist
>>in MusicXML ? (element harmony and sons : root, kind, bass, degree).
>> See 
>> https://usermanuals.musicxml.com/MusicXML/Content/CT-MusicXML-harmony.
>> htm
>> The only information I found about a harmony element is :
>> https://music-encoding.org/guidelines/v4/content/analysisharm.html#har
>> mony
>> but it doesn't cover Jazz Chords.
>> Thanks!
>> _______________________________________________
>> mei-l mailing list
>> mei-l at lists.uni-paderborn.de
>> https://lists.uni-paderborn.de/mailman/listinfo/mei-l
>mei-l mailing list
>mei-l at lists.uni-paderborn.de
>mei-l mailing list
>mei-l at lists.uni-paderborn.de

More information about the mei-l mailing list