Interesting. It is difficult to help troubleshoot without being able to see the data or the data model. I would suggest opening a Support ticket to have Reltio Customer Engineering help troubleshoot, by granting them access to the tenant data and configurations.
Original Message:
Sent: 07-29-2025 11:00
From: BALA PRASANNA SANKARAN
Subject: Survivorship - Nested: To survive two values of different type from a priority order of sources
Bryant,
Thanks for your response.
I do not have matchFieldURIs or RDM lookup added in L3 for Phone nested attribute.
Also if it would give more context. i do not have separate entities for individual, Location, Contact etc. It is just one big entity which contains all information of an individual. Individual is getting merged as expected by the rule. But only Phone #s are not surviving wrt the survivorship configured.
------------------------------
BALA PRASANNA SANKARAN
Original Message:
Sent: 07-29-2025 09:31
From: Bryant Barrenechea
Subject: Survivorship - Nested: To survive two values of different type from a priority order of sources
Bala,
What is configured for the matchFieldURIs section of the Phone Nested attribute. My guess is that you have Source as part of the matchFieldURIs list, which is not allowing the Source A phone to merge into the nested object that contains the Source C phone.
Or assuming the type is using a RDM lookup, the raw values may be different between Type E of Source A and Type E of Source C.
------------------------------
Bryant Barrenechea
Solution Architect | Professional Services
Original Message:
Sent: 07-22-2025 14:12
From: BALA PRASANNA SANKARAN
Subject: Survivorship - Nested: To survive two values of different type from a priority order of sources
Data Sources, Types
Phone # can come from Source A, B & C
Phone # can have two types D, E
Priority order of Source system A, B & C
Requirement
We would like to have Phone #s getting survived one per type (D, E) from the priority order of source system. If there is a tie, we can use LUD as a breaker.
Model:
Phone: {PhoneNumber, PhoneType}
Rule:
{
"attribute": "configuration/....PhoneType
, sourcesUriOrder: [A, B, C]
, filter: {
equals: [{
uri: "configuration/....PhoneType, value: "E"
}]}
, fallbackStrategies: [{
attribute: configuration/.....PhoneType, survivorshipStrategy: LUD
}],
, fallbackUsingCriteria: MORE_THAN_ONE
, survivorshipStrategy: SRC_SYS
}
Data:
Profile 1
Phone: [
C: {D, 123} 20250722 02.01 PM
C: {E, 124} 20250722 02.01 PM
]
Profile 2
Phone: [
C: {D, 125} 20250723 02.01 PM
C: {E, 126} 20250723 02.01 PM
]
Profile 1, 2 match merged. Survived
Phone: [
C: {D, 125} 20250723 02.01 PM
C: {E, 126} 20250723 02.01 PM
]
Profile 1 got an update
Phone: [
A: {E, 127} 20250724 02.01 PM
]
Expected:
Phone: [
A: {D, 127} 20250723 02.01 PM
C: {E, 123} 20250724 02.01 PM
]
Actual:
Phone: [
C: {D, 125} 20250723 02.01 PM
C: {E, 126} 20250723 02.01 PM
A: {E, 127} 20250724 02.01 PM
]
Could anyone clarify me what am i doing wrong?
------------------------------
BALA PRASANNA SANKARAN
LTIMINDTREE
------------------------------