Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Solr Wiki" for change 
notification.

The "ExtendedDisMax" page has been changed by JanHoydahl:
http://wiki.apache.org/solr/ExtendedDisMax?action=diff&rev1=10&rev2=11

Comment:
ps2, ps3

  This parser supports full Lucene !QueryParser syntax including boolean 
operators 'AND', 'OR', 'NOT', '+' and '-', fielded search, term boosting, 
fuzzy, grouping with parens, phrase search, phrase slop, numeric ranges, 
wildcard search and more. If there is a syntax error in the input, such as 
non-existing field name or unbalanced double-quotes, the input is gracefully 
searched as literal strings.
  
  == Query Structure ==
- For each "word" in the query string, dismax builds a !DisjunctionMaxQuery 
object for that word across all of the fields in the `qf` param (with the 
appropriate boost values and a tiebreaker value set from the `tie` param).  
These !DisjunctionMaxQuery objects are then put in a !BooleanQuery with the 
minNumberShouldMatch option set according to the `mm` param.  If any other 
params are specified, a larger !BooleanQuery is wrapped arround the first 
!BooleanQuery from the `qf` options, and the other params (`bf`, `bq`, `pf`, 
`pf2`, `pf3`) are added as optional clauses.  The only complex clause comes 
from from the `pf` param, which is a single !DisjuntionMaxQuery containing the 
whole query 'phrase' against each of the `pf` fields.
+ For each "word" in the query string, dismax builds a !DisjunctionMaxQuery 
object for that word across all of the fields in the `qf` param (with the 
appropriate boost values and a tiebreaker value set from the `tie` param).  
These !DisjunctionMaxQuery objects are then put in a !BooleanQuery with the 
minNumberShouldMatch option set according to the `mm` param.  If any other 
params are specified, a larger !BooleanQuery is wrapped arround the first 
!BooleanQuery from the `qf` options, and the other params (`bf`, `bq`, `pf`, 
`pf2`, `pf3`, 'ps2', 'ps3') are added as optional clauses.  The only complex 
clause comes from from the `pf` param, which is a single !DisjuntionMaxQuery 
containing the whole query 'phrase' against each of the `pf` fields.
  
  /!\ :TODO: /!\ Need more detail on the query structure generated based on 
input ... a picture would be nice.
  
@@ -63, +63 @@

  === pf2 (Phrase bigram fields) ===
  As with 'pf' but chops the input into bi-grams, e.g. "the brown fox jumped" 
is queried as "the brown" "brown fox" "fox jumped"
  
+ === ps2 (Phrase bigram slop) ===
+ 
+ <!> [[Solr4.0]] As with 'ps' but sets default slop factor for 'pf2'. If not 
specified, 'ps' will be used.
+ 
  === pf3 (Phrase trigram fields) ===
  As with 'pf' but chops the input into tri-grams, e.g. "the brown fox jumped" 
is queried as "the brown fox" "brown fox jumped"
+ 
+ === ps3 (Phrase trigram slop) ===
+ 
+ <!> [[Solr4.0]] As with 'ps' but sets default slop factor for 'pf3'. If not 
specified, 'ps' will be used.
  
  === tie (Tie breaker) ===
  Float value to use as tiebreaker in !DisjunctionMaxQueries (should be 
something much less than 1)

Reply via email to