7. XSD 简易元素

来源:互联网 发布:领航者软件lhzsoft 编辑:程序博客网 时间:2024/04/29 00:46

1.什么是简易元素?
这里写图片描述


2.定义简易元素

<xs:element name="xxx" type="yyy"/>

此处 xxx 指元素的名称,yyy 指元素的数据类型。XML Schema 拥有很多内建的数据类型。
这里写图片描述

简易元素的默认值和固定值
这里写图片描述


3.XSD 属性

所有的属性均作为简易类型来声明。

什么是属性?

简易元素无法拥有属性。假如某个元素拥有属性,它就会被当作某种复合类型。但是属性本身总是作为简易类型被声明的。

4.如何声明属性?

<xs:attribute name="xxx" type="yyy"/>

这里写图片描述

这里写图片描述
这里写图片描述


5.XSD 限定 / Facets

限定(restriction)用于为 XML 元素或者属性定义可接受的值。对 XML 元素的限定被称为 facet。

对值的限定
下面的例子定义了带有一个限定且名为 “age” 的元素。age 的值不能低于 0 或者高于 120:

<xs:element name="age"><xs:simpleType>  <xs:restriction base="xs:integer">    <xs:minInclusive value="0"/>    <xs:maxInclusive value="120"/>  </xs:restriction></xs:simpleType></xs:element> 

对一组值的限定
如需把 XML 元素的内容限制为一组可接受的值,我们要使用枚举约束(enumeration constraint)。
下面的例子定义了带有一个限定的名为 “car” 的元素。可接受的值只有:Audi, Golf, BMW:

<xs:element name="car"><xs:simpleType>  <xs:restriction base="xs:string">    <xs:enumeration value="Audi"/>    <xs:enumeration value="Golf"/>    <xs:enumeration value="BMW"/>  </xs:restriction></xs:simpleType></xs:element> 

上面的例子也可以被写为:

<xs:element name="car" type="carType"/><xs:simpleType name="carType">  <xs:restriction base="xs:string">    <xs:enumeration value="Audi"/>    <xs:enumeration value="Golf"/>    <xs:enumeration value="BMW"/>  </xs:restriction></xs:simpleType>

注释:在这种情况下,类型 “carType” 可被其他元素使用,因为它不是 “car” 元素的组成部分

对一系列值的限定
如需把 XML 元素的内容限制定义为一系列可使用的数字或字母,我们要使用模式约束(pattern constraint)。
下面的例子定义了带有一个限定的名为 “letter” 的元素。可接受的值只有小写字母 a - z 其中的一个

http://www.w3school.com.cn/schema/schema_facets.asp

0 0
原创粉丝点击