XSD smíšený obsah
Prvek smíšeného komplexního typu může obsahovat atributy, prvky a text.
Komplexní typy se smíšeným obsahem
Prvek XML, „letter“, který obsahuje text i další prvky:
<letter>
Dear Mr. <name>John Smith</name>.
Your order <orderid>1032</orderid>
will be shipped on <shipdate>2001-07-13</shipdate>.
</letter>
Následující schéma deklaruje prvek "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>
Poznámka: Aby se znaková data objevila mezi podřízenými prvky "letter", smíšený atribut musí být nastaven na "true". Značka <xs:sequence> znamená, že definované prvky (name, orderid a shipdate) se musí objevit v tomto pořadí uvnitř prvku „letter“.
Můžeme také pojmenovat prvek complexType a nechat prvek „letter“ mít atribut typu, který odkazuje na název complexType (pokud použijete tuto metodu, několik prvků může odkazovat na stejný komplexní typ):
<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>