XSD- leë elemente
'n Leë komplekse element kan nie inhoud hê nie, slegs eienskappe.
Komplekse leë elemente
'n Leë XML-element:
<product prodid="1345" />
Die "produk"-element hierbo het glad geen inhoud nie. Om 'n tipe sonder inhoud te definieer, moet ons 'n tipe definieer wat elemente in sy inhoud toelaat, maar ons verklaar nie eintlik enige elemente soos hierdie nie:
<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>
In die voorbeeld hierbo definieer ons 'n komplekse tipe met 'n komplekse inhoud. Die complexContent-element dui aan dat ons van voorneme is om die inhoudsmodel van 'n komplekse tipe te beperk of uit te brei, en die beperking van heelgetal verklaar een kenmerk maar stel geen elementinhoud in nie.
Dit is egter moontlik om die "produk" element meer kompak te verklaar, soos volg:
<xs:element name="product">
<xs:complexType>
<xs:attribute name="prodid" type="xs:positiveInteger"/>
</xs:complexType>
</xs:element>
Of jy kan die kompleksType-element 'n naam gee, en laat die "produk"-element 'n tipe-kenmerk hê wat na die naam van die kompleksType verwys (as jy hierdie metode gebruik, kan verskeie elemente na dieselfde komplekse tipe verwys):
<xs:element name="product" type="prodtype"/>
<xs:complexType name="prodtype">
<xs:attribute name="prodid" type="xs:positiveInteger"/>
</xs:complexType>