verovio icon indicating copy to clipboard operation
verovio copied to clipboard

Placement of note-level slurs

Open craigsapp opened this issue 2 years ago • 6 comments

Here is an example of slurs attached to notes rather than the chord that need improved placement:

Screen Shot 2022-04-20 at 7 03 47 AM
Click to view MEI data for above example
<?xml version="1.0" encoding="UTF-8"?>
<?xml-model href="https://music-encoding.org/schema/dev/mei-all.rng" type="application/xml" schematypens="http://relaxng.org/ns/structure/1.0"?>
<?xml-model href="https://music-encoding.org/schema/dev/mei-all.rng" type="application/xml" schematypens="http://purl.oclc.org/dsdl/schematron"?>
<mei xmlns="http://www.music-encoding.org/ns/mei" meiversion="5.0.0-dev">
 <meiHead>
  <fileDesc>
   <titleStmt>
    <title>Piano Sonata no. 1 in F minor</title>
   </titleStmt>
   <pubStmt>
    <respStmt>
     <persName xml:id="persname-L38" analog="humdrum:EED" role="editor">Craig Stuart Sapp</persName>
    </respStmt>
   </pubStmt>
  </fileDesc>
  <encodingDesc>
   <appInfo>
    <application isodate="2022-04-20T07:01:55" version="3.10.0-dev-67ca6d0-dirty">
     <name>Verovio</name>
     <p>Transcoded from Humdrum</p>
    </application>
   </appInfo>
   <projectDesc>
    <p>Encoded by: Craig Stuart Sapp</p>
    <p>Version: 2022/04/20</p>
   </projectDesc>
  </encodingDesc>
  <workList>
   <work>
    <title xml:id="title-L3" analog="humdrum:OTL" type="main">Piano Sonata no. 1 in F minor</title>
    <composer analog="humdrum:COM" xml:id="person-L1">Beethoven, Ludwig van</composer>
   </work>
  </workList>
 </meiHead>
 <music>
  <body>
   <mdiv xml:id="m1lyri2">
    <score xml:id="sq94u64">
     <scoreDef xml:id="s2ditgs" midi.bpm="40.000000">
      <pgHead xml:id="pn2q97o">
       <rend xml:id="rqi673y" halign="center" valign="middle">
        <rend xml:id="rowxhx9" fontsize="large">Piano Sonata no. 1 in F minor</rend>
        <lb xml:id="lkwq20t" /> 
<lb xml:id="lyrss1y" /> </rend>
       <rend xml:id="rws34g3" halign="right" valign="bottom" fontsize="small">Ludwig van Beethoven</rend>
       <rend xml:id="rscx9ip" halign="right" valign="bottom" fontsize="small">1770–1827</rend>
      </pgHead>
      <staffGrp xml:id="sdh4gro" bar.thru="true" symbol="brace">
       <staffDef xml:id="seflzq8" n="1" lines="5">
        <clef xml:id="clef-L9F2" shape="G" line="2" />
        <keySig xml:id="keysig-L10F2" pname="f" mode="major" sig="1f" />
        <meterSig xml:id="metersig-L12F2" count="3" unit="4" />
       </staffDef>
       <staffDef xml:id="sggg6kc" n="2" lines="5">
        <clef xml:id="clef-L9F1" shape="F" line="4" />
        <keySig xml:id="keysig-L10F1" pname="f" mode="major" sig="1f" />
        <meterSig xml:id="metersig-L12F1" count="3" unit="4" />
       </staffDef>
      </staffGrp>
     </scoreDef>
     <section xml:id="section-L8F1">
      <measure xml:id="measure-L1" n="18">
       <staff xml:id="s6jtt7a" n="1">
        <layer xml:id="layer-L8F2N1" n="1">
         <chord xml:id="chord-L15F2" type="placed" dur="4" stem.dir="up">
          <note xml:id="note-L15F2S1" oct="5" pname="d" accid.ges="n" />
          <note xml:id="note-L15F2S2" oct="6" pname="d" accid.ges="n" />
         </chord>
         <chord xml:id="chord-L19F2" type="placed" dur="8" stem.dir="up">
          <note xml:id="note-L19F2S1" oct="5" pname="c" accid="s" />
          <note xml:id="note-L19F2S2" oct="6" pname="c" accid="s" />
         </chord>
         <rest xml:id="rest-L21F2" dur="8" ploc="c" oloc="6" />
         <beam xml:id="beam-L23F2-L26F2">
          <note xml:id="note-L23F2" dots="1" dur="8" oct="6" pname="c" accid.ges="s" />
          <note xml:id="note-L26F2" dur="16" oct="6" pname="d" stem.dir="up" accid.ges="n" />
         </beam>
        </layer>
       </staff>
       <staff xml:id="s75rnbe" n="2">
        <layer xml:id="layer-L8F1N1" n="1">
         <rest xml:id="rest-L15F1" dur="16" staff="1" ploc="e" oloc="4" />
         <beam xml:id="beam-L16F1-L18F1" beam.with="above">
          <chord xml:id="chord-L16F1" dur="16" staff="1" stem.dir="down">
           <note xml:id="note-L16F1S1" oct="4" pname="e" accid.ges="n" />
           <note xml:id="note-L16F1S2" oct="4" pname="g" accid.ges="n" />
          </chord>
          <chord xml:id="chord-L17F1" dur="16" staff="1" stem.dir="down">
           <note xml:id="note-L17F1S1" oct="4" pname="f" accid.ges="n" />
           <note xml:id="note-L17F1S2" oct="4" pname="a" accid.ges="n" />
          </chord>
          <chord xml:id="chord-L18F1" dur="16" staff="1" stem.dir="down">
           <note xml:id="note-L18F1S1" oct="4" pname="g" accid.ges="n" />
           <note xml:id="note-L18F1S2" oct="4" pname="b" accid.ges="f" />
          </chord>
         </beam>
         <rest xml:id="rest-L19F1" dur="16" staff="1" ploc="e" oloc="4" />
         <beam xml:id="beam-L20F1-L22F1" beam.with="above">
          <chord xml:id="chord-L20F1" dur="16" staff="1" stem.dir="down">
           <note xml:id="note-L20F1S1" oct="4" pname="g" accid.ges="n" />
           <note xml:id="note-L20F1S2" oct="4" pname="b" accid.ges="f" />
          </chord>
          <chord xml:id="chord-L21F1" dur="16" staff="1" stem.dir="down">
           <note xml:id="note-L21F1S1" oct="4" pname="f" accid="s" />
           <note xml:id="note-L21F1S2" oct="4" pname="a" accid.ges="n" />
          </chord>
          <chord xml:id="chord-L22F1" dur="16" staff="1" stem.dir="down">
           <note xml:id="note-L22F1S1" oct="4" pname="g" accid.ges="n" />
           <note xml:id="note-L22F1S2" oct="4" pname="b" accid.ges="f" />
          </chord>
         </beam>
         <rest xml:id="rest-L23F1" dur="16" staff="1" ploc="g" oloc="4" />
         <beam xml:id="beam-L24F1-L26F1" beam.with="above">
          <chord xml:id="chord-L24F1" dur="16" staff="1" stem.dir="down">
           <note xml:id="note-L24F1S1" oct="4" pname="g" accid.ges="n" />
           <note xml:id="note-L24F1S2" oct="4" pname="b" accid.ges="f" />
          </chord>
          <chord xml:id="chord-L25F1" dur="16" staff="1" stem.dir="down">
           <note xml:id="note-L25F1S1" oct="4" pname="f" accid="n" />
           <note xml:id="note-L25F1S2" oct="4" pname="a" accid.ges="n" />
          </chord>
          <chord xml:id="chord-L26F1" dur="16" staff="1" stem.dir="down">
           <note xml:id="note-L26F1S1" oct="4" pname="e" accid.ges="n" />
           <note xml:id="note-L26F1S2" oct="4" pname="g" accid.ges="n" />
          </chord>
         </beam>
        </layer>
       </staff>
       <slur xml:id="slur-L15F2N2-L19F2N1" type="placed" staff="1" startid="#note-L15F2S1" endid="#note-L19F2S1" curvedir="above" />
       <slur xml:id="slur-L15F2N1-L19F2N2" type="placed" staff="1" startid="#note-L15F2S1" endid="#note-L19F2S1" curvedir="above" />
       <turn xml:id="turn-L23F2" staff="1" tstamp="3.375000" accidlower="n" form="upper" />
       <slur xml:id="slur-L16F1-L18F1" type="placed" staff="1" startid="#chord-L16F1" endid="#chord-L18F1" curvedir="above" />
       <slur xml:id="slur-L20F1-L22F1" type="placed" staff="1" startid="#chord-L20F1" endid="#chord-L22F1" curvedir="above" />
       <slur xml:id="slur-L24F1-L26F1" type="placed" staff="1" startid="#chord-L24F1" endid="#chord-L26F1" curvedir="above" />
      </measure>
     </section>
    </score>
   </mdiv>
  </body>
 </music>
</mei>

Expected rendering:

Screen Shot 2022-04-20 at 7 08 13 AM

The main difference is that the two slurs attached to notes in the D-C# octaves are both above the chords. Instead, one of the slurs should be attached to the lower two notes. Both slurs on this chord are attached to notes rather than the chords:

<slur xml:id="slur-L15F2N2-L19F2N1" type="placed" staff="1" startid="#note-L15F2S1" endid="#note-L19F2S1" curvedir="above" />
<slur xml:id="slur-L15F2N1-L19F2N2" type="placed" staff="1" startid="#note-L15F2S1" endid="#note-L19F2S1" curvedir="above" /> 

A secondary issue for this measure would be to figure out how to get the turn under the beam...

craigsapp avatar Apr 20 '22 14:04 craigsapp

From a musicology point of view what is the benefit of having several slurs between two chords? Gould in Behind Bars, p 114 explicitly advises against this: Gould-p114 From a development point of view the simplification of starting/ending slurs from chord notes on top/bottom of the whole chord avoids a lot of trouble that we would have to deal with otherwise:

  • If the slur ends near its target note, it should not intersect other notes in the chord.
  • It should also not intersect accidentals of other notes in the chord. In the example at hand you can see that it is pretty hard to find a path for the lower slur that does not hit any accidentals in the end chord.

Thus I would consider this issue very low priority.

A different idea would be to render only one slur if several slurs are encoded between chords with the same curve direction and display a warning in this case.

DavidBauer1984 avatar Apr 22 '22 05:04 DavidBauer1984

I am in no hurry 😉 , but eventually it should be implemented.

From a musicological point of view it is to encode a diplomatic edition of a composition. This in turn can be used to create a critical edition of the work, which compares how the musical content changes between different editions.

Gould is not Gospel, but rather best practice—and best practice in terms of modern editions. 19th century editions and earlier will do things that are not common and/or frowned upon in modern scores.

Here is a survey of that measure in various editions (beethoven piano sonata no. 1 mvmt 2, m. 18), starting with the first edition (printed in 1796): Screen Shot 2022-04-21 at 11 14 39 PM (probably one slur -- with another slur on the 16th notes) https://s9.imslp.org/files/imglnks/usimg/6/60/IMSLP51970-PMLP01446-Beethoven_-Piano_Sonata_No.1(Artaria).pdf

London: Monzani & Hill, n.d.[1812] Screen Shot 2022-04-21 at 11 17 11 PM (no slurs on those two chords) https://s9.imslp.org/files/imglnks/usimg/d/d4/IMSLP580376-PMLP1446-beethoven_Op.2_No.11111.pdf

London: Royal Harmonic Institution, n.d.[1820]. Plate 387 Screen Shot 2022-04-21 at 11 19 02 PM (no slurs, probably copied from previous edition) https://s9.imslp.org/files/imglnks/usimg/d/da/IMSLP328877-PMLP01446-b25669825.pdf

Hamburg: August Cranz, n.d.(ca.1821). Screen Shot 2022-04-21 at 11 20 48 PM (one slur) https://s9.imslp.org/files/imglnks/usimg/4/43/IMSLP333393-PMLP01446-b1027215x.pdf

Stuttgart: Eduard Hallberger, n.d.[1860]. Plate B. I. Screen Shot 2022-04-21 at 11 22 01 PM (two slurs) https://s9.imslp.org/files/imglnks/usimg/d/d1/IMSLP90564-PMLP01446-Beethoven,_Lv,_Piano_Sonata_No.1,_Op.2_No.1,_Moscheles.pdf

Ludwig van Beethovens Werke, Serie 16: Sonaten für das Pianoforte, Nr.124 Leipzig: Breitkopf und Härtel, n.d.[1862]. Plate B.124. (first complete academic version of Beethoven's music) Screen Shot 2022-04-21 at 11 23 49 PM (two slurs) https://s9.imslp.org/files/imglnks/usimg/4/45/IMSLP77992-PMLP01446-Beethoven_Werke_Breitkopf_Kalmus_Band_20_B_124_Op_2_scan.pdf

Stuttgart: J.G. Cotta, n.d.(ca.1875). Plate 32. Screen Shot 2022-04-21 at 11 25 03 PM (two slurs) https://s9.imslp.org/files/imglnks/usimg/a/a9/IMSLP03062-Beethoven-PianoSonataNo1Lebert.pdf

Sonata Album, Book II, No.24 (pp.124-42) New York: G. Schirmer, No.340, 1896. Plate 12589. Screen Shot 2022-04-21 at 11 26 34 PM (two slurs) https://s9.imslp.org/files/imglnks/usimg/d/d9/IMSLP472523-PMLP01446-134_IMSLP363246-PMLP586489-sonataalbumtwent00lebe_bw.pdf

Sonaten für Pianoforte solo, Bd.1 Leipzig: C.F. Peters, n.d.(ca.1910). Plate 9452. Screen Shot 2022-04-21 at 11 27 43 PM (no slurs) https://s9.imslp.org/files/imglnks/usimg/9/94/IMSLP27752-PMLP01446-Beethoven_Sonaten_Piano_Band1_Peters_No1_Op2.pdf

Vienna: Universal Edition, 1918-21. Screen Shot 2022-04-21 at 11 29 19 PM (two slurs) https://s9.imslp.org/files/imglnks/usimg/8/8e/IMSLP00001-Beethoven,L.v.-_Piano_Sonata_01.pdf

Klaviersonaten, Band I Berlin: Ullstein, n.d.(ca.1918). Screen Shot 2022-04-21 at 11 30 48 PM (two slurs) https://s9.imslp.org/files/imglnks/usimg/3/36/IMSLP03796-Beethoven_-Piano_Sonatas_Lamond-_1.pdf

Sonate per pianoforte, Vol.1 (pp.1-21) Milan: Edizione Ricordi, 1919. Plate E.R. 1. Screen Shot 2022-04-21 at 11 32 06 PM (two slurs) https://s9.imslp.org/files/imglnks/usimg/1/17/IMSLP66279-PMLP01446-Opus_2_no_1.pdf

Sonaten für Klavier zu zwei Händen, Bd.1 Leipzig: C.F. Peters, n.d.(ca.1920). Plate 10543, 10555-56 Screen Shot 2022-04-21 at 11 33 09 PM (no slurs) https://s9.imslp.org/files/imglnks/usimg/5/59/IMSLP05524-Btsn2_1.pdf

Milan: Curci, 1949. Plate E. 4279 C.. Screen Shot 2022-04-21 at 11 34 35 PM (no slurs) https://imslp.hk/files/imglnks/euimg/0/01/IMSLP500942-PMLP1446-Beethoven_(ed.Schnabel).2_no1.pdf

Bronislaw von Pozniak (1877-1953) Publisher Info. Halle: Mitteldeutscher Verlag, n.d. Plate K 601 Screen Shot 2022-04-21 at 11 35 33 PM (one slur) https://s9.imslp.org/files/imglnks/usimg/a/a1/IMSLP639762-PMLP1446-Beethoven_Sonata_op.2,1_ed._v._Pozniak.pdf

Budapest: Editio Musica Budapest, 1959. Plate Z.2346. Screen Shot 2022-04-21 at 11 37 12 PM (one slur) https://petruccimusiclibrary.ca/files/imglnks/caimg/0/0a/IMSLP590015-PMLP1446-Beethoven.op2no1.sonata.no1.weiner.pdf

Klaviersonaten, Band I (pp.2-17) Munich-Duisburg: G. Henle Verlag, 1971. Screen Shot 2022-04-21 at 11 38 56 PM (one slur) https://imslp.hk/files/imglnks/euimg/f/fd/IMSLP529977-PMLP01446-beethoven_piano-sonata-op2-no1_henle-pp2-17.pdf

Klaviersonaten, Band I (pp.6-21) Munich: G. Henle Verlag, No.HN1032, 1976. Screen Shot 2022-04-21 at 11 40 04 PM (has one slur, as expected to match the first edition which may be the source of the second slur in later editions) https://imslp.hk/linkhandler.php?path=/imglnks/euimg/6/63/IMSLP621777-PMLP01446-E621557_4-19-beethoven--sonatas-vol1.pdf

Source: https://imslp.org/wiki/Piano_Sonata_No.1,Op.2_No.1%28Beethoven,_Ludwig_van%29

Notice that more recent editions start to prefer the single slur version.

The original source for the first example in the issue is from Durand c1911 -- and French editions have several conventions that are not common in other countries (such as French beaming).

craigsapp avatar Apr 22 '22 06:04 craigsapp

@craigsapp OK thanks for this detailed overview.

DavidBauer1984 avatar Apr 22 '22 11:04 DavidBauer1984

Here is a related example (which has been discussed at some point previously and may be an open issue):

Screen Shot 2022-04-25 at 3 19 25 PM
Click to view MEI data for above example
<?xml version="1.0" encoding="UTF-8"?>
<?xml-model href="https://music-encoding.org/schema/dev/mei-all.rng" type="application/xml" schematypens="http://relaxng.org/ns/structure/1.0"?>
<?xml-model href="https://music-encoding.org/schema/dev/mei-all.rng" type="application/xml" schematypens="http://purl.oclc.org/dsdl/schematron"?>
<mei xmlns="http://www.music-encoding.org/ns/mei" meiversion="5.0.0-dev">
 <meiHead>
  <fileDesc>
   <titleStmt>
    <title />
   </titleStmt>
   <pubStmt />
  </fileDesc>
  <encodingDesc>
   <appInfo>
    <application isodate="2022-04-25T15:19:27" version="3.10.0-dev-3dbda78">
     <name>Verovio</name>
     <p>Transcoded from Humdrum</p>
    </application>
   </appInfo>
  </encodingDesc>
  <workList>
   <work>
    <title />
   </work>
  </workList>
  <extMeta>
   <frames xmlns="http://www.humdrum.org/ns/humxml">
    <metaFrame n="14" token="!!!RDF**kern: &lt; = below" xml:id="L15">
     <frameInfo>
      <startTime float="3" />
      <frameType>reference</frameType>
      <referenceKey>RDF**kern</referenceKey>
      <referenceValue>&lt; = below</referenceValue>
     </frameInfo>
    </metaFrame>
    <metaFrame n="15" token="!!!RDF**kern: > = above" xml:id="L16">
     <frameInfo>
      <startTime float="3" />
      <frameType>reference</frameType>
      <referenceKey>RDF**kern</referenceKey>
      <referenceValue>&gt; = above</referenceValue>
     </frameInfo>
    </metaFrame>
   </frames>
  </extMeta>
 </meiHead>
 <music>
  <body>
   <mdiv xml:id="mxedzbo">
    <score xml:id="scmozjo">
     <scoreDef xml:id="slzbhah">
      <staffGrp xml:id="se8tzj3">
       <staffDef xml:id="s7qldcu" n="1" lines="5">
        <clef xml:id="clef-L4F1" shape="G" line="2" />
        <keySig xml:id="keysig-L5F1" pname="c" mode="major" sig="0" />
        <meterSig xml:id="metersig-L7F1" count="3" unit="4" />
       </staffDef>
      </staffGrp>
     </scoreDef>
     <section xml:id="section-L1F1">
      <measure xml:id="measure-L1">
       <staff xml:id="skdwrh9" n="1">
        <layer xml:id="layer-L1F1N1" n="1">
         <note xml:id="note-L9F1" type="placed" dur="8" oct="4" pname="b" grace="unacc" stem.dir="up">
          <accid xml:id="accid-L9F1" accid="n" func="caution" />
         </note>
         <beam xml:id="beam-L10F1-L11F1">
          <chord xml:id="chord-L10F1" dur="8">
           <note xml:id="note-L10F1S1" oct="4" pname="c" accid.ges="n" />
           <note xml:id="note-L10F1S2" oct="5" pname="c" accid.ges="n" />
          </chord>
          <chord xml:id="chord-L11F1" dur="8">
           <note xml:id="note-L11F1S1" oct="4" pname="e" accid.ges="n" />
           <note xml:id="note-L11F1S2" oct="5" pname="e" accid.ges="n" />
          </chord>
         </beam>
         <chord xml:id="chord-L12F1" dur="2">
          <note xml:id="note-L12F1S1" oct="4" pname="g" accid.ges="n" />
          <note xml:id="note-L12F1S2" oct="5" pname="g" accid.ges="n" />
         </chord>
        </layer>
       </staff>
       <slur xml:id="slur-L9F1-L10F1" type="placed" staff="1" startid="#note-L9F1" endid="#chord-L10F1" curvedir="below" />
      </measure>
     </section>
    </score>
   </mdiv>
  </body>
 </music>
</mei>

The problem is that the grace note should be slurred to the C5 and not the C4.

This could be done in two possible ways: either identify the closest note in the chord and attach to that note (which may not always work in all cases), or explicitly attach to the C5 note rather than the chord.

craigsapp avatar Apr 25 '22 22:04 craigsapp

Related to issue https://github.com/rism-digital/verovio/issues/1139 (which was before the new slur system was implemented).

craigsapp avatar Apr 26 '22 03:04 craigsapp

Here is a good example where the slur needs to be attached to a note within a chord:

Screen Shot 2022-05-01 at 2 56 53 AM
Click to view MEI data for above example
<?xml version="1.0" encoding="UTF-8"?>
<?xml-model href="https://music-encoding.org/schema/dev/mei-all.rng" type="application/xml" schematypens="http://relaxng.org/ns/structure/1.0"?>
<?xml-model href="https://music-encoding.org/schema/dev/mei-all.rng" type="application/xml" schematypens="http://purl.oclc.org/dsdl/schematron"?>
<mei xmlns="http://www.music-encoding.org/ns/mei" meiversion="5.0.0-dev">
 <meiHead>
  <fileDesc>
   <titleStmt>
    <title>Piano Sonata no. 7 in D major</title>
   </titleStmt>
   <pubStmt>
    <respStmt>
     <persName xml:id="persname-L36" analog="humdrum:EED" role="editor">Craig Stuart Sapp</persName>
    </respStmt>
   </pubStmt>
  </fileDesc>
  <encodingDesc>
   <appInfo>
    <application isodate="2022-05-01T02:56:28" version="3.10.0-dev-36a3430-dirty">
     <name>Verovio</name>
     <p>Transcoded from Humdrum</p>
    </application>
   </appInfo>
   <projectDesc>
    <p>Encoded by: Craig Stuart Sapp</p>
    <p>Version: 2022/04/01</p>
   </projectDesc>
  </encodingDesc>
  <workList>
   <work>
    <title xml:id="title-L3" analog="humdrum:OTL" type="main">Piano Sonata no. 7 in D major</title>
    <composer analog="humdrum:COM" xml:id="person-L1">Beethoven, Ludwig van</composer>
   </work>
  </workList>
 </meiHead>
 <music>
  <body>
   <mdiv xml:id="mwxdw30">
    <score xml:id="s3hg8iw">
     <scoreDef xml:id="sbf2vz0" midi.bpm="240.000000">
      <pgHead xml:id="pxbnfds">
       <rend xml:id="rqa40xa" halign="center" valign="middle">
        <rend xml:id="rt0vql2" fontsize="large">Piano Sonata no. 7 in D major</rend>
        <lb xml:id="lx5csn2" /> 
<lb xml:id="ldboy2x" /> </rend>
       <rend xml:id="r4kh1p" halign="right" valign="bottom" fontsize="small">Ludwig van Beethoven</rend>
       <rend xml:id="rvzv7eg" halign="right" valign="bottom" fontsize="small">1770–1827</rend>
      </pgHead>
      <staffGrp xml:id="sui9wsw" bar.thru="true" symbol="brace">
       <staffDef xml:id="smey9ok" n="1" lines="5">
        <clef xml:id="clef-L12F2" shape="G" line="2" />
        <keySig xml:id="keysig-L13F2" pname="d" mode="major" sig="2s" />
        <meterSig xml:id="metersig-L16F2" count="4" unit="4" />
       </staffDef>
       <staffDef xml:id="sugnczr" n="2" lines="5">
        <clef xml:id="clef-L12F1" shape="F" line="4" />
        <keySig xml:id="keysig-L13F1" pname="d" mode="major" sig="2s" />
        <meterSig xml:id="metersig-L16F1" count="4" unit="4" />
       </staffDef>
      </staffGrp>
     </scoreDef>
     <section xml:id="section-L8F1">
      <choice xml:id="cwva61r">
       <orig xml:id="ogu9z4d">
        <expansion plist="#label-A #label-A #label-B" xml:id="expansion-L9F1" />
       </orig>
       <reg xml:id="rtz8747" type="norep">
        <expansion plist="#label-A #label-B" xml:id="expansion-L10F1" type="norep" />
       </reg>
      </choice>
      <section xml:id="label-A">
       <measure xml:id="measure-L1">
        <staff xml:id="sh6fww2" n="1">
         <layer xml:id="layer-L8F2N1" n="1">
          <chord xml:id="chord-L19F2" dur="4" stem.dir="up">
           <note xml:id="note-L19F2S1" staff="2" oct="3" pname="d" accid.ges="n" />
           <note xml:id="note-L19F2S2" oct="4" pname="d" accid.ges="n" />
          </chord>
         </layer>
        </staff>
        <staff xml:id="sorikpe" n="2">
         <layer xml:id="layer-L8F1N1" n="1">
          <note xml:id="note-L19F1" type="placed" dur="4" oct="2" pname="d" stem.dir="down" accid.ges="n" />
         </layer>
        </staff>
        <tempo xml:id="tempo-L7F1" staff="1" tstamp="1.000000">Presto</tempo>
        <dynam xml:id="dynam-L19F3" staff="1" tstamp="1.000000" vgrp="100">
         <rend xml:id="rzlotg" halign="right" fontsize="large" fontweight="bold">p </rend>
        </dynam>
        <slur xml:id="slur-L19F2-L21F2" type="placed" staff="1" startid="#chord-L19F2" endid="#note-L21F2" curvedir="below" />
        <slur xml:id="slur-L19F1-L21F1" type="placed" staff="2" startid="#note-L19F1" endid="#note-L21F1" curvedir="below" />
       </measure>
       <measure xml:id="measure-L20" n="1">
        <staff xml:id="staff-L20F2N1" n="1">
         <layer xml:id="layer-L20F2N1" n="1">
          <note xml:id="note-L21F2" dur="4" oct="4" pname="c" accid.ges="s">
           <artic xml:id="artic-L21F2" artic="stacc" />
          </note>
          <note xml:id="note-L22F2" dur="4" oct="3" pname="b" accid.ges="n">
           <artic xml:id="artic-L22F2" artic="stacc" />
          </note>
          <note xml:id="note-L23F2" dur="4" oct="3" pname="a" accid.ges="n">
           <artic xml:id="artic-L23F2" artic="stacc" />
          </note>
          <note xml:id="note-L24F2" dur="4" oct="4" pname="c" accid.ges="s">
           <artic xml:id="artic-L24F2" artic="stacc" />
          </note>
         </layer>
        </staff>
        <staff xml:id="staff-L20F1N1" n="2">
         <layer xml:id="layer-L20F1N1" n="1">
          <note xml:id="note-L21F1" dur="4" oct="2" pname="c" accid.ges="s">
           <artic xml:id="artic-L21F1" artic="stacc" />
          </note>
          <note xml:id="note-L22F1" dur="4" oct="1" pname="b" accid.ges="n">
           <artic xml:id="artic-L22F1" artic="stacc" />
          </note>
          <note xml:id="note-L23F1" dur="4" oct="1" pname="a" accid.ges="n">
           <artic xml:id="artic-L23F1" artic="stacc" />
          </note>
          <note xml:id="note-L24F1" dur="4" oct="2" pname="c" accid.ges="s">
           <artic xml:id="artic-L24F1" artic="stacc" />
          </note>
         </layer>
        </staff>
       </measure>
      </section>
     </section>
    </score>
   </mdiv>
  </body>
 </music>
</mei>

Expected rendering if slur could be attached to note rather than chord:

Screen Shot 2022-05-01 at 2 57 08 AM

craigsapp avatar May 01 '22 10:05 craigsapp