lucene-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Erik Hatcher <>
Subject Re: Sequential match query
Date Sun, 12 Apr 2009 13:30:43 GMT

On Apr 12, 2009, at 8:15 AM, Tim Williams wrote:

> On Sun, Apr 12, 2009 at 5:56 AM, Erik Hatcher
> <> wrote:
>> On Apr 11, 2009, at 9:11 PM, Tim Williams wrote:
>>> On Sat, Apr 11, 2009 at 12:25 PM, Erick Erickson
>>> <> wrote:
>>>> That'll teach me to scan a post. The link I sent you
>>>> is still relevant, but wildcards are NOT intended to be used to
>>>> concatenate terms. You want a phrase query or a span query
>>>> for that. i.e. "A C F"~# where # is the "slop", that is, the number
>>>> of other terms allowed to appear between your desired terms.
>>>> SpanQueries are constructed programmatically, and PhraseQueries
>>>> are produced by the parser.
>>> As I understand it though, there's no way to use the queryparser to
>>> construct an *ordered* phrase query with slop (which is what I think
>>> he's after), right?  I gather that'd have to be done manually with a
>>> SpanNearQuery.  I'd love to hear that the query parser has syntax  
>>> for
>>> this though...
>> QueryParser does not create any SpanQuery's, but one can subclass
>> QueryParser and override getFieldQuery() to put in a SpanQuery  
>> instead of a
>> PhraseQuery.
> Thanks Erik, wouldn't this be an all-or-nothing replacement though?
> In other words, by creating ordered SpanNearQuery's as the override,
> wouldn't he loose the current unordered PhraseQuery+slop
> functionality?  I haven't seen a way to subclass the QueryParser to
> support both (e.g. extend the syntax)?

As always, it depends.  If the QueryParser subclass has a switch to  
toggle between SpanNearQuery and PhraseQuery it could controlled by  
the code which way to go.  But yeah, it's not currently possible to  
extend the syntax of QueryParser with a subclass.  There is a nice new  
open issue with a new query parser implementation that is vastly more  
flexible - we'll see that come in to Lucene in the near future.


To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message