Synonyms

Synonym Types:

  • Index-Time: Synonyms change terms in the product data.

  • Query-Time: Synonyms change terms in search queries.

  • Both: Synonyms changes terms in both.

Synonym Methods:

  • Expand: Finds terms in your data feed and expands them to include all of the other associated words or phrases (Example: wheel => rim)

  • Reduce: This method will find the term or phrase on the left and replace it with the value on the right. SearchSpring stems terms to associate things like “book” and “books”. Useful to disable stemming (example: disambiguate “printers” vs “printed”)

Common Applications:

  • Use Index-Time / Expand when synonyms are equivalent terms or phrases. Don’t worry about associating singular vs plural variations of the same word (e.g. “book” vs “books”) these are automatically associated using stemming during the indexing process. A valid example might associating a branded term like “kleenex” to “facial tissue” if you wanted to include alternative brands in the results.

  • Use Query-Time / Reduce to replace all or part of customer’s search query with something different. Example: “monster energy clothing” => “monster casual” – this will return the results for “monster casual” but still display the search query as “monster energy clothing” to the customer. This is useful when the customer’s original query doesn’t return the best results, in this case the “monster casual” matches existing category names that returns more appropriate results (casual clothing with the Monster Energy logo).

  • Use Both / Reduce to disambiguate two terms. For example, if you don't want two similar words like "running" and "run" to return the same results set we would disambiguate one of them. Normally, our search platform is smart enough to realize these two words mean the same thing, but then maybe you don't want it to make that assumption. To fix this we'd reduce "running" to "xrunningx" using both. This would replace all instances in the search index of the word "running" with "xrunningx", then when a user searched for "running" it'd replace it with "xrunningx" and return the proper results.