Solr: Multi-word synonyms
===

I'm developing a set of synonyms, where you can find some multi-word expressions, such as:

black berry => blackberry

At the analysis stage, and using the /admin/analysis.jsp tools, I can see that the results are correct.

A query such as "quiero una black berry" returns the following sequence:

The org.apache.solr.analysis.StandardTokenizerFactory {luceneMatchVersion=LUCENE_36}: 

    position	1	2	3	4
    term text	quiero	una	black	berry
    startOffset	0	7	11	17
    endOffset	6	10	16	22
    type	<ALPHANUM>	<ALPHANUM>	<ALPHANUM>	<ALPHANUM>

The org.apache.solr.analysis.SynonymFilterFactory {synonyms=lang/synonyms_es.txt, expand=false, ignoreCase=true, luceneMatchVersion=LUCENE_36}:

    position	1	2	3
    term text	quiero	una	blackberry
    type	<ALPHANUM>	<ALPHANUM>	SYNONYM
    startOffset	0	7	11
    endOffset	6	10	22

However, if I try this sentence at a "real" query, the request handler (an evolution of the edismax handler), the tokens "black" and "berry" were not replaced by "blackberry".

I've seen [here][1] that you can solve this situation by modifying the FieldQParser plugin.

Anyway, since such post was made almost 3 years ago, I'd like to know if there's some way of solving this problem inside Solr, avoiding having to expand some plugin.

Thanks.


  [1]: http://grokbase.com/t/lucene/solr-user/09a8cc8kz4/multi-word-synonyms-and-analysis-jsp-vs-real-field-analysis-query-index