[MEI-L] Jazz Chords in MEI ?

Etienne Fréjaville efreja at wanadoo.fr
Thu Dec 5 20:44:22 CET 2019

Thank you Perry.
I’m going to file an issue in the MEI github repo on this subject.

De :  "Roland, Perry D (pdr4h)" <pdr4h at virginia.edu>
Répondre à :  Music Encoding Initiative <mei-l at lists.uni-paderborn.de>
Date :  jeudi 5 décembre 2019 16:21
À :  Music Encoding Initiative <mei-l at lists.uni-paderborn.de>
Objet :  Re: [MEI-L] Jazz Chords in MEI ?

Analysis based on the labels would not be universally applicable.  It would
have to be tailored to the labeling system in use.  In other words, there’s
little to no hope of creating a regex that matches all the various ways
chords labels are written.  But, I believe that it’s rare for labeling to
switch between styles.  So, as long as “Maj7” is used consistently, and not
mixed with △, then there’s no problem.  Still, I agree that this is not
Let me reiterate, SVG doesn’t have to be used for chords over a given bass
note, e.g., “Dm7/G”.  It’s your requirement that the chord be displayed
“directly over” the bass note,  similar to the way mathematical fractions
are written, as opposed to being written horizontally as it is above, that
currently demands the use of SVG.
Adding @bass at the same time as @root sounds reasonable.

From: mei-l <mei-l-bounces at lists.uni-paderborn.de> On Behalf Of Etienne
Sent: Wednesday, December 4, 2019 5:22 PM
To: Music Encoding Initiative <mei-l at lists.uni-paderborn.de>
Subject: Re: [MEI-L] Jazz Chords in MEI ?

Hello Perry,


Thanks again for the answer.

In any case, I think harmonic analysis based on harmonic labels is not a
good idea.

The Jazz harmonic labels aren’t in any case standardized. The Major 7th can
be Maj7 or △ , min can be min or - , the diminished degree can be dim or °
all this can be superscripted or not, that’s the problem…

And it’s even worse if there is a necessity to use SVG for bass chords (I
don’t know how the <stack> element works).


However the @inth on <harm> to encode the intervallic content of the chord
seems to be the best place and I guess it should be able to encode all
possible jazz chords (to check with
<https://en.wikipedia.org/wiki/Chord_names_and_symbols_(popular_music> ))


Agreed also that a @root attribute is missing on the <harm> element.

Keeping the bass note as a chordMember of the scoreDef is acceptable as it’s
an inversion of the chord, thus a voicing, that doesn’t change the harmonic

The difficulty is to identify that bass note inside the scoreDef.


Converting from/to MusicXML a fragment like this : (G6/D chord)






 <kind text="6">major-sixth</kind>






wouldn’t be too easy.


Therefore I think a @bass attribute on <harm> could encode this in a more
efficient manner.




Le 03/12/2019 17:13, « Roland, Perry D (pdr4h) » <pdr4h at virginia.edu
<mailto:pdr4h at virginia.edu> > a écrit :

> Hi Etienne,
> Of course using SVG for chord labels is not ideal, but the only other
> possibility is to create a renderer smart enough to handle all the various
> ways in which labels can be presented.  This is not so difficult for your
> "D7b5/G" example; that is, the behavior expected when processing the <stack>
> element could be tweaked, but ultimately there's a limit on how intelligent a
> renderer can be.
> Turning to harmonic analysis based on harmonic labels, the obvious approach is
> to use the content of the <harm> element itself.  That is, the string "D-7b5"
> already conveys the information you're looking to encode -- a chord containing
> a diminished 5th with a root of D -- so there's no need to capture it
> elsewhere.  If you're interested in finding diminished chords with a root
> other than D, then a search for <harm> containing "-7b5" or a regular
> expression that matches the root, such as "[A-G][#-]?7b5", would work.
> Another possibility is to use @inth on <harm> to encode the intervallic
> content of the chord.  For example, <harm inth="m3 d5 m7"> captures the
> intervals of the chord (so really "m3d5m7" is a substitute for
> "half-diminished"), but it doesn't capture the root.  That may be a useful
> feature to add, probably via a @root attribute, especially for those cases
> where the label doesn't indicate the root of the chord.  If that's done, then
> it's not unreasonable to add another attribute to hold a chord quality value,
> like "half-diminished", etc.  However, one could use the @type attribute to
> hold this data or use the @class attribute to point to a value in a formal
> taxonomy.
> To move this discussion toward actualization, I suggest you file an issue in
> the MEI github repo to add @root to <harm>.
> Hope this helps,
> --
> p.
> _______________________________________________
> mei-l mailing list
> mei-l at lists.uni-paderborn.de <mailto:mei-l at lists.uni-paderborn.de>
> https://lists.uni-paderborn.de/mailman/listinfo/mei-l
> <https://lists.uni-paderborn.de/mailman/listinfo/mei-l>
_______________________________________________ mei-l mailing list
mei-l at lists.uni-paderborn.de

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.uni-paderborn.de/pipermail/mei-l/attachments/20191205/e74be94d/attachment.html>

More information about the mei-l mailing list