DVF Failure When End-Dating the Last Active Crosswalk Using partialOverride

Overview

This article explains why a Data Validation Framework (DVF) error, such as “Missing required field: PersonType” can occur when end-dating a crosswalk using options=partialOverride, even when the payload appears to only modify the crosswalk metadata.

The issue arises when the operation effectively removes the last active crosswalk contributing a DVF-required attribute, such as PersonType.

 

Applies To

  • Reltio Entities (e.g., Individual)

  • Integrations using options=partialOverride

  • Entities where:

    • A required attribute (e.g., PersonType) is contributed by a single active crosswalk

    • Another crosswalk from the same source is already end-dated

  • Tenants with DVF rules enforcing required attributes,

Symptoms

  • Update request fails with a DVF error:

    • Example: “Missing required field: PersonType”

  • The request uses:

    • options=partialOverride

    • A payload that end-dates a crosswalk (deleteDate)

  • The entity previously appeared valid

  • No explicit removal of PersonType was included in the request.

Observed Scenario

Two entities were evaluated:

EntityCrosswalk StatusResult
0SufQfa1 active Salesforce crosswalk + 1 already end-datedSuccess
0IxtQAk1 active Salesforce crosswalk + 1 already end-datedDVF failure

In both cases:

  • One Salesforce crosswalk was already end-dated.

  • Only one active Salesforce crosswalk remained.

  • That active crosswalk contributed the PersonType attribute.

When the final active crosswalk was end-dated using partialOverride without including its contributed attributes, the profile failed DVF validation.

Root Cause

The failure occurs because:

  1. PersonType is required by DVF.

  2. The last active crosswalk contributing PersonType was end-dated.

  3. The partialOverride request did not include the attributes belonging to that crosswalk.

  4. Reltio treated the operation as removing the crosswalk’s contributed data.

  5. After the update, the entity no longer had a PersonType.

  6. DVF validation executed against the resulting profile state and failed.

This behavior is consistent with Reltio’s documented guidance:

When using partialOverride, if you do not change any attribute, you must still provide all existing attribute values that belong to the crosswalk.

If only the crosswalk block (e.g., deleteDate) is sent without its attribute references, the system may interpret this as removing those contributed attributes.

Why DVF Is Not “Skipped”

DVF runs against the entity's effective state after the update.

In this case:

  • The update resulted in a profile without PersonType.

  • Since PersonType is required by DVF, validation correctly failed.

The issue is not that DVF behaves inconsistently.
It is that the profile state changed in a way that violated DVF rules.

Technical Explanation

Before Update

Entity has:

  • Crosswalk A (active) → contributes PersonType

  • Crosswalk B (already end-dated)

During partialOverride

Request:

  • End-dates Crosswalk A

  • Does NOT include attribute references belonging to Crosswalk A

After Update (Effective State)

  • Both crosswalks are end-dated

  • No active contributor of PersonType

  • Entity missing required field

  • DVF failure triggered

Resolution

Option 1: Include Crosswalk Attributes in the partialOverride

When end-dating a crosswalk, include the attribute URIs that belong to that crosswalk:

{
"crosswalks": [
{
"uri": "entities/{entityId}/crosswalks/{crosswalkId}",
"type": "configuration/sources/Salesforce",
"value": "0987A00000mF0NcIDL|Talent",
"deleteDate": "2026-03-02T00:00:00.000Z",
"attributes": [
"entities/{entityId}/attributes/PersonType/{attributeId}"
]
}
]
}

This ensures Reltio preserves attribute associations during the update.

Option 2: Provide a Replacement Contributor

If the business intent is to remove the crosswalk:

  • Ensure another active source contributes the required attribute.

  • Or explicitly include the required attribute in the update.

 

Option 3: Adjust DVF (Only If Business Rules Allow)

If PersonType should not be mandatory:

  • Review and update DVF configuration

  • Validate downstream impacts before modifying rules

Preventive Recommendations

  1. Pre-Validation Check

    • Detect when an update will remove the last active contributor of a DVF-required attribute.

  2. Integration Safeguard

    • Before end-dating a crosswalk, confirm:

      • Another crosswalk contributes required attributes, OR

      • Required attributes are explicitly included in the payload.

  3. Runbook Update

    • Document that partialOverride requires inclusion of crosswalk-contributed attributes when modifying crosswalks.

  4. Monitoring

    • Log and alert when crosswalk changes affect required attributes.

Key Takeaway

When using options=partialOverride, end-dating the last active crosswalk contributing a required attribute can result in a DVF failure if the crosswalk’s attributes are not included in the request.

The error is not caused by inconsistent DVF behavior — it is caused by the resulting profile state violating validation rules.

 

 

 

 

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

Comments

0 comments

Please sign in to leave a comment.