Question
How can I configure a fuzzy match rule?
Answer
Fuzzy match rule
The match engine supports fuzzy matching rules. For example, such rules can be used to correct spelling mistakes. Fuzzy matching attributes should be specified in the "fuzzy" attribute list.
Example:
"matchGroups" : [ { "uri" : "configuration/entityTypes/Individual/matchGroups/ByName" , "label" : "Automatic individual match by name" , "type" : "automatic" , "rule" : { "exact" : [ "configuration/entityTypes/Individual/attributes/FirstName" ], "fuzzy" : [ "configuration/entityTypes/Individual/attributes/LastName" ] } } ] |
This rule defines that two entities would be considered as matches if they have at least one same value of "FirstName" attribute and at least one attribute value of "LastName" attribute that would be fuzzy equals to each other. Fuzzy comparison is strongly dependent on comparator classes that are defined for particular attributes. It is not recommended to specify fuzzy attributes inside match rule without setting up comparator for it - in that case, default fuzzy comparator would be chosen by the system and the result of matching could be unpredictable.
There are the following priorities while getting match token and comparator classes for attribute:
- The mapping defined in the current match rule
- The mapping defined in the generic attribute type (in case type of attribute defined as generic attribute type)
- Default mapping for fuzzy case
Sometimes it is reasonable to ignore fuzzy attributes in tokens generation to make less number of tokens to produce.
Fuzzy list interpretation depends on logical operation defined in parent rule. If the rule has no parent, logical operation considers being "and".
References
Fuzzy match rules: https://docs.reltio.com/matchmergeconfig/fuzzymatchrule.html
General matching: https://docs.reltio.com/matchingmerging/aboutmatchingmerging.html
Comments
Please sign in to leave a comment.