[sword-devel] 1.5.8 bugs

Chris Little chrislit at crosswire.org
Tue Mar 22 00:37:47 MST 2005


You're using the wrong tool. You need to use osis2mod. osis2mod is for 
Bibles and expects Bible structures. xml2gbs is for free form books that 
will go to our GenBook driver and it expects different types of 
structures. You can force a Bible through xml2gbs and it will work 
correctly, but only if you encode it like a free form book (which would 
violate best practices).

I don't plan to rewrite xml2gbs and I doubt Troy plans to rewrite 
osis2mod to use a full DOM parser. In the end, data have to be imported 
to Sword format, which means we have to handle them ourselves 
eventually. Without any specific examples, the best I can say is simply 
that I think we can manage without the added trouble of an external parser.

--Chris

Justus Piater wrote:
> "Krzysztof Bialas" <krzbia at ctm.gdynia.pl> wrote on Sun, 20 Mar 2005 15:01:02 +0100:
> 
> 
>>I've invested quite some time into developing an example osis file
>>showing off the problems with osis2mod/Sword for windows 1.5.8pre3
>>that are (in my opinion) 1.5.8 blockers. These are stated in the
>>forum message
>>http://www.crosswire.org/forums/mvnforum/viewthread?thread=274.
> 
> 
> I have converted another Bible to OSIS 2.0.1 format, and xml2gbs
> (1.5.7 Linux) crashes half-way through. If I take only parts of the
> Bible, it completes, but all verses are empty.
> 
> After running it in the debugger and looking at the source, it seems
> that the problem is due to unhandled elements or unanticipated ways of
> nesting elements.
> 
> At this point I stopped investigating because I don't think there's
> any hope of ever parsing OSIS XML correctly using an ad-hoc parser;
> OSIS is way too complex and very flexible. A clean solution would
> require that xml2gbs be rewritten to employ an external XML library
> (e.g., libxml2 from http://xmlsoft.org/).
> 
> It is not up to me to judge whether this blocks 1.5.8.
> 
> Justus
> 



More information about the sword-devel mailing list