Erik Hatcher
Wed, 02 Mar 2005 03:26:33 -0800
Erik
On Mar 1, 2005, at 9:12 AM, Omar Didi wrote:
I found something kind fo weird about the way lucene interprets boolean expressions wihout parenthesis.
when i run the query A AND B OR C, it returns only the documents that have A(in other words as if the query was just the term A).
when I run the query A OR B AND C, it returns only the documents that have B AND C(as if teh query was just B AND C ). I set the default operator in my application to be AND.
can anyone explain this behavior, thanks.
-----Original Message----- From: Morus Walter [mailto:[EMAIL PROTECTED] Sent: Monday, February 28, 2005 2:40 AM To: Lucene Users List Subject: Re: help with boolean expression
Omar Didi writes:I have a problem understanding how would lucene iterpret this boolean expression : A AND B OR C .
it neither return the same count as when I enter (A AND B) OR C nor A AND (B OR C).
if anyone knows how it is interpreted i would be thankful.
thanks
A AND B OR C creates a query that requires A and B. C influcenes the score, but is neither sufficient nor required for a match.
IMO query parser is broken for queries mixing AND and OR without explicit
braces.
My favorite sample is `a AND b OR c AND d' which equals `a AND b AND c AND d'
in query parser.
I suggested a patch some time ago, but it's still pending in bugzilla. http://issues.apache.org/bugzilla/show_bug.cgi?id=25820
Don't know if it's still usable with current sources.
Morus
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]