> Document doc3 = new Document(); > doc2.add(new Field("searchText", "LMN Takeaway", Field.Store.YES,
doc2 != doc3. Boosting by number of occurrences tends to happen automatically. See IndexSearcher.explain() as I think someone already suggested. See also javadocs for org.apache.lucene.search.Similarity. You can plug in your own implementation if you want to tweak the scoring. -- Ian. On Wed, May 16, 2012 at 10:06 PM, Meeraj Kunnumpurath <meeraj.kunnumpur...@asyska.com> wrote: > Hi, > > I have the following documents > > Document doc1 = new Document(); > doc1.add(new Field("searchText", "ABC Takeaway f...@company.com > f...@company.com", Field.Store.YES, Field.Index.ANALYZED)); > Document doc2 = new Document(); > doc2.add(new Field("searchText", "XYZ Takeaway f...@company.com", > Field.Store.YES, Field.Index.ANALYZED)); > Document doc3 = new Document(); > doc2.add(new Field("searchText", "LMN Takeaway", Field.Store.YES, > Field.Index.ANALYZED)); > > My query is > > Query q = new QueryParser(Version.LUCENE_35, "searchText", > analyzer).parse("+Takeaway f...@company.com^100"); > > This returns only doc1 and doc2. How do I need to modify the query, so that > the first term (Takeaway) is mandatory and the second one (f...@company.com) > is optional? Also, I would like to boost those documents based on the > number of occurrences of the second term. > > Regards > Meeraj --------------------------------------------------------------------- To unsubscribe, e-mail: java-user-unsubscr...@lucene.apache.org For additional commands, e-mail: java-user-h...@lucene.apache.org