XSD(XML Schema Definition)学习笔记
XSD(XML Schema Definition) XML模式定义
XSD元素
元素 | 解释 |
---|
element | 定义元素。 |
attribute | 定义一个属性。 |
sequence | 要求子元素必须按顺序出现。每个子元素可出现 0 到任意次数。 |
complexType | 定义复杂类型。 |
restriction | 定义对 simpleType、simpleContent 或 complexContent 的约束。 |
choice | 仅允许在 <choice> 声明中包含一个元素出现在包含元素中。 |
all | 规定子元素能够以任意顺序出现,每个子元素可出现零次或一次。 |
annotation | annotation 元素是一个顶层元素,规定 schema 的注释。 |
any | 使创作者可以通过未被 schema 规定的元素来扩展 XML 文档。 |
anyAttribute | 使创作者可以通过未被 schema 规定的属性来扩展 XML 文档。 |
appInfo | 规定 annotation 元素中应用程序要使用的信息。 |
attributeGroup | 定义在复杂类型定义中使用的属性组。 |
complexContent | 定义对复杂类型(包含混合内容或仅包含元素)的扩展或限制。 |
documentation | 定义 schema 中的文本注释。 |
extension | 扩展已有的 simpleType 或 complexType 元素。 |
field | 规定 XPath 表达式,该表达式规定用于定义标识约束的值。 |
group | 定义在复杂类型定义中使用的元素组。 |
import | 向一个文档添加带有不同目标命名空间的多个 schema。 |
include | 向一个文档添加带有相同目标命名空间的多个 schema。 |
key | 指定属性或元素值(或一组值)必须是指定范围内的键。 |
keyref | 规定属性或元素值(或一组值)对应指定的 key 或 unique 元素的值。 |
list | 把简单类型定义为指定数据类型的值的一个列表。 |
notation | 描述 XML 文档中非 XML 数据的格式。 |
redefine | 重新定义从外部架构文件中获取的简单和复杂类型、组和属性组。 |
schema | 定义 schema 的根元素。 |
selector | 指定 XPath 表达式,该表达式为标识约束选择一组元素。 |
simpleContent | 包含对 complexType 元素的扩展或限制且不包含任何元素。 |
simpleType | 定义一个简单类型,规定约束以及关于属性或仅含文本的元素的值的信息。 |
union | 定义多个 simpleType 定义的集合。 |
unique | 指定属性或元素值(或者属性或元素值的组合)在指定范围内必须是唯一的。 |
定义素定
限定 | 解释 |
---|
name | 元素名称 |
type | 元素样式 |
default | 元素默认值 |
fixed | 元素固定值 |
ref | 资源 |
value | 资源 |
样式
样式 | 解释 |
---|
xs:string | 字符串 |
xs:decimal | 数字 |
xs:integer | 整形 |
xs:boolean | 布尔 |
xs:date | 日期 |
xs:time | 时间 |
XSD 限定
限定 | 解释 |
---|
enumeration | 定义可接受值的一个列表 |
fractionDigits | 定义所允许的最大的小数位数。必须大于等于0。 |
length | 定义所允许的字符或者列表项目的精确数目。必须大于或等于0。 |
maxExclusive | 定义数值的上限。所允许的值必须小于此值。 |
maxInclusive | 定义数值的上限。所允许的值必须小于或等于此值。 |
maxLength | 定义所允许的字符或者列表项目的最大数目。必须大于或等于0。 |
minExclusive | 定义数值的下限。所允许的值必需大于此值。 |
minInclusive | 定义数值的下限。所允许的值必需大于或等于此值。 |
minLength | 定义所允许的字符或者列表项目的最小数目。必须大于或等于0。 |
pattern | 定义可接受的字符的精确序列。 |
totalDigits | 定义所允许的阿拉伯数字的精确位数。必须大于0。 |
whiteSpace | 定义空白字符(换行、回车、空格以及制表符)的处理方式。 |