XSD เนื้อหาผสม
องค์ประกอบประเภทที่ซับซ้อนแบบผสมสามารถมีแอตทริบิวต์ องค์ประกอบ และข้อความได้
ประเภทที่ซับซ้อนพร้อมเนื้อหาผสม
องค์ประกอบ XML "จดหมาย" ที่มีทั้งข้อความและองค์ประกอบอื่นๆ:
<letter>
Dear Mr. <name>John Smith</name>.
Your order <orderid>1032</orderid>
will be shipped on <shipdate>2001-07-13</shipdate>.
</letter>
สคีมาต่อไปนี้ประกาศองค์ประกอบ "จดหมาย":
<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>
หมายเหตุ:หากต้องการเปิดใช้งานข้อมูลอักขระให้ปรากฏระหว่างองค์ประกอบย่อยของ "letter" ต้องตั้งค่าแอตทริบิวต์ผสมเป็น "จริง" แท็ก <xs:sequence> หมายความว่าองค์ประกอบที่กำหนดไว้ (ชื่อ รหัสคำสั่งซื้อ และวันที่จัดส่ง) ต้องปรากฏในลำดับนั้นภายในองค์ประกอบ "จดหมาย"
นอกจากนี้เรายังสามารถตั้งชื่อองค์ประกอบ complexType และให้องค์ประกอบ "letter" มีแอตทริบิวต์ประเภทที่อ้างอิงถึงชื่อของ complexType (หากคุณใช้วิธีนี้ องค์ประกอบหลายอย่างสามารถอ้างถึงประเภทที่ซับซ้อนเดียวกันได้):
<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>