Have you tried the "=>' mapping instead? Something like hotel de ville => mairie might work for you.
Best Erick On Tue, Apr 10, 2012 at 1:41 AM, elisabeth benoit <elisaelisael...@gmail.com> wrote: > Hello, > > I've read several post on this issue, but can't find a real solution to my > multi-words synonyms matching problem. > > I have in my synonyms.txt an entry like > > mairie, hotel de ville > > and my index time analyzer is configured as followed for synonyms. > > <filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" > ignoreCase="true" expand="true"/> > > The problem I have is that now "mairie" matches with "hotel" and I would > only want "mairie" to match with "hotel de ville" and "mairie". > > When I look into the analyzer, I see that "mairie" is mapped into "hotel", > and words "de ville" are added in second and third position. To change > that, I tried to do > > <filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" > ignoreCase="true" expand="true" > tokenizerFactory="solr.KeywordTokenizerFactory"/> (as I read in one post) > > and I can see now in the analyzer that "mairie" is mapped to "hotel de > ville", but now when I have query "hotel de ville", it doesn't match at all > with "mairie". > > Anyone has a clue of what I'm doing wrong? > > I'm using Solr 3.4. > > Thanks, > Elisabeth