Nội dung hỗn hợp XSD
Phần tử kiểu phức tạp hỗn hợp có thể chứa các thuộc tính, phần tử và văn bản.
Các loại phức tạp với nội dung hỗn hợp
Một phần tử XML, "chữ cái", chứa cả văn bản và các phần tử khác:
<letter>
Dear Mr. <name>John Smith</name>.
Your order <orderid>1032</orderid>
will be shipped on <shipdate>2001-07-13</shipdate>.
</letter>
Lược đồ sau khai báo phần tử "chữ cái":
<xs:element name="letter">
<xs:complexType mixed="true">
<xs:sequence>
<xs:element name="name" type="xs:string"/>
<xs:element name="orderid" type="xs:positiveInteger"/>
<xs:element name="shipdate" type="xs:date"/>
</xs:sequence>
</xs:complexType>
</xs:element>
Lưu ý: Để cho phép dữ liệu ký tự xuất hiện giữa các phần tử con của "chữ cái", thuộc tính hỗn hợp phải được đặt thành "true". Thẻ <xs:sequence> có nghĩa là các phần tử được xác định (tên, mã đơn hàng và ngày giao hàng) phải xuất hiện theo thứ tự đó bên trong phần tử "chữ cái".
Chúng ta cũng có thể đặt tên cho phần tử complexType và để phần tử "letter" có thuộc tính type tham chiếu đến tên của complexType (nếu bạn sử dụng phương thức này, một số phần tử có thể tham chiếu đến cùng một kiểu phức tạp):
<xs:element name="letter" type="lettertype"/>
<xs:complexType name="lettertype" mixed="true">
<xs:sequence>
<xs:element name="name" type="xs:string"/>
<xs:element name="orderid" type="xs:positiveInteger"/>
<xs:element name="shipdate" type="xs:date"/>
</xs:sequence>
</xs:complexType>