相容性 :Enterprise PL/I 結構

本主題說明 Enterprise PL/I for z/OS® 中結構與 XML 結構的相容性。

支援將基本 PL/I 結構對映至簡式 XML 結構的相容性。 表 1 顯示相容項目的範例:

附註: 現行對映編輯器無法執行與 PL/I 多維度陣列元素之間的對映。
表 1. 相容項目的範例
PL/I 結構: 相容 XML 結構範例:
PL/I 結構:

2 SimpleStructure,
  3 DEPOSIT_REQUEST1 CHAR; 
  <complexType name="structures_simplestructure">
    <sequence>
      <element name="DEPOSIT_REQUEST1">
        <simpleType>
          <restriction base="string">
            <maxLength value="1"/>
          </restriction>
        </simpleType>
      </element>
    </sequence>
  </complexType>
PL/I 巢狀結構:

2 NestedStructure,
    3 SimpleItem FIXED BIN(15),
    3 NestingStructure1,
       5 DEPOSIT_REQUEST2 CHAR,
       5 Action_Code2 FIXED BIN(15);
  <complexType name="structures_nestedstructure">
    <sequence>
      <element name="SIMPLEITEM">
        <simpleType>
          <restriction base="short"/>
        </simpleType>
      </element>
      <element name="NESTINGSTRUCTURE1" 
         type="pli:structures_nestedstructure_nestingstructure1"/>
    </sequence>
  </complexType>
  <complexType name="structures_nestedstructure_nestingstructure1">
    <sequence>
      <element name="DEPOSIT_REQUEST2">
        <simpleType>
          <restriction base="string">
            <maxLength value="1"/>
          </restriction>
        </simpleType>
      </element>
      <element name="ACTION_CODE2">
        <simpleType>
          <restriction base="short"/>
        </simpleType>
      </element>
    </sequence>
  </complexType>
PL/I 單一維度陣列:

3 SimpleArray(-2:3) FIXED BIN(31);
<element maxOccurs="6" minOccurs="6" name="SIMPLEARRAY">
        <simpleType>
          <restriction base="int"/>
        </simpleType>
      </element>
PL/I 多維度陣列:
附註: 對映編輯器目前不支援。

3 MultiArray(-2:3, -1:1, 3)
   FIXED BIN(31);
<complexType name="STRUCTURES">
   <sequence>
      <element maxOccurs="6" minOccurs="6" name="MULTIARRAY"
         type="pli:ArrayOfArrayOfStructures_multiarray"/>
   </sequence>
</complexType>
<complexType name="ArrayOfArrayOfStructures_multiarray">
   <sequence>
      <element maxOccurs="3" minOccurs="3" 
         name="ArrayOfArrayOfStructures_multiarray" 
         type="pli:ArrayOfStructures_multiarray"/>
   </sequence>
</complexType>
<complexType name="ArrayOfStructures_multiarray">
   <sequence>
      <element maxOccurs="3" minOccurs="3" 
         name="ArrayOfStructures_multiarray">
         <simpleType>
            <restriction base="int"/>
         </simpleType>
      </element>
   </sequence>
</complexType>