Difference between revisions of "Talk:OSIS Genbooks"

From CrossWire Bible Society
Jump to: navigation, search
m (Internal structure of a Genbook module made using xml2gbs)
m (bug report cleanup)
 
(21 intermediate revisions by the same user not shown)
Line 89: Line 89:
  
  
:Unexpected internal structure was also observed for the BaptistConfession1646 module, but in a different way. The original xml file was not known to be accessible, just the mod2imp output and a bdt file in the module install location (/usr/share/sword/). The mod2osis utility discouraged recovering original file (xml).
+
:An attempt was made to analyze the status [https://sword-2.github.io/sword-wiki/CDE/CC-DA/genbooks/BaptistConfession1646/ here]. One limitation was that an original XML file was not known from the baptists. There were other formats like [https://www.nobts.edu/baptist-center-theology/baptist-confessions.html The New Orleans Baptist Theological seminary (NOBTS) pdf].
:The bdt file was easier to read than mod2imp output, because of optimum newline placement.  In the bdt file (and mod2imp), 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 <div> 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 <div> tag.
 
 
 
:Did not observe an "osisID" attribute when searching the bdt file and mod2imp output, but instead an "osisRef" attribute.
 
  
 +
:[[User:Gregs650|Gregs650]] ([[User talk:Gregs650|talk]]) 23:34, 14 March 2023 (UTC)
  
:reference 1: [http://www.crosswire.org/osis/OSIS%202.1.1%20User%20Manual%2006March2006.pdf 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"
+
== Tutorial test ==
  
:[[User:Gregs650|Gregs650]] ([[User talk:Gregs650|talk]]) 23:34, 14 March 2023 (UTC)
+
The example/tutorial for this page was tried as explained [https://sword-2.github.io/sword-wiki/CDE/CC-DA/genbooks/OSISGenbooksTutorial/ here] but was not completed successfully.
  
== Example OSIS Genbook - test ==
 
  
The example/tutorial was developed a little more, but is not yet complete as described at this [https://github.com/sword-2/library/tree/master/docs/genbooks link]. No table of contents was observed for this module in the bishop app after installation.
+
--[[User:Gregs650|Gregs650]] ([[User talk:Gregs650|talk]]) 22:13, 28 February 2023 (UTC)
  
--[[User:Gregs650|Gregs650]] ([[User talk:Gregs650|talk]]) 22:13, 28 February 2023 (UTC)
+
== bug report cleanup ==
  
== bug report duration and focus ==
+
The subsection “Making a Genbook module” noted a Windows bug. Matthew 18:15-17 might be an option to handle a new bug. Bugs already circulating on the net maybe don't count for Matthew 18.
  
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).
+
[https://stackoverflow.com/questions/8598354/why-is-msvc10-ignoring-my-pragma-warningdisable-4251 This] article reported an issue already circulating about a bunch of warnings for a certain compiler due to the following lines of code below. Was the reference to this existing bug/issue?
  
If the bug was reported to the crosswire [http://crosswire.org/sword/support/index.jsp 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.
+
<pre>
 +
#ifdef _MSC_VER
 +
    #pragma warning( disable: 4251)
 +
#endif
 +
</pre>
 
--[[User:Gregs650|Gregs650]] ([[User talk:Gregs650|talk]]) 19:23, 1 March 2023 (UTC)
 
--[[User:Gregs650|Gregs650]] ([[User talk:Gregs650|talk]]) 19:23, 1 March 2023 (UTC)
  
== schema ==
+
== Source code analysis for xml2gbs ==
 
 
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 [https://wiki.crosswire.org/OSIS_211_CR#Bible_Technologies_Group page] predicted that the domain www.bibletechnologies.net will no longer work, that was not observed as part of this example.
 
 
 
2. A [http://www.crosswire.org/osis/osisCore.2.1.1.xsd 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.
+
The source code for this utility was being analyzed [https://sword-2.github.io/sword-wiki/CDE/CP-Computational_Problems/utilities/xml2gbs/html/index.html here]. The purpose was to solve the computational problem of why custom modules and the tutorial had not loaded successfully to a SWORD app.  
  
 
--[[User:Gregs650|Gregs650]] ([[User talk:Gregs650|talk]]) 19:49, 4 March 2023 (UTC)
 
--[[User:Gregs650|Gregs650]] ([[User talk:Gregs650|talk]]) 19:49, 4 March 2023 (UTC)

Latest revision as of 21:13, 9 June 2023

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)


An attempt was made to analyze the status here. One limitation was that an original XML file was not known from the baptists. There were other formats like The New Orleans Baptist Theological seminary (NOBTS) pdf.
Gregs650 (talk) 23:34, 14 March 2023 (UTC)

Tutorial test

The example/tutorial for this page was tried as explained here but was not completed successfully.


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

bug report cleanup

The subsection “Making a Genbook module” noted a Windows bug. Matthew 18:15-17 might be an option to handle a new bug. Bugs already circulating on the net maybe don't count for Matthew 18.

This article reported an issue already circulating about a bunch of warnings for a certain compiler due to the following lines of code below. Was the reference to this existing bug/issue?

#ifdef _MSC_VER
     #pragma warning( disable: 4251)
#endif

--Gregs650 (talk) 19:23, 1 March 2023 (UTC)

Source code analysis for xml2gbs

The source code for this utility was being analyzed here. The purpose was to solve the computational problem of why custom modules and the tutorial had not loaded successfully to a SWORD app.

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