Exclusive Context Validation
Exclusive context validation verifies the structure of an incoming data transmission. It verifies the records are in the correct order by analyzing the current and previous record types to determine if the pair of types is disallowed.
The Context Exclusive Validation node is similar to the Context Validation node in that it validates pairs of records and both do their detection when the second record is received. Whereas the Context Validation node works with valid record pairs, the Context Exclusive Validation node looks for pairs that are not allowed. The difference lies in the meaning of the error code assigned when out of order is detected.
The error code for the Context Validation node is general in nature. It can only state that a record has been received out of order. Since the Context Exclusive Validation node knows of specific invalid pairs, it can state that the a record (preceding) is missing. It is a user preference to decide which is more appropriate for their business use.
Like the Content Validation node and the Context Validation node, the Context Exclusive Validation node supports stacking. For more information, see Stacking Rules.
<?xml version="1.0"?>
<nodeDescriptor name="ValContextExclusiveNode" type="ValContextExclusiveNode">
<tasks>
<task name="X9OriginatorExcludeTask"/>
<task name="X9DepositorExcludeTask"/>
<task name="X9ProductExcludeTask"/>
<task name="X9ReturnExcludeTask"/>
<task name="X9ForwardExcludeTask"/>
<task name="X9GlobalExcludeTask"/>
</tasks>
</nodeDescriptor>
Exclusive context validation records are keyed by Data Type, Record Type, and Records Preceded By. The columns for the table are:
- Data Type
- Transmission type or file type
- Record Type
- Record being evaluated
- Preceded By Record Type
- Record types that are allowed to precede the record in process
- Context Error Code
- Error code to use when there is an error for the record pair
| Record Type | Records Preceded By | Error Code | Comment |
|---|---|---|---|
| 25 | 25 | 2502500 | If record 25 is preceded by a record 25, error 2502500 is produced |
| 31 | 31 | 3103100 | If record 31 is preceded by a record 31, error 3103100 is produced |
| 52 | 1 | 5200100 | If record 52 is preceded by a record 1, error 5200100 is produced |