seqence!:
.xsd
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:element name="书">
<xs:complexType>
<!--seqence中的元素是有序的!-->
<!--minOccurs中意思seqence中的元素最少出现一次!-->
<!--maxOccurs中意思seqence中的元素最大出现次数! unbounded表示不封顶!-->
<xs:sequence minOccurs="1" maxOccurs="unbounded">
<xs:element name="书名"></xs:element>
<xs:element name="作者"></xs:element>
<xs:element name="价钱"></xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
.XML
<?xml version="1.0" encoding="UTF-8"?>
<书 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="Untitled6.xsd">
<书名></书名>
<作者></作者>
<价钱></价钱>
<书名></书名>
<作者></作者>
<价钱></价钱>
<!--maxOceucurs可出现多次!但是如果出现多次必须按照顺序成组的出现!不能单个出现!!-->
</书>
complexType 的属性:
complexType 中还有 <all> 这个没有顺序! </xs:all>
但是:
<xs:all minOccurs="0" maxOccurs="1"> </xs:all>
all里面的内容只能出现0或1次!而且是无须的!
注意:complexType中的元素默认都是出现一次!
<xs:choice > </xs:choice>
默认只能出现choice中的一个元素 只能随便出现一个
如果设置了无上限 那么想出多少就出现多少:
<xs:choice maxOccurs="unbounded" > </xs:choice>
complexType 和simpleType 区别: |
1.simpleType 类型的元素中不能包含元素或者属性
2.当需要生命一个元素的子元素和/或者属性时,用
complexType,
3.当需要基于内置的基本数据类型定义一个新的数据类型时,用simpleType