PL/I and type tree mapping
PL/I names are converted to type tree names according to the following rules:
- Characters that are not valid in type tree element names are replaced with 'x'. For example, monthly$total becomes monthlyxtotal.
- Duplicate names are made unique by the addition of one or more numeric digits. For example, two instances of year become year and year1.
- 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 |
|
FIXED BINARY (n) where 8 = n = 15 |
|
FIXED BINARY (n) where 16 = n = 31 |
|
FIXED BINARY (n) where 32 = n = 63 |
|
UNSIGNED FIXED BINARY(n) where n = 8 |
|
UNSIGNED FIXED BINARY(n) where 9 = n = 16 |
|
UNSIGNED FIXED BINARY(n) where 17 = n = 32 |
|
UNSIGNED FIXED BINARY(n) where 33 = n = 64 |
|
FIXED DECIMAL(n,m) |
|
BIT(n) where n is a multiple of 8. Other values are not supported. |
|
CHARACTER(n) |
|
GRAPHIC(n) |
|
WIDECHAR(n) |
|
ORDINAL |
|
BINARY FLOAT(n) where n <= 21 |
|
BINARY FLOAT(n) where 21 < n <= 53 Values greater than 53 are not supported. |
|
DECIMAL FLOAT(n)where n <= 6 |
|
DECIMAL FLOAT(n)where 6 < n <= 16 Values greater than 16 are not supported. |
|
Note: The PL/I importer is not supported on Linux®.