Resolving problems when migrating or importing message models

New instances of error message CTDV1534E

Procedure

  • Scenario: A DFDL schema that was created by a version of IBM® Integration Bus earlier than Version 10.0 is validated in the toolkit or during deployment. Extra instances of CTDV1534E are issued.
  • Explanation: The IBM implementation of DFDL added a validation check to comply with the DFDL 1.0 specification. The DFDL property 'length' of an element must not exceed the capacity of the element's simple type. This check was being made for DFDL 'lengthUnits' = 'bits', it is now also being made for 'lengthUnits' = 'bytes'. The addition of this check can cause extra instances of CTDV1534E.
  • Solution: Change the element's simple type so that it can cope with the length. For example, a two's complement binary number has DFDL 'length' = '8' and type is xs:int. Change the type to xs:long to clear the error.

New instances of error messages CTDV1561E, CTDV1560E, CTDV1431E

Procedure

  • Scenario: A DFDL schema that was created by a version of IBM Integration Bus earlier than Version 10.0 is validated in the toolkit or during deployment. Extra instances of CTDV1561E, CTDV1560E, CTDV1431E are issued.
  • Explanation: The IBM implementation of DFDL added validation checks to comply with the DFDL 1.0 specification. Checks need to be made on elements and groups when DFDL property 'initiatedContent' = 'yes' on the parent sequence or choice. Some of these checks were missing, and have now been added. The addition of these checks can cause extra instances of CTDV1561E, CTDV1560E, or CTDV1431E.
  • Solution: Set 'initiatedContent' = 'no' on the parent sequence or choice. If a new error CTDV1559E then appears, contact your IBM Support Center for further advice.

New instances of error messages CTDV1150E, CTDV1118E, CTDV1432E, CTDV1446E, CTDV1466E, CTDV1467E

Procedure

  • Scenario: A DFDL schema that was created by a version of IBM Integration Bus earlier than Version 10.0 is validated in the toolkit or during deployment. Extra instances of CTDV1150E, CTDV1118E, CTDV1432E, CTDV1446E, CTDV1466E, CTDV1467E are issued.
  • Explanation: The IBM implementation of DFDL added validation checks to comply with the DFDL 1.0 specification. Cross-checks need to be made between DFDL properties of elements and groups and DFDL properties on the parent sequence or choice. Some of these checks were missing when the parent sequence or choice was the content of a global group and DFDL properties were placed on group references to the group. These checks have now been added. The addition of these checks can cause extra instances of CTDV1150E, CTDV1118E, CTDV1432E, CTDV1446E, CTDV1466E, or CTDV1467E.
  • Solution: Correct the schema in accordance with the indicated error.

New instances of error message CTDV1625E

Procedure

  • Scenario: A DFDL schema,that was created by a version of IBM Integration Bus earlier than Version 10.0 is validated in the toolkit or during deployment. Extra instances of CTDV1625E are issued.
  • Explanation: The IBM implementation of DFDL added validation checks to comply with the DFDL 1.0 specification. When the DFDL property 'occursCountKind' of an element is 'parsed' and the parent sequence has a separator, the DFDL property 'separatorSuppressionPolicy' of the parent sequence must be 'anyEmpty'. This new check is the result of a specification erratum.
  • Solution: Correct the sequence so DFDL 'separatorSuppressionPolicy' is 'anyEmpty', or change the element so DFDL 'occursCountKind' is 'implicit'.

New instances of error message CTDV1458E

Procedure

  • Scenario: A DFDL schema,that was created by a version of IBM Integration Bus earlier than Version 10.0 is validated in the toolkit or during deployment. Extra instances of CTDV1458E are issued.
  • Explanation: The IBM implementation of DFDL has added validation checks to comply with the DFDL 1.0 specification. The DFDL property 'fillByte' must resolve to a single byte value. This check was not being made correctly when 'fillByte' contained DFDL entities such as %r00;. The corrected check can cause extra instances of CTDV1458E.
  • Solution: Correct the 'fillByte' to use a single DFDL entity that resolves to a single byte value.

COBOL compiler errors when importing a copybook

Procedure

  • Scenario: The report file that is generated by the import contains COBOL compiler errors.
    For example, you try to import the following copybook:
    01 AIRLINE-REQUEST.
    ....05 CUSTOMER.
    ........10 NAME................PIC X(45).
    ....05 ADDRESS.
    ........10 STREET.............PIC X(30).
    ........10 CITY.................PIC X(25).
    ........10 STATE...............PIC X(20).
    ........10 ZIP-CODE.........PIC X(5).
    ....05 FLIGHT-NO............PIC X(6).
    ....05 TRAN-DATE...........PIC X(10).
    ....05 COST....................PIC X(7).
    ....05 CC-NO..................PIC X(20).
    ....05 RESPONSE.
    ........10 STATUS.............PIC X(100).
    ........10 DETAILS............PIC X(100).
    The report file contains errors:
    Line No : 4 IGYDS1089-S "ADDRESS" was invalid. Scanning was resumed at the next area "A" item, level-number, or the start of the next clause.
    Line No : 14 IGYDS1089-S "STATUS" was invalid. Scanning was resumed at the next area "A" item, level-number, or the start of the next clause.
  • Explanation: The errors are caused by the copybook containing field names that are COBOL reserved keywords.
  • Solution: Change the name of the fields in question, so that they are not COBOL reserved keywords, and retry the import.