Duplicate pageMilestoneEnd #3191
-
In SVG outputs from verovio, there are two pageMilestoneEnd <g id="pqxdxps" class="pageMilestoneEnd s1gogl7n" />
<g id="pe7gfgy" class="pageMilestoneEnd m3cww3m" /> I think that this is an error and there is a missing class of <g id="m3cww3m" class="mdiv pageMilestone" />
<g id="s1gogl7n" class="score pageMilestone" /> Test data: Click to view MEI test data<?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="2023-01-04T19:55:32" version="3.15.0-dev-2c13867">
<name>Verovio</name>
<p>Transcoded from Humdrum</p>
</application>
</appInfo>
</encodingDesc>
<workList>
<work>
<title />
</work>
</workList>
</meiHead>
<music>
<body>
<mdiv xml:id="m1v68rmr">
<score xml:id="s1fudbcv">
<scoreDef xml:id="s1tk2g9j">
<staffGrp xml:id="s1w3gnqu">
<staffDef xml:id="staffdef-L1F1" n="1" lines="5">
<clef xml:id="clef-L2F1" shape="G" line="2" />
<meterSig xml:id="metersig-L3F1" count="4" unit="4" />
</staffDef>
</staffGrp>
</scoreDef>
<section xml:id="section-L1F1">
<measure xml:id="measure-L1" right="end" n="1">
<staff xml:id="staff-L1F1" n="1">
<layer xml:id="layer-L1F1N1" n="1">
<note xml:id="note-L5F1" dur="4" oct="4" pname="c" accid.ges="n">
<artic xml:id="artic-L5F1" artic="acc" />
</note>
<note xml:id="note-L6F1" dur="4" oct="4" pname="d" accid.ges="n" />
</layer>
</staff>
<fermata xml:id="fermata-L6F1" staff="1" startid="#note-L6F1" place="above" />
</measure>
</section>
</score>
</mdiv>
</body>
</music>
</mei> Click to view rendered SVG image contents<svg width="686px" height="176px" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:mei="http://www.music-encoding.org/ns/mei" overflow="visible">
<desc>Engraved by Verovio 3.15.0-dev-2c13867</desc>
<defs>
<symbol id="E050-1efsyp4" viewBox="0 0 1000 1000" overflow="inherit">
<path transform="scale(1,-1)" d="M364 -252c-245 0 -364 165 -364 339c0 202 153 345 297 464c12 10 11 12 9 24c-7 41 -14 106 -14 164c0 104 24 229 98 311c20 22 51 48 65 48c11 0 37 -28 52 -50c41 -60 65 -146 65 -233c0 -153 -82 -280 -190 -381c-6 -6 -8 -7 -6 -19l25 -145c3 -18 3 -18 29 -18 c147 0 241 -113 241 -241c0 -113 -67 -198 -168 -238c-14 -6 -15 -5 -13 -17c11 -62 29 -157 29 -214c0 -170 -130 -200 -197 -200c-151 0 -190 98 -190 163c0 62 40 115 107 115c61 0 96 -47 96 -102c0 -58 -36 -85 -67 -94c-23 -7 -32 -10 -32 -17c0 -13 26 -29 80 -29 c59 0 159 18 159 166c0 47 -15 134 -27 201c-2 12 -4 11 -15 9c-20 -4 -46 -6 -69 -6zM80 20c0 -139 113 -236 288 -236c20 0 40 2 56 5c15 3 16 3 14 14l-50 298c-2 11 -4 12 -20 8c-61 -17 -100 -60 -100 -117c0 -46 30 -89 72 -107c7 -3 15 -6 15 -13 c0 -6 -4 -11 -12 -11c-7 0 -19 3 -27 6c-68 23 -115 87 -115 177c0 85 57 164 145 194c18 6 18 5 15 24l-21 128c-2 11 -4 12 -14 4c-47 -38 -93 -75 -153 -142c-83 -94 -93 -173 -93 -232zM470 943c-61 0 -133 -96 -133 -252c0 -32 2 -66 6 -92c2 -13 6 -14 13 -8 c79 69 174 159 174 270c0 55 -27 82 -60 82zM441 117c-12 1 -13 -2 -11 -14l49 -285c2 -12 4 -12 16 -6c56 28 94 79 94 142c0 88 -67 156 -148 163z" />
</symbol>
<symbol id="E084-1efsyp4" viewBox="0 0 1000 1000" overflow="inherit">
<path transform="scale(1,-1)" d="M40 -112c-12 0 -20 7 -20 17c0 3 1 7 3 11c0 1 1 2 1 3l6 8c30 42 128 181 128 305c0 16 14 19 23 19c8 0 53 -2 71 -2s59 2 68 2c8 0 15 -6 15 -14c0 -2 -1 -3 -1 -5c-3 -11 -163 -238 -243 -306h135v84c0 12 5 18 9 23l95 115c6 7 11 9 20 9c11 0 12 -9 12 -17v-214h73 c11 0 15 -7 15 -19s-5 -19 -15 -19h-73v-59c0 -32 21 -38 31 -38s22 -6 22 -20s-10 -21 -20 -21h-213c-15 0 -19 11 -19 21s7 19 23 19c18 0 40 8 40 35v63h-186z" />
</symbol>
<symbol id="E0A4-1efsyp4" viewBox="0 0 1000 1000" overflow="inherit">
<path transform="scale(1,-1)" d="M0 -42c0 86 88 167 198 167c57 0 97 -32 97 -83c0 -85 -109 -167 -198 -167c-54 0 -97 31 -97 83z" />
</symbol>
<symbol id="E4A1-1efsyp4" viewBox="0 0 1000 1000" overflow="inherit">
<path transform="scale(1,-1)" d="M0 -24c0 3 1 6 2 10c3 8 6 14 15 14c1 0 5 -1 9 -2l300 -102c13 -4 13 -10 13 -18s0 -15 -13 -18l-306 -103c-1 -1 -3 -1 -4 -1c-7 0 -11 8 -14 15c-1 3 -2 6 -2 9c0 5 3 10 14 15c0 0 214 73 225 76c6 2 8 4 8 7s-2 6 -7 7c-10 4 -226 77 -226 77c-11 4 -14 9 -14 14z " />
</symbol>
<symbol id="E4C0-1efsyp4" viewBox="0 0 1000 1000" overflow="inherit">
<path transform="scale(1,-1)" d="M3 10c0 3 0 7 1 11c61 306 268 308 300 308c29 0 238 -2 300 -308c1 -4 1 -7 1 -10c0 -10 -5 -14 -14 -14c-10 0 -14 7 -21 21c-1 1 -1 4 -2 7c-10 38 -53 196 -266 196c-206 0 -251 -153 -263 -194c-1 -4 -2 -8 -3 -9c-6 -14 -11 -21 -20 -21c-8 0 -13 3 -13 13zM249 52 c0 29 25 54 54 54c30 0 55 -25 55 -54c0 -30 -25 -55 -55 -55c-29 0 -54 25 -54 55z" />
</symbol>
</defs>
<style type="text/css">g.page-margin{font-family:Times;} g.ending, g.fing, g.reh, g.tempo{font-weight:bold;} g.dir, g.dynam, g.mNum{font-style:italic;} g.label{font-weight:normal;}</style>
<svg class="definition-scale" color="black" viewBox="0 0 12470 3200">
<g class="page-margin" transform="translate(300, 1000)">
<g id="m3cww3m" class="mdiv pageMilestone" />
<g id="s1gogl7n" class="score pageMilestone" />
<g id="s1on2jz3" class="system">
<g id="section-L1F1" class="section systemMilestone" />
<g id="measure-L1" class="measure m-1">
<g id="staff-L1F1" class="staff">
<path d="M0 540 L2924 540" stroke="currentColor" stroke-width="10" />
<path d="M0 720 L2924 720" stroke="currentColor" stroke-width="10" />
<path d="M0 900 L2924 900" stroke="currentColor" stroke-width="10" />
<path d="M0 1080 L2924 1080" stroke="currentColor" stroke-width="10" />
<path d="M0 1260 L2924 1260" stroke="currentColor" stroke-width="10" />
<g id="ct7fal6" class="clef">
<use xlink:href="#E050-1efsyp4" x="135" y="1080" height="720px" width="720px" />
</g>
<g id="k10gc25w" class="keySig" />
<g id="m8mb8wj" class="meterSig">
<use xlink:href="#E084-1efsyp4" x="784" y="720" height="720px" width="720px" />
<use xlink:href="#E084-1efsyp4" x="784" y="1080" height="720px" width="720px" />
</g>
<g class="ledgerLines below">
<path d="M1329 1440 L1637 1440" stroke="currentColor" stroke-width="22" />
</g>
<g id="layer-L1F1N1" class="layer">
<g id="note-L5F1" class="note qon-0 qoff-1 pname-c acc-n oct-4 b40c-2 b12c-0 ">
<g class="notehead">
<use xlink:href="#E0A4-1efsyp4" x="1377" y="1440" height="720px" width="720px" />
</g>
<g id="s1mj0fhb" class="stem">
<path d="M1580 1410 L1580 810" stroke="currentColor" stroke-width="18" />
</g>
<g id="accid-L5F1" class="accid" />
<g id="artic-L5F1" class="artic">
<use xlink:href="#E4A1-1efsyp4" x="1361" y="1597" height="720px" width="720px" />
</g>
</g>
<g id="note-L6F1" class="note qon-1 qoff-2 pname-d acc-n oct-4 b40c-8 b12c-2 ">
<g class="notehead">
<use xlink:href="#E0A4-1efsyp4" x="2067" y="1350" height="720px" width="720px" />
</g>
<g id="s14uhosj" class="stem">
<path d="M2270 1320 L2270 720" stroke="currentColor" stroke-width="18" />
</g>
<g id="accid-L6F1" class="accid" />
</g>
</g>
</g>
<g id="fermata-L6F1" class="fermata">
<use xlink:href="#E4C0-1efsyp4" x="1957" y="493" height="720px" width="720px" />
</g>
<g id="b7fvxwc" class="barLine">
<path d="M2757 540 L2757 1260" stroke="currentColor" stroke-width="10" />
<path d="M2879 540 L2879 1260" stroke="currentColor" stroke-width="90" />
</g>
</g>
<g id="sh04er2" class="systemMilestoneEnd section-L1F1" />
</g>
<g id="pqxdxps" class="pageMilestoneEnd s1gogl7n" />
<g id="pe7gfgy" class="pageMilestoneEnd m3cww3m" />
</g>
</svg>
</svg> Of course this is a single page example, so maybe multipage pageMilestoneEnds will be a little different, but in that case I would expect a single pageMilestoneEnd rather than two of them when not at the end of an mdiv or score. |
Beta Was this translation helpful? Give feedback.
Replies: 2 comments
-
There is a |
Beta Was this translation helpful? Give feedback.
-
Thanks! That makes sense. I was not paying attention to the randomized class names, and now see that they are the IDs of the matching starting milestones. It still seems a pain if you want to find the pageMilestoneEnd for the score on a page. First you have to find the "score pageMilestone" class, then extract its ID and then search again for that ID as a classname. I would rather search for the "score pageMilestoneEnd" class in one step.
What is the purposes that these milestones were designed for? It seems like they were added somewhat recently, as I don't remember seeing them about a year ago. |
Beta Was this translation helpful? Give feedback.
There is a
pageMilestoneEnd
for themdiv
(IDm3cww3m
) and one for thescore
(IDs1gogl7n
). All information that is needed is there. If you add class names again you'd end up finding two scores with xpath on a single page.