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]

Reply via email to