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

Atri Sharma commented on LUCENE-8769:
-------------------------------------

Thinking more about this, I think what can be done is:

 

1) Introduce NOT semantics by translating NOT (a, b) to (-infinity, a) AND (b, 
infinity)

2) Introduce a RangeClause which contains a bunch of ranges and associated AND 
and NOT clauses (not OR). Each RangeClause will be independently executed, and 
then the final result then ANDed or ORed. For eg:

 

(a AND B) OR (c NOT d) converts to two RangeClauses: \{a, b, AND}, \{c, d, 
NOT}, where the RangeClauses are connected by OR, so the independent results of 
both clauses are then ORed to give final result.

 

Does this seem useful and a doable approach?

> Range Query Type With Logically Connected Ranges
> ------------------------------------------------
>
>                 Key: LUCENE-8769
>                 URL: https://issues.apache.org/jira/browse/LUCENE-8769
>             Project: Lucene - Core
>          Issue Type: Improvement
>            Reporter: Atri Sharma
>            Priority: Major
>         Attachments: LUCENE-8769.patch, LUCENE-8769.patch, LUCENE-8769.patch
>
>
> Today, we visit BKD tree for each range specified for PointRangeQuery. It 
> would be good to have a range query type which can take multiple ranges 
> logically ANDed or ORed.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to