[sword-devel] New Modules (front-end developers: please read)

Chris Little chrislit at crosswire.org
Wed Jul 21 18:12:43 MST 2004

Joachim Ansorg wrote:

> I was working on a new module anf run into trouble with your new module.
> The module has titles so I think osis2mod put the title tag into each verse 
> followed by the verse tag.

Correct.  We've always put titles into the verse that immediately 
follows them.

> My problem: That is nowhere supported atm.
> If I want to implement this in BibleTime I need to know if the module includes 
> the <verse> tags in the text itself or if it's a module prepared in the old 
> way.

Just check the OSISVersion entry in the .conf.  The new modules are 
tagged with OSISVersion=2.0.1.  Other OSIS modules won't have this tag 
at all and most of them would be tagged as OSISVersion=1.1.1, if we went 
back and added the metadata to them.  So you can assume that if 
OSISVersion >= 2 then ALL tags from the OSIS document are supposed to be 
in the Sword module, including <verse> tags.

> Basically I think we shouldn't add a new way to store/render verses because 
> the new modules prepared this way do not work properly in all existing 
> frontends. There's even no windows version supporting this atm.

It's not a revolutionary change.  Nothing breaks.  Everything works 
exactly the same as it always has in every existing frontend.  All you 
need to do in order to support verse tag rendering almost completely is 
to render a little number for every <verse> tag following the first one 
within a verse.  You can do this trivially with one conditional in your 
OSIS filter.

When Daniel's new versification work is completed, we will STILL store 
<verse> tags and hopefully frontends will use those to render the verse 

> Don't get me wrong, I think the new way is better than the old one but we 
> shouldn't have one more way to have markup in the modules.

Changes may be unpleasant, but they are necessary if we want to make any 
progress.  We can't simply drop the old way of rendering verse numbers 
because it is used in a couple of hundred modules that would have to be 


More information about the sword-devel mailing list