Các loại hợp nhất của XSD - chỉ chứa phần tử

Các phần tử loại phức hợp "chỉ chứa phần tử" là các phần tử chỉ có thể chứa các phần tử khác.

Loại phức hợp chỉ bao gồm các phần tử

Các phần tử XML, "person", chỉ bao gồm các phần tử khác:

<person>
<firstname>John</firstname>
<lastname>Smith</lastname>
</person>

Bạn có thể định nghĩa phần tử "person" như sau trong schema:

<xs:element name="person">
  <xs:complexType>
    <xs:sequence>
      <xs:element name="firstname" type="xs:string"/>
      <xs:element name="lastname" type="xs:string"/>
    </xs:sequence>
  </xs:complexType>
</xs:element>

Hãy chú ý đến <xs:sequence> này. Nó có nghĩa là các phần tử được định nghĩa phải xuất hiện theo thứ tự trên trong phần tử "person".

Hoặc bạn có thể đặt tên cho phần tử complexType, và để thuộc tính type của phần tử "person" tham chiếu đến tên này (nếu sử dụng phương pháp này, nhiều phần tử có thể tham chiếu đến loại phức hợp tương tự):

<xs:element name="person" type="persontype"/>
<xs:complexType name="persontype">
  <xs:sequence>
    <xs:element name="firstname" type="xs:string"/>
    <xs:element name="lastname" type="xs:string"/>
  </xs:sequence>
</xs:complexType>