Why do I see two different values for an attribute for the same source on a crosswalk when I am using LUD survivorship?

Question

We are seeing 2 different values come across on the Financials WAM attribute from the same source.

 

mceclip0.png

 

There are two values for this entity.

 "FinancialsWAM": [
            {
"type": "configuration/entityTypes/Organization/attributes/FinancialsWAM",
"ov": true,
"value": "1",
"uri": "entities/19kahYjU/attributes/FinancialsWAM/Sb4iM5Ia"
            },
            {
"type": "configuration/entityTypes/Organization/attributes/FinancialsWAM",
"ov": true,
"value": "0",
"uri": "entities/19kahYjU/attributes/FinancialsWAM/2fjmdCbCe"
            }
        ],

The configuration has been defined for the FinancialsWAM is defined a Regency with cardinality defined as "no more than 1 value"

  {
"label": "Financials WAM",
"name": "FinancialsWAM",
"type": "Integer",
"hidden": false,
"important": false,
"system": false,
"searchable": true,
"values": [
"0",
"1"
                    ],
"attributeOrdering": {
"orderingStrategy": "LUD"
                    },
"cardinality": {
"minValue": 0,
"maxValue": 1
                    },
"uri": "configuration/entityTypes/Organization/attributes/FinancialsWAM",
"skipInDataAccess": false
                },

 

Answer

If a singleAttributeUpdateDate has the most recent date (LUD), all values, related to the crosswalk will win.

If we look at the above entity, the most recent date for the values of the "FinancialsWAM" attribute is "2021-05-26T14:40:59.468Z" in "singleAttributeUpdateDates" for Reltio/"19kahYjU" crosswalk.

But because both values relate to this crosswalk, they both win:

      "uri": "entities/19kahYjU/crosswalks/2LkHcls6u",
      "type": "configuration/sources/Reltio",
      "value": "19kahYjU",
      "reltioLoadDate": "2021-05-26T14:40:59.468Z",
      "createDate": "2020-09-08T10:25:30.836Z",
      "updateDate": "2020-09-08T10:25:30.836Z",
      "attributes": [
...
    "entities/19kahYjU/attributes/FinancialsWAM/2fjmdCbCe",
...
    "entities/19kahYjU/attributes/FinancialsWAM/Sb4iM5Ia"...
      ]


The option that is available to you is to apply an enhanced behavior for the LUD strategy.  This can be performed by enabling "survivorshipAdvancedBehavior" in a physical configuration

In that case, if singleAttributeUpdateDate has the most recent date - only this value becomes a winner.

  • LUD
    • If some values have the same most recent crosswalk, but one (or many) of them has more recent, then this value becomes only a winner; however, the winner crosswalk remains the same.
    • If some values have many crosswalks with the same most recent date, then all of those crosswalks become winners, and all values with those crosswalks become winners as well.

Here are the actions that transpired for the scenario where 2 different values for the same crosswalk using an example of FirstName attribute

1. "A1" and "A2" are created first with FB crosswalk "hcp"
2. Then "B" was added with another FB crosswalk "hcp2". According to LUD strategy "B" wins:

"FirstName": [
{
"type": "configuration/entityTypes/HCP/attributes/FirstName",
"ov": true,
"value": "B", //type: FB, value: hcp
"uri": "entities/22M4PBF/attributes/FirstName/BsxjCLbu"
},
{
"type": "configuration/entityTypes/HCP/attributes/FirstName",
"ov": false,
"value": "A2", //type: FB, value: hcp2
"uri": "entities/22M4PBF/attributes/FirstName/CwKUd3SX"
},
{
"type": "configuration/entityTypes/HCP/attributes/FirstName",
"ov": false,
"value": "A1", //type: FB, value: hcp2
"uri": "entities/22M4PBF/attributes/FirstName/CwKUczCH"
}
]

3. After it, the "C" attribute is added via cumulative update (singleAttributeUpdateDates is filled in this case) with the "hcp" crosswalk.
Because the "hcp" crosswalk has the most recent date in "singleAttributeUpdateDates" section, all the values from FB "hcp" crosswalk win:

"attributes": {
"FirstName": [
{
"type": "configuration/entityTypes/HCP/attributes/FirstName",
"ov": true,
"value": "C",
"uri": "entities/22M4PBF/attributes/FirstName/BsxjCU8Q"
},
{
"type": "configuration/entityTypes/HCP/attributes/FirstName",
"ov": true,
"value": "A2",
"uri": "entities/22M4PBF/attributes/FirstName/CwKUd3SX"
},
{
"type": "configuration/entityTypes/HCP/attributes/FirstName",
"ov": true,
"value": "A1",
"uri": "entities/22M4PBF/attributes/FirstName/CwKUczCH"
},
{
"type": "configuration/entityTypes/HCP/attributes/FirstName",
"ov": false,
"value": "B",
"uri": "entities/22M4PBF/attributes/FirstName/BsxjCLbu"
}
]
},
"isFavorite": false,
"crosswalks": [
{
"uri": "entities/22M4PBF/crosswalks/BsxjC8p8",
"type": "configuration/sources/FB",
"value": "hcp2",
"reltioLoadDate": "2021-08-13T05:21:55.638Z",
"createDate": "2021-08-13T05:21:55.638Z",
"updateDate": "2021-08-13T05:21:55.638Z",
"attributes": [
"entities/22M4PBF/attributes/FirstName/BsxjCLbu"
],
"singleAttributeUpdateDates": {}
},
{
"uri": "entities/22M4PBF/crosswalks/CwKUd7in",
"type": "configuration/sources/FB",
"value": "hcp",
"reltioLoadDate": "2021-08-13T05:28:57.460Z",
"createDate": "2021-08-13T05:21:52.628Z",
"updateDate": "2021-08-13T05:21:52.628Z",
"attributes": [
"entities/22M4PBF/attributes/FirstName/CwKUczCH",
"entities/22M4PBF/attributes/FirstName/CwKUd3SX",
"entities/22M4PBF/attributes/FirstName/BsxjCU8Q"
],
"singleAttributeUpdateDates": {
"entities/22M4PBF/attributes/FirstName/BsxjCU8Q": "2021-08-13T05:28:57.460Z"
}
}

Reference

 

Was this article helpful?
0 out of 0 found this helpful

Comments

1 comment
  • Actually there is another behavior you should be aware of. The Recency rule does something slightly unintuitive. Once it identifies the crosswalk with the most recent LUD, it then pulls values from all the crosswalks of that same source to populate the OV. 

    0

Please sign in to leave a comment.