Kumplikadong Tipong XSD na May Mixed Content

Ang mixed complex type ay maaaring may mga attribute, element, at teksto.

Complex type na may mixed content

Ang XML element, "letter", ay naglalaman ng teksto at iba pang mga element:

<letter>
Dear Mr.<name>John Smith</name>.
Your order <orderid>1032</orderid>
ay ililipat sa <shipdate>2001-07-13</shipdate>.
</letter>

Ang sumusunod na schema ay inilalarawan ang element na "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>

Komentaryo:Upang makita ang data ng character sa gitna ng mga anak ng "letter", dapat itong itala ang "mixed" bilang "true". Ang tag na <xs:sequence> (name, orderid, at shipdate) ay nangangahulugan na ang mga inilalagang element ay dapat lumitaw ayon sa pagkakasunod-sunod sa loob ng element na "letter".

Maaari namin ring magbigay ng pangalan sa element ng "complexType", at ipaalam na ang attribute na type ng element na "letter" ay tumutukoy sa pangalan ng "complexType" na ito (sa pamamagitan ng paraan na ito, maaaring gamitin ng ilang mga element ang parehong komplikadong uri):

<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>