You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by rm...@apache.org on 2010/10/20 04:12:58 UTC
svn commit: r1024498 - in /lucene/dev/trunk/lucene/contrib:
queryparser/src/java/org/apache/lucene/queryParser/standard/parser/
queryparser/src/test/org/apache/lucene/queryParser/standard/
xml-query-parser/ xml-query-parser/src/java/org/apache/lucene/x...
Author: rmuir
Date: Wed Oct 20 02:12:58 2010
New Revision: 1024498
URL: http://svn.apache.org/viewvc?rev=1024498&view=rev
Log:
LUCENE-2667: apply fuzzyquery's new defaults to queryparsers in contrib, too
Modified:
lucene/dev/trunk/lucene/contrib/queryparser/src/java/org/apache/lucene/queryParser/standard/parser/StandardSyntaxParser.java
lucene/dev/trunk/lucene/contrib/queryparser/src/java/org/apache/lucene/queryParser/standard/parser/StandardSyntaxParser.jj
lucene/dev/trunk/lucene/contrib/queryparser/src/test/org/apache/lucene/queryParser/standard/TestMultiFieldQPHelper.java
lucene/dev/trunk/lucene/contrib/queryparser/src/test/org/apache/lucene/queryParser/standard/TestMultiFieldQueryParserWrapper.java
lucene/dev/trunk/lucene/contrib/queryparser/src/test/org/apache/lucene/queryParser/standard/TestQPHelper.java
lucene/dev/trunk/lucene/contrib/queryparser/src/test/org/apache/lucene/queryParser/standard/TestQueryParserWrapper.java
lucene/dev/trunk/lucene/contrib/xml-query-parser/LuceneContribQuery.dtd
lucene/dev/trunk/lucene/contrib/xml-query-parser/src/java/org/apache/lucene/xmlparser/builders/FuzzyLikeThisQueryBuilder.java
Modified: lucene/dev/trunk/lucene/contrib/queryparser/src/java/org/apache/lucene/queryParser/standard/parser/StandardSyntaxParser.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/contrib/queryparser/src/java/org/apache/lucene/queryParser/standard/parser/StandardSyntaxParser.java?rev=1024498&r1=1024497&r2=1024498&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/contrib/queryparser/src/java/org/apache/lucene/queryParser/standard/parser/StandardSyntaxParser.java (original)
+++ lucene/dev/trunk/lucene/contrib/queryparser/src/java/org/apache/lucene/queryParser/standard/parser/StandardSyntaxParser.java Wed Oct 20 02:12:58 2010
@@ -378,7 +378,7 @@ public class StandardSyntaxParser implem
boolean regexp = false;
QueryNode q =null;
ParametricQueryNode qLower, qUpper;
- float defaultMinSimilarity = 0.5f;
+ float defaultMinSimilarity = org.apache.lucene.search.FuzzyQuery.defaultMinSimilarity;
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case TERM:
case REGEXPTERM:
Modified: lucene/dev/trunk/lucene/contrib/queryparser/src/java/org/apache/lucene/queryParser/standard/parser/StandardSyntaxParser.jj
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/contrib/queryparser/src/java/org/apache/lucene/queryParser/standard/parser/StandardSyntaxParser.jj?rev=1024498&r1=1024497&r2=1024498&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/contrib/queryparser/src/java/org/apache/lucene/queryParser/standard/parser/StandardSyntaxParser.jj (original)
+++ lucene/dev/trunk/lucene/contrib/queryparser/src/java/org/apache/lucene/queryParser/standard/parser/StandardSyntaxParser.jj Wed Oct 20 02:12:58 2010
@@ -378,7 +378,7 @@ QueryNode Term(CharSequence field) : {
boolean regexp = false;
QueryNode q =null;
ParametricQueryNode qLower, qUpper;
- float defaultMinSimilarity = 0.5f;
+ float defaultMinSimilarity = org.apache.lucene.search.FuzzyQuery.defaultMinSimilarity;
}
{
(
Modified: lucene/dev/trunk/lucene/contrib/queryparser/src/test/org/apache/lucene/queryParser/standard/TestMultiFieldQPHelper.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/contrib/queryparser/src/test/org/apache/lucene/queryParser/standard/TestMultiFieldQPHelper.java?rev=1024498&r1=1024497&r2=1024498&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/contrib/queryparser/src/test/org/apache/lucene/queryParser/standard/TestMultiFieldQPHelper.java (original)
+++ lucene/dev/trunk/lucene/contrib/queryparser/src/test/org/apache/lucene/queryParser/standard/TestMultiFieldQPHelper.java Wed Oct 20 02:12:58 2010
@@ -99,7 +99,7 @@ public class TestMultiFieldQPHelper exte
assertEquals("((b:one t:one)^2.0) (b:two t:two)", q.toString());
q = mfqp.parse("one~ two", null);
- assertEquals("(b:one~0.5 t:one~0.5) (b:two t:two)", q.toString());
+ assertEquals("(b:one~2.0 t:one~2.0) (b:two t:two)", q.toString());
q = mfqp.parse("one~0.8 two^2", null);
assertEquals("(b:one~0.8 t:one~0.8) ((b:two t:two)^2.0)", q.toString());
@@ -310,7 +310,7 @@ public class TestMultiFieldQPHelper exte
q = parser.parse("bla*", null);
assertEquals("f1:bla* f2:bla* f3:bla*", q.toString());
q = parser.parse("bla~", null);
- assertEquals("f1:bla~0.5 f2:bla~0.5 f3:bla~0.5", q.toString());
+ assertEquals("f1:bla~2.0 f2:bla~2.0 f3:bla~2.0", q.toString());
q = parser.parse("[a TO c]", null);
assertEquals("f1:[a TO c] f2:[a TO c] f3:[a TO c]", q.toString());
}
Modified: lucene/dev/trunk/lucene/contrib/queryparser/src/test/org/apache/lucene/queryParser/standard/TestMultiFieldQueryParserWrapper.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/contrib/queryparser/src/test/org/apache/lucene/queryParser/standard/TestMultiFieldQueryParserWrapper.java?rev=1024498&r1=1024497&r2=1024498&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/contrib/queryparser/src/test/org/apache/lucene/queryParser/standard/TestMultiFieldQueryParserWrapper.java (original)
+++ lucene/dev/trunk/lucene/contrib/queryparser/src/test/org/apache/lucene/queryParser/standard/TestMultiFieldQueryParserWrapper.java Wed Oct 20 02:12:58 2010
@@ -100,7 +100,7 @@ public class TestMultiFieldQueryParserWr
assertEquals("((b:one t:one)^2.0) (b:two t:two)", q.toString());
q = mfqp.parse("one~ two");
- assertEquals("(b:one~0.5 t:one~0.5) (b:two t:two)", q.toString());
+ assertEquals("(b:one~2.0 t:one~2.0) (b:two t:two)", q.toString());
q = mfqp.parse("one~0.8 two^2");
assertEquals("(b:one~0.8 t:one~0.8) ((b:two t:two)^2.0)", q.toString());
@@ -314,7 +314,7 @@ public class TestMultiFieldQueryParserWr
q = parser.parse("bla*");
assertEquals("f1:bla* f2:bla* f3:bla*", q.toString());
q = parser.parse("bla~");
- assertEquals("f1:bla~0.5 f2:bla~0.5 f3:bla~0.5", q.toString());
+ assertEquals("f1:bla~2.0 f2:bla~2.0 f3:bla~2.0", q.toString());
q = parser.parse("[a TO c]");
assertEquals("f1:[a TO c] f2:[a TO c] f3:[a TO c]", q.toString());
}
Modified: lucene/dev/trunk/lucene/contrib/queryparser/src/test/org/apache/lucene/queryParser/standard/TestQPHelper.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/contrib/queryparser/src/test/org/apache/lucene/queryParser/standard/TestQPHelper.java?rev=1024498&r1=1024497&r2=1024498&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/contrib/queryparser/src/test/org/apache/lucene/queryParser/standard/TestQPHelper.java (original)
+++ lucene/dev/trunk/lucene/contrib/queryparser/src/test/org/apache/lucene/queryParser/standard/TestQPHelper.java Wed Oct 20 02:12:58 2010
@@ -500,12 +500,12 @@ public class TestQPHelper extends Lucene
public void testWildcard() throws Exception {
assertQueryEquals("term*", null, "term*");
assertQueryEquals("term*^2", null, "term*^2.0");
- assertQueryEquals("term~", null, "term~0.5");
+ assertQueryEquals("term~", null, "term~2.0");
assertQueryEquals("term~0.7", null, "term~0.7");
- assertQueryEquals("term~^2", null, "term~0.5^2.0");
+ assertQueryEquals("term~^3", null, "term~2.0^3.0");
- assertQueryEquals("term^2~", null, "term~0.5^2.0");
+ assertQueryEquals("term^3~", null, "term~2.0^3.0");
assertQueryEquals("term*germ", null, "term*germ");
assertQueryEquals("term*germ^3", null, "term*germ^3.0");
@@ -517,7 +517,7 @@ public class TestQPHelper extends Lucene
assertEquals(0.7f, fq.getMinSimilarity(), 0.1f);
assertEquals(FuzzyQuery.defaultPrefixLength, fq.getPrefixLength());
fq = (FuzzyQuery) getQuery("term~", null);
- assertEquals(0.5f, fq.getMinSimilarity(), 0.1f);
+ assertEquals(2.0f, fq.getMinSimilarity(), 0.1f);
assertEquals(FuzzyQuery.defaultPrefixLength, fq.getPrefixLength());
assertQueryNodeException("term~1.1"); // value > 1, throws exception
@@ -553,9 +553,9 @@ public class TestQPHelper extends Lucene
assertWildcardQueryEquals("TE?M", false, "TE?M");
assertWildcardQueryEquals("Te?m*gerM", false, "Te?m*gerM");
// Fuzzy queries:
- assertWildcardQueryEquals("Term~", "term~0.5");
- assertWildcardQueryEquals("Term~", true, "term~0.5");
- assertWildcardQueryEquals("Term~", false, "Term~0.5");
+ assertWildcardQueryEquals("Term~", "term~2.0");
+ assertWildcardQueryEquals("Term~", true, "term~2.0");
+ assertWildcardQueryEquals("Term~", false, "Term~2.0");
// Range queries:
// TODO: implement this on QueryParser
@@ -857,10 +857,10 @@ public class TestQPHelper extends Lucene
assertQueryEquals("a:b\\\\?c", a, "a:b\\?c");
- assertQueryEquals("a:b\\-c~", a, "a:b-c~0.5");
- assertQueryEquals("a:b\\+c~", a, "a:b+c~0.5");
- assertQueryEquals("a:b\\:c~", a, "a:b:c~0.5");
- assertQueryEquals("a:b\\\\c~", a, "a:b\\c~0.5");
+ assertQueryEquals("a:b\\-c~", a, "a:b-c~2.0");
+ assertQueryEquals("a:b\\+c~", a, "a:b+c~2.0");
+ assertQueryEquals("a:b\\:c~", a, "a:b:c~2.0");
+ assertQueryEquals("a:b\\\\c~", a, "a:b\\c~2.0");
// TODO: implement Range queries on QueryParser
assertQueryEquals("[ a\\- TO a\\+ ]", null, "[a- TO a+]");
Modified: lucene/dev/trunk/lucene/contrib/queryparser/src/test/org/apache/lucene/queryParser/standard/TestQueryParserWrapper.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/contrib/queryparser/src/test/org/apache/lucene/queryParser/standard/TestQueryParserWrapper.java?rev=1024498&r1=1024497&r2=1024498&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/contrib/queryparser/src/test/org/apache/lucene/queryParser/standard/TestQueryParserWrapper.java (original)
+++ lucene/dev/trunk/lucene/contrib/queryparser/src/test/org/apache/lucene/queryParser/standard/TestQueryParserWrapper.java Wed Oct 20 02:12:58 2010
@@ -501,12 +501,12 @@ public class TestQueryParserWrapper exte
public void testWildcard() throws Exception {
assertQueryEquals("term*", null, "term*");
assertQueryEquals("term*^2", null, "term*^2.0");
- assertQueryEquals("term~", null, "term~0.5");
+ assertQueryEquals("term~", null, "term~2.0");
assertQueryEquals("term~0.7", null, "term~0.7");
- assertQueryEquals("term~^2", null, "term~0.5^2.0");
+ assertQueryEquals("term~^3", null, "term~2.0^3.0");
- assertQueryEquals("term^2~", null, "term~0.5^2.0");
+ assertQueryEquals("term^3~", null, "term~2.0^3.0");
assertQueryEquals("term*germ", null, "term*germ");
assertQueryEquals("term*germ^3", null, "term*germ^3.0");
@@ -518,7 +518,7 @@ public class TestQueryParserWrapper exte
assertEquals(0.7f, fq.getMinSimilarity(), 0.1f);
assertEquals(FuzzyQuery.defaultPrefixLength, fq.getPrefixLength());
fq = (FuzzyQuery) getQuery("term~", null);
- assertEquals(0.5f, fq.getMinSimilarity(), 0.1f);
+ assertEquals(2.0f, fq.getMinSimilarity(), 0.1f);
assertEquals(FuzzyQuery.defaultPrefixLength, fq.getPrefixLength());
assertParseException("term~1.1"); // value > 1, throws exception
@@ -554,9 +554,9 @@ public class TestQueryParserWrapper exte
assertWildcardQueryEquals("TE?M", false, "TE?M");
assertWildcardQueryEquals("Te?m*gerM", false, "Te?m*gerM");
// Fuzzy queries:
- assertWildcardQueryEquals("Term~", "term~0.5");
- assertWildcardQueryEquals("Term~", true, "term~0.5");
- assertWildcardQueryEquals("Term~", false, "Term~0.5");
+ assertWildcardQueryEquals("Term~", "term~2.0");
+ assertWildcardQueryEquals("Term~", true, "term~2.0");
+ assertWildcardQueryEquals("Term~", false, "Term~2.0");
// Range queries:
// TODO: implement this on QueryParser
@@ -850,10 +850,10 @@ public class TestQueryParserWrapper exte
assertQueryEquals("a:b\\\\?c", a, "a:b\\?c");
- assertQueryEquals("a:b\\-c~", a, "a:b-c~0.5");
- assertQueryEquals("a:b\\+c~", a, "a:b+c~0.5");
- assertQueryEquals("a:b\\:c~", a, "a:b:c~0.5");
- assertQueryEquals("a:b\\\\c~", a, "a:b\\c~0.5");
+ assertQueryEquals("a:b\\-c~", a, "a:b-c~2.0");
+ assertQueryEquals("a:b\\+c~", a, "a:b+c~2.0");
+ assertQueryEquals("a:b\\:c~", a, "a:b:c~2.0");
+ assertQueryEquals("a:b\\\\c~", a, "a:b\\c~2.0");
// TODO: implement Range queries on QueryParser
assertQueryEquals("[ a\\- TO a\\+ ]", null, "[a- TO a+]");
Modified: lucene/dev/trunk/lucene/contrib/xml-query-parser/LuceneContribQuery.dtd
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/contrib/xml-query-parser/LuceneContribQuery.dtd?rev=1024498&r1=1024497&r2=1024498&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/contrib/xml-query-parser/LuceneContribQuery.dtd (original)
+++ lucene/dev/trunk/lucene/contrib/xml-query-parser/LuceneContribQuery.dtd Wed Oct 20 02:12:58 2010
@@ -64,11 +64,8 @@ Improves on FuzzyQuery by rewarding all
<!-- Controls the level of similarity required for fuzzy variants where 1 is identical and 0.5 is that the variant contains
half of the original's characters in the same order. Lower values produce more results but may take longer to execute due to
additional IO required to read matching document ids-->
-<!ATTLIST Field minSimilarity CDATA "0.5">
+<!ATTLIST Field minSimilarity CDATA "2.0">
<!-- Controls the minimum number of characters at the start of fuzzy variant words that must exactly match the original.
- A value of zero will require no minimum and the search software will effectively scan ALL terms from a to z looking for variations.
- This can incur high CPU overhead and a prefix length of just "1" will reduce this overhead to 1/26th of the original cost (assuming
- an even distribution of letters used from the alphabet).
-->
<!ATTLIST Field prefixLength CDATA "1">
<!-- fieldName must be defined here or is taken from the most immediate parent XML element that defines a "fieldName" attribute -->
Modified: lucene/dev/trunk/lucene/contrib/xml-query-parser/src/java/org/apache/lucene/xmlparser/builders/FuzzyLikeThisQueryBuilder.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/contrib/xml-query-parser/src/java/org/apache/lucene/xmlparser/builders/FuzzyLikeThisQueryBuilder.java?rev=1024498&r1=1024497&r2=1024498&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/contrib/xml-query-parser/src/java/org/apache/lucene/xmlparser/builders/FuzzyLikeThisQueryBuilder.java (original)
+++ lucene/dev/trunk/lucene/contrib/xml-query-parser/src/java/org/apache/lucene/xmlparser/builders/FuzzyLikeThisQueryBuilder.java Wed Oct 20 02:12:58 2010
@@ -2,6 +2,7 @@ package org.apache.lucene.xmlparser.buil
import org.apache.lucene.analysis.Analyzer;
import org.apache.lucene.search.FuzzyLikeThisQuery;
+import org.apache.lucene.search.FuzzyQuery;
import org.apache.lucene.search.Query;
import org.apache.lucene.xmlparser.DOMUtils;
import org.apache.lucene.xmlparser.ParserException;
@@ -32,7 +33,7 @@ import org.w3c.dom.NodeList;
public class FuzzyLikeThisQueryBuilder implements QueryBuilder
{
int defaultMaxNumTerms=50;
- float defaultMinSimilarity=0.5f;
+ float defaultMinSimilarity=FuzzyQuery.defaultMinSimilarity;
int defaultPrefixLength=1;
boolean defaultIgnoreTF=false;
private Analyzer analyzer;