Latest web development tutorials

XML Schemaの複雑な空の要素

属性が含まれだけ含めることはできません複合要素の内容を空にします。


コンポジット空要素:

空の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要素に名前を付けることができ、その後、(この方法を使用することによって、いくつかの要素が同じ複合型を参照することができます)type属性 "製品"を設定し、このcomplexType要素名を参照してください。

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

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