
1.2 什么是XML
XML是一种用于描述数据的标记语言,它不提供固定的标记,而是允许用户自定义数量不限的标记来描述数据,且允许使用嵌套的信息结构。不同于HTML,XML的重点在于表示数据,它提供了一个直接处理数据的通用方法。HTML着重描述数据的显示格式,而XML着重描述的是数据内容。XML文档以.xml为后缀。编写XML文档不需要特别的软件,只要有一个文本编辑器就可以,比如“记事本”程序。先看一个简单的XML文档。
<?xml version="1.0" encoding="UTF-8"?> <books ISBN ="9787544238212"> <title>The Book Thief</title> <price>25</price> <quantity>10</quantity> </books>
XML文档的第1行是XML声明,定义了XML的版本和使用的字符编码。在这个例子中,代码的第1行XML声明定义了XML的版本(目前发布的是1.0版本),使用的字符编码是UTF-8字符集。代码的第2行定义了文档的根元素<books>,是XML文档必须声明的元素。代码的第3~5行定义了根元素的子元素(在这里有3个子元素<title>、<price>和<quantity>)。最后一行的代码则定义了根元素的结束。
每个XML元素都以一个起始标记(opening tag)“<”开始,以一个结束标记(closing tag)“</”收尾,比如<title>就是一个起始标记,</title>就是一个结束标记。XML元素可以带有属性,属性值要加引号,比如例子中的ISBN就是<books>的属性,属性值为“9787544238212”。XML的标记(tag)是可以自定义的,用来描述数据,比如例子中的<title>标记表示这个元素内的数据是书名,The Book Thief就是一个具体书名。用户可以修改标记,比如写成下面的形式。
<booktitle>The Book Thief</booktitle>
由于XML的标记可以自定义,因而可以用XML语句来描述和存储各种内容的数据,比如有关电影或者家具的数据。也就是说,各种内容的数据,都可以通过XML描述和存储起来。从结构上说,XML文档是一棵节点树。一个XML文档只有一个根节点,但可以包括数量不限的子节点。
根据上面的例子,可以对XML总结如下。
·XML是一种可扩展的标记语言。
·XML没有固定的标记,用户可以自行定义标记来描述数据。
·XML主要用来描述和存储数据。
·XML具有自我描述性。
·XML是树状结构的文档,是个结构化的文档。
·XML文档使用的是文本格式。