PL/I and type tree mapping

PL/I names are converted to type tree names according to the following rules:

  1. Characters that are not valid in type tree element names are replaced with 'x'. For example, monthly$total becomes monthlyxtotal.
  2. Duplicate names are made unique by the addition of one or more numeric digits. For example, two instances of year become year and year1.
PL/I importer maps PL/I data types to type tree elements according to the following table. PL/I types that are not shown in the table are not supported by the importer. The following restrictions also apply:
  • Data items with the COMPLEX, FLOAT, VARYING, and VARYINGZ attributes are not supported.
  • Data items with the FLOAT attribute are supported. PL/I FLOAT IEEE is not supported.
  • VARYING and VARYINGZ pure DBCS strings are supported.
  • Data items that are specified as DECIMAL(p,q) are supported only when p ? q.
  • Data items that are specified as BINARY(p,q) are supported only when q = 0.
  • If the PRECISION attribute is specified for a data item, it is ignored.
  • PICTURE strings are not supported.
  • ORDINAL data items are treated as FIXED BINARY(7) data types.

The following table lists PL/I data types and the corresponding properties and property values in the resulting type tree.

PL/I Type Tree properties and property values
FIXED BINARY (n) where n = 7
  • Class > Item
  • Item Subclass > Number
  • Sign > Yes
  • Presentation > Integer
  • Interpret as > Binary
  • Length(bytes) > 1
FIXED BINARY (n) where 8 = n = 15
  • Class > Item
  • Item Subclass > Number
  • Sign > Yes
  • Presentation > Integer
  • Interpret as > Binary
  • Length(bytes) > 2
FIXED BINARY (n) where 16 = n = 31
  • Class > Item
  • Item Subclass > Number
  • Sign > Yes
  • Presentation > Integer
  • Interpret as > Binary
  • Length(bytes) > 4
FIXED BINARY (n) where 32 = n = 63
  • Class > Item
  • Item Subclass > Number
  • Sign > Yes
  • Presentation > Integer
  • Interpret as > Binary
  • Length(bytes) > 8
UNSIGNED FIXED BINARY(n) where n = 8
  • Class > Item
  • Item Subclass > Number
  • Sign > No
  • Presentation > Integer
  • Interpret as > Binary
  • Length(bytes) > 1
UNSIGNED FIXED BINARY(n) where 9 = n = 16
  • Class > Item
  • Item Subclass > Number
  • Sign > No
  • Presentation > Integer
  • Interpret as > Binary
  • Length(bytes) > 2
UNSIGNED FIXED BINARY(n) where 17 = n = 32
  • Class > Item
  • Item Subclass > Number
  • Sign > No
  • Presentation > Integer
  • Interpret as > Binary
  • Length(bytes) > 4
UNSIGNED FIXED BINARY(n) where 33 = n = 64
  • Class > Item
  • Item Subclass > Number
  • Sign > No
  • Presentation > Integer
  • Interpret as > Binary
  • Length(bytes) > 8
FIXED DECIMAL(n,m)
  • Class > Item
  • Item Subclass > Number
  • Sign > No
  • Presentation > Decimal
  • Interpret as > Character
  • Separators > Yes
  • Places > m, n (max)
BIT(n) where n is a multiple of 8. Other values are not supported.
  • Class > Item
  • Item Subclass > Number
  • Sign > No
  • Interpret as > Binary
  • Length(bytes) > m (m=n/8)
CHARACTER(n)
  • Class > Item
  • Item Subclass > Text
  • Interpret as > Character
  • Size (content) > Max > n
GRAPHIC(n)
  • Class > Item
  • Item Subclass > Text
  • Interpret as > Binary
  • Size (content) > Max > n*2
WIDECHAR(n)
  • Class > Item
  • Item Subclass > Text
  • Interpret as > Binary
  • Size (content) > Max > n*2
ORDINAL
  • Class > Item
  • Item Subclass > Number
  • Sign > Yes
  • Presentation > Integer
  • Interpret as > Binary
  • Length(bytes) > 1
BINARY FLOAT(n) where n <= 21
  • Class > Item
  • Item Subclass > Number
  • Presentation > Float
  • Interpret as > Binary
  • Length(bytes) > 8
BINARY FLOAT(n) where 21 < n <= 53 Values greater than 53 are not supported.
  • Class > Item
  • Item Subclass > Number
  • Presentation > Float
  • Interpret as > Binary
  • Length(bytes) > 10
DECIMAL FLOAT(n)where n <= 6
  • Class > Item
  • Item Subclass > Number
  • Presentation > Packed
  • Interpret as > Binary
  • Length(bytes) > 8
DECIMAL FLOAT(n)where 6 < n <= 16 Values greater than 16 are not supported.
  • Class > Item
  • Item Subclass > Number
  • Presentation > Packed
  • Interpret as > Binary
  • Length(bytes) > 10
Note: The PL/I importer is not supported on Linux®.