# Synonym Problem

**URL:** <https://discuss.elastic.co/t/synonym-problem/74695>\
**Category:** Elasticsearch\
**Created:** [February 10, 2017, 6:04pm UTC](https://discuss.elastic.co/t/synonym-problem/74695 "2017-02-10T18:04:23Z")\
**Posts on this page:** 1\
**Showing post:** 3

<div class="post-metadata">

**Author:** ![Mark\_Harwood](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/mark_harwood/32/10538_2.png) [@Mark\_Harwood](https://discuss.elastic.co/u/Mark_Harwood)\
**Post date:** [February 13, 2017, 10:00am UTC](https://discuss.elastic.co/t/synonym-problem/74695/3 "2017-02-13T10:00:32Z")

</div>

A user's search input does not have to be modelled as a single query clause.  
Often it's beneficial to try several different interpretations of their input in a single search request using an array of queries in the `should` clause of a containing `bool` query. The more clauses that match a should array, the better the score.  
You could try (in reverse order of importance):

1. An exact-match phrase query on full-words
2. An exact match query on full words
3. An partial match query using n-grams.

Currently you are are only doing 3). If you also index minus the n-grams you can do 2) as well and give an extra boost to a match on that query using the `boost` parameter. If someone search for `irish bar` then 1) would help rank matches better too.

---

_[View the full topic](https://discuss.elastic.co/t/synonym-problem/74695)._
