关闭

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

685人阅读 评论(0) 收藏 举报

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>
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:77644次
    • 积分:1293
    • 等级:
    • 排名:千里之外
    • 原创:54篇
    • 转载:3篇
    • 译文:0篇
    • 评论:0条
    文章分类
    文章存档