最新のWeb開発のチュートリアル
 

XSD空要素


空の複雑な要素が内容を持つことができない、属性のみ。


複雑な空要素

空のXML要素:

<product prodid="1345" />

"product"上記の要素は、すべてのコンテンツがありません。 コンテンツのないタイプを定義するには、我々はこのように、そのコンテンツの要素を許可しますが、私たちが実際に任意の要素を宣言していないタイプを定義する必要があります。

<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>

上記の例では、複雑な内容を持つ複合型を定義します。 我々は複合型の内容モデルを制限または拡張する予定、と整数の制限は、属性を1つ宣言しますが、任意の要素の内容を紹介しません。complexContentを要素信号

しかし、宣言することが可能である"product"のように、よりコンパクト素子。

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

それとも、complexType要素に名前を付け、そしてせることができ"product"の要素を(この方法を使用する場合、いくつかの要素が同じ複合型を参照することができます)のcomplexTypeの名前を指しtype属性を持っています:

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

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