XML Schema 複合元素 – 僅包含文本
XSD 僅包含文字
僅包含文字的複合元素可包含文字和屬性。
僅包含文字的複合元素
此類型僅包含簡易的內容(文字和屬性),因此我們要向此內容新增 simpleContent 元素。當使用簡易內容時,我們必須在 simpleContent 元素內定義擴充或限定,就像這樣:
<xs:element name="somename">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="basetype">
....
....
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
或:
<xs:element name="somename">
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="basetype">
....
....
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:complexType>
<xs:simpleContent>
<xs:extension base="basetype">
....
....
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
或:
<xs:element name="somename">
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="basetype">
....
....
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
提示: 請使用 extension 或 restriction 元素來擴充或限制元素的基本簡易類型。 這裡有一個XML 元素的例子,"shoesize",其中只包含文字:
<shoesize country="france">35</shoesize>
下面這個範例宣告了一個複合類型,其內容被定義為整數值,而"shoesize" 元素含有名為"country" 的屬性:
<xs:element name="shoesize" >
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:integer">
<xs:attribute name="country" type="xs:string" />
</xs:extension>
</xs:simpleContent><xs:element name="shoesize" >
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:integer">
<xs:attribute name="country" type="xs:string" />
</xs:extension>
我們也可為complexType 元素設定一個名稱,並讓"shoesize" 元素的type 屬性來引用此名稱(透過使用此方法,若干元素皆可引用相同的複合型別):
#<xs:element name="shoesize" type="shoetype"/>
<xs:complexType name="shoetype">
<xs:simpleContent>
<xs:extension base="xs:integer">
<xs:attribute name="country" type="xs:string" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="shoetype">
<xs:simpleContent>
<xs:extension base="xs:integer">
<xs:attribute name="country" type="xs:string" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>