Decision Table Normalizers

Normalizers take one or more attribute values and outputs normalized value(s). They can be configured using either JavaScript, STEP functions, or an option called 'Attribute Value' that simply lets you reference the value for a specific attribute.

Customer data normalizer templates are also available for those with the required license. For more information on this license, ask your system administrator.

Standard Normalizers

Standard Normalizers include:

JavaScript Function

Normalized values can be produced via JavaScript functions.

STEP Function

Normalized values can be produced via STEP functions.

Attribute Value

The Attribute Value normalizer allows users to specify a single attribute and output its value. To specify an attribute for this normalizer, click the ellipsis button () and browse or search for the desire attribute.

Customer Data Normalizers

These normalizer templates are intended for use in customer data solutions:

Address Normalizer

The Address Normalizer can produce a normalized set of addresses for use in the corresponding Address Matcher. This data is provided by the input address element attributes mapped to the Address Component Model and include: Country, Region, City, Postcode, Street, and Country ISO Code.

Note: If the postal code mapped to the corresponding standardized component model parameter is valid for the objects being compared, the decision table will output normalized values for address attributes mapped to the standardized attribute fields on the component model.

For more information on the Address Component Model, see the Address Component Model section of the Data Integration documentation here.

  1. To normalize customer address data, click the ellipsis button () in the Data column to access the configuration.

  1. Click the Add Input Parameter link, and in the popup dialog, select the input type from the dropdown.

  1. Click OK once the selection is made.

Email Normalizer

An Email Normalizer can normalize email data for use in the corresponding Email Matcher.

  1. To normalize customer email data, click the ellipsis button () in the Data column to access the configuration.

  1. For the Input Attribute parameter, click the ellipsis button () and browse or search for an email attribute to normalize.
  2. Click the Add Input Parameter link, and in the Add Input Parameter popup dialog, select the input type from the dropdown.
  1. For the Replacement Lookup Table parameter, click the ellipsis button () and select a lookup table. Typically, this is used to remove invalid email values.
  2. Click OK when finished.

Organization Name Normalizer

An Organization Name Normalizer can normalize organization name data for use in the corresponding Organization Name Matcher.

  1. To normalize organization name data, click the ellipsis button () in the Data column to access the configuration.

  1. For the Organization Name Attribute parameter, click the ellipsis button () and browse or search for an organization name attribute to normalize.
  2. Click the Add Input Parameter link, and in the Add Input Parameter popup dialog, select the input type from the dropdown.
  1. For the Replacement String Lookup Table parameter, click the ellipsis button () and select a lookup table. This is used to account for inconsistencies in organization names by defining semantically equivalent strings (especially the usage of apostrophes and quotations). For example, normalizing 's to be s would change the organization name ACME's into ACMEs. Normalizing 'n' to be and would change the organization name ACME'n'SON to ACME and SON.
  2. For the Name Split Regex parameter, enter the regex used to split the value of Organization Name Attribute into words.
  3. For the Replacement Word Lookup Table parameter, click the ellipsis button () and select a lookup table. Typically, this is used to account for the inconsistent use of common words in organization names. For example, & can be replaced by and.
  4. Click OK when finished.

Person Name Normalizer

A Person Name Normalizer can normalize name data for use in the corresponding Person Name Matcher.

  1. To normalize customer name data, click the ellipsis button () in the Data column to access the configuration.

  1. For the First Name Attribute parameter, click the ellipsis button () and browse or search for a first name attribute to normalize. Repeat this step for the Middle Name Attribute and Last Name Attribute parameters.
  2. Click the Add Input Parameter link, and in the Add Input Parameter popup dialog, select the input type from the dropdown.
  1. For the Name Split Regex parameter, enter the regex used to split the First Name, Middle Name, and Last Name values into words.
  2. For the Replacement Lookup Table parameter, click the ellipsis button () and select a lookup table. Typically, this is used to remove unwanted words from names. For example, 'Mr.,' 'Dr.,' or 'Von'.
  3. Check the Normalizer Accents box if accented characters should be normalized.
  4. Click OK when finished.

Phone Normalizer

A Phone Normalizer can normalize phone data for use in the corresponding Phone Matcher.

  1. To normalize customer phone data, click the ellipsis button () in the Data column to access the configuration.

  1. For the Input Attribute parameter, click the ellipsis button () and browse or search for a phone attribute to normalize.
  2. Click the Add Input Parameter link, and in the Add Input Parameter popup dialog, select the input type from the dropdown.
  1. For the Replacement Lookup Table parameter, click the ellipsis button () and select a lookup table. Typically, this is used to remove invalid phone values.
  2. For the Default Country ISO Code parameter, enter a two letter ISO code string.
  3. For the Main Address Input parameter, enter the ID of an Address Normalizer. The Country ISO Code value of the normalizer output is used in place of the Default ISO Code, if one exists.

Note: In order to use this parameter, write a JavaScript address normalizer that outputs a Country ISO code.

  1. Click OK when finished.

Words Normalizer

A Words Normalizer can normalize attribute data for use in the corresponding Words Matcher. Multiple attributes can be mapped to the same Normalizer. When the corresponding Words Matcher is applied, all mapped attributes will be evaluated.

  1. To add a words normalizer, click the ellipsis button () in the Data column to access the configuration.

  1. For the Input Attribute parameter, click the plus sign to create a new entry, then click the ellipsis button () and browse or search for attributes whose values should be normalized.
  1. Click the Add Input Parameter link, and in the Add Input Parameter popup dialog, select the input type from the dropdown.
  1. For the Replacement Lookup Table parameter, click the ellipsis button () and select a lookup table. Typically, this is used to remove invalid values.
  2. For the Name Split Regex parameter, enter the regex used to split the attribute values into individual words.
  3. Click OK when finished.

Customer Data JavaScript Normalizers

For especially complicated solutions, it is possible to expand the capabilities of a customer data normalizer via JavaScript. These JavaScript normalizers can be written to input the normalized values of a basic customer data normalizer(s) and manipulate the data in ways the original normalizer could not. In other words, a JavaScript normalizer inputs a set of strings / values from a basic customer data normalizer and outputs a new set of strings / values.

Note: The JavaScript normalizer should output a completely new set of strings / values, and should not overwrite existing strings / values.

These normalizers can also be built completely from scratch rather than enhancing an existing customer data normalizer.

In many situations the more complex JavaScript normalizer would be cited by a corresponding matcher, rather than the basic costumer data normalizer.

A typical customer data JavaScript normalizer complies with the following steps:

  1. Use mc.evaluate to retrieve the output of a desired normalizer of the same kind.

Note: 'mc' is a bind to the match expression context.

  1. Use an iterator to access the set of values / strings.
  2. Use a builder pattern to create new values / strings from the iterated data.
  3. Insert the new values / strings into something that can be iterated, such as a set, and return that set.

 

2019, Stibo Systems – Confidential