Talk:OSIS Genbooks

From CrossWire Bible Society
Revision as of 19:46, 15 March 2023 by Gregs650 (talk | contribs) (Internal structure of a Genbook module made using xml2gbs)

Jump to: navigation, search

Internal structure of a Genbook module made using xml2gbs

xml2gbs 1.0 is the OSIS/ThML/TEI General Book module creation tool for the SWORD Project.

The XML multilevel div element structure is converted by xml2gbs to a module internal structure that seems to deviate from the strict specification for OSIS. For example, the output of mod2imp BaptistConfession1646 contains the following IMP format references:

$$$
$$$/Confession
$$$/Confession/Introduction
$$$/Confession/Section 1
$$$/Confession/Section 2
$$$/Confession/Section 3
$$$/Confession/Section 4
$$$/Confession/Section 5
$$$/Confession/Section 6
$$$/Confession/Section 7
$$$/Confession/Section 8
$$$/Confession/Section 9
$$$/Confession/Section 10
$$$/Confession/Section 11
$$$/Confession/Section 12
$$$/Confession/Section 13
$$$/Confession/Section 14
$$$/Confession/Section 15
$$$/Confession/Section 16
$$$/Confession/Section 17
$$$/Confession/Section 18
$$$/Confession/Section 19
$$$/Confession/Section 20
$$$/Confession/Section 21
$$$/Confession/Section 22
$$$/Confession/Section 23
$$$/Confession/Section 24
$$$/Confession/Section 25
$$$/Confession/Section 26
$$$/Confession/Section 27
$$$/Confession/Section 28
$$$/Confession/Section 29
$$$/Confession/Section 30
$$$/Confession/Section 31
$$$/Confession/Section 32
$$$/Confession/Section 33
$$$/Confession/Section 34
$$$/Confession/Section 35
$$$/Confession/Section 36
$$$/Confession/Section 37
$$$/Confession/Section 38
$$$/Confession/Section 39
$$$/Confession/Section 40
$$$/Confession/Section 41
$$$/Confession/Section 42
$$$/Confession/Section 43
$$$/Confession/Section 44
$$$/Confession/Section 45
$$$/Confession/Section 46
$$$/Confession/Section 47
$$$/Confession/Section 48
$$$/Confession/Section 49
$$$/Confession/Section 50
$$$/Confession/Section 51
$$$/Confession/Section 52
$$$/Confession/Conclusion
$$$/Appendix
$$$/Appendix/Appx_Introduction
$$$/Appendix/Appx_Section 1
$$$/Appendix/Appx_Section 2
$$$/Appendix/Appx_Section 3
$$$/Appendix/Appx_Section 4
$$$/Appendix/Appx_Section 5
$$$/Appendix/Appx_Section 6
$$$/Appendix/Appx_Section 7
$$$/Appendix/Appx_Section 8
$$$/Appendix/Appx_Section 9
$$$/Appendix/Appx_Section 10
$$$/Appendix/Appx_Section 11
$$$/Appendix/Appx_Section 12
$$$/Appendix/Appx_Section 13
$$$/Appendix/Appx_Section 14
$$$/Appendix/Appx_Section 15
$$$/Appendix/Appx_Section 16
$$$/Appendix/Appx_Section 17
$$$/Appendix/Appx_Section 18
$$$/Appendix/Appx_Section 19
$$$/Appendix/Appx_Section 20
$$$/Appendix/Appx_Section 21
$$$/Appendix/Appx_Section 22

Observe that the level 1 div elements with type="majorSection" had osisID="Confession" and osisID="Appendix" in the source XML file. Likewise, the level 2 div elements with type="chapter" had osisID="Introduction" and osisID="Section 1", etc. The use of the / separator within the module structure is why this separator is required in each internal osisRef string in order to make it work as a link. David Haslam (talk) 08:49, 25 June 2020 (UTC)


The original xml file was not known to be accessible to reproduce the same result. The New Orleans Baptist Theological seminary (NOBTS) had posted the confession on the net in pdf format instead of xml/html. As a workaround, the mod2imp output and a bdt file in the module install location (/usr/share/sword/) were processed. The mod2osis utility discouraged recovering original file (xml).
Unexpected internal structure was observed for the BaptistConfession1646 module in the derived files, but in a different way. In the bdt file and mod2imp output, the table of contents was split between two <list> tags, one for each level 1 section (Confession; Appendix). The unexpected thing was that no div tag was observed. Reference 1 below predicted a
tag for the table of contents. Also, it was unclear that the table could be split across 2 <list> tags assuming reference 1 intended a single
tag.
Would it make sense to assist the NOBTS to publish an xml/html version (in place of or in parallel with PDF) that could then be read by SWORD? Individuals not belonging to a baptist church may not be the best candidates for maintaining the confession.
Rudimentary software was made to parse the derived files (bdt / mod2imp), but the parsing quits early. The early quit was assumed to be caused by not having a root tag in those files.
reference 1: OSIS Users Manual (OSIS Schema 2.1.1) By Patrick Durusau; table of contents was mentioned in section 7.5. "The div Element" and Appendix F "USFM to OSIS Mapping"
Gregs650 (talk) 23:34, 14 March 2023 (UTC)

Example OSIS Genbook - test

The example/tutorial was developed a little more, but is not yet complete as described at this link. No table of contents was observed for this module in the bishop app after installation.

--Gregs650 (talk) 22:13, 28 February 2023 (UTC)

bug report duration and focus

The subsection “Making a Genbook module” noted a Windows bug. Some details for the bug could help know when the bug report can be removed. Otherwise, the bug's duration could be too long, since no one knew to remove it (Leviticus 19:15-16).

If the bug was reported to the crosswire support page, a reference to find the description would be great. The description could help clarify if it involves an internal modification to SWORD software, or if the bug is suitable to repost on a software board/forum. --Gregs650 (talk) 19:23, 1 March 2023 (UTC)

schema

Some uncertainty about the osis/xml schema for genbooks was observed for the following reasons:

1. Three of the 4 links in the root element were "not found" when entered into a web browser. Although another page predicted that the domain www.bibletechnologies.net will no longer work, that was not observed as part of this example.

2. A schema was found elsewhere, but it was uncertain what this schema was best for. Did not know if it be used for all book types (bible text, commentary, daily devotional, lexicon / dictionary, generic books) or just one type of book. The schema elements had some acronyms or terminology to learn before guessing usage.

Maybe answers will be found by learning some existing genbook library files.

--Gregs650 (talk) 19:49, 4 March 2023 (UTC)