lucene-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jeremy Hanna <>
Subject Re: Boosting Fields (in index) or Queries
Date Fri, 14 Apr 2006 00:55:37 GMT
Thanks for the tip.  I'm trying to decipher what the explanation  
tells me right now.

Btw, here is the code that I'm currently running:


QueryParser nameParser = new QueryParser("name", analyzer);
QueryParser categoryParser = new QueryParser("category", analyzer);
QueryParser descriptionParser = new QueryParser("description",  
QueryParser featuresParser = new QueryParser("features", analyzer);
QueryParser specificationsParser = new QueryParser("specifications",  
QueryParser skuParser = new QueryParser("sku", analyzer);
QueryParser modelParser = new QueryParser("model", analyzer);


BooleanQuery booleanQuery = new BooleanQuery();
Query current = null;

current = categoryParser.parse(queryString);
booleanQuery.add(current, BooleanClause.Occur.SHOULD);


hits =;
hits =, Sort.RELEVANCE);


Looking at the results, the first document in the results should  
hopefully be near the bottom and the Explanation for this document  
has a Description/Details (using the toString() on the Explanation) of:

product of:
   0.0 = sum of:
   0.0 = coord(0/7)

So I'm kind of at a loss as to what's going on.  Am I just doing  
something crazy weird in my code?  I didn't find that many examples  
out there, so I'm kind of winging it according to what I've read in  
the javadocs and what examples I could find.


On Apr 13, 2006, at 6:17 PM, Erik Hatcher wrote:

> The best recommendation is to have a look at the Explanation  
> returned from IndexSearcher.explain() for a specific query and  
> document to trace how things are being scored.  Is it possible  
> you're boosting all documents by the same amount?
> 	Erik
> On Apr 13, 2006, at 6:29 PM, Jeremy Hanna wrote:
>> I have a situation where I'm indexing database entries and have  
>> fields such as:
>> name
>> sku
>> model
>> category name
>> description
>> features
>> specifications
>> I am trying to set a priority higher for the name, category name,  
>> and description.
>> I've tried setting the fields' boost values as I've indexed the db  
>> and it seemed to have little or no result.
>> When I tried to do the queries, I started using the  
>> MultiFieldQueryParser but found that those don't have priority or  
>> boost values you can set on any of the Fields at query time.  Then  
>> I tried to have separate query parsers - one for each field.  That  
>> way I could set a boost level for each of the queries created by  
>> those query parsers.  I joined them together with a BooleanQuery  
>> and all of them set to BooleanQuery.Occur.SHOULD.  I ended up  
>> setting the features, specifications, and description to default  
>> to Query.Operator.AND and that helped, but the boost value seems  
>> to do nothing.
>> I try to set the categoryParser's query boost to 4.0f, then 8.0f,  
>> then 20.0f and have tried downgrading other queries, but the  
>> results don't change at all in their order.
>> I am using 1.9.1 and for my database I'm using hibernate to mysql  
>> 5 and ArrayLists with the bag mapping in hibernate.
>> Does anyone have any thoughts or suggestions?
>> Thanks!
>> Jeremy
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail:
>> For additional commands, e-mail:
> ---------------------------------------------------------------------
> To unsubscribe, e-mail:
> For additional commands, e-mail:

  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message