lucene-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Mark Miller <>
Subject Re: score from spans
Date Tue, 11 Aug 2009 01:28:21 GMT
Hey Eran,

I've started work on this in the past - you are right, it gets 
complicated quick! Its also likely to bring with it a sizable 
performance cost.

We already have an issue in JIRA for this that is quite old:

If you get any work going, don't be shy to start posting code there, and 
perhaps you can get some additional eyes/help as you go.

I think in the end, it might have to be an optional mode, if we get the 
code produced.

- Mark

Eran Sevi wrote:
> Thanks for the answer.
> I tried to further understand the weight and score mechanism when running a
> span query search.
> I noticed that indeed the SpanScorer and SpanWeight are being called and
> some score is returned but it seems to me that these basic implementations
> are more appropriate for the basic SpanTermQuery.
> For the other types of span queries, the inner queries scores and weights
> are not taken into account - for example if I run a simple SpanOrQuery and
> boost one of it's child SpanTermQuery, the boost is not taken into account.
> It seems to me that some recursive calculation is required in order to take
> into account all the weights and scores of the span's sub queries.
> I'm trying to come up with a correct implementation for SpanOrQuery,
> SpanNearQuery, SpanNotQuery based on similiar calculations of BooleanQuery.
> Do you have a better idea on how to achieve the correct scoring? the score
> calculations are quite complex for each case of span queries so any help is
> appreciated.
> Thanks, Eran.
> On Tue, Aug 4, 2009 at 8:51 PM, Grant Ingersoll <> wrote:
>> A SpanQuery is a Query, so if you do a search for it, you will get scores.
>>  However, the mechanism is a bit complicated, b/c actually getting the Spans
>> is separate from doing the query.  I agree there could be tighter
>> integration.  However, what you could do is use Spans.skipTo to move to the
>> document you are examining in the search results.
>> -Grant
>> On Aug 2, 2009, at 11:30 AM, Eran Sevi wrote:
>> Hi,
>>> How can I get the score of a span that is the result of
>>> SpanQuery.getSpans()
>>> ? The score should can be the same for each document, but if it's unique
>>> per
>>> span, it's even better.
>>> I tried looking for a way to expose this functionality through the Spans
>>> class but it looks too complicated.
>>> I'm not even sure that by default some score calculation is even performed
>>> when using span queries.
>>> I've noticed that some calculations are made using payloads and
>>> BoostingTermQuery but the score result is used internally and can't be
>>> accessed from the Spans results.
>>> I don't want to re-run the query again using a HitCollector and since the
>>> reader is passed to getSpans, I think it should be possible to do what I
>>> want.
>>> Any help on the correct way to expose the span score will be appreciated.
>>> Thanks,
>>> Eran.
>> --------------------------
>> Grant Ingersoll
>> Search the Lucene ecosystem (Lucene/Solr/Nutch/Mahout/Tika/Droids) using
>> Solr/Lucene:
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail:
>> For additional commands, e-mail:

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message