[sword-devel] Validating ThML and OSIS modules

Jonathan Morgan jonmmorgan at gmail.com
Tue Jan 6 22:03:26 MST 2009

On Tue, Jan 6, 2009 at 7:48 PM, DM Smith <dmsmith555 at yahoo.com> wrote:
> The job of osis2mod, at this point in time, is to take valid OSIS modules as
> input and to normalize that into OSIS that the SWORD engine supports. This
> normalized OSIS is then chunked into introductions and verses and stored in
> a module.
> The other job of osis2mod, is to do semantic validation of OSIS according to
> the expectations of the SWORD engine. Valid OSIS can be bad OSIS.


> I had suggested that it would be easy to replace the home grown parser with
> an industry standard parser that would do validation as it went. This was
> rejected for a variety of reasons. I don't recall them all but I seem to
> remember:
> 1) What we have works and is simple.

But it doesn't work if we have long debates about whether things are
valid or not.

> 2) What we have is home grown and we can re-license it as we see fit without
> encumbrances. Added 3-rd party software needs to allow for this relicensing.
> That is, it can't be GPL or GPL like.

That is possibly not relevant for a standalone importer (though I
suppose it probably needs to be linked to the library).

> 3) The addition of 3-rd party software needs to be pluggable (or not be
> required for the basic function of the software), not create a dependency on
> the rest of the SWORD library, be light-weight in size and performance, work
> on all platforms that osis2mod is used, .....
> I think that Xerces-C is a good fit. With a pluggable model, a user could
> supply one of their choice.
> I'd do it, but I have too many other things on my plate. One of which is a
> major change to osis2mod's handling of inter-verse material.



More information about the sword-devel mailing list