SpanQuery scoring: SpanWeight lacks a recursive traversal of the query tree
---------------------------------------------------------------------------

         Key: LUCENE-533
         URL: http://issues.apache.org/jira/browse/LUCENE-533
     Project: Lucene - Java
        Type: Bug
  Components: Search  
    Versions: 1.9    
    Reporter: Vincent Le Maout


I found the computing of weights to be somewhat different according to the 
query type (BooleanQuery versus SpanQuery) :

org.apache.lucene.search.BooleanQuery.BooleanWeight :

public BooleanWeight(Searcher searcher)
     throws IOException {
     this.similarity = getSimilarity(searcher);
     for (int i = 0 ; i < clauses.size(); i++) {
       BooleanClause c = (BooleanClause)clauses.elementAt(i);
       weights.add(c.getQuery().createWeight(searcher));
     }
   }

which looks like a recursive descent through the tree, taking into account the 
weights of all the nodes, whereas :

org.apache.lucene.search.spans.SpanWeight :

public SpanWeight(SpanQuery query, Searcher searcher)
   throws IOException {
   this.similarity = query.getSimilarity(searcher);
   this.query = query;
   this.terms = query.getTerms();

   idf = this.query.getSimilarity(searcher).idf(terms, searcher);
 }

lacks any traversal and according to what I have understood so far from the rest
of the code, only takes into account the boost of the tree root in 
SumOfSquareWeights(),
which is consistent with the resulting scores not considering the boost of the 
tree
leaves.

vintz

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to