MatchUp Object:Matchcode Combinations

From Melissa Data Wiki
Jump to navigation Jump to search

← MatchUp Object


Every matchcode is composed of one or more combination of components. These columns represent different combinations of components which may detect a match between two records. A match found using any one of the combinations in a matchcode is considered a match. Programmers may think in terms of a series of OR conditions. Satisfying any one of them is considered a positive result.

MatchUp allows up to 16 different combinations of components per matchcode.

A good example of combinations would be a matchcode designed to catch last names as well as either street addresses or Post Office Box addresses.

  • Condition #1: ZIP/PC, Last Name, Street Number, Street Name
  • Condition #2: ZIP/PC, Last Name, PO Box

Such a matchcode might look like this:

Component Size 1 2
ZIP/PC 5 X X
Last Name 5 X X
Street # 4 X
Street Name 4 X
PO Box 10 X


Columns 3 through 16 have been omitted for the sake of clarity. The trick to understanding this table is to look at the vertical columns of X’s. For example, looking at column 1, there are X’s in ZIP/PC, Last Name, Street #, and Street Name, indicating the goal of condition #1 exactly. In column 2 are X’s in ZIP/PC, Last Name, and PO Box, matching condition #2.

For a more advanced example:

Component Size 1 2 3 4
ZIP/PC 5 X X X X
Last Name 5 X X
Company 10 X X
Street # 4 X X
Street Name 4 X X
PO Box 10 X X


This matchcode may produce matches if any one of following 4 conditions returns true:

  • Condition #1: ZIP/PC, Last Name, Street Number, Street Name
  • Condition #2: ZIP/PC, Last Name, PO Box
  • Condition #3: ZIP/PC, Company, Street Number, Street Name
  • Condition #4: ZIP/PC, Company, PO Box

This matchcode could be used on a list containing a mixture of both personal and company names and either street or PO Box addresses.

First Component Restrictions

MatchUp now has two deduping engines. The object will determine if one is either necessary or more efficient, and select that engine for usage. In some cases, processing will be faster if the traditional ReadWrite engine is selected because of First Component properties. These are:

  1. It must appear in every combination.
  2. It cannot use the following types of Fuzzy matching: Containment; Frequency; Fast Near; Frequency Near; Accurate Near. All others are allowed.
  3. It cannot use Initial Only matching.
  4. It cannot use One Blank Field matching.
  5. It cannot use Swap Matching.

In other situations, you may have combinations where there are no common components. An example would be:

  • Condition #1: ZIP/PC, Street Number, Street Name
  • Condition #2: ZIP/PC, PO Box
  • Condition #3: Proximity

In this case, MatchUp would determine that it needs to use its Intersecting Logic. This engine is required because there are no common components. Speed benchmarks may be surprisingly similar, but may in fact return more duplicates.