Maybe you have a synonym in the title field? Or maybe some stemming anomaly?
Try using the Solr admin analyzer and enter the query text for the title
field and see how it analyzes.
In any case, the explain is clearing saying that titolo:trent was a match.
Regardless of what source text you gave for that field, one of the terms was
filtered to be "trent".
-- Jack Krupansky
-----Original Message-----
From: mattia.martine...@gmail.com
Sent: Monday, August 27, 2012 9:19 AM
To: solr-user@lucene.apache.org
Subject: Understanding SOLR search results
Hi.
I get some strange results for one query from SOLR.
This is an example query:
<str name="q">
(titolo:trenti OR sommario:trenti OR occhiello:trenti OR testo:trenti)
</str>
In the results I have this document:
<result name="response" numFound="1" start="0" maxScore="6.5818048">
<doc>
<float name="score">6.5818048</float>
<str name="id">503af94e0c342</str>
<str name="occhiello">IL PROGETTO.......... (no word "tren" in
"occhiello" field) </str>
<str name="sommario"/>
<str name="sottotitolo">
C'รจ la concessione edilizia. Gli islamici...
</str> (no word "tren" in "sottotitolo" field).
<str name="testo">
La fine del ramadan, pochi giorni fa.......
</str> (no word "tren" in "testo" field).
<str name="titolo">Moschea in viale.....</str> (no word "tren" in
"titolo" field).
</doc>
</result>
This document does not have the word "tren" in any of the fields
titolo, occhiello or testo, but:
<lst name="highlighting">
<lst name="503af94e0c342"/>
</lst>
So, as I can see, this document was selected for the field "id". This
is the debug:
<lst name="explain">
<str name="503af94e0c342">
6.5818048 = (MATCH) sum of: 6.3718405 = (MATCH)
weight(id:503af94e0c342 in 48107), product of: 0.57440555 =
queryWeight(id:503af94e0c342), product of: 11.09293 = idf(docFreq=1,
maxDocs=48343) 0.05178123 = queryNorm 11.09293 = (MATCH)
fieldWeight(id:503af94e0c342 in 48107), product of: 1.0 =
tf(termFreq(id:503af94e0c342)=1) 11.09293 = idf(docFreq=1,
maxDocs=48343) 1.0 = fieldNorm(field=id, doc=48107) 0.20996419 =
(MATCH) product of: 0.83985674 = (MATCH) sum of: 0.83985674 = (MATCH)
weight(titolo:trent in 48107), product of: 0.34054396 =
queryWeight(titolo:trent), product of: 6.5765905 = idf(docFreq=182,
maxDocs=48343) 0.05178123 = queryNorm 2.4662213 = (MATCH)
fieldWeight(titolo:trent in 48107), product of: 1.0 =
tf(termFreq(titolo:trent)=1) 6.5765905 = idf(docFreq=182,
maxDocs=48343) 0.375 = fieldNorm(field=titolo, doc=48107) 0.25 =
coord(1/4)
</str>
</lst>
The field "id" is an indexed string field:
<field name="id" type="string" indexed="true" stored="true" required="true"
/>
Could you help me to understand this behavior well, please?
Thank you very much!
Bye,
Mattia.