[sword-devel] LXX verse numbering with alphanumeric character
DM Smith
dmsmith at crosswire.org
Thu Feb 20 12:01:47 EST 2025
It’s been a long time since I looked at osis2mod, but my recollection is that it 46, 46a, 46b, 46c are all seen as verse 46 and appended in the order that they appear in the text.
osis2mod will store 46; 46 + 46a; 46 + 46a + 46b; and 46 + 46a + 46b + 46c into the data file. It does this by looking to see if 46 has content and if it does then it’ll pull it out, append the new text, write the new combined verse to the data file and then adjust the pointer to verse 46 to point to the new location in the data file.
A good way to see this is to build the module without compression and then open the data file in a text editor. mod2imp will only show what is pointed to by the index file.
David Haslam notes properly that the osisID should be of the form !a, !b, !c. I’ll add that the n attribute can be provided with n=“46”, n=“46a”, n=“46b”, n=“46c” to indicate what the verse marker should be.
In Him,
DM Smith
> On Feb 20, 2025, at 2:57 AM, Troy A. Griffitts <scribe at crosswire.org> wrote:
>
> Just a quick note:
>
> The engine parser has a 'suffix' concept so it understand John 3:16a -> John 3:16 (suffix a)
>
> I don't remember what osis2mod does, but I think it (or another of our tools, e.g., imp2vs) may join all the suffix parts of a verse together and place a literal (a), (b), (c)... at the start of the section. This is only for the benefit of the user and not anything which is separate in the engine. None of this is ideal, but just an small effort to meet these exceptions with some kind of reasoning (even if not ideal).
>
> On 2/20/25 12:28 PM, pierre amadio wrote:
>> Hi there.
>>
>> Cyrille informed me about this issue:
>> https://github.com/crosswire/xiphos/issues/1172
>>
>> According to Karl,
>> """
>> The deeper problem causing this mess is that LXX 1Kings 2 is pretty
>> braindamaged. Do mod2imp LXX > /tmp/lxx.imp and look at 1Kings 2. The
>> markup ends with a ridiculously long single verse 2:46, with nothing
>> thereafter intervening from vv. 47-71 and 3:1, then picks up normally
>> again at 3:2. Somebody botched this one pretty badly.
>> """
>>
>> In the source file used to build the module, 1Kings ends with some
>> verse that have a funny index: it contain alphanumeric entry:
>>
>> 2:46
>> 2:46a
>> 2:46b
>> 2:46c
>> ... and so on until the end of the chapter.
>>
>> And chapter 3 starts directly with verse 2
>> http://ccat.sas.upenn.edu/gopher/text/religion/biblical/lxxmorph/14.1Kings.mlxx
>>
>> It is the same on a paper version (Septuaginta, A Reader's Edition),
>> so I am assuming it is not a mistake.
>>
>> I can rebuild a LXX module with empty verses where there are missing
>> ones such as in 1Kings 3:1 (that is already the case for Odes which is
>> dealt with already. I plan to make a global check for all books and
>> chapters, just to be safe).
>>
>> What about the alphanumerical verse numbering ?
>> Right now, i simply ignore any alphabetical character when switching
>> from the imp format to the xml one:
>>
>> https://github.com/pierre-amadio/LXX/blob/main/bin/imp2xml.py#L48
>>
>> This ends up with several verse nodes having the same osisID in the
>> final xml file.
>>
>> What should be the ideal way to deal with those ?
>>
>> _______________________________________________
>> sword-devel mailing list: sword-devel at crosswire.org
>> http://crosswire.org/mailman/listinfo/sword-devel
>> Instructions to unsubscribe/change your settings at above page
> _______________________________________________
> sword-devel mailing list: sword-devel at crosswire.org
> http://crosswire.org/mailman/listinfo/sword-devel
> Instructions to unsubscribe/change your settings at above page
More information about the sword-devel
mailing list