[sword-devel] av11n mappings

Troy A. Griffitts scribe at crosswire.org
Tue Nov 9 12:12:00 MST 2010


Hey Konstantin,

Quick comment right now to stir discussion among frontend developers:


On 11/09/2010 05:16 PM, Konstantin Maslyuk wrote:
> 2.  some  verses  point to ranges of verses. should i change bounds in
> this case (UpperBound())?

To answer this, I believe we need to outline our use cases.  I can think
of 3:

1) A user is viewing a verse, say Ps 95:5 in the KJV, and then wants to
switch Bibles to one with an alternate v11n, say the LXX.  Typically a
frontend will want to do something like:
bible2.setKey(bible1.getKey());
displayChapter(bible2).

2) A user wants to display 4 Bibles in parallel, all with differing v11n
schemes.

3) A developer simply wants to make a call directly to the engine for
whatever purpose to see how one verse maps to another scheme, or one
range of verses maps to another (which might help in case 2).

Are there any other use cases? (I guess #3 isn't necessarily a use case,
I included it because it seems obviously necessary, but still can't
think of a practical application for this information-- except possibly
to solve use case #2)

1 seems easy for a frontend.  2 seems a nightmare so we have to assist
them as much as possible.  I haven't even started to imagine how
frontend developers feel the display logic should work.  Would be
interested to sample some of the other Bible software out there which
does this and see what they display.  But the preference is really for
the frontend develpers to decide and we need to give them the
appropriate data for what they want to build.  I can think of easy
solutions that work 95% of the time and wouldn't require likely any code
changes for the frontend developers from their current parallel display
code, but that might not be sufficient enough for some and we want to
give them an interface to assist them with their display logic.  So I
guess we need to hear from them.

> 
> 3. and if target content doesnt exist, what i should do, just set
> error?

Maybe again depends on the use cases we finalize on, but this one sounds
like we could probably go with your suggestion and set
KEYERR_OUTOFBOUNDS.  Though we might help the API user by positioning
the key to the closest location along with raising the error?  If that
even makes sense?

Troy



More information about the sword-devel mailing list