Paul Elschot wrote:

                 <snip>

The goal(s) I am trying to accomplish is rather specific I think, so I imagine the use of my hacking is rather limited (i.e. just to me).

At the moment my code:

  * parses the search text (i.e. user entered query)
Are you using QueryParser? If so, you'll also want to account for BooleanQuery, recursively.

The surround parser can create both boolean queries and span queries.

Sean, as you seem to prefer not to use the surround syntax, do you think
this syntax could be improved somehow? I recall trying to make it simpler,
but when I made it I was not able to do so.
Paul, I think the surround syntax is very logical, and looks quite powerful. From my perspective, it is the right fit syntax for the job. My main issue was probably lack of understanding. I decided to stick with the tool I've gained a little understanding over now.

When I looked at using surround queries, I believe I got stuck finding access to the spans information. I was pressed for time, and only looked it over for a couple of hours. A good portion of that was setup time. I probably missed some of the more obvious points, so I will go back and look over the surround code to see how unencumbered by the thought process I was when I decided to reinvent my wheel.

Also, PhraseQuery is more efficient than a combination of SpanTermQuery,
SpanOrQuery and SpanNearQuery, so perhaps PhraseQuery should have
a getSpans() method so it could be used as a SpanQuery, too.
This intrigues me. I know I don't understand Lucene past the basics, so I'm a little lost on the implications of your suggestion. My impression was (and still is) that PhraseQuery is a significantly different implementation from the SpanQuery family. Is it rather straightforward to implement getSpans() for a PhraseQuery? Granted, I seem to have missed that Surround is based on SpanQueries, so it looks like I need to spend some more time getting my head straight on these topics.

Regards,
Paul Elschot
Thanks for your comments,

Sean



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to