[sword-devel] links within genbooks

DM Smith dmsmith555 at yahoo.com
Thu Jun 16 13:56:06 MST 2005


This is a good question. And it needs to be answered.

I think the answer depends upon whether the module is encoded in OSIS, 
ThML or GBF. There may be a different standard for each of these.

Joachim, Chris and I have been discussing this very theme in other 
recent threads on this mailing list. I am working on Naves and Joachim 
is working on something else and both of us need to be able to have 
internal cross references. Both of us are working on an OSIS encoding. 
So our discussion has been limited to how it should be encoded in OSIS.

Turns out that OSIS has guidance as to how an osisRef refers to 
something in the same work or to something external to the work. 
Basically, an internal ref does not require a prefix, but an external 
one does. The internal ref would be to an osisID elsewhere in the 
document. Whether the osisID needs to be or should be physically or 
logically present in a Sword module is still undetermined. (Today, the 
index defines the osisID context and except in a few module, it is not 
present in the data)

As to whether frontends can handle it, BibleDesktop does not. It would 
require a significant change to JSword (its java port of the Sword API). 
Today JSword handles an osisRef to a list of one or more verse ranges 
containing one or more verses. The change to JSword would be to 
generalize the notion of a osisID (internally we call this a key) to be 
anything that is addressed in a module. We are working on this, but 
there is a ways to go.

I don't know if the Sword API would need to be changed to support xrefs.


Daniel Glassey wrote:

>Hi guys,
>I'm working with genbooks that want to reference other parts within
>themselves. Is there already a way to do that that frontends can all
>handle or should we design one?
>I see that BibleTime can use URIs of the form sword://Book/workname/reference
>e.g href="sword://Book/TestWork/Text/Body/Chapter 1/Section 1"
>I don't know what other frontends can use.
>Should we be trying to use something like the CCEL URI format?
>I guess what I'd like to put in is href="/Text/Body/Chapter 1/Section
>1" and the frontends will just recognise this as the current module
>and use it. Does that sound reasonable?
>It's basically up to the frontend guys to agree on something they can handle.
>sword-devel mailing list: sword-devel at crosswire.org
>Instructions to unsubscribe/change your settings at above page

More information about the sword-devel mailing list