Cross-Field Validation Reference
Complete reference for cross-field validation rules including presence rules, conditional rules, comparison rules, and aggregation rules.
Cross-field validation rules validate relationships between multiple fields, covering presence constraints, conditional requirements, field comparisons, aggregations, and advanced conditional logic.
Field Presence Rules
| Rule | Description |
|---|---|
| atLeastOneOfRequired | At least one of the specified fields must be present |
| exactlyOneOfRequired | Exactly one of the specified fields must be present |
| atMostOneOfAllowed | At most one of the specified fields can be present |
| allOrNone | All specified fields present together or none |
| allOfRequired | All specified fields must be present |
| nullTogether | All specified fields null or all have values |
Quantified Rules
| Rule | Description |
|---|---|
| atLeastNOfRequired | At least N of the specified fields required |
| atMostNOfAllowed | At most N of the specified fields allowed |
| exactlyNOfRequired | Exactly N of the specified fields required |
| countOfSetFieldsCompareToConst | Count of set fields compared to constant |
Conditional Rules
| Rule | Description |
|---|---|
| requiresIfPresent | Require field when source field is present |
| forbidsIfPresent | Forbid field when source field is present |
| requiresIfEquals | Require field when another field equals a value |
| requiresIfIn | Require field when another field is in a value list |
| requiresIfTrue | Require field when boolean field is true |
| requiresIfFalse | Require field when boolean field is false |
| fallbackRequiredIfNull | Fallback field required when primary is empty |
Field Comparison Rules
| Rule | Description |
|---|---|
| lessThanField | Left field less than right field |
| lessThanOrEqualToField | Left field less than or equal to right |
| greaterThanField | Left field greater than right field |
| greaterThanOrEqualToField | Left field greater than or equal to right |
| equalToField | Left field equals right field |
| notEqualToField | Left field not equal to right field |
| betweenFields | Value between two fields |
Aggregation Rules
| Rule | Description |
|---|---|
| sumOfFieldsCompareToConst | Sum of fields compared to constant |
| sumOfFieldsCompareToField | Sum of fields compared to another field |
| allDistinct | All specified field values must be unique |
Advanced Rules
| Rule | Description |
|---|---|
| ifThenRule | Conditional rule application (if condition then apply rule) |
| mustChangeAtLeastOneOf | Update validation requiring at least one field changed |