16 (+16 or -16) is the max weight on a cts:query. A value higher is the same as 16.
It really depends a lot on your data and on your query how much difference it will make. The weight gets multiplied in the log tf/idf calculation, so it is hard to say how much boosting it will do. If you have small databases, the difference will be pretty small, because, relatively speaking, the document frequency is small so the boosting will do less. The larger your database, the better tf/idf works (because the number of fragments in the database is important to the relevance calculation). -Danny -----Original Message----- From: [email protected] [mailto:[email protected]] On Behalf Of Shannon Sent: Wednesday, October 06, 2010 12:06 PM To: General Mark Logic Developer Discussion Subject: Re: [MarkLogic Dev General] relevance by element/attribute values Hi Danny, what does a weight of 16 do effectively? I've experimented with boosting scores in field and word-query configurations, and it never seemed to affect the score enough to make any actual difference to relevance-ranked results. If I remember correctly, 16 was insufficient--I would have needed 100 or 200 or more to move the rankings on title matches for example. I would love to learn more. Thanks. On Oct 6, 2010, at 2:28 PM, Danny Sokolsky wrote: > You can put weights on the cts:query constructors to affect how much a match > in each constructor contributes to score. You can also change the word query > configuration on the database to boost the weight for a particular element > (like title, for example). The word query configuration change bakes that > weight into the index. > > To accomplish the cts:query weight boost, you might create a query that > combines word-query and element-word-query with an and-query of a word-query > and an or-query (so you keep the semantics the same as just the word-query), > with a weight on the element-word-query. Something like: > > cts:and-query(( > cts:word-query($q), > cts:or-query(( > cts:element-word-query(xs:QName("title"), $q, (), 16) )) > )) > > This would boost the score of matches that occur in title elements. > > For more details about relevance, see "Relevance Scores: Understanding and > Customizing" chapter in the Search Developer's Guide. > > -Danny > > -----Original Message----- > From: [email protected] > [mailto:[email protected]] On Behalf Of Shah, Mehul > (LNG-NPV) > Sent: Wednesday, October 06, 2010 9:24 AM > To: General Mark Logic Developer Discussion > Subject: [MarkLogic Dev General] relevance by element/attribute values > > For a given query, is there a way to indicate field1 (title) has higher > weight compared to other fields (body-text) for search relevance. > i.e. > Query: "New York" > Doc1- has "New York" in <bodytext> 3 times > Doc2- has "New York" in <title> once > (where <bodytext> or <title> may have more elements within it.) > > How do I do search:search to get result in such order that Doc-2 appears > first (even though it has less hits for the query terms). > > > Thanks. > _______________________________________________ > General mailing list > [email protected] > http://developer.marklogic.com/mailman/listinfo/general > _______________________________________________ > General mailing list > [email protected] > http://developer.marklogic.com/mailman/listinfo/general _______________________________________________ General mailing list [email protected] http://developer.marklogic.com/mailman/listinfo/general _______________________________________________ General mailing list [email protected] http://developer.marklogic.com/mailman/listinfo/general
