当前位置: 首页 > 图文教程 > XML家族 > XML Schema > 如何定义相同子元素的数量

XML Schema
用XML Schema验证数据有效性
XML Schema学习(1)
XML Schema学习(2)
Schema之战:XML Schema vs. RELAX NG
XML Schema学习笔记
最简单的Schema文档
含子元素的稍复杂Schema文档
含子元素和孙元素的更复杂Schema文档
如何定义属性
如何定义相同子元素的数量
JAVA中使用Schema校验XML
XML Schema 概述
xml schema全接触
schema 编译(java & xml & schema)
XML Schema用法
XML Schema教程
XML Schema定义
XML Schema您了解吗?
XMLSchema中的key和unique
XML Schema 简介

XML Schema 中的 如何定义相同子元素的数量


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 265 ::
收藏到网摘: n/a

先看这个简单的订购数据实例文档:

order.xml
---------
<order>
  <orderItem>Accounting Book</orderItem>
  <orderItem>Taxation Book</orderItem>
</order>

假设<orderItem>元素,即每次的订购书目不能超过10种,那该怎么写这个Schema文档呢?这里要用到<element>的maxOccurs属性。

order.xsd
--------------------
1:<?xml version="1.0"?>
2:<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
3:
4:  <xsd:element name="order">
5:    <xsd:complexType>
6:      <xsd:sequence>
7:        <xsd:element name="orderItem"   type="xsd:string"  maxOccurs="10" />
8:      </xsd:sequence>
9:    </xsd:complexType>
10:  </xsd:element>
11:
12:</xsd:schema>

第7行中的maxOccurs属性为10,代表orderItem元素可以最大有10个。如果,不设定元素个数,则可以用maxOccurs="unbounded"来定义.

类似,如果要定义最小值,可以使用minOccurs,比如下面这句:
<xsd:element name="orderItem" type="xsd:string" minOccurs="5" maxOccurs="10"/>
这两个属性缺省值都是1。