lucene/contrib/queries
Mark Harwood 92d6a0ae7b Fix for a potential null-pointer-introducing bug which came about as part of the DocIdSet changes. TermsFilter no longer implemented bits(IndexReader) and the Filter base class' version of this was changed to return null.
When dropping 2.4 Lucene in as a direct replacement for 2.3.2 my client code was getting NullPointer errors - returning null was never part of the Filter.bits contract and so this could be a problem for others using this class. 

Fix is for TermsFilter to implement bits(IndexReader) - this can safely be removed in later versions because it is a deprecated method going forward.


git-svn-id: https://svn.apache.org/repos/asf/lucene/java/trunk@700815 13f79535-47bb-0310-9956-ffa450edef68
2008-10-01 15:37:05 +00:00
..
src Fix for a potential null-pointer-introducing bug which came about as part of the DocIdSet changes. TermsFilter no longer implemented bits(IndexReader) and the Filter base class' version of this was changed to return null. 2008-10-01 15:37:05 +00:00
README.txt Rename README files to uppercase letters 2008-01-10 22:38:38 +00:00
build.xml LUCENE-931: adding missing license headers to various files 2007-06-09 06:09:46 +00:00
pom.xml.template - LUCENE-908: Improvements and simplifications for how the MANIFEST file and the META-INF dir are created. 2007-08-22 23:16:48 +00:00

README.txt

This module contains a number of filter and query objects that add to core lucene.

The "MoreLikeThis" class from the "similarity" module has been copied into here.
If people are generally happy with this move then the similarity module can be deleted, or at least a 
"Moved to queries module..." note left in its place.

==== FuzzyLikeThis  - mixes the behaviour of FuzzyQuery and MoreLikeThis but with special consideration
of fuzzy scoring factors. This generally produces good results for queries where users may provide details in a number of 
fields and have no knowledge of boolean query syntax and also want a degree of fuzzy matching. The query is fast because, like
MoreLikeThis, it optimizes the query to only the most distinguishing terms.

==== BoostingQuery - effectively demotes search results that match a given query. 
Unlike the "NOT" clause, this still selects documents that contain undesirable terms, 
but reduces the overall score of docs containing these terms.


==== TermsFilter -  Unlike a RangeFilter this can be used for filtering on multiple terms that are not necessarily in 
a sequence. An example might be a collection of primary keys from a database query result or perhaps 
a choice of "category" labels picked by the end user.




Mark Harwood
25/02/2006