XML常用标签的介绍
1、引言
在使用Java时经常遇到使用XML的情况,而因为对XML不太了解,经常配置时粘贴复制,现在对它进行总结,以备以后使用。
2、XML常见的定义
(1)XML(Extensible Markup Language):即可扩展标记语言,它的特性如下:
- 可扩展标记语言是一种很像超文本标记语言的标记语言。
- 它的设计宗旨是传输数据,而不是显示数据。
- 它的标签没有被预定义。您需要自行定义标签。
- 它被设计为具有自我描述性。
(2)schema:用于描述XML文档结构的文件,它用于可替代文档类型定义(外语缩写:DTD);XML Schema有时又称为XML Schema Definition,所以也会称为XSD。因此Schema文件是以xsd为后缀的。它主要规定了哪些元素和属性可以在XML中出现,哪些不可以出现。并且schema还可以定义数据类型。
schema描述某个指定的国家的实例:
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="country" type="Country"> <xs:complexType name="Country"> <xs:sequence> <xs:element name="name" type="xs:string"/> <xs:element name="population" type="xs:decimal"/> </xs:sequence> </xs:complexType> </xs:element> </xs:schema>
一份遵从这个视图的XML文件:
<country
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="country.xsd"> <name>France</name> <population>59.7</population> </country>
(3)xmlns(XML Namespaces):即XML的命名空间,因为XML文件的标签名称都是自定义的,自己写的和其他人定义的标签很有可能会重命的现象,所以用namespace来区分这个xml文件和其他的xml文件,类似于java中的package。
(4)xsi(xml schema instance):是指xml文件遵守xml规范,是指具体用到的schema资源文件里定义的元素所准守的规范。例如:
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
上面的例子定义了一个Schema的实例命名空间。只有作了这个定义才能使用schemaLocation属性。xsi:schemaLocation是指具体用到的schema资源
xsi:schemaLocation= "http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd"
schemaLocation属性由成对的值组成,可以有多对。因为一个XML文档可以有多个命名空间,所以schemaLocation值可以有多对。第一个"http://www.springframework.org/schema/beans"是要使用schema进行有效验证的命名空间的元素。而"http://www.springframework.org/schema/beans/spring-beans.xsd"是要使用的schema文档的路径。
3、XML实例
XML实例如下所示:
<?xml version="1.0" encoding= "UTF-8"?> <beans xmlns= "http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:util="http://www.springframework.org/schema/util" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util.xsd"> ..... </beans>
在上面的实例中,可知beans是该XML文件的根节点标签名称。xmlns:util是指命名空间util,util命名空间的Xsi(XML schema instance)的地址为"http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util.xsd"。