The IBM implementation of DFDL has added
extra validation checks to comply with the DFDL 1.0 specification.
When a DFDL schema that is created in a previous version of
IBM App Connect
Enterprise or
WebSphere® Message
Broker is validated in the
IBM App
Connect Enterprise Toolkit or during deployment, errors
are reported under the following conditions:
- The DFDL property length of
an element must not exceed the capacity of the element's simple type.
If the validation fails, the following error is generated: CTDV1534E.
To prevent the error, change the simple type of the element so that
it can cope with the length. For example, if a "two's complement"
binary number has the DFDL property length set
to 8 and the type is xs:int, change the type to xs:long to clear the error.
- When the DFDL property initiatedContent is
set to yes on the parent
sequence or choice, additional checks are made on elements and
groups. If the validation fails, one or more of the following
errors are generated: CTDV1561E, CTDV1560E, or CTDV1431E. To prevent
the error, set initiatedContent to no on the parent sequence or choice.
However, if a new error (CTDV1559E) then appears, contact IBM support for further advice.
- When the parent sequence or choice is the content of a global
group, and DFDL properties are placed on group references to
the group, additional cross-checks are made between DFDL properties
of elements and groups, and DFDL properties on the parent sequence
or choice. If the validation fails, one or more of the following
errors are generated: CTDV1150E, CTDV1118E, CTDV1432E, CTDV1446E,
CTDV1466E, or CTDV1467E. To prevent the error, correct the schema
in accordance with the indicated error.
- When the DFDL property occursCountKind of
an element is set to parsed,
and the parent sequence has a separator, the DFDL property separatorSuppressionPolicy of the
parent sequence must be set to anyEmpty.
If validation fails, the following error is generated: CTDV1625E.
To prevent the error, correct the sequence so that the DFDL
property separatorSuppressionPolicy is
set to anyEmpty,
or change the element so DFDL occursCountKind is
set to implicit.
- The DFDL property fillByte must
resolve to a single-byte value. If validation fails, the following
error is generated: CTDV1458E. To prevent the error, correct
the DFDL property fillByte to
use a single DFDL entity that resolves to a single-byte value.