学习笔记——XML Schema简介及命名空间

来源:互联网 发布:怎么看淘宝旗舰店真假 编辑:程序博客网 时间:2024/04/27 21:30

XML Schema Definition(XSD)
XML本身也是XML文档,其根元素是<schema.../>

<schema.../>支持的属性:

elementFormDefault=qualified | unqualified:用于指定在XML文档中使用该Schema中的定义的局部元素时是否必须命名空间。

atttributeFormDefault=qualified | unqualified:用于指定在XML文档中使用该Schema中的定义的局部属性时是否必须命名空间。

 

 

Schema使用<element..,/>定义元素。

Schema使用<attribute.../>定义属性,属性必须指明其所属的元素后,方可使用。

 

Schema有两种方式指定元素或属性的类型:

1:直接type属性指定一个全局的数据类型,type的值是一个数据类型名。

2:使用局部的数据类型。

 

使用全局数据类型示例:

 

<?xml version="1.0" encoding="GBK"?><xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"><xs:element name="element1" type="xs:string"/><xs:attribute name="attribute1" type="xs:boolean"/></xs:schema>

 

使用局部数据类型示例:

 

<?xml version="1.0" encoding="GBK"?><xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"><xs:element name="element1"><xs:simpleType><xs:restriction base="xs:int"><xs:maxInclusive value="100"/></xs:restriction></xs:simpleType></xs:element></xs:schema> 

命名空间

XML Schema文件的命名空间方法:

 xxx.xsd

 

 <?xml version="1.0" encoding="GBK"?><xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"xmlns="http://www.namespace.org/Schema"targetNamespace="http://www.namespace.org/Schema">...</xs:schema>

xmlns[:xxx]属性作用:引入语义约束,xxx为该命名空间的限定名,

http://www.w3.org/2001/XMLSchema是XML Schema语义约束的命名空间。

xmlns=http://www.namespace.org/Schema表明使用该命名空间的组件,无需使用前缀。

targetNamespace=http://www.namespace.org/Schema表明该Schema定义的元素、属性和类型等Schema组件放在那个命名空间下。

  

在XML中引用Schema的方法:

 

<?xml version="1.0" encoding="GBK"?><web-app xmlns="http://java.sun.com/xml/ns/javaee"  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  xsi:schemaLocation="http://java.sun.com/xml/ns/javaee                      http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0"></web-app>