Combining minimum match with search term associations (using the query-time expansion algorithm)

Complete the following steps to combine minimum match with search term associations using the query-time expansion algorithm.


Before beginning

  1. Review the query-time expansion algorithm topic.

  2. Enable the minimum match feature: Tuning multiple-word search result relevancy by using minimum match and phrase slop

    If you do not set a minimum match value, or if the value is set to 1, the run time query-time expansion algorithm is not used.

  3. Ensure that the search type is set to ANY, which is the default value.


Procedure

  1. Add the minMatchOption option in the following file:

    • REST-based search deployment: Search_eardir/xml/config/com.ibm.commerce.catalog-ext/wc-component.xml

      <_config:extendedconfiguration>
            <_config:configgrouping name="SearchConfiguration">
              <_config:property name="minMatchOption" value="x"/>
              <_config:property name="boostFactorForSubqueryWithMinMatch" value="y"/>
            </_config:configgrouping>
       </_config:extendedconfiguration>

    Where the minMatchOption (x) value is one of the following values:

      0
      Maintain compatibility with previous releases. Set to 0 to use the behavior in previous releases, regardless of the value of minimum match.

      1
      Always apply minimum match. Minimum match is used even when the shopper's query is modified to include single or multiple word search term associations, or both.

      If you use this option, it is recommended that you specify minimum match as a formula. For example, mm = 2<80% 6<50%. When we use a formula, the number of matching terms adjusts dynamically to compensate for the varying length of shopper's queries. The query includes all of the shopper's search terms and the corresponding search term associations.

      2
      Return search results that satisfy the minimum match condition on the shopper's search terms, and any predefined search term associations for single words within the search terms. The behavior depends on the shopper's query:

        Multiple-word search term association: Also-search for and synonyms
        Apply minimum match to the shopper's search terms, and any predefined search term associations for single words within the search terms. Return these products first. Then, return all products that match any predefined search term associations for multiple word search terms within the shopper's search terms, but do not apply minimum match to these results.

        That is, the search results page displays products that match the minimum match parameter; then, it displays products that do not match the minimum match criteria.

        Multiple-word search term association: Instead-search-for
        The query includes all of the shopper's search terms and the corresponding search term associations.. Minimum match is not used.

        No multiple-word search term associations
        Minimum match is used. That is, the query will be the same as using option 1.

      3
      Expand the result set to include all products that satisfy the shopper's search terms. Products that meet the minimum match condition are displayed first, followed by other results. This option promotes products that meet the minimum match condition without limiting the search result set. Specify minimum match as either an integer or as a formula.

      4
      If no synonyms or replacement terms are found in the shopper's query, use the same query as option 1 (Always apply minimum match). Otherwise, return search results that satisfy the minimum match condition (if set) on the shopper's search terms first, followed by products that satisfy the minimum match condition (if set) on shopper's search terms and corresponding search term associations.

    If you set the minMatchOption value to 2, 3, or 4, we can assign different boost factors to boost products in the first subquery. To do so, change the boostFactorForSubqueryWithMinMatch (y) value. The value can be any numeric value, where the larger the number, the more importance is given to the first subquery. If you do not define a boost factor value, 2 is used by default.

    See Search configuration.

  2. Restart the search server, if we are using a REST-based search deployment; or, restart the WebSphere Commerce server, if we are using a BOD-based search deployment.