Skip to main content

Implementing Data Quality Expression Validations in Ataccama RDM

  • August 6, 2026
  • 0 replies
  • 7 views

Forum|alt.badge.img+2

 Expression validations allow business-specific data quality rules to be implemented directly in Ataccama RDM without custom development.

Each validation consists of two parts:

  • Validation Expression – defines the business rule.
  • Validation Message – explains why the value is invalid and how it can be corrected.

Both components are equally important. A well-designed validation not only prevents invalid data from being entered but also helps business users understand and resolve data quality issues efficiently.

 

 

Before Implementing a Validation

Before implementing a validation, define the following:

Item Description
Business requirement The business rule to be enforced
Target attribute The attribute being validated
Validation expression The logical expression used to evaluate the rule
Validation message The message displayed when the validation fails


Step 1. Define the Validation Rule

The validation expression defines the condition that an attribute value must satisfy to be considered valid.

During validation, the expression is evaluated for each record:

  • If the expression evaluates to TRUE, the value passes validation.
  • If the expression evaluates to FALSE, the validation fails and the associated validation message is displayed.

Example – Format Validation

matches('^LC[0-9]{6}$', LCTN_ID)
OR LCTN_ID IS NULL

This validation is evaluated only for non-NULL values.

 

Step 2. Define the Validation Message

 

The validation message is displayed whenever the validation expression evaluates to FALSE.

The message should clearly explain:

  • which attribute failed validation;
  • why the validation failed;
  • what value or business rule is expected.

Validation Expression

matches('^LC[0-9]{6}$', LCTN_ID)

Validation Message

Invalid Location ID.
Format mismatch: expected LC followed by 6 digits.

In this example, the validation message is displayed only when the Location ID does not match the required format.

Message Structure

The following structure is recommended for all validation messages.

Invalid <Attribute>.
<Reason>: <Expected value or business rule>.

Examples

Invalid Employee Number.
Format mismatch: expected 7 digits.
 
Invalid Start Date.
Date order violation: must not be after end date.
 
Invalid Offer Price.
Value mismatch: must be a non-negative number.

 

Validation Message Structure

Validation Type Purpose Expression Pattern Example Error Message
Format validation Validates business-specific formats using regular expressions. matches(...) OR COLUMN IS NULL matches('^LC[0-9]{6}$', LCTN_ID) Invalid Location ID. Format mismatch: expected LC followed by 6 digits.
Date order validation Ensures the Start Date is not later than the End Date. START_DT <= END_DT OR START_DT IS NULL OR END_DT IS NULL LCTN_STRT_DT <= LCTN_END_DT Invalid Start Date. Date order violation: must not be after end date.
Decimal precision validation Validates the required precision and scale for decimal values. matches(...) OR COLUMN IS NULL matches('^-?\\d{1,16}(\\.\\d{1,2})?$', tostring(OFFR_PRCE)) Invalid Offer Price. Format mismatch: expected decimal (18,2).
Numeric range validation Ensures that numeric values satisfy business-defined limits. tofloat(COLUMN) >= MIN OR COLUMN IS NULL tofloat(OFFR_PRCE) >= 0 Invalid Offer Price. Value mismatch: must be a non-negative number.

 

Common Validation Failure Reasons

 

Scenario Example Reason
Invalid format Format mismatch
Invalid value Value mismatch
Invalid date sequence Date order violation
Decimal precision issue Format mismatch