On 8/14/2018 5:35 AM, surya wrote: > The following data is getting indexed-in to our solr. > > doc1: > <name>University of Virginia </name> > doc2: > <name>Katrina Uva </name> > doc3: > <name>University of new york </name> > > synonym.txt > University of Virginia, uva > > search term: > University of Virginia > > Expected result: > doc1 > > Actual result: > doc1 and doc2 > > the second document is coming because the synonym term "uva" is matching > with doc2: Katrina Uva > Requirement: > We do not want to apply the synonym (uva) to bring the doc2 (Katie Uva)
Unless you want to write special code to change how Solr works, you cannot pick and choose to apply synonyms to some documents but not others. The synonyms are always going to apply. The synonyms you have chosen will cause this match to happen. You could instead use this format in your synonyms file for a one-way translation, but then you would not be able to do the search for the full text and match documents where "UVA" is actually used to mean the university: university of virginia => uva Multi-word synonyms don't work properly unless the 'sow' parameter is set to false. This is the default setting since 7.0. Thanks, Shawn