String Set Matches Normalizer

The string set matches normalizer compares a value in a MATRIXX Data Container (MDC) field with a value in another MDC field. Both fields can either be a single string/phone number or a list/array of strings/phone numbers. The comparison could be an exact match, prefix match, or suffix match. If one field is an array/list and one field is a single value, then the system checks if anything in the list/array matches the single value (using the match mode). If a match is found, then the normalizer evaluates to true. It does not matter which field is the list/array and which is the single value. If both are arrays/lists, then the system checks if a value in one list/array matches any value in the other list/array.

This normalizer is based on the String Set Matches normalizer template, which uses a true/false (Boolean) algorithm to check for a match using the normalizer's defined match mode.

You can specify one of the following comparison modes in the normalizer:
  • Exact — The field values must match exactly. This is the default option.
  • Prefix — Perform case sensitive matching of the beginning of the string(s) in the first field with the prefix strings in the second field.
  • Suffix — Perform case sensitive matching of the end of the string(s) in the first field with the suffix strings in the second field.
  • Prefix Ignore Case — Perform case insensitive matching of the beginning of the string(s) in the first field with the prefix strings in the second field.
  • Suffix Ignore Case — Perform case insensitive matching of the end of the string(s) in the first field with the suffix strings in the second field.

If the first field contains a set of strings and an exact/prefix/suffix match is selected, the system loops through each item in that list to find an exact/prefix/suffix match in the set of strings defined in the second field.

Use this normalizer to set up offers and rating based on different subscriber attributes, such as current country, region, network provider, application being used, and the like. For example, you can use the string set contains normalizer to rate calls for a list of countries, based on subscriber/group customizations, using the list of international direct dialing (IDD) prefixes for those countries contained in the subscriber/group MDC. For each call, the message MDC would contain the exact dialed number. If the dialed number begins with any of the IDD prefixes listed in the normalizer string set, the call is rated accordingly.

Discount Filters

An array of filters can be configured in a rate table on a percentage discount price component so that the price component can control which purchased catalog items the percentage discount applies to. These filters can be used by a string set matches normalizer to create a filter used by a discount pricing component. The normalizer matches a single string field or an array/list field of strings in an MDC to an array/list of strings in another MDC field to determine if any of the strings in the two lists match. If a value in the discount list matches a value in the charging component list, the filter passes and the discount is applied to the charge. If multiple filters are specified, all must pass for the discount to apply. When adding or editing a field in the normalizer template, you specify whether the field source is the target purchased offer or target purchased offer catalog item of a percentage discount purchase offer.

For more information about discount filters, see the discussions about purchase package discount filters. For more information about string set matches normalizer templates, see the discussion about creating a string set matches normalizer template.