<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0in;
margin-bottom:.0001pt;
font-size:11.0pt;
font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:blue;
text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
{mso-style-priority:99;
color:purple;
text-decoration:underline;}
p.msonormal0, li.msonormal0, div.msonormal0
{mso-style-name:msonormal;
mso-margin-top-alt:auto;
margin-right:0in;
mso-margin-bottom-alt:auto;
margin-left:0in;
font-size:11.0pt;
font-family:"Calibri",sans-serif;}
span.EmailStyle18
{mso-style-type:personal;
font-family:"Times New Roman",serif;
color:windowtext;
font-weight:normal;
font-style:normal;}
span.EmailStyle19
{mso-style-type:personal-compose;
font-family:"Times New Roman",serif;
color:windowtext;
font-weight:normal;
font-style:normal;}
.MsoChpDefault
{mso-style-type:export-only;
font-size:10.0pt;}
@page WordSection1
{size:8.5in 11.0in;
margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><span style="font-family:"Times New Roman",serif">Etienne,<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Times New Roman",serif"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Times New Roman",serif">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
</span><span style="font-size:10.5pt;font-family:"Cambria Math",serif;color:black">△, then there’s no problem. Still, I agree that this is not ideal.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Cambria Math",serif;color:black"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Cambria Math",serif;color:black">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.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Cambria Math",serif;color:black"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Cambria Math",serif;color:black">Adding @bass at the same time as @root sounds reasonable.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Cambria Math",serif;color:black"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Cambria Math",serif;color:black">--<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Cambria Math",serif;color:black">p.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Cambria Math",serif;color:black"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Times New Roman",serif"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Times New Roman",serif"><o:p> </o:p></span></p>
<div>
<div style="border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b>From:</b> mei-l <mei-l-bounces@lists.uni-paderborn.de> <b>
On Behalf Of </b>Etienne Fréjaville<br>
<b>Sent:</b> Wednesday, December 4, 2019 5:22 PM<br>
<b>To:</b> Music Encoding Initiative <mei-l@lists.uni-paderborn.de><br>
<b>Subject:</b> Re: [MEI-L] Jazz Chords in MEI ?<o:p></o:p></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black">Hello Perry,<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black">Thanks again for the answer.<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black">In any case, I think harmonic analysis based on harmonic labels is not a good idea.<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black">The Jazz harmonic labels aren’t in any case standardized. The Major 7th can be Maj7 or
</span><span style="font-size:10.5pt;font-family:"Cambria Math",serif;color:black">△</span><span style="font-size:10.5pt;color:black"> , min can be min or - , the diminished degree can be dim or ° all this can be superscripted or not, that’s the problem…<o:p></o:p></span></p>
</div>
<div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black">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).<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black">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 </span><a href="https://en.wikipedia.org/wiki/Chord_names_and_symbols_(popular_music"><span style="font-size:10.5pt">https://en.wikipedia.org/wiki/Chord_names_and_symbols_(popular_music</span></a><span style="font-size:10.5pt;color:black">))<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black">Agreed also that a @root attribute is missing on the <harm> element.<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black">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 structure.<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black">The difficulty is to identify that bass note inside the scoreDef.<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black">Converting from/to MusicXML a fragment like this : (G6/D chord)<o:p></o:p></span></p>
</div>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black"><o:p> </o:p></span></p>
</div>
<div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black"><harmony><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black"> <root><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black"> <root-step>G</root-step><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black"> </root><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black"> <kind text="6">major-sixth</kind><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black"> <bass><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black"> <bass-step>D</bass-step><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black"> </bass><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black"></harmony><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black">wouldn’t be too easy.<o:p></o:p></span></p>
</div>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black">Therefore I think a @bass attribute on <harm> could encode this in a more efficient manner.<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black">Thanks<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black">Le 03/12/2019 17:13, « Roland, Perry D (pdr4h) » <</span><a href="mailto:pdr4h@virginia.edu"><span style="font-size:10.5pt">pdr4h@virginia.edu</span></a><span style="font-size:10.5pt;color:black">>
a écrit :<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black"><o:p> </o:p></span></p>
</div>
<blockquote style="border:none;border-left:solid #B5C4DF 4.5pt;padding:0in 0in 0in 4.0pt;margin-left:3.75pt;margin-top:5.0pt;margin-right:0in;margin-bottom:5.0pt" id="MAC_OUTLOOK_ATTRIBUTION_BLOCKQUOTE">
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black">Hi Etienne,<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black">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.<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black">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.<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black">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.<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black">To move this discussion toward actualization, I suggest you file an issue in the MEI github repo to add @root to <harm>.<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black">Hope this helps,<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black">--<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black">p.<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black">_______________________________________________<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black">mei-l mailing list<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><a href="mailto:mei-l@lists.uni-paderborn.de"><span style="font-size:10.5pt">mei-l@lists.uni-paderborn.de</span></a><span style="font-size:10.5pt;color:black"><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><a href="https://lists.uni-paderborn.de/mailman/listinfo/mei-l"><span style="font-size:10.5pt">https://lists.uni-paderborn.de/mailman/listinfo/mei-l</span></a><span style="font-size:10.5pt;color:black"><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black"><o:p> </o:p></span></p>
</div>
</blockquote>
</div>
</body>
</html>