davidrizo / im3

IM3 library (still unstable)
2 stars 0 forks source link

Conversion of dots to MEI from **mens #4

Open craigsapp opened 6 years ago

craigsapp commented 6 years ago

It is probably better to encode : characters as <dot> in MEI conversions. Example:

screen shot 2018-05-05 at 5 24 56 pm

**mens data:

**mens
*clefC3
S:f
Sc
s:d
se
*-

If they are an augmentation dot, then probably adding P or p is best, and maybe :: would indicate an explicit dot of division (to be decided later). Rhythmic augmentation dots could be encoded as note@dots as currently, but they would not be displayed. But probably better to encode them as note@dots.ges. See issue https://github.com/rism-ch/verovio/issues/757 related to this (note@dots.ges are not yet implemented).

If in circle mensuration, then the first dot above would function like an augmentation dot, and the second like a dot of division. So an explicit expression of the rhythm might be:

**mens
*met(O)
*clefC3
Sp:f
Sic
si:d
se
*-

The p would force a visual dot when converting to modern notation, and the i would suppress the dot in conversion to modern notation.

A problem is that the meaning of the dots depends on the mensuration. If the mensuration is changed, an augmentation dot might become a dot of division and vice-versa.

MEI conversion (develop-humdrum branch):

verovio -atmei input.mens
<?xml version="1.0" encoding="UTF-8"?>
<?xml-model href="http://music-encoding.org/schema/4.0.0/mei-all.rng" type="application/xml" schematypens="http://relaxng.org/ns/structure/1.0"?>
<?xml-model href="http://music-encoding.org/schema/4.0.0/mei-all.rng" type="application/xml" schematypens="http://purl.oclc.org/dsdl/schematron"?>
<mei xmlns="http://www.music-encoding.org/ns/mei" meiversion="4.0.0">
    <meiHead>
        <fileDesc>
            <titleStmt>
                <title />
            </titleStmt>
            <pubStmt />
        </fileDesc>
        <encodingDesc>
            <appInfo>
                <application isodate="2018-05-05T17:25:21" version="2.0.0-dev-686bba6-dirty">
                    <name>Verovio</name>
                    <p>Transcoded from Humdrum</p>
                </application>
            </appInfo>
        </encodingDesc>
        <workDesc>
            <work>
                <titleStmt>
                    <title />
                </titleStmt>
            </work>
        </workDesc>
    </meiHead>
    <music>
        <body>
            <mdiv xml:id="mdiv-0000000704839692">
                <score xml:id="score-0000000720906592">
                    <scoreDef xml:id="scoredef-0000000825967700" midi.bpm="400">
                        <staffGrp xml:id="staffgrp-0000001910231784">
                            <staffDef xml:id="staffdef-0000001223009082" clef.shape="C" clef.line="3" n="1" notationtype="mensural" lines="5">
                                <label xml:id="label-0000002033952917" />
                            </staffDef>
                        </staffGrp>
                    </scoreDef>
                    <section xml:id="section-0000000174355370">
                        <measure xml:id="measure-L1" right="invis" n="0">
                            <staff xml:id="staff-0000000225858390" n="1">
                                <layer xml:id="layer-L1F1N1" n="1">
                                    <note xml:id="note-L3F1" dots="1" dur="brevis" oct="4" pname="f" accid.ges="n" />
                                    <dot xml:id="dot-0000000793533560" />
                                    <note xml:id="note-L4F1" dur="brevis" oct="4" pname="c" accid.ges="n" />
                                    <note xml:id="note-L5F1" dots="1" dur="semibrevis" oct="4" pname="d" accid.ges="n" />
                                    <dot xml:id="dot-0000001191947546" />
                                    <note xml:id="note-L6F1" dur="semibrevis" oct="4" pname="e" accid.ges="n" />
                                </layer>
                            </staff>
                        </measure>
                    </section>
                </score>
            </mdiv>
        </body>
    </music>
</mei>
davidrizo commented 6 years ago

If they are an augmentation dot, then probably adding P or p is best, and maybe :: would indicate an explicit dot of division I agree, if the manuscript includes the dot I would add it explicitly

Rhythmic augmentation dots could be encoded as note@dots as currently, but they would not be displayed. But probably better to encode them as note@dots.ges. See issue rism-ch/verovio#757 related to this (note@dots.ges are not yet implemented). I agree, even though note@dots.ges are not yet implemented, I would use them