[sword-devel] Creating sword modules

Chris Little sword-devel@crosswire.org
Fri, 30 Nov 2001 17:07:30 -0800

> I don't see amoungst the list of modules the NIV study bible 
> notes. Would people consider that a worthy addition? I am 
> used to having access to this.

I guess we could add it to the set of locked modules if you want to
submit it.  Depending on where you got the text though, perhaps not.
> I don't understand the issues with regards these different 
> formats, thml, gbf, step. Perhaps if someone can just tell me 
> what to use if I were to make this a project to import it.

You're making a commentary, so use ThML.  If you were making a Bible, I
would probably suggest GBF, though you would need ThML for complex
features like lemmata or scripture references that GBF doesn't handle.

> Also what I read in the doco is that you import each verse 
> into sword verse by verse with the sword utility. Do you 
> still do that if the whole thing is in thml for example?
> Or is that only if you don't have it in thml?

Using our tools, yes.  You could write your own that just indexes the
data file contents without altering them, but we don't have such a tool
yet for ThML.

> Also for NIV study 
> bible it has introduction to each book as well as a table of 
> contents thingy.

Each module, testament, book, and chapter has a preface.  E.g. Gen 1:0
is the Genesis 1 preface.  Genesis 0:0 is the Genesis preface.  Genesis
0:1 is the OT preface.  Genesis 0:2 is the module preface.  (This is how
they're entered using addvs.  It's a hack, but it works.)

> Can someone give me a clue what tags or 
> whatever I should use for common NIVSB components?

Use standard XHTML tags for formatting.  That's XHTML, not HTML.  The
difference being, use lowercase and always close your tags.  A <p> tag
requires a </p> tag somewhere down the line.  And use <br /> instead of
<br>.  (The / closes it, the space makes it compatible with non
XHTML-compliant browsers like NS 4.)

Aside from that, read through the ThML reference for how to use ThML's
custom tags.  Generally, <scripRef> marks off scripture (see the CCEL
page for complete details, but in most cases, that alone will suffice).
If you want to link a term to a dictionary, use the <term> tag.  Maybe
set the class to the specific dictionary if there is one.  Use <sync
type="Strongs" value="G1234" /> for Strong's numbers.  Morphology and
lemmata use "morph" and "lemma" respectively in place of "Strongs".  If
you want to reference a specific book, for Strong's, morphology, or
lemmata, again set the class to that book.

And if you want to do a linefeed, remember to add a <br /> because \n is
just whitespace to XML and won't generate a linefeed.