Latest web development tutorials

XML-схемы сложный пустой элемент

Высыпать содержимое составных элементов не может содержать только содержать атрибуты.


Составные пустые элементы:

Пустой XML-элемент:

<product prodid="1345" />

Выше "продукт" не содержание элемента. Чтобы определить тип содержимого нет, мы должны объявить тип может содержать только элементы в его содержании, но на самом деле мы не объявить какой-либо элемент, как это:

<xs:element name="product">
<xs:complexType>
<xs:complexContent>
<xs:restriction base="xs:integer">
<xs:attribute name="prodid" type="xs:positiveInteger"/>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
</xs:element>

В приведенном выше примере, мы определяем сложный тип со сложным содержанием. ComplexContent элемент дает сигнал, что мы намерены определить или расширить модель содержимого сложного типа, и целое значение, определяющее свойство объявляется, но не вносит каких-либо содержимое элемента.

Тем не менее, это утверждение может быть более компактными элементами "продукт":

<xs:element name="product">
<xs:complexType>
<xs:attribute name="prodid" type="xs:positiveInteger"/>
</xs:complexType>
</xs:element>

Или вы можете дать имя к ComplexType элемента, а затем установить атрибут типа "продукт" и ссылку на это имя ComplexType элемента (с помощью этого метода, некоторые элементы могут ссылаться на тот же сложный тип):

<xs:element name="product" type="prodtype"/>

<xs:complexType name="prodtype">
<xs:attribute name="prodid" type="xs:positiveInteger"/>
</xs:complexType>