On Tue, 9 Jun 2009, ashokc wrote: : When 'dismax' queries are use, where is the best place to apply boost : values/factors? While indexing by supplying the 'boost' attribute to the : field, or in solrconfig.xml by specifying the 'qf' parameter with the same : boosts? What are the advantages/disadvantages to each? What happens if both
This is discussed in the Lucene-Java FAQ... http://wiki.apache.org/lucene-java/LuceneFAQ#head-246300129b9d3bf73f597facec54ac2ee54e15d7 What is the difference between field (or document) boosting and query boosting? Index time field boosts (field.setBoost(boost)) are a way to express things like "this document's title is worth twice as much as the title of most documents". Query time boosts (query.setBoost(boost)) are a way to express "I care about matches on this clause of my query twice as much as I do about matches on other clauses of my query". Index time field boosts are worthless if you set them on every document. Index time document boosts (doc.setBoost(float)) are equivalent to setting a field boost on ever field in that document. -Hoss