XML Schema 基础
【1】XML Schema 简介: (1)定义可出现在文档中的元素; (2)定义可出现在文档中的属性; (3)定义哪个元素是子元素; (4)定义子元素的次序; (5)定义子元素的数目; (6)定义元素是否为空,或者是否可包含文本; (7)定义元素和属性的数据类型; (8)定义元素和属性的默认值以及固定值。 【2】初始创建Schema: <?xml version="1.0" encoding="UTF-8"?> (1)<schema> 元素是每一个 XML Schema 的根标签; (2)"xmlns:xs="http://www.w3.org/2001/XMLSchema" :显示 schema 中用到的元素和数据类型来自命名空间"xmlns="http://www.w3.org/2001/XMLSchema",同时它还规定了来自命名空间 "http://www.w3.org/2001/XMLSchema" 的元素和数据类型应该使用前缀 xs。 (3)targetNamespace="http://www.example.org/NewSchema":声明一个我们自己的命名空间。 (4)xmlns:tns="http://www.example.org/NewSchema" :默认的命名空间。 (5)elementFormDefault="qualified":指出任何 XML 实例文档所使用的且在此 schema 中声明过的元素必须被命名空间限定。 【3】在 XML 文档中引用 Schema: <?xml version="1.0" encoding="UTF-8"?> (1)xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance":入我们的shema文档需要使用这个命名空间中的属性. (2)xsi:schemaLocation="http://www.example.org/NewXMLSchemaNewSchema.xsd":使用上面引入的命名空间xsi中的schemalocation读取我们的schema文档,首先要填入我们的schema文档的命名空间的uri,然后空格,再填入我们的schema文档的名字。 (3)xmlns="http://www.example.org/NewSchema">:引入命名空间的方法,将我们的schema文档的命名空间引入。 【4】对简单元素内容的约束: (1)首先在我们要约束的元素中添加一个simpleType的标签; (2)然后在simpleType中添加一个restricetion标签,这个标签中有一个重要的属性:base,需要填入我们这个信息类型是基于哪一种类型的; (3)在restricetion标签中,我们就可以加入我们对信息内容的一个具体的约束了。 (4)在restricetion标签中,可以对信息进行枚举约束——enumeration; 例子:<element name="reason"> (5)大小值的限定 mininclusive 设定最小值,这种包含最小值的 例子: <element name="root"> (6)样式约束: 【5】复合元素的约束: (1)首先我们在要约束的元素中添加一个complexType的标签; 【6】属性定义:简易元素无法拥有属性。假如某个元素拥有属性,它就会被当作某种复合类型。但是属性本身总是作为简易类型被声明的。 格式:<xs:attribute name="xxx" type="yyy"/> xxx 指属性名称,yyy 则规定属性的数据类型。XML Schema 拥有很多内建的数据类型。 属性的默认值和固定值:<xs:attribute name="lang" type="xs:string" default="EN"/>——默认值“EN” <xs:attribute name="lang" type="xs:string" fixed="EN"/>——固定值“EN” (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |