| « | June 2026 | » | | 日 | 一 | 二 | 三 | 四 | 五 | 六 | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | | | | | |
| 公告 |
| 暂无公告... |
| Blog信息 |
|
blog名称: 日志总数:15 评论数量:4 留言数量:0 访问次数:46290 建立时间:2005年4月21日 |

| |
|
[收藏] -- 作者:teiki 文章收藏
xyin2005 发表于 2005/4/21 10:02:57 |
| 本文转载自W3CHINA.ORG讨论区(BBS.W3CHINA.ORG) 原文链接作者:teiki以下为原文:跟我学XML Schema(10):定义属性
最后,我们再来讲讲元素的属性如何在Schema文档中定义。
比如上面的order.xml实例文档中:
<order><orderItem id="7-5058-3496-7" /></order>
对此,我们在Schema文档中采用一个attribute来定义:
order.xsd---------<xsd:element name="orderItem"><xsd:complexType><xsd:sequence> ←空元素</xsd:sequence> <!--定义该元素属性--><xsd:attribute name="id" type="xsd:string"/></xsd:complexType></xsd:element>
那么,实例文档中该属性值是必须的还是可有可无的呢?我们可以这样限制:
<xsd:attribute name="id" type="idType" use="required"/>
这里我们讲id属性类型作为一种自定义数据类型idType。而且,用attribute元素的use属性来定义是否是必须的属性。required是必须值,optional是可选值,prohibited是无属性值。
那么对于属性的缺省值,我们怎么定义呢?比如:<order><orderItem id="4-8443-1780-6" quantity="3"/></order>
我们还可以用attribute元素的另一个属性default来定义:<xsd:attribute name="quantity" type="xsd:integer" default="1"/>
所以,我们可以重新写出一个Schema文档:
order2.xsd--------------<xsd:element name="orderItem"><xsd:complexType><xsd:sequence></xsd:sequence><xsd:attribute name="id" type="idType" use="required"/><xsd:attribute name="quantity" type="xsd:integer" default="1"/></xsd:complexType></xsd:element><完>参与讨论本主题 |
|
|