XSD gemengde inhoud
Een element van het gemengde complexe type kan attributen, elementen en tekst bevatten.
Complexe typen met gemengde inhoud
Een XML-element, "letter", dat zowel tekst als andere elementen bevat:
<letter>
Dear Mr. <name>John Smith</name>.
Your order <orderid>1032</orderid>
will be shipped on <shipdate>2001-07-13</shipdate>.
</letter>
Het volgende schema declareert het "letter" -element:
<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>
Opmerking: om tekengegevens tussen de onderliggende elementen van "letter" te laten verschijnen, moet het gemengde attribuut worden ingesteld op "true". De <xs:sequence>-tag betekent dat de gedefinieerde elementen (naam, bestel-ID en verzenddatum) in die volgorde moeten verschijnen in een "letter" -element.
We zouden het element complexType ook een naam kunnen geven en het element "letter" een type-attribuut kunnen geven dat verwijst naar de naam van het complexType (als je deze methode gebruikt, kunnen verschillende elementen naar hetzelfde complexe type verwijzen):
<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>