<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 14 (filtered medium)">
<!--[if !mso]><style>v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]--><style><!--
/* Font Definitions */
@font-face
        {font-family:Wingdings;
        panose-1:5 0 0 0 0 0 0 0 0 0;}
@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;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman","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.MsoAcetate, li.MsoAcetate, div.MsoAcetate
        {mso-style-priority:99;
        mso-style-link:"Balloon Text Char";
        margin:0in;
        margin-bottom:.0001pt;
        font-size:8.0pt;
        font-family:"Tahoma","sans-serif";}
span.EmailStyle17
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:black;}
span.BalloonTextChar
        {mso-style-name:"Balloon Text Char";
        mso-style-priority:99;
        mso-style-link:"Balloon Text";
        font-family:"Tahoma","sans-serif";}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri","sans-serif";}
@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:"Calibri","sans-serif";color:black"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif";color:black">Hi Craig,<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif";color:black"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif";color:black">I won’t attempt to describe how math works in WV.  You wouldn’t understand anyway.
</span><span style="font-family:Wingdings;color:black">J</span><span style="font-family:"Calibri","sans-serif";color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif";color:black"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif";color:black">If “4.999” is acceptable to you, then it seems we don’t need to change anything -- only clarify expected usage.  And perhaps, for Laurent and Don, extend the syntax for specifying
 beat locations to include fractions.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif";color:black"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif";color:black">I’m not sure what you mean by asking how this interacts with barlines.  The value of @tstamp must be in the range of 0 (the measure’s left barline or the preceding barline, depending
 on whether a system break occurs just prior to the measure) to the number of beats in the measure *plus one* (the measure’s right barline).  The values “0” and “5” (in 4/4 for example) indicate the timestamp/location of the measure’s left and right barlines. 
 If you want to indicate that a hairpin is attached/positioned with reference to a barline, then use one of these values.  The offset then would be relative to the location of the barline in spite of system breaks.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif";color:black"><o:p> </o:p></span></p>
<p class="MsoNormal">> Put into a graphical illustration for people whose eyes have already glazed over, how would/should these cases be handled?:<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><img width="409" height="70" id="_x0000_i1026" src="cid:image002.jpg@01D00411.8C766970"><br>
​<o:p></o:p></p>
<p class="MsoNormal">> * How could each of these hairpins be represented in MEI? <o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif"">measure 1, top-to-bottom:<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif""><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif""><hairpin form=”cres”  tstamp=”1” tstamp2=”4.99”/><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif"">  (alternatively you could use: <hairpin form=”cres” tstamp=”1” tstamp2=”5”/>)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif""><hairpin form=”cres”  tstamp=”1” tstamp2=”1m+1”/><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif""><hairpin form=”cres”  tstamp=”1” tstamp2=”1m+1” ho=”1”/><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif""><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif"">(As described already, a hairpin should end visually just prior to the beat position specified by tstamp2.)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif""><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif"">measure 3, top-to-bottom:<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif""><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif""><hairpin form=”dim”  tstamp=”1” tstamp2=”4.99”/><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif"">(alternatively you could use: <hairpin form=”dim” tstamp=”1” tstamp2=”5”/>)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif""><hairpin form=”dim”  tstamp=”1” tstamp2=”1m+1”/><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif""><hairpin form=”dim”  tstamp=”1” tstamp2=”1m+1” ho=”1”/><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif""><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif"">(timestamps exactly the same as m. 1; only the form attribute is changed. By the way, the values of @ho are for illustration only; they’re not meaningful.)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif""><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif"">> * How can the barline and the note that follow it be disambiguated from the timestamp?<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif""><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif"">I don’t understand what you’re asking here.  I can only reiterate what I said before -- tstamp2=”5” references the barline, tstamp2=”1m+1” references the *beat*, not the note, following the
 barline.  If you want to attach the hairpin to particular notes, then the markup should utilize @startid and @endid --<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif""><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif""><hairpin startid=”idOfStartNote” endid=”idOfEndNote”/><o:p></o:p></span></p>
<p class="MsoNormal"><o:p></o:p></p>
<p class="MsoNormal">> When a hairpin ends on a barline, it must have an offset by default to get it from actually ending on the barline (at least when the barlines<o:p></o:p></p>
<p class="MsoNormal">> would touch it as in the above example).<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif"">I think we agree that this should be the normal behavior of a rendering engine, although I now realize that one would never get a hairpin to actually touch a barline unless the rendering
 engine offered a parameter for overriding this behavior.<o:p></o:p></span></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">> <o:p></o:p></p>
<p class="MsoNormal">> Also imagine grace note(s) before the first note in each measure.  If the hairpin ending point is a timestamp, then which graphic object does it
<o:p></o:p></p>
<p class="MsoNormal">> refer to:(1) the barline, (2) the grace note(s), or (3) the note?<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif"">Strictly speaking, if @tstamp and @tstamp2 are used, then *no object* is directly referred to, only a time point.  In this case, one would have to deduce/calculate what object is affected,
 such as notes occurring at the time point or perhaps using proximity if no notes occur at that time.  To refer to specific notes, use @startid and @endid instead.  For example, to attach the hairpin to a grace note preceding the first note:<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif""><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif""><note grace=”unacc” pname=”a” dur=”8” xml:id=”grace1”/><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif""><note pname=”g” dur=”8” xml:id=”n1”/><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif""><hairpin startid=”#grace1” ... /><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif""><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif"">Of course, you can’t use this method to refer to barlines because they aren’t represented by an element and so can’t have an id.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif""><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif"">Nothing says you can’t use tstamp/tstamp2 and startid/endid simultaneously or even use one kind of reference for the start and another kind of reference for the end point, as in:<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif""><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif""><hairpin startid=”#n1” tstamp2=”1m+1.5”/><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif""><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif"">But there’s no specification for what to do when the start and/or end points are given both ways, as in:<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif""><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif""><hairpin startid=”#n1” tstamp=”1” endid=”#n5” tstamp2=”1m+1.5”/><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif""><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif"">One would hope that in cases like this, the values would be complementary, not contradictory.<o:p></o:p></span></p>
<p class="MsoNormal"><o:p></o:p></p>
<p class="MsoNormal">> Another question illustrated in the example (and relating to addressability) is how to reference positions of noteheads.  Suppose that I want to
<o:p></o:p></p>
<p class="MsoNormal">> end hairpins on the right side of note heads?  If I use virtual units, those virtual units would be in reference to a specific notehead shape
<o:p></o:p></p>
<p class="MsoNormal">> (font).  Germans like oval noteheads while Italians like circular ones...  It is a bit picayune (vocab builder word for ESLs), but occasionally I
<o:p></o:p></p>
<p class="MsoNormal">> have a desire to do that in SCORE, which does not have that capability so I have to fudge it by zooming in and manually adjusting.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif"">You lost me here.  Virtual units are measured in terms of staff inter-line space, so there’s no relationship between VUs and notehead shape.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif""><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif"">Helpful or no?<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif""><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif"">--<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif"">p.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif";color:black"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif";color:black"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Calibri","sans-serif";color:black"><o:p> </o:p></span></p>
<div style="border:none;border-left:solid blue 1.5pt;padding:0in 0in 0in 4.0pt">
<div>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif"">From:</span></b><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif""> mei-l [mailto:mei-l-bounces@lists.uni-paderborn.de]
<b>On Behalf Of </b>Craig Sapp<br>
<b>Sent:</b> Wednesday, November 12, 2014 12:18 PM<br>
<b>To:</b> Music Encoding Initiative<br>
<b>Subject:</b> Re: [MEI-L] Music Addressability API draft<o:p></o:p></span></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<p class="MsoNormal">Hi Perry,<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal">On 12 November 2014 02:49, Roland, Perry D. (pdr4h) <<a href="mailto:pdr4h@eservices.virginia.edu" target="_blank">pdr4h@eservices.virginia.edu</a>> wrote:<o:p></o:p></p>
<div id=":1cu">
<p class="MsoNormal">Point 2:<br>
I'm not opposed to somehow allowing fractions within data.BEAT, but if we make our position on Point 1 clear, then I don't see the need for it, since "1.3" is just another way of writing "1+1/3". 
<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Is that how math works in WV?  How would I know that, and what do 1.1, 1.2, 1.4, 1.6, 1.7, 1.8 and 1.9 mean? <o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">
<div id=":1cu">
<p class="MsoNormal">I don't think we should be concerned with round-off error since the decimal part of "1.3" is intended to indicate a fractional part of the beat; that is, one can write "1.333" or "1.3" or "1+1/3", but all three mean the location of the
 2nd note of a triplet beginning on beat 1, in other words, a musical value, not a visual one.  @tstamp2 *should only* refer to the "logical" endpoint. @ho should be used to move the visual endpoint.  This contradicts my own earlier thinking and Johannes' suggestion
 to use "4.999" to encode a hairpin stopping just before the beat.  I believe this erroneously conflates the logical and visual endpoints.<o:p></o:p></p>
</div>
</blockquote>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">The problem is: what is the visual syntax hairpin endings?  Should it be inclusive and/or exclusive of the timestamp value?  And how does this interact with barlines?  The main issue is how a hairpin crescendo behaves at system breaks. 
 If an endpoint is exactly on a beat, then how can the endpoint be in reference to a barline as opposed to the next note after the barline (or grace notes before the beat, which is another matter)?  If the endpoint refers to the note, then applying a horizontal
 spatial offset will not solve the problem of having a little tiny piece of the crescendo after the system break, as it will be offset from that note onto the new line.  Giving an offset of "4.999" solves the ambiguity by forcing it to stop before the barline
 and hence the system break.  But the problem is what to do when the music changes layout and different hairpins pop up with the same problem.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">By the way, "4.999" for hairpins would be acceptable to me :-) I was mostly referring to note/rest durations.  Dynamics and hairpins and such do not need to be as strictly regulated since their interpretation can be fuzzy, and they are
 attached to the main framework of the note durations rather than define the rhythmic framework themselves.  Adjustments to the behavior of the hairpin endpoint should probably not be controlled by this value, but by some other parameter, such as having the
 default mean stop at the barline before any note with this timestamp, and then have an option to specify that the endpoint refers explicitly to a note and not the barline preceding it.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Put into a graphical illustration for people whose eyes have already glazed over, how would/should these cases be handled?:<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal"><img border="0" width="409" height="70" id="_x0000_i1025" src="cid:image005.jpg@01D00411.8C766970"><br>
​<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">* How could each of these hairpins be represented in MEI? <o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">* How can the barline and the note that follow it be disambiguated from the timestamp?<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">When a hairpin ends on a barline, it must have an offset by default to get it from actually ending on the barline (at least when the barlines would touch it as in the above example).<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Also imagine grace note(s) before the first note in each measure.  If the hairpin ending point is a timestamp, then which graphic object does it refer to:(1) the barline, (2) the grace note(s), or (3) the note?<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Another question illustrated in the example (and relating to addressability) is how to reference positions of noteheads.  Suppose that I want to end hairpins on the right side of note heads?  If I use virtual units, those virtual units
 would be in reference to a specific notehead shape (font).  Germans like oval noteheads while Italians like circular ones...  It is a bit picayune (vocab builder word for ESLs), but occasionally I have a desire to do that in SCORE, which does not have that
 capability so I have to fudge it by zooming in and manually adjusting.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">-=+Craig<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</div>
</div>
</div>
</div>
</div>
</body>
</html>