If a declarative match rule contains exact match fields, you can configure the properties of the fields to enhance match accuracy. You can enable segment matching or null matching on exact match fields. Segment matching and null matching are mutually exclusive.
Segment matching
You can configure a declarative match rule to limit matching to specific subsets or segments of data. You can segment data based on the values of exact match fields, such as country and gender, for the match process to identify possible matches within these segments.
For example, you can segment data by country to create a subset for Japan. The match process then compares records within the Japan segment to identify matching records.
You can also define multiple segments based on multiple distinct values of an exact match field. The match process then matches records within each segment and across segments.
For example, if you enable segment matching on the Country field and define segments for Japan and France, the match process matches records in the following ways:
•Matches records within the Japan segment.
•Matches records within the France segment.
•Matches records between the Japan and France segments.
However, if you don't want to match records between the Japan and France segments, create separate declarative rules for each segment.
You can also match the data of a segment with the rest of the data. When you enable a declarative rule to match segment data with the rest of the data, the match process performs the following tasks:
•Matches the records within the segment.
•Matches the records of the segment with records that don't belong to the segment.
For example, you can match records that contain Japanese addresses with records that contain addresses from other countries, such as France and Germany.
Note: In declarative rules, if you enable segment matching for picklist fields, such as Country and City, ensure that the values aren't deleted from the associated code lists. Otherwise, the job fails.
Segment matching scenario
A custom business entity in your organization contains records of employees that belong to different departments. You want to match employee records based on their departments.
The following table shows the employee records and the departments they belong to:
Record
Employee Name
Department
Record 1
John Lee
Department 1
Record 2
John Lee
Department 1
Record 3
Tom Jones
Department 1
Record 4
Tim Arnold
Department 2
Record 5
John Lee
Department 2
Record 6
John Lee
Department 2
Record 7
Tom Rob
Department 3
Record 8
John Lee
Department 3
Record 9
John Lee
Department 3
Record 10
Tom Jones
Department 1
When you enable segment matching for the Department field and specify Department 1 as the segment value within a declarative rule, the match process matches records of employees that belong to Department 1.
The following image shows the Add Declarative Rule dialog box with segment matching enabled for the Department 1 field within a declarative rule:
The following table lists the match pairs generated based on the declarative rule:
Match Pair
Records
Match pair 1
Record 1 and Record 2
Match pair 2
Record 3 and Record 10
When you enable segment matching to match the data of a segment with other data, the match process matches the employees of Department 1 with the employees of other departments.
The following image shows the Add Declarative Rule dialog box with segment matching enabled for the Department 1 field to match employee records of other departments:
The following table lists the match pairs generated based on the declarative rule when it's enabled to match segment data with the rest of the data:
Match Pair
Records
Match pair 1
Record 1 and Record 2
Match pair 2
Record 1 and Record 5
Match pair 3
Record 1 and Record 6
Match pair 4
Record 1 and Record 8
Match pair 5
Record 1 and Record 9
Match pair 6
Record 2 and Record 5
Match pair 7
Record 2 and Record 6
Match pair 8
Record 2 and Record 8
Match pair 9
Record 2 and Record 9
Match pair 10
Record 3 and Record 10
In the preceding example, records 5 and 6 and 8 and 9 aren't matched because the department of the employees isn't Department 1.
Null matching
Use null matching to enable the exact match fields that have no values to participate in the match process. You can configure null values to match other null values or non-null values. If you don't use null matching, the fields with null values don't participate in the match process.
You can configure the following types of null matching:
•Null matches null. The match process matches two null values.
You can select one of the following options for the match process to retain match pairs that contain null values:
- Match pair with the highest score. Retains the null value match pair with the highest score in a record pair group.
When you configure a declarative rule to retain match pairs with the highest score, the match process retains the pair with the highest score and deletes the rest. When you run a match and merge job again, the records in the deleted pairs don't participate in the match process because their consolidated status is set to matched. To enable their participation in the match process, you need to reset their status.
Also, the match process marks all records that participated in matching with the name of the rule and match model that they matched with. For example, consider a match model named MODEL_A that includes a declarative rule called RULE_A, configured to retain the match pair with the highest score. If you run a match and merge job using MODEL_A, then the match process marks all records that participated in matching as RECORD1_MODEL_A_RULE_A, RECORD2_MODEL_A_RULE_A, and so forth.
If you match the same records again with MODEL_A, the match process skips RULE_A and matches them with other rules in the match model to prevent overmatching. The match process functions the same way even when you create newer versions of MODEL_A or modify the null matching configuration in RULE_A.
If you want to match the records with the same rule again, you can create a new match model and add the declarative rule to that model.
- All match pairs. Retains all the null value pairs in a record pair group, irrespective of their score. This option reduces the chances of forming individual master records from null value match pairs with lower scores. To avoid overmatching, ensure that you add fuzzy fields in addition to exact match fields.
•Null matches non-null. The match process matches a null value with a non-null value.
When a record with null values matches with multiple records with non-null values, the match process considers the record pair that has the highest match score. If multiple record pairs have the same match score, the match process considers the last updated record to form a match pair.
Null matching scenario
You have a list of client records, and some of the fields don't contain any data. In a declarative match rule, you select Person Name as a fuzzy match field and Phone Number and Extension as exact match fields. You enable null matching for the Extension field.
The following table shows the sample records that you want to match:
Record
Person Name
Phone
Extension
1
John Smith
6053128215
-
2
John Smith
6053128215
-
3
John Smith
6053128215
254
4
Jon Smiths
6053128215
254
5
Joanne Soul
6053128216
256
When you configure null matches null, the match process considers the following records as match pairs:
•Records 1 and 2
•Records 3 and 4
When you configure null matches non-null, the match process considers the following records as match pairs:
•Records 1 and 3
•Records 2 and 3
•Records 3 and 4
The person name values for records 1 and 4 do not match exactly, so the match score is less as compared to records 1 and 3. The match process considers records 1 and 3 as match pair.
Note: If a null value matches another null or a non-null value, you might be unsure if the two records are a match. To ensure that the records are a match, you can configure the merge strategy of the declarative rule as manual.