Hello,
You can try something like below (assuming DateOfBirth is a date type attribute) -
The following rule has a 2 year threshold for years, 11months threshold for months and 20days threshold for days. Meaning -
02/01/1986 is a match with 11/02/1988 but is not a match with 01/02/1989. You can try adjusting the threshold as per your needs. or you can also try
ExactNumberMatchToken with a BasicStringComparator if you need the years to be in exact match, or have the threshold as 0 for years.
Let me know if this has helped.
{
"uri": "configuration/entityTypes/Individual/matchGroups/Rule1B",
"label": "Fuzzy(DoB)",
"type": "suspect",
"scope": "ALL",
"useOvOnly": "true",
"rule": {
"matchTokenClasses": {
"mapping": [
{
"attribute": "configuration/entityTypes/Individual/attributes/DoB",
"parameters": [
{
"parameter": "groups",
"values": [
{
"classParams": {
"threshold": "2"
},
"pattern": "\\d{4}+",
"className": "com.reltio.match.token.RangeNumericMatchToken"
},
{
"classParams": {
"threshold": "11"
},
"pattern": "\\-(\\d{2})\\-",
"className": "com.reltio.match.token.RangeNumericMatchToken"
},
{
"classParams": {
"threshold": "20"
},
"pattern": "\\-(\\d{2})$",
"className": "com.reltio.match.token.RangeNumericMatchToken"
}
]
}
],
"class": "com.reltio.match.token.CustomMatchToken"
}
]
},
"comparatorClasses": {
"mapping": [
{
"attribute": "configuration/entityTypes/Individual/attributes/DoB",
"parameters": [
{
"parameter": "groups",
"values": [
{
"classParams": {
"threshold": "2"
},
"pattern": "\\d{4}+",
"className": "com.reltio.match.comparator.RangeNumericComparator"
},
{
"classParams": {
"threshold": "11"
},
"pattern": "\\-(\\d{2})\\-",
"className": "com.reltio.match.comparator.RangeNumericComparator"
},
{
"classParams": {
"threshold": "20"
},
"pattern": "\\-(\\d{2})$",
"className": "com.reltio.match.comparator.RangeNumericComparator"
}
]
}
],
"class": "com.reltio.match.comparator.CustomComparator"
}
]
},
"and": {
"fuzzy": [
"configuration/entityTypes/Individual/attributes/DoB"
]
}
},
"scoreStandalone": 10,
"scoreIncremental": 5
}
------------------------------
Ranadip Das
------------------------------
Original Message:
Sent: 11-25-2021 15:10
From: Michelle Popovits
Subject: Match rules for date parts or ranges
Hi folks,
I am just now getting around to delving into match rules in preparation for making my first change to our set of match rules.
I am part way through doing some reading of the FAQ's that Joel wrote on matching and plan to read all the FAQ stuff to make sure I have a good general knowledge of matching in Reltio.
While I'm working on that I wanted to put a question out there for something that doesn't seem obvious to me and there are no similar examples in our tenant rules config and so maybe I could get some direction (or perhaps a similar example?).
In regards to some of our rules for party entity where we include a match on a date of birth. If I wanted to break down how that rule works and instead of matching on the whole date...can I match in different/partial ways? We've noticed on quite a number of situations we'll have dates where the month and year are not matching but the year is. Sometimes the month and day values are reversed and some times the day values are just a few days off and in another situation I saw that the month and day was set to 01/01 (jan 1) where as the actual date was somewhere in April. I saw this variety on just a few that cropped up while working on another issue (bulk update) and these dates kept preventing an expected match from happening.
Depending on the degree of tightness of the overall rule...there may be situations where I might just want to say if the year matches then we're good...cuz the rest of the rule has enough stuff to make it safe. In other situations I imaging that if the rest of the rule isn't as tight...but the year and month are reversed or just a few days off (with the same year) then that could be a reasonable match.
These are just ideas that I'm brainstorming about as I go about my reading on the subject. Next thing will be to understand what Reltio is capable of and what approaches could be used (good, better, best?).
------------------------------
Michelle Popovits
Empire Life
------------------------------