<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p>Dear John, Jamie, and Костя,</p>
    <p>First, I want to say that DM Smith has also a versification
      mapping implementation in JSword, which was, and likely still is a
      foundational part of STEP.  I don't know if STEP uses JSword's
      versification mapping facility or if it implements its own.  There
      were collaboration efforts around July 2014 to get SWORD and
      JSword to use the same data sources, but I am not sure how that
      ended up.<br>
    </p>
    <p>I don't remember all the details of Костя's representation for a
      mapping system, but we pushed pretty hard to have it handle most
      all scenarios and doing a quick search it looks like Костя and
      others have built mappings for these systems:</p>
    <p>[scribe@localhost include]$ grep -l mapping sword/include/canon*<br>
      canon_calvin.h<br>
      canon_darbyfr.h<br>
      canon_nrsv.h<br>
      canon_segond.h<br>
      canon_synodal.h<br>
      canon_vulg.h<br>
    </p>
    <p>If you are familiar with mapping systems (and it sounds like John
      and Jamie all are) and have a look at the mapping data in any of
      the above files as examples, I am sure you will understand how
      Костя is representing data for his implementation.</p>
    <p>All this to say, it would be really great if any of you might be
      interested in contributing mapping data to our other supported
      versification systems which don't yet have the mapping
      implemented:</p>
    <p>[scribe@localhost include]$ grep -L mapping sword/include/canon_*<br>
      canon_abbrevs.h &lt;- ignore this one<br>
      canon_catholic2.h<br>
      canon_catholic.h<br>
      canon_german.h<br>
      canon_kjva.h<br>
      canon_leningrad.h<br>
      canon_luther.h<br>
      canon_lxx.h<br>
      canon_mt.h<br>
      canon_nrsva.h<br>
      canon_null.h<br>
      canon_orthodox.h<br>
      canon_synodalprot.h<br>
    </p>
    <p><a href="http://crosswire.org/svn/sword/trunk/include/">http://crosswire.org/svn/sword/trunk/include/</a></p>
    <p>It would be a blessing to me and everyone who uses the engine.</p>
    <p>Serving together,<br>
    </p>
    <p>Troy<br>
    </p>
    <p><br>
    </p>
    <div class="moz-cite-prefix">On 5/6/20 10:20 AM, John Dudeck wrote:<br>
    </div>
    <blockquote type="cite"
      cite="mid:5EB2F1C6.18305.6C975B41@john.dudeck.sim.org">
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      <title></title>
      <meta http-equiv="Content-Style-Type" content="text/css">
      <div align="left"><font size="2" face="Arial"><span style="
            font-size:10pt">Greetings,</span></font></div>
      <div align="left"><font size="2" face="Arial"><span style="
            font-size:10pt"><br>
          </span></font></div>
      <div align="left"><font size="2" face="Arial"><span style="
            font-size:10pt">I have done quite a bit of content
            development for Logos, including Bibles that had
            versifications that did not fit any existing schemes in
            Logos.</span></font></div>
      <div align="left"><font size="2" face="Arial"><span style="
            font-size:10pt"><br>
          </span></font></div>
      <div align="left"><font size="2" face="Arial"><span style="
            font-size:10pt">Logos uses "verse maps", which are xml files
            that specify the mapping of every verse in a particular
            versification to every verse in each other versification. If
            a particular whole book matches the versification of some
            other existing versification, the verse map for that book
            can simply reference the existing versification. In use, the
            software is also able to infer mappings when going between
            two versifications that aren't referenced directly.  The
            verse maps have to be validated before they are
            incorporated, to avoid conflicting mappings.</span></font></div>
      <div align="left"><font size="2" face="Arial"><span style="
            font-size:10pt"><br>
          </span></font></div>
      <div align="left"><font size="2" face="Arial"><span style="
            font-size:10pt">The verse maps can handle such things as
            verses that are split differently in different
            versifications, and the headings in Psalms.</span></font></div>
      <div align="left"><font size="2" face="Arial"><span style="
            font-size:10pt"><br>
          </span></font></div>
      <div align="left"><font size="2" face="Arial"><span style="
            font-size:10pt">The downside of their system is that the
            verse maps have to be hard-compiled into a release of the
            software. They are not pluggable. I think pluggable verse
            maps is on their list of enhancements, but as far as I know
            the feature has never been developed. Maybe they aren't
            smart enough to figure it out. I don't know that I could
            figure it out either.</span></font></div>
      <div align="left"><font size="2" face="Arial"><span style="
            font-size:10pt"><br>
          </span></font></div>
      <div align="left"><font size="2" face="Arial"><span style="
            font-size:10pt">John</span></font></div>
      <div align="left"><font size="2" face="Arial"><span style="
            font-size:10pt"><br>
          </span></font></div>
      <div align="left"><font size="2" face="Arial"><span style="
            font-size:10pt"><br>
          </span></font></div>
      <div align="left">
        <hr width="100%" align="left">
        <font size="2" face="Arial"><span style=" font-size:10pt"><br>
          </span></font></div>
      <div align="left"><font size="2" face="Arial"><span style="
            font-size:10pt">Hi Tobias,</span></font></div>
      <div align="left"><font size="2" face="Arial"><span style="
            font-size:10pt"><br>
          </span></font></div>
      <div align="left"><font size="2" face="Arial"><span style="
            font-size:10pt">Remember that any libraries for STEP Bible
            would likely be oriented towards JSword rather than SWORD
            per se.</span></font></div>
      <div align="left"><font size="2" face="Arial"><span style="
            font-size:10pt"><br>
          </span></font></div>
      <div align="left"><font size="2" face="Arial"><span style="
            font-size:10pt">David</span></font></div>
      <div align="left"><font size="2" face="Arial"><span style="
            font-size:10pt"><br>
          </span></font></div>
      <div align="left"><font size="2" face="Arial"><span style="
            font-size:10pt">Sent from ProtonMail Mobile</span></font></div>
      <div align="left"><font size="2" face="Arial"><span style="
            font-size:10pt"><br>
          </span></font></div>
      <div align="left"><font size="2" face="Arial"><span style="
            font-size:10pt"><br>
          </span></font></div>
      <p style="margin-left:0mm; margin-right:0mm; text-indent:0mm;
        margin-top:1.76mm; margin-bottom:1.76mm;"><font size="2"
          face="Arial">
          <span style=" font-size:10pt">On Wed, May 6, 2020 at 17:04,
            Tobias Klein &lt;</span></font><a
          href="mailto:contact@tklein.info" moz-do-not-send="true"><font
            size="2" face="Arial" color="#0000ff">
            <span style=" font-size:10pt"><u>contact@tklein.info</u></span></font></a><font
          size="2" face="Arial"><span style=" font-size:10pt"> &gt;
            wrote:</span></font></p>
      <p style="margin-left:9mm; margin-right:0mm; text-indent:0mm;
        margin-top:1.76mm; margin-bottom:1.76mm;"><font size="2"
          face="Arial">
          <span style=" font-size:10pt">Hi Jamie,</span></font></p>
      <div style="margin-left:9mm; margin-right:0mm; text-indent:0mm;
        margin-top:0.00mm; margin-bottom:0.00mm;" align="left"><font
          size="2" face="Arial">
          <span style=" font-size:10pt"><br>
          </span></font></div>
      <div style="margin-left:9mm; margin-right:0mm; text-indent:0mm;
        margin-top:0.00mm; margin-bottom:0.00mm;" align="left"><font
          size="2" face="Arial">
          <span style=" font-size:10pt">Thanks. I had a look at the
            data, that’s quite complex! Even a bit intimidating ...</span></font></div>
      <div style="margin-left:9mm; margin-right:0mm; text-indent:0mm;
        margin-top:0.00mm; margin-bottom:0.00mm;" align="left"><font
          size="2" face="Arial">
          <span style=" font-size:10pt"><br>
          </span></font></div>
      <div style="margin-left:9mm; margin-right:0mm; text-indent:0mm;
        margin-top:0.00mm; margin-bottom:0.00mm;" align="left"><font
          size="2" face="Arial">
          <span style=" font-size:10pt">I suppose STEPBible has some
            library functions that parse this data?</span></font></div>
      <div style="margin-left:9mm; margin-right:0mm; text-indent:0mm;
        margin-top:0.00mm; margin-bottom:0.00mm;" align="left"><font
          size="2" face="Arial">
          <span style=" font-size:10pt">Can you point me to any APIs?</span></font></div>
      <div style="margin-left:9mm; margin-right:0mm; text-indent:0mm;
        margin-top:0.00mm; margin-bottom:0.00mm;" align="left"><font
          size="2" face="Arial">
          <span style=" font-size:10pt"><br>
          </span></font></div>
      <div style="margin-left:9mm; margin-right:0mm; text-indent:0mm;
        margin-top:0.00mm; margin-bottom:0.00mm;" align="left"><font
          size="2" face="Arial">
          <span style=" font-size:10pt">Best regards,</span></font></div>
      <div style="margin-left:9mm; margin-right:0mm; text-indent:0mm;
        margin-top:0.00mm; margin-bottom:0.00mm;" align="left"><font
          size="2" face="Arial">
          <span style=" font-size:10pt">Tobias</span></font></div>
      <div style="margin-left:9mm; margin-right:0mm; text-indent:0mm;
        margin-top:0.00mm; margin-bottom:0.00mm;" align="left"><font
          size="2" face="Arial">
          <span style=" font-size:10pt"><br>
          </span></font></div>
      <div style="margin-left:9mm; margin-right:0mm; text-indent:0mm;
        margin-top:0.00mm; margin-bottom:0.00mm;" align="left"><font
          size="2" face="Arial">
          <span style=" font-size:10pt"><br>
          </span></font></div>
      <div style="margin-left:18mm; margin-right:0mm; text-indent:0mm;
        margin-top:0.00mm; margin-bottom:0.00mm;" align="left"><font
          size="2" face="Arial">
          <span style=" font-size:10pt">Am 06.05.2020 um 15:04 schrieb
            Jamie &lt;</span></font><a href="mailto:araj@critos.co.uk"
          moz-do-not-send="true"><font size="2" face="Arial"
            color="#0000ff">
            <span style=" font-size:10pt"><u>araj@critos.co.uk</u></span></font></a><font
          size="2" face="Arial"><span style=" font-size:10pt">&gt;:</span></font></div>
      <p style="margin-left:18mm; margin-right:0mm; text-indent:0mm;
        margin-top:1.76mm; margin-bottom:1.76mm;"><font size="2"
          face="Arial">
          <span style=" font-size:10pt"><br>
          </span></font></p>
      <div align="left"><font face="Arial" color="#1f497d"><span style="
            font-size:11pt">Hi Tobias,</span></font></div>
      <div align="left"><font face="Arial" color="#1f497d"><span style="
            font-size:11pt"> </span></font></div>
      <div align="left"><font face="Arial" color="#1f497d"><span style="
            font-size:11pt">Not sure that this exactly answers your
            question, but just in case it’s relevant, Tyndale House have
            various public domain information available, including
            material on alternative versification schemes.  The
            reversification material gives details of how to map LXX, MT
            and Vulgate schemes on to NRSVA (and also addresses some
            other schemes which are perhaps less frequently
            encountered).  It also caters for common variants which
            basically follow one of these schemes, but which have
            certain verses split up into subverses.  You can find the
            data at :-</span></font></div>
      <div align="left"><font face="Arial" color="#1f497d"><span style="
            font-size:11pt"> </span></font></div>
      <div align="left"><a
href="https://github.com/tyndale/STEPBible-Data/blob/master/TVTMS%20-%20Tyndale%20Versification%20Traditions%20with%20Methodology%20for%20Standardisation%20for%20Eng%2BHeb%2BLat%2BGrk%2BOthers%20-%20TyndaleHouse.com%20STEPBible.org%20CC%20BY-NC.txt"
          moz-do-not-send="true">
          <font face="Arial" color="#0000ff"><span style="
              font-size:12pt"><u>https://github.com/tyndale/STEPBible-Data/blob/master/TVTMS%20-%20Tyndale%20Versification%20Traditions%20with%20Methodology%20for%20Standardisation%20for%20Eng%2BHeb%2BLat%2BGrk%2BOthers%20-%20TyndaleHouse.com%20STEPBible.org%20CC%20BY-NC.txt</u></span></font></a></div>
      <div align="left"><font face="Arial" color="#1f497d"><span style="
            font-size:11pt"> </span></font></div>
      <div align="left"><font face="Arial" color="#1f497d"><span style="
            font-size:11pt">If you do want to make use of it, I’d be
            very happy to try to answer any questions.</span></font></div>
      <div align="left"><font face="Arial" color="#1f497d"><span style="
            font-size:11pt"> </span></font></div>
      <div align="left"><font face="Arial" color="#1f497d"><span style="
            font-size:11pt">Regards,</span></font></div>
      <div align="left"><font face="Arial" color="#1f497d"><span style="
            font-size:11pt"> </span></font></div>
      <div align="left"><font face="Arial" color="#1f497d"><span style="
            font-size:11pt">ARA “Jamie” Jamieson</span></font></div>
      <div align="left"><font face="Arial" color="#1f497d"><span style="
            font-size:11pt"> </span></font></div>
      <div align="left"><font face="Arial" color="#1f497d"><span style="
            font-size:11pt"> </span></font></div>
      <div align="left"><font face="Arial" color="#1f497d"><span style="
            font-size:11pt"> </span></font></div>
      <div align="left"><font face="Arial"><span style=" font-size:11pt"><b>From:</b></span><span
            style=" font-size:11pt"> Tobias Klein [</span></font>
        <a href="mailto:contact@tklein.info" moz-do-not-send="true"><font
            face="Arial" color="#0000ff"><span style=" font-size:11pt"><u>mailto:contact@tklein.info</u></span></font></a>
        <font face="Arial"><span style=" font-size:11pt"> ] <br>
          </span><span style=" font-size:11pt"><b>Sent:</b></span><span
            style=" font-size:11pt"> 05 May 2020 21:19<br>
          </span><span style=" font-size:11pt"><b>To:</b></span><span
            style=" font-size:11pt"> SWORD Developers' Collaboration
            Forum &lt;</span></font>
        <a href="mailto:sword-devel@crosswire.org"
          moz-do-not-send="true"><font face="Arial" color="#0000ff"><span
              style=" font-size:11pt"><u>sword-devel@crosswire.org</u></span></font></a>
        <font face="Arial"><span style=" font-size:11pt">&gt;<br>
          </span><span style=" font-size:11pt"><b>Subject:</b></span><span
            style=" font-size:11pt"> [sword-devel] Versification Mapping</span></font></div>
      <div align="left"><font face="Arial"><span style=" font-size:12pt"> </span></font></div>
      <p style="margin-left:0mm; margin-right:0mm; text-indent:0mm;
        margin-top:1.76mm; margin-bottom:1.76mm;"><font face="Arial"><span
            style=" font-size:12pt">Hi,</span></font></p>
      <p style="margin-left:0mm; margin-right:0mm; text-indent:0mm;
        margin-top:1.76mm; margin-bottom:1.76mm;"><font face="Arial"><span
            style=" font-size:12pt">I would like to ask a question that
            I was planning to ask for a while already ... 
            <br>
            What's the recommended solution of mapping different
            versification systems?</span></font></p>
      <p style="margin-left:0mm; margin-right:0mm; text-indent:0mm;
        margin-top:1.76mm; margin-bottom:1.76mm;"><font face="Arial"><span
            style=" font-size:12pt">And what working implementations for
            this are already out there?
            <br>
            <br>
            I realize that my understanding of versifications has been a
            bit limited and that's visible in Ezra Project's
            implementation of the mapping. I am currently only
            differentiating between two versification systems, namely
            the English versification (used in most/all (?) English
            translations) and the Hebrew versification (used in most
            modern German translations).</span></font></p>
      <p style="margin-left:0mm; margin-right:0mm; text-indent:0mm;
        margin-top:1.76mm; margin-bottom:1.76mm;"><font face="Arial"><span
            style=" font-size:12pt">It's been a few years since I looked
            into this and I think this has been my source (SBL Handbook
            of Style)
            <br>
          </span></font><a
href="https://books.google.de/books?id=M_upBwAAQBAJ&amp;pg=PA265&amp;lpg=PA265&amp;dq=appendix+english/hebrew/greek+versification&amp;source=bl&amp;ots=CXVR0J6YrI&amp;sig=ACfU3U3hEIPgNxmmUQW1kZJaRAtHl78L-g&amp;hl=de&amp;sa=X&amp;ved=2ahUKEwilyoPUwp3pAhUrzqYKHVk4BtIQ6AEwAXoECAYQAQ#v=onepage&amp;q=appendix%20english%2Fhebrew%2Fgreek%20versification&amp;f=false"
          moz-do-not-send="true">
          <font face="Arial" color="#0000ff"><span style="
              font-size:12pt"><u>https://books.google.de/books?id=M_upBwAAQBAJ&amp;pg=PA265&amp;lpg=PA265&amp;dq=appendix+english/hebrew/greek+versification&amp;source=bl&amp;ots=CXVR0J6YrI&amp;sig=ACfU3U3hEIPgNxmmUQW1kZJaRAtHl78L-g&amp;hl=de&amp;sa=X&amp;ved=2ahUKEwilyoPUwp3pAhUrzqYKHVk4BtIQ6AEwAXoECAYQAQ#v=onepage&amp;q=appendix%20english%2Fhebrew%2Fgreek%20versification&amp;f=false</u></span></font></a></p>
      <p style="margin-left:0mm; margin-right:0mm; text-indent:0mm;
        margin-top:1.76mm; margin-bottom:1.76mm;"><font face="Arial"><span
            style=" font-size:12pt">My current approach in Ezra Project
            to map between English and Hebrew versification is the
            following:</span></font></p>
      <ul style="margin-bottom: 0mm; list-style-type: disc; ">
        <li style="margin-left: 49pt; margin-right: 0pt; padding-left:
          0pt; font-family: Symbol; color: #010101; "><font face="Arial"><span
              style=" font-size:12pt; font-family:Arial; color:#010101;
              font-weight:Normal; font-style:Normal;
              font-decoration:Normal">I use "absolute verse numbers" in
              each book.</span></font></li>
        <li style="margin-left: 49pt; margin-right: 0pt; padding-left:
          0pt; font-family: Symbol; color: #010101; "><font face="Arial"><span
              style=" font-size:12pt; font-family:Arial; color:#010101;
              font-weight:Normal; font-style:Normal;
              font-decoration:Normal">I have mapping tables that
              basically define offsets for the "absolute verse numbers"
              (see implementation </span></font><a
href="https://github.com/tobias-klein/ezra-project/blob/master/models/versereference.js#L177"
            moz-do-not-send="true">
            <font face="Arial" color="#0000ff"><span style="
                font-size:12pt"><u>here</u></span></font></a><font
            face="Arial"><span style=" font-size:12pt">).</span></font></li>
        <li style="margin-left: 49pt; margin-right: 0pt; padding-left:
          0pt; font-family: Symbol; color: #010101; "><font face="Arial"><span
              style=" font-size:12pt; font-family:Arial; color:#010101;
              font-weight:Normal; font-style:Normal;
              font-decoration:Normal">The versification (currently only
              English or Hebrew) of the respective translation is
              detected based on some simple dynamic tests when opening
              it.</span></font></li>
        <li style="margin-left: 49pt; margin-right: 0pt; padding-left:
          0pt; font-family: Symbol; color: #010101; "><font face="Arial"><span
              style=" font-size:12pt; font-family:Arial; color:#010101;
              font-weight:Normal; font-style:Normal;
              font-decoration:Normal">I have functions to convert
              between one and the other "absolute verse numbers" based
              on the mapping.</span></font></li>
        <li style="margin-left: 49pt; margin-right: 0pt; padding-left:
          0pt; font-family: Symbol; color: #010101; "><font face="Arial"><span
              style=" font-size:12pt; font-family:Arial; color:#010101;
              font-weight:Normal; font-style:Normal;
              font-decoration:Normal">Verse Reference objects are stored
              both with the English and Hebrew absolute verse numbers
              and these objects are used for assigning tags, notes, etc.</span></font></li>
      </ul>
      <p style="margin-left:0mm; margin-right:0mm; text-indent:0mm;
        margin-top:1.76mm; margin-bottom:1.76mm;"><font face="Arial"><span
            style=" font-size:12pt">This works fairly well when using
            English translations and German translations. The result is
            for example that tags that were assigned to verses of an
            English translation still show up correctly for the verses
            in a German translation. This is particularly visible in
            Psalms.<br>
            <br>
            How flawed is my current approach described above?<br>
            How do other frontends do it?<br>
            Have there been plans to somehow integrate some sort of
            mapping functionality into the SWORD engine?<br>
            <br>
            Best regards,<br>
            Tobias</span></font></p>
      <div style="margin-left:18mm; margin-right:0mm; text-indent:0mm;
        margin-top:0.00mm; margin-bottom:0.00mm;" align="left"><font
          size="1" face="helvetica">
          <span style=" font-size:9pt">_______________________________________________</span></font><font
          size="2" face="Arial"><span style=" font-size:10pt">
            <br>
          </span></font><font size="1" face="helvetica"><span style="
            font-size:9pt">sword-devel mailing list: </span></font><a
          href="mailto:sword-devel@crosswire.org" moz-do-not-send="true">
          <font size="1" face="helvetica" color="#0000ff"><span style="
              font-size:9pt"><u>sword-devel@crosswire.org</u></span></font></a><font
          size="2" face="Arial">
          <span style=" font-size:10pt"><br>
          </span></font><a
          href="http://www.crosswire.org/mailman/listinfo/sword-devel"
          moz-do-not-send="true"><font size="1" face="helvetica"
            color="#0000ff"><span style=" font-size:9pt">
              <u>http://www.crosswire.org/mailman/listinfo/sword-devel</u></span></font></a><font
          size="2" face="Arial"><span style=" font-size:10pt">
            <br>
          </span></font><font size="1" face="helvetica"><span style="
            font-size:9pt">Instructions to unsubscribe/change your
            settings at above page</span></font></div>
      <div style="margin-left:9mm; margin-right:0mm; text-indent:0mm;
        margin-top:0.00mm; margin-bottom:0.00mm;" align="left"><font
          size="2" face="Arial">
          <span style=" font-size:10pt"><br>
          </span></font></div>
      <div align="left"><font size="2" face="Arial"><span style="
            font-size:10pt"><br>
          </span></font></div>
      <div align="left"><font size="2" face="Arial"><span style="
            font-size:10pt">John Dudeck</span></font></div>
      <div align="left"><font size="2" face="Arial"><span style="
            font-size:10pt">Programmer at Editions
            Cle                             Lyon, France</span></font></div>
      <div align="left"><font size="2" face="Arial"><span style="
            font-size:10pt"><a class="moz-txt-link-abbreviated" href="mailto:john.dudeck@sim.org">john.dudeck@sim.org</a>                           
            <a class="moz-txt-link-abbreviated" href="mailto:john@editionscle.com">john@editionscle.com</a></span></font></div>
      <div align="left"><font size="2" face="Arial"><span style="
            font-size:10pt">--</span></font></div>
      <div align="left"><font size="2" face="Arial"><span style="
            font-size:10pt">"The best time to be alive is when things
            look the worst." -- Dale Losch</span></font></div>
      <div align="left">  </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <pre class="moz-quote-pre" wrap="">_______________________________________________
sword-devel mailing list: <a class="moz-txt-link-abbreviated" href="mailto:sword-devel@crosswire.org">sword-devel@crosswire.org</a>
<a class="moz-txt-link-freetext" href="http://www.crosswire.org/mailman/listinfo/sword-devel">http://www.crosswire.org/mailman/listinfo/sword-devel</a>
Instructions to unsubscribe/change your settings at above page</pre>
    </blockquote>
  </body>
</html>