定义属性
加入实例文档的元素包含属性,怎么办呢?
在 complexType 中,首先定义子元素,然后再定义元素的属性。
customer2.xml ---------------
No.237, Road Waitan, Shanghai
那就这样写Schema文档: customer2.xsd ------------------
1:
2: 4: 7: 10: 11: 15:
很简单,在
定义相同子元素的数量
先看这个简单的订购数据实例文档:
order.xml ---------
假设
order.xsd
--------------------
1:
2: 4: 7: 12:
第7行中的maxOccurs属性为10,代表orderItem元素可以最大有10个。如果,不设定元素个数,则可以用maxOccurs=\来定义.
类似,如果要定义最小值,可以使用minOccurs,比如下面这句:
定义可选的子元素 假如上面的订书数据中,可以用书名或者书号任一一种订购,则实例文档可能如下: order2.xml ----------------- 这时书写Schema文档还需要使用choice元素。 choice 表示从提供的元素中选择某一个元素。 order2.xsd ------------------------- 1: 2: 4: 7: 12: 15: 21: 稍微更复杂的可选项子元素,可以设置缺省值 再稍微修改一下订书数据的实例文档: order3.xml ----------------- 这里假定 如何修改Schema文档呢? order3.xsd ----------------- 1: 2: 4: 7: 12: 16: 19: 24: 19行中的quantity最少出现值为0,也就是可以有,也可以没有。 当然,也可以直接在 XML Schema内置简单类型 内建于XML Schema的简单类型有44种。他们在XML Schema推荐标准的第二部分中公布, 下面这是一张内置类型的层次结构图: 自定义简单类型 如果内置简单类型的44种还不能满足要求,怎么办呢?下面学习自定义简单类型。(XML的扩展性充分体现在这里) 例如这个实例文档: order4.xml ----------------- ID是一个标准的ISBN编码,我们怎么定义这个ISBN编码呢? idType是一个自定义的简单类型。 我们对它做了限制: value=\这是一个正则表达式,关于正则表达式,以后再介绍。嘻嘻! 利用这个自定义的简单类型,我们可以重新写Schema文档: order4.xsd --------------- 1: 2: 4: