XSD 仅含文本复合元素
仅含文本的复合元素可包含文本和属性。
仅含文本的复合元素
此类型仅包含简易的内容(文本和属性),因此我们要向此内容添加 simpleContent 元素。当使用简易内容时,我们就必须在 simpleContent 元素内定义扩展或限定,就像这样:
- <xs:element name="某个名称">
- <xs:complexType>
- <xs:simpleContent>
- <xs:extension base="basetype">
- ....
- ....
- </xs:extension>
- </xs:simpleContent>
- </xs:complexType>
- </xs:element>
或者:
- <xs:element name="某个名称">
- <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:complexType>
- </xs:element>
我们也可为 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>