Latest web development tutorials

XML-схемы типа комплекс - смешанное содержание

Смешанный тип композитный материал может содержать атрибуты, элементы и текст.


Сложный тип со смешанным содержанием

XML-элемент, "буква", содержащий текст и другие элементы:

<letter>
Dear Mr.<name>John Smith</name>.
Your order <orderid>1032</orderid>
will be shipped on <shipdate>2001-07-13</shipdate>.
</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>

Примечание: Для того, чтобы символьные данные могут появляться между "буквой" из подэлементов, смешанный атрибут должен быть установлен в положение "истина".<Xs: последовательность> тега элемента (имя, OrderID и ShipDate) означает, что определение должно появиться в последовательности внутри элемента "буквы".

Мы также можем дать имя для элемента ComplexType, и пусть атрибут "буква" тип элемента ссылается на имя 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>