Filter Types

The following sections list the types of filtering options for Dynamic Filtering and Filter by Value for both criteria and promotions:

Dynamic Filtering

Dynamic inclusion rules are more powerful than static inclusion rules and they yield better results and engagement. Consider the following:

  • Dynamic inclusion rules deliver recommendations by matching an attribute in a user’s profile parameter or in an mbox call.

    For example, you can create a “Most Popular Criteria” recommendation. From the set of returned recommendations, you can filter out any recommendations (in real time) against an attribute passed when the user accesses a page where the recommendations are displayed.

  • Use static rules to limit which items are included in the recommendation (instead of using collections).

  • You can create as many dynamic inclusion rules as necessary. The inclusion rules are joined with an AND operator. All rules must be met to include an item in a recommendation.

The following options are available for dynamic filtering:

Dynamic filtering optionDetails
Entity Attribute Matching

Filter dynamically by comparing a pool of potential recommendations items to a specific item that the users have interacted with.

Use Entity Attribute Matching when you want to show recommendations most likely to appeal to the visitor, such as the visitor’s favorite brand.

Profile Attribute Matching

Filter dynamically by comparing items (entities) against a value in the user’s profile.

Use Profile Attribute Matching when you want to show recommendations that match a value stored in the visitor’s profile, such as size or favorite brand.

Parameter Matching

Filter dynamically by comparing items (entities) against a value in the request (API or mbox).

Use Parameter Matching to recommend content that matches the page parameters or the visitor’s parameters, such as device dimensions or geo-location.

Filter by Value

The following option is available for filtering by value:

Filtering by value optionDetails
Static FilterManually enter one or more static values to filter.

Available operators

Dynamic criteria and promotions are much more powerful than static criteria and promotions and yield better results and engagement.

The following examples provide general ideas about how you can use dynamic promotions and exclusions in your marketing efforts:

OperatorExamples

equals any of

(Available with Entity Attribute Matching, Profile Attribute Matching, Parameter Matching, and Static Filter.)

Using the “equals” operator in dynamic promotions, when a visitor is viewing an item on your website (such as a product, article, or movie), you can promote other items from:

  • The same brand
  • The same category
  • The same category AND from the house brand
  • The same store

does not equal any of

(Available with Entity Attribute Matching, Profile Attribute Matching, Parameter Matching, and Static Filter.)

Using the “does not equal any of” operator in dynamic promotions, when a visitor is viewing an item on your website (such as a product, article, or movie), you can promote other items from:

  • A different TV series
  • A different genre
  • A different product series
  • A different style ID

is greater than or equal to any of

(Available with Entity Attribute Matching, Profile Attribute Matching, Parameter Matching, and Static Filter.)

Using the “is greater than or equal to any of” operator, when a visitor is viewing an item on your website (such as a product), you can promote other items that:

  • Cost the same or are more expensive

is less than or equal to any of

(Available with Entity Attribute Matching, Profile Attribute Matching, Parameter Matching, and Static Filter.)

Using the “is less than or equal to an of” operator, when a visitor is viewing an item on your website (such as a product), you can promote other items that:

  • Cost the same or are less expensive
  • Exclude items that are less expensive
contains any of (Available with Entity Attribute Matching, Profile Attribute Matching, Parameter Matching, and Static Filter.)

Using the “contains any of” operator, when a visitor is viewing an item on your website (such as a product), you can promote other items that:

  • Title contains the same brand

does not contain any of

(Available with Entity Attribute Matching, Profile Attribute Matching, Parameter Matching, and Static Filter.)

Using the “does not contain any of” operator, when a visitor is viewing an item on your website (such as a product), you can promote other items that:

  • Title does not contain a swear word

starts with any of

(Available with Entity Attribute Matching, Profile Attribute Matching, Parameter Matching, and Static Filter.)

Using the “starts with an of” operator, when a visitor is viewing an item on your website (such as a product), you can promote other items that:

  • Product name starts with iPhone

ends with any of

(Available with Entity Attribute Matching, Profile Attribute Matching, Parameter Matching, and Static Filter.)

Using the “ends with an of” operator, when a visitor is viewing an item on your website (such as a product), you can promote other items that:

  • Content ends with EN, which indicates English language

is between

(Available with Entity Attribute Matching, Profile Attribute Matching, and Parameter Matching.)

Using the “is between” operator in dynamic promotions, when a visitor is viewing an item on your website (such as a product, article, or movie), you can promote other items that are:

  • More expensive
  • Less expensive
  • Cost plus or minus 30%
  • Later episodes in the same season
  • Prior books in a series

list contains an item in

(Available with Profile Attribute Matching and Parameter Matching.)

Using the “list contains an item in” operator in profile attribute matching, when a visitor is viewing an item on your website (such as a product, article, or movie), you can promote other items that are:

  • Available in the visitor’s geography

Example: You want to recommend items that are available only in a visitor’s geographic area.

Your filter rule might look like:

availableGeographies list contains an item in user.currentGeography

Note: When using this operator, a list is expected in the right side of the rule.

list does not contain an item in

(Available with Profile Attribute Matching and Parameter Matching.)

Using the “list does not contain an item in” operator in profile attribute matching, when a visitor is viewing an item on your website (such as a product, article, or movie), you can exclude other items that are:

  • In the list of the last ten items that the visitor has viewed

Example: You do not want to promote items that the visitor has recently viewed and has shown no interest in.

Your filtering rule might look like:

id is not contained in list user.lastViewedItems

Note: When using this operator, a list is expected in the right side of the rule.

list contains an item in

(Available with Entity Attribute Matching, Profile Attribute Matching, and Parameter Matching.)

Using the “list contains an item in” operator in profile attribute matching, when a visitor is viewing an item on your website (such as a sporting event or concert), you can promote other items that are:

  • Associated with one of the visitor’s favorite teams

Example: You want to recommend games that are associated with one of the visitor’s favorite teams.

Your filtering rule might look like:

teamsPlaying list contains an item in user.favoriteTeams

Note: When using this operator, a list is expected in both sides of the rule.

list does not contain an item in

(Available with Entity Attribute Matching, Profile Attribute Matching, and Parameter Matching.)

Using the “list does not contain an item in” operator in parameter attribute matching, when a visitor is viewing an item on your website (such as a product, article, or movie), you can exclude other items that are:

  • Contained in a list of prohibited types

Example: You want to exclude items that are available to visitors that are adults, such as tobacco and alcohol.

Your filtering rule might look like:

itemType is not contained in list mbox.prohibitedTypes

Note: When using this operator, a list is expected in both sides of the rule.

list contains all items in

(Available with Entity Attribute Matching, Profile Attribute Matching, and Parameter Matching.)

Using the “list does not contain an item in” operator in profile attribute matching, when a visitor is viewing an item on your website (such as a job posting or recipe), you can promote other items that:

  • Include a set of skills
  • Include a set of required ingredients

Example 1: Suppose that a visitor has a set of skills (Java, C++, and HTML). The items in the catalog are jobs with required skills (Java and HTML). You want to ensure that the visitor’s profile contains all the required skills before recommending the job to the visitor.

Your filtering rule might look like:

profile.jobSeekerSkills contains all items in entity.requiredSkills

Example 2: Suppose that a user has a list of pantry ingredients. The recipe has a list of required ingredients. You want to ensure that the visitor’s profile contains all the required ingredients before recommending the recipe to the visitor.

Your filtering rule might look like:

profile.ingredientsInPantry contains all items in recipe.ingredientsRequired

Note: When using this operator, a list is expected in both sides of the rule.

list does not contain all items in

(Available with Entity Attribute Matching, Profile Attribute Matching, and Parameter Matching.)

Using the “list does not contain all items in” operator in entity attribute matching, when a visitor is viewing an item on your website (such as sporting event or concert), you can promote other items that:

  • Do not include a set of teams

Example: Suppose a sporting event includes two teams. The visitor’s profile indicates that this visitor does not want to view games for these teams. You want to ensure that you do not recommend a game if these teams are playing.

Your filtering rule might look like:

profile.leastfavoriteTeams does not contain all items in entity.teamsPlaying

Note: When using this operator, a list is expected in both sides of the rule.