XML Schema教程
1.声明:
<?xml version="1.0" encoding="UTF-8" ?>
2.扩展名:
xsd
3.根元素
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
4.元素定义
<xsd:element type="类型" maxOccurs="最多出现次数" minOccurs="最少出现次数"/>
<xsd:element ref="引用名称"/> 引用
5.元素修饰:
<xsd:complexType/> 复杂类型
<xsd:sequence/>元素按顺序出现
<xsd:choice> 二选一
6.元素类型
a.简单类型
b.自定义简单类型
<xsd:simpleType >
<xsd:restriction base="xsd:string"> <!-- 说明改简单元素是基于 xsd:string类型的-->
<xsd:pattern value="/d{1}-/d{4}-/d{4}-/d{1}"/> <!-- 正则表达式 -->
<xsd:enumeration value="a"/> <!-- 列举,只能选这其中的值 表示改简单元素只能选择a或b -->
<xsd:enumeration value="b"/> <!-- 列举,只能选这其中的值 -->
<!-- 最大值 和最小值 应该适用于数字类型GW?-->
<xsd:minInclusive value="1"/>
<xsd:maxInclusive value="10"/>
</xsd:restriction>
</xsd:simpleType>
7.属性定义
<xsd:attribute type="xsd:string" use="是否必须required|optional|prohibited(无值)" default="默认值"/>
<xsd:attributegroup/>属性组
8.完整示例
<?xml version="1.0"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:element > <!-- 元素定义 -->
<xsd:complexType> <!-- 复杂类型 -->
<xsd:sequence> <!-- 元素按顺序出现-->
<xsd:element ref="orderItem" maxOccurs="10"/> <!-- 引用 最大出现次数-->
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element >
<xsd:complexType>
<xsd:sequence></xsd:sequence>
<xsd:attributeGroup ref="orderItemAttributes"/> <!-- 属性组 -->
</xsd:complexType>
</xsd:element>
<xsd:attributeGroup >
<xsd:attribute type="idType" use="required"/> <!-- 属性 必须 -->
<xsd:attribute type="xsd:integer" default="1"/> <!-- 属性 默认值-->
<xsd:attribute type="pageNum" use="required"/>
</xsd:attributeGroup>
<xsd:simpleType > <!-- 自定义简单类型 -->
<xsd:restriction base="xsd:string"> <!-- 基于什么类型 -->
<xsd:pattern value="/d{1}-/d{4}-/d{4}-/d{1}"/> <!-- 正则表达式 -->
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType>
<xsd:restriction base="xsd:integer">
<xsd:enumeration value="10"/> <!-- 列表 -->
<xsd:enumeration value="20"/>
<xsd:enumeration value="30"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:schema>