DVFs with Reference Attributes

Question:

Why does the following DVF Configuration not work?

Expression:

not equals(attributes.BusinessPartyId.value, 'TEMP') and listEquals(attributes.CustomerAggregationTypeCd.value, 'Unified Global Customer', 'Unified Intermediate Customer') and equals(attributes.CustomerProcessEngagement.value.CustomerProcessEngagementCd.value, 'Sales CRM') and not equals(attributes.Location.value.RelAddressUsageType.value, 'HDQTR')

Answer: 

The issue is the following part of the DVF:

attributes.Location.value.RelAddressUsageType.value, 'HDQTR'

 

  • DVFs (Data Validation Functions) are applied inside Reltio MDM tenants, not in an RDM tenant.

  • DVFs validate attributes on entity or relationship profiles at save time—like string length, regex, value range, nested attributes, etc. docs.reltio.com

  • DVFs do not run in RDM and cannot directly evaluate reference code mappings from RDM.


🔗 So, can you use DVFs with RDM reference attributes?

  • Indirectly, yes:

    • You point an attribute in your MDM schema to an RDM lookup type—DVFs can validate that the attribute exists and matches expected patterns.

    • However, DVFs won’t check whether the entered value corresponds to a valid RDM canonical value—that's handled dynamically at runtime by RDM.

  • To enforce valid reference codes, rely on:

    1. RDM mappings: if the lookup type is properly configured, invalid values are either transcoded or flagged.

    2. Custom validation logic (e.g., in Lifecycle Actions) if you need more sophisticated error handling or pre-checks.


✅ Summary Table

Component DVF Apply? Reference Data Validated?
MDM attribute (string, int...) ✅ Yes ✅ Can validate pattern, length
MDM attribute linked to RDM ✅ Yes ❌ DVF doesn't check canonical mapping
RDM tenant itself ❌ No ✅ Managed via lookup config

🔧 Recommended Approach

  1. Use DVFs for basic validations on attributes—including those backed by RDM—like ensuring non-empty values or correct formats.

  2. Use RDM configurations (e.g., correct lookup types, mappings) to guarantee valid codes and canonical consistency.

  3. Add LCA handlers if you need to enforce more complex rules, like blocking profiles when a lookup code has no mapping in RDM.

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

Comments

0 comments

Please sign in to leave a comment.