Validate
Category: Processing
The Validate activity runs the project's business rules against the extracted data, producing warnings and errors that a reviewer can act on.
Configuration
| Setting | Description | Default |
|---|---|---|
| Skip if no rules | Skip this step when no business rules are defined. | On |
| Continue on error | Continue the workflow when rules report validation errors. Turn it off to stop the transaction on any validation error. | On |
| Skip rule IDs | A list of rule IDs to skip during this run. | (none) |
Validation errors and failures
A validation error is what a rule found: a value that does not match, a total that does not add up. The step ran successfully, and the error goes to the Human Review step for a person to act on. Continue on error applies only to these.
A rule that cannot run is different: it throws an error, runs past its time limit, makes a call that is not allowed, or is a catalog lookup whose catalog no longer exists. The step then fails, as a failure in any other step does. The transaction takes the step's Failed exit if one is connected (Handling failures), and otherwise fails. The Activity Log names the rule, the document and the error. A rule that ran out of time, or whose web request timed out or could not connect, is tried again before the step fails. The others fail at once, because running the same rule again gives the same result.
The same applies when the step cannot run its rules at all, for example when the rule service stops responding: the step is retried, then fails.
A step that fails saves nothing: the documents and the validation results stay as they were before the step, including what the rules that did run would have changed. A Human Review step reached through the Failed exit always pauses for a reviewer, whatever its policy, and the step's error is in the Activity Log.
Notes
- Validation results feed the Human Review step's accept policy, which can block acceptance when errors are present.
- Later steps read the results the same way. In an If or Switch condition and in a Data Transform script they are the
validation_resultsvariable:overall_status,document_resultsandstats. The step's own output inworkflow_context(validate_output) is a summary withoverall_statusandstats; it points at the results file instead of repeating it.