[sword-devel] OSIS and xi:include ?

Peter von Kaehne refdoc at gmx.net
Sun Jun 4 12:13:27 EDT 2023


Can I as now near outsider suggest that this is an excellent idea. 

One not mentioned aspect is that it allows much more effective use of xml editing tools, many of which seem to choke on too large files. 

We do use the osis2mod -a switch of course and that remains an option but it feels more fragile for a variety of reasons. 

Peter

Sent from my phone. Please forgive misspellings and weird “corrections”

> On 4 Jun 2023, at 15:26, Troy A. Griffitts <scribe at crosswire.org> wrote:
> 
> Hi David,
> 
> Thank you for your proposal.  I don't think adding support for xi:include to osis2mod would be very difficult.  It should be a fairly straightforward addition.  I would be happy for support to be added.
> 
> The trade-off I see is that someone will need to maintain the top level OSIS file which includes all the subfiles.  This might be fine.  I am not sure how many OSIS source files we actually receive from publishers, and of those, how many can be imported with osis2mod without any pre-processing by us.  Though I do see the advantage to Dom if we ever leave him multiple OSIS component files to process for one module.
> 
> Thanks for the recommendation.  Anyone want to add the support?
> 
> Troy
> 
> 
>> On 6/2/23 17:16, David Haslam wrote:
>> This is something for SWORD developers to carefully consider...
>> 
>> I wonder if our use of OSIS could be "tweaked" such that the XML could make use of the xi:include element that I've seen used in one TEI project. Here's an example to whet your appetite:
>> 
>>         <!-- Genesis -->
>>          <xi:include href="books/Gn.xml"/>
>>          <!-- Exodus -->
>>          <xi:include href="books/Ex.xml"/>
>>          <!-- Leviticus -->
>>          <xi:include href="books/Lv.xml"/>
>> 
>> 
>> That's taken from the French Vulgate Glaire project (main branch).
>> NB. The GitHub repo is owned by Marjorie Burghart.
>> 
>> The top level XML file includes this line before the teiHeader element.
>> 
>> <TEI xmlns="http://www.tei-c.org/ns/1.0" xmlns:xi="http://www.w3.org/2001/XInclude">
>> 
>> We could then have a top level OSIS XML file for building the KJVA module that "includes" the OSIS XML files for KJV and KJVDC, albeit slightly trimmed for compatibility as "included" XML files.
>> 
>> NB. The suggested concept may require that most of the header would need to be removed from the two big XML files for the KJV and KJVDC, but that could be be accommodated by using the same "include" construction for both KJV and KJVDC - each having the main content wrapped in a div element with type="bookGroup", (or two such elements if we desire a separate bookGroup for the OT and NT).
>> 
>> cf. The French Vulgate Glaire project, the "included" TEI XML files each start with a line that's like this, (this example is for Obadiah)
>> 
>> <div xmlns="http://www.tei-c.org/ns/1.0" type="book" xml:id="VULGFR_Abd">
>> 
>> The equivalent in OSIS should not be too difficult to get right.
>> 
>> This would obviate having to run a script to combine two OSIS XML files into one, which is what Fr Cyrille would do otherwise.
>> 
>> Then, assuming we could have a valid top level OSIS XML file along the lines of my thinking, the question for SWORD developers is whether osis2mod would need to be changed to cope with such a construction?
>> 
>> The advantage of my proposal is that Dom would not need to change his script for module build.
>> 
>> Looking ahead, and assuming this concept can be made to work with our module tools, longer term, we could make large projects easier to manage for changes by having a separate XML file for each book div, should we so desire.
>> 
>> Aside: We might even ask Adyeths to consider having an option in u2o.py for keeping each book as a separate OSIS file, and generating a top level OSIS XML file that "includes" all the books. Each USFM file would correspond to a single OSIS file with a single div element with type="book".
>> 
>> 
>> Best regards,
>> 
>> David
>> 
>> Sent with Proton Mail secure email.
>> _______________________________________________
>> 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