[sword-devel] Module skeleton

Troy A. Griffitts scribe at crosswire.org
Wed Nov 8 12:07:15 MST 2006


Peter,
	This is a great idea.  The non-technical challenge seems to be to get 
ESV, NASB, or NET copyright holders to allow us to use the xrefs and 
possibly the notes from the Bible.  These are the only 2 complete Bibles 
we have with this data, of which I am aware.

	A small technical note... I would suggest encoding the reference 
_within_ the <verse> segment.  This will allow us, as a first cut, to 
import the xref/note module as a 'Bible' or 'Commentary' (like the TSK) 
and set a conf flag on so as not to display it as a 'book' to the user. 
  Frontends can then choose to use this module to show xrefs and notes 
for a verse, if they'd like to.

	A second cut might be to include a new SWOptionFilter plugin to merge 
notes in with the verse data.  This would automatically show up as an 
option to the user, in all frontends that expose all engine options to 
their users (like BibleCS, QPSword, and presumably Bibletime and 
Gnomesword), and would allow them to pick which xref/notes set they 
would like to see (if we decided to allow more than one xref/note set to 
be installed).

	ACTUALLY, having thought about this a little more.  This SWOptionFilter 
could already, easily make available as a choice any installed Bible 
with xrefs and notes (e.g. "Include ESV xref/notes", "Include NASB 
xref/notes", "Include NET xref/notes").  These modules are already 
marked as including such features.  Footnotes and xrefs are already 
parsed out of these modules into SWORD 'EntryAttributes' (run 
sword/examples/cmdline/lookup on a verse in any of these Bibles to see 
what the EntryAttributes which are parsed out look like) when a verse is 
retrieved in these modules.  It would be an easy job for such a filter 
to merely .clone() the requested 'xref/note' module (so as not to 
disrupt the state of module if it is also being displayed), set it to 
the same verse, and retrieve its xref/note set from the EntryAttributes, 
then tack those to the end of the verse data.

	I guess this has just been a lot of thinking out loud.  Thanks for the 
great ideas.

		-Troy.



Peter von Kaehne wrote:
> What I imagine is the following:
> 
> I am not a programmer, but basically I thought if one creates a "Bible" in OSIS with all the references included plus uses empty slots for each verse without any actual text:
> 
> <verse OsisID="Matt.1.1">
> </verse><reference osisRef="Gen.1.3-Gen.2.5 Exod.5.6">Genesis 1:3-2:5, Exodus 5.6</reference>
> <verse OsisID="Matt.1.2"></verse>
> 
> and has a then one's own Bible in whatever language coded :
> 
> <verse OsidID="Matt.1.1>f eorfjeo erifhefh erjfeirfj[eofweorhfpt</verse>
> <verse OsidID="Matt.1.2> edwe weded 343f wedwe</verse>
> 
> It should then be possible to use a regular expressions search and replace (hence my "seconds" remark) to merge the two versions and get:
> 
> <verse OsidID="Matt.1.1>f eorfjeo erifhefh erjfeirfj[eofweorhfpt</verse>
> <reference osisRef="Gen.1.3-Gen.2.5 Exod.5.6">Genesis 1:3-2:5, Exodus 5.6</reference>
> <verse OsidID="Matt:1.2> edwe weded 343f wedwe</verse>
> 
> You see what I mean?
> 
> I think this would be an excellent way of creating study bibles with minimum effort  as we would simply have to agree on a good reference base (or not even, as the search and replace tools would be universal).
> 
> There will remain the problem of the naming of the references in the appropriate language as you explain, but this again is a matter of search and replace and not a long job for the individual module producer.
> 
> And finally there would be the job of making sword software display accurately links in the chosen locale, but this is again a separate job.
> 
> Peter
> 
> -------- Original-Nachricht --------
> Datum: Wed, 8 Nov 2006 07:44:15 -0500
> Von: DM Smith <dmsmith555 at yahoo.com>
> An: SWORD Developers\' Collaboration Forum <sword-devel at crosswire.org>
> Betreff: Re: [sword-devel] Module skeleton
> 
>> Peter,
>>
>> There are two parts to a reference the key for the reference and the  
>> text display for that key.
>>
>> In OSIS the key names (aka osisID) for Bibles are of the typically  
>> something like
>> 	Book.N.M
>>
>> Where the parts are separated by '.'
>>
>> The Book is a specific, globally, predefined name for a book of the  
>> Bible. Each book in the NT, OT and Apocrypha have predefined book  
>> names, which are in English and are often abbreviations.
>>
>> The chapter and verse are ascii numbers.
>>
>> Rather than the keys being in all different languages.
>>
>> While ThML does not constrain the book names, Sword relies upon them  
>> being discernible as an English book name, possibly abbreviated.
>> IMHO, in creating a ThML reference for a Sword module, it is best to  
>> use the OSIS Bible book names if possible.
>>
>> In OSIS a reference is of the form
>> <reference osisRef="Gen.1.3-Gen.2.5 Exod.5.6">Genesis 1:3-2:5, Exodus  
>> 5.6</reference>
>>
>> The value "Genesis 1:3-5, Exodus 5.6" is the display text for the  
>> reference.
>> Note, it is possible for it to be generated from the osisRef and thus  
>> can be generated in different languages. (Not that we do this.)
>>
>> In His Service,
>> 	DM
>>
>>
>> On Nov 8, 2006, at 7:27 AM, Peter von Kaehne wrote:
>>
>>> The TSK is nice, but its references rely on English text. What I  
>>> hope for is that parallels and other references coudl be integrated  
>>> into a module and then would work within the chosen language.
>>>
>>> Peter
>>> -------- Original-Nachricht --------
>>> Datum: Wed, 08 Nov 2006 02:13:32 -0800
>>> Von: Chris Little <chrislit at crosswire.org>
>>> An: SWORD Developers\' Collaboration Forum <sword-devel at crosswire.org>
>>> Betreff: Re: [sword-devel] Module skeleton
>>>
>>>> Why not just use the TSK module in the commentary window for
>>>> cross-references?
>>>>
>>>> --Chris
>>>>
>>>> Peter von Kaehne wrote:
>>>>> I am not sure whether this would work (and I do not think I am the
>>>>> person to implement this) but I would like to know what you think of
>>>>> this and whether someone could take this up to develop:
>>>>>
>>>>> I was thinking that it is a crying shame that we have some  
>>>>> wonderfully
>>>>> referenced Bibles in the repository, but the majority of  
>>>>> translations
>>>>> are fairly plain and offer not much beyond chapter and verse.  
>>>>> This is
>>>>> particularly an issue in the non-Western translations.
>>>>>
>>>>> I wondered whether - with OSIS being the backbone - whether it is
>>>>> feasible to create a module skeleton - references etc  - which then
>>>>> could be merged with any new modules? Rather than referencing  
>>>>> slowly and
>>>>> by hand?
>>>>>
>>>>> We could then take any simple bare-bone Bible module in any  
>>>>> language and
>>>>> create in seconds a full study version - an enormous benefit to new
>>>>> churches with limited resources.
>>>>>
>>>>> Peter
>>>>>
>>>>> _______________________________________________
>>>>> sword-devel mailing list: sword-devel at crosswire.org
>>>>> http://www.crosswire.org/mailman/listinfo/sword-devel
>>>>> Instructions to unsubscribe/change your settings at above page
>>>> _______________________________________________
>>>> sword-devel mailing list: sword-devel at crosswire.org
>>>> http://www.crosswire.org/mailman/listinfo/sword-devel
>>>> Instructions to unsubscribe/change your settings at above page
>>> -- 
>>> GMX DSL-Flatrate 0,- Euro* - Überall, wo DSL verfügbar ist!
>>> NEU: Jetzt bis zu 16.000 kBit/s! http://www.gmx.net/de/go/dsl
>>>
>>> _______________________________________________
>>> sword-devel mailing list: sword-devel at crosswire.org
>>> http://www.crosswire.org/mailman/listinfo/sword-devel
>>> Instructions to unsubscribe/change your settings at above page
>>
>> _______________________________________________
>> sword-devel mailing list: sword-devel at crosswire.org
>> http://www.crosswire.org/mailman/listinfo/sword-devel
>> Instructions to unsubscribe/change your settings at above page
> 




More information about the sword-devel mailing list