Elemen Kosong XSD
Elemen kompleks kosong tidak dapat memiliki konten, hanya atribut.
Elemen Kosong yang Kompleks
Elemen XML kosong:
<product prodid="1345" />
Elemen "produk" di atas tidak memiliki konten sama sekali. Untuk mendefinisikan tipe tanpa konten, kita harus mendefinisikan tipe yang mengizinkan elemen dalam kontennya, tetapi sebenarnya kita tidak mendeklarasikan elemen apa pun, seperti ini:
<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>
Dalam contoh di atas, kami mendefinisikan tipe kompleks dengan konten yang kompleks. Elemen complexContent menandakan bahwa kami bermaksud untuk membatasi atau memperluas model konten dari tipe kompleks, dan pembatasan integer mendeklarasikan satu atribut tetapi tidak memperkenalkan konten elemen apa pun.
Namun, dimungkinkan untuk mendeklarasikan elemen "produk" dengan lebih ringkas, seperti ini:
<xs:element name="product">
<xs:complexType>
<xs:attribute name="prodid" type="xs:positiveInteger"/>
</xs:complexType>
</xs:element>
Atau Anda dapat memberi nama pada elemen complexType, dan membiarkan elemen "produk" memiliki atribut type yang mengacu pada nama complexType (jika Anda menggunakan metode ini, beberapa elemen dapat merujuk ke tipe kompleks yang sama):
<xs:element name="product" type="prodtype"/>
<xs:complexType name="prodtype">
<xs:attribute name="prodid" type="xs:positiveInteger"/>
</xs:complexType>