[sword-devel] Versification Mapping (SWORD + JSword)

Troy A. Griffitts scribe at crosswire.org
Wed May 6 12:28:45 MST 2020


Dear John, Jamie, and Костя,

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.

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:

[scribe at localhost include]$ grep -l mapping sword/include/canon*
canon_calvin.h
canon_darbyfr.h
canon_nrsv.h
canon_segond.h
canon_synodal.h
canon_vulg.h

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.

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:

[scribe at localhost include]$ grep -L mapping sword/include/canon_*
canon_abbrevs.h <- ignore this one
canon_catholic2.h
canon_catholic.h
canon_german.h
canon_kjva.h
canon_leningrad.h
canon_luther.h
canon_lxx.h
canon_mt.h
canon_nrsva.h
canon_null.h
canon_orthodox.h
canon_synodalprot.h

http://crosswire.org/svn/sword/trunk/include/

It would be a blessing to me and everyone who uses the engine.

Serving together,

Troy


On 5/6/20 10:20 AM, John Dudeck wrote:
> Greetings,
>
> 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.
>
> 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.
>
> The verse maps can handle such things as verses that are split
> differently in different versifications, and the headings in Psalms.
>
> 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.
>
> John
>
>
> ------------------------------------------------------------------------
>
> Hi Tobias,
>
> Remember that any libraries for STEP Bible would likely be oriented
> towards JSword rather than SWORD per se.
>
> David
>
> Sent from ProtonMail Mobile
>
>
> On Wed, May 6, 2020 at 17:04, Tobias Klein <_contact at tklein.info_
> <mailto:contact at tklein.info>> wrote:
>
> Hi Jamie,
>
>
> Thanks. I had a look at the data, that’s quite complex! Even a bit
> intimidating ...
>
> I suppose STEPBible has some library functions that parse this data?
> Can you point me to any APIs?
>
> Best regards,
> Tobias
>
>
> Am 06.05.2020 um 15:04 schrieb Jamie <_araj at critos.co.uk_
> <mailto:araj at critos.co.uk>>:
>
>
> Hi Tobias,
>  
> 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 :-
>  
> _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_
>  
> If you do want to make use of it, I’d be very happy to try to answer
> any questions.
>  
> Regards,
>  
> ARA “Jamie” Jamieson
>  
>  
>  
> *From:* Tobias Klein [ _mailto:contact at tklein.info_> *Sent:* 05 May 2020 21:19
> *To:* SWORD Developers' Collaboration Forum <
> _sword-devel at crosswire.org_ <mailto:sword-devel at crosswire.org> >
> *Subject:* [sword-devel] Versification Mapping
>  
>
> Hi,
>
> I would like to ask a question that I was planning to ask for a while
> already ... 
> What's the recommended solution of mapping different versification
> systems?
>
> And what working implementations for this are already out there?
>
> 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).
>
> It's been a few years since I looked into this and I think this has
> been my source (SBL Handbook of Style)
> _https://books.google.de/books?id=M_upBwAAQBAJ&pg=PA265&lpg=PA265&dq=appendix+english/hebrew/greek+versification&source=bl&ots=CXVR0J6YrI&sig=ACfU3U3hEIPgNxmmUQW1kZJaRAtHl78L-g&hl=de&sa=X&ved=2ahUKEwilyoPUwp3pAhUrzqYKHVk4BtIQ6AEwAXoECAYQAQ#v=onepage&q=appendix%20english%2Fhebrew%2Fgreek%20versification&f=false_
>
> My current approach in Ezra Project to map between English and Hebrew
> versification is the following:
>
>   * I use "absolute verse numbers" in each book.
>   * I have mapping tables that basically define offsets for the
>     "absolute verse numbers" (see implementation _here_
>     <https://github.com/tobias-klein/ezra-project/blob/master/models/versereference.js#L177>).
>   * The versification (currently only English or Hebrew) of the
>     respective translation is detected based on some simple dynamic
>     tests when opening it.
>   * I have functions to convert between one and the other "absolute
>     verse numbers" based on the mapping.
>   * Verse Reference objects are stored both with the English and
>     Hebrew absolute verse numbers and these objects are used for
>     assigning tags, notes, etc.
>
> 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.
>
> How flawed is my current approach described above?
> How do other frontends do it?
> Have there been plans to somehow integrate some sort of mapping
> functionality into the SWORD engine?
>
> Best regards,
> Tobias
>
> _______________________________________________
> sword-devel mailing list: _sword-devel at crosswire.org_
> <mailto:sword-devel at crosswire.org>
> _http://www.crosswire.org/mailman/listinfo/sword-devel_
> Instructions to unsubscribe/change your settings at above page
>
>
> John Dudeck
> Programmer at Editions Cle                             Lyon, France
> john.dudeck at sim.org                            john at editionscle.com
> --
> "The best time to be alive is when things look the worst." -- Dale Losch
>   
>
> _______________________________________________
> sword-devel mailing list: sword-devel at crosswire.org
> http://www.crosswire.org/mailman/listinfo/sword-devel
> Instructions to unsubscribe/change your settings at above page
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.crosswire.org/pipermail/sword-devel/attachments/20200506/c360b259/attachment-0001.html>


More information about the sword-devel mailing list