Data Transformation Engine Type Designer Reference Guide

Chapter 12 - Error Detection and Recovery Error Detection
If the system is looking for a data object of a particular type, and something in the
data does not exactly match the type definition, the system bases the
determination on whether to continue validation on whether that data object is
known to exist.
If a data object contains enough information to determine its existence, errors
associated with that data object are recorded and validation continues.
If a data object exists but contains errors, it is marked as an error. If a restart
point is specified for the component of the type in error, these errors are ignored
and validation continues.
If a data object does not contain enough information to determine its existence,
the following occurs:
If no validation recovery mechanism is specified, validation is stopped because
it will get lost if it continues. Validation recovery mechanisms are discussed in
the section Error Recovery.
If recovery mechanisms are specified, the system returns to the nearest restart
point and resets what it is looking for. It proceeds by examining the data
byte-by-byte until it either recognizes something or reaches the end of the
data stream. All rejected bytes (from the first byte not associated with a type
to the last unrecognizable byte) are collectively marked as an unidentified
foreign object (UFO). A UFO is data in error with no valid data contained within
it.
In summary, the data object of an input card could be valid, yet contain errors. If
the data object of any input card is invalid, output data is not built. If all input
card data objects are valid, the input is mapped to the output based on the map
rules. Operators, most functions, and map references operate on valid data. To
map invalid data, use the
REJECT function.
Existence Indicators
When the source or destination of a data object exists, the system knows that the
entire data object of that source or destination exists. For example, if a source
specified to contain a transaction is a file, and that file exists, the transaction
exists. On the other hand, if you get a Source not available message, the data
object of that source does not exist because the source itself does not exist.
When the data object of a source or destination exists, specific information about
errors will appear in the data. For example, you may have any of the following:
The data object is valid because it conforms to its type definition.
The type of the data object exists, but has no content.
The data object is in error because it does not conform to its type definition.