Смешанный сложный тип элемента может содержать атрибуты, элементы и текст.
Сложные типы со смешанным содержимым
XML - элемент, "letter" , который содержит текст и другие элементы:
<letter>
Dear Mr.<name>John Smith</name>.
Your order <orderid>1032</orderid>
will be shipped on <shipdate>2001-07-13</shipdate>.
</letter>
Следующая схема объявляет "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>
Note: Чтобы включить символьных данных, отображаемых между дочерними элементами "letter" , то mixed атрибут должен быть установлен в положение "true" . <xs:sequence> Тег означает , что элементы , определенные (name, orderid and shipdate) должны появляться в указанном порядке внутри "letter" элемента.
Мы могли бы также дать 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>