You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Uwe Schindler (JIRA)" <ji...@apache.org> on 2010/11/11 16:21:16 UTC

[jira] Commented: (LUCENE-2754) add spanquery support for all multitermqueries

    [ https://issues.apache.org/jira/browse/LUCENE-2754?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12931040#action_12931040 ] 

Uwe Schindler commented on LUCENE-2754:
---------------------------------------

Looks good, even the generics policeman is happy (with the wrapper which is like MTQWrapperFilter! Phantastic :-)

About the nocommit and more problems related to this:

- I would remove separate boosts for wrapped and wrapper query. The wrapper should simply delegate get/setBoost(). We have other examples in Lucene that do the same (somewhere...). So the boost does not need to be set in rewrite() and toString() may not show two different boosts. toString() should not print any boost at all (only the wrapped query will do).
- The same should be done in the rewrite method, it should simply delegate. In ctor, it could set the rewrite mode initially to a span default. We should only document this.

When we respect both things, why do we need the wrapper at all? Wrapping and setting a rewrite mode is the same work. And the SpanRegExQuery in contrib could simply set the rewrite mode in the ctor (like Fuzzy or NRQ does) and maybe override toString() for nice output.

> add spanquery support for all multitermqueries
> ----------------------------------------------
>
>                 Key: LUCENE-2754
>                 URL: https://issues.apache.org/jira/browse/LUCENE-2754
>             Project: Lucene - Java
>          Issue Type: New Feature
>          Components: Search
>            Reporter: Robert Muir
>             Fix For: 4.0
>
>         Attachments: LUCENE-2754.patch
>
>
> I set fix version: 4.0, but possibly we could do this for 3.x too
> Currently, we have a special SpanRegexQuery in contrib, and issues like LUCENE-522 open for SpanFuzzyQuery.
> The SpanRegexQuery in contrib is a little messy additionally.
> For any arbitrary MultiTermQueries to work as a SpanQuery, there are only 3 requirements:
> # The un-rewritten query must extend SpanQuery so it can be included in Span clauses
> # The rewritten query should be SpanOrQuery instead of BooleanQuery
> # The rewritten term clauses should be SpanTermQueries.
> Instead of having logic like this for each query, i suggest adding two rewrite methods:
> * ScoringSpanBoolean rewrite
> * TopTermsSpanBoolean rewrite
> as a start i wrote these up, and added a SpanMultiTermQueryWrapper that can be used to wrap any multitermquery this way.
> there are a few kinks, but I think the MTQ policeman can probably help get through them.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org