نوع ترکیبی با محتوای مخلوط XSD

نوع ترکیبی مخلوط می‌تواند شامل attribute، element و متن باشد.

نوع ترکیبی با محتوای مخلوط

عنصر XML، "letter"، شامل متن و دیگر عناصر است:

<letter>
عزیز آقای <name>John Smith</name>.
سفارش شما <orderid>1032</orderid>
در <shipdate>2001-07-13</shipdate> ارسال خواهد شد.
</letter>

این schema این "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" ظاهر شوند، باید attribute mixed تنظیم به "true" شود.<xs:sequence> تگ (name، orderid و shipdate) به این معنی است که عناصر تعریف شده باید به ترتیب در داخل عنصر "letter" ظاهر شوند.

ما می‌توانیم به عنصر complexType یک نام بدهیم و "letter" به عنوان attribute type از نام این 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>