[jsword-devel] strongs search

Mullins, Steven Steven.Mullins at dmme.virginia.gov
Fri May 16 05:30:22 MST 2008


DM,

Thanks for the tips and direction, it is much appreciated!
I'm going to work on these issues as time allows.  I may
still have to bug you with a question or two as I learn how
jsword is structured.  I'm very new to Java and object-oriented
programming in general (unless you count python).  I tend to
think and write procedurally i.e. (C, Perl and Fortran),
but will try hard to fit the paradigm of the existing code.

I'd really like to see jsword on par with BibleWorks:
http://www.bibleworks.com/ in the area of searching and
morphological analysis of greek texts.  I think with some
work we can get it there.

Steve


-----Original Message-----
From: DM Smith [mailto:dmsmith555 at yahoo.com]
Sent: Thu, May 15, 2008 4:56 PM
To: J-Sword Developers Mailing List
Subject: Re: [jsword-devel] strongs search


Mullins, Steven wrote:
> I had to delete my KJV module and reinstall it to get it 
> to work right.  Now I can now search the hebrew strongs
> just fine.  Both strong:h430 and strong:h0430 work 
> thanks to an existing regular expression matcher in 
> OSISUtil.java:
>
> strongsNumber = "strong:([GH])0*([0-9]+)";
>
> However, the greek strongs searches will not work for me,
> though I see no reason why not.
>   
There's a tool that can be used to view lucene indexes. I don't remember 
what it is called or where to find it. But that would help figure out 
what is going on.

> The LXX module is displaying strongs numbers as [xxxx] like 
> the MorphGreek module.  The xls changes to fix MorphGNT have 
> affected it. I assume that the lemma is the same as the 
> MorphGNT.  My 1.0.8 version does not have a "view source" 
> option to verify.  At least I can't find the view source
> button.
>   

ViewSource was made a hidden option. Just edit 
~/.jsword/desktop.properties Advanced.ViewSource=true (or something like 
that).

> Really the LXX module is more correct in calling the strongs
> number lemma.Strong, since it actually is.  The MorphGNT would
> be more correct if it used say lemma.Lexical, since it has
> little to do with a strongs number.
>   
This would be a good discussion for sword-devel. The prefixes have 
seemed to be a bit ad-hoc.

There are a couple of tools and examples to dig into a module:
The program o.c.j.bridge.BookExporter will dump a module into SWORD's 
imp format.
In JSword o.c.j.examples both APIExamples and BibleToOSIS can be used to 
dump the content of the Bible.


> DM, what do you suggest to differentiate between LXX and 
> MorphGNT lemmas?
>
> I was working on a code to allow searchs by the "lex:" field
> for the MorphGNT module, and using DM's helpful suggestions
> following the pattern of used for strongs numbers.  But since
> I can't get strongs to work in greek, I'm sorta stuck.  I'm
> attaching the code I have so far for the lex lemma.  I think 
> I'm going down the right track, but want to make sure.
>   
The code looks fine.
Given how arbitrary the lemma attribute is, we might want to take a page 
from the C++ developers for now.

Their approach is that the lemma has several different values in it. 
Either of the form A:B or just A.
When A = strong: we index it as a Strong's number otherwise we index it 
as a "lemma" having 1 or 2 words. So one could then search lemma:["X Y 
value"] where it was lemma="X.Y:value".

I think I'd suggest a speedup change to the different getXYZ(Element) 
methods to get everything out of an element by it's type, E.g. searching 
for <w> elements we get all Strong's numbers, all morphs and all lemmas.

My goal was feature first, then optimize. I just never got to the optimize.

When you are happy with what you want to add, send a final patch and 
I'll apply it.

Hope this helps,
    DM
> Take care,
>
> Steve


_______________________________________________
jsword-devel mailing list
jsword-devel at crosswire.org
http://www.crosswire.org/mailman/listinfo/jsword-devel



More information about the jsword-devel mailing list