可扩展标记语言,作为一种通用的数据交换格式,是为了实现计算机之间的文档交换而设计的文档内容编写规范.
XML的根本作用就是要统一信息的结构,使文档对人和机器都可阅读.
<?xml version="1.0" encoding="GB2312" ?>
<书架>
<书>
<书名>aa</书名>
<作者>bb</作者>
<售价>cc</售价>
</书>
</书架>
其中<书架>、<书>、<书名>等都是用户自己创建的标记。
XML只是描述数据的结构和内容,它没有固定的标记,允许用户随便发明和创造自己的标记,标记名可以是非英文字符,这就是XML的可扩展性。
XML是结构化的,主要体现在
1)每一部分(每一个元素)都和其他元素有关联,这种关联就形成了树结构
2)标记本身的含义与它描述的信息相分离
2.XML文件分为以下几个内容
1)文档声明
<?xml version="1.0" ?>
<?xml version="1.0" encoding="GB2312" ?>
<?xml version="1.0" encoding="GB2312" standalone="yes" ?>
用standalone属性说明文档是否独,如果将其设置为"yes",则表示该文档独立,设置为"no"时,表示该文档依赖外面的某个文件
在"<"和"?"之间、"?"和">"之间以及第一个"?"和xml之间不能有空格。在第二个"?"之前可以没有,也可以有一个或者多个空格。
在XML文件使用非Unicode编码时,必须在XML文档声明中指定其字符集编码,而采用Unicode编码时则可以在XML文档声明中省略字符编码集。
2)元素(Element)
XML文档的主体内容部分也是由元素组成。一个XML元素由一个标记来定义。
XML元素指XML文件中出现的标签,一个标签分为开始标签和结束标签
包含标签体:<a>bbb</a>
不含标签体的:<a></a>, 简写为:<a/>
对于XML标签中出现的所有空格和换行,XML解析程序都会当作标签内容进行处理。
3)属性
一个标签可以有多个属性,每个属性都有它自己的名称和取值
<售价 单位="元">50</售价>
标签<售价>定义了一个名为“单位”的属性。
4)注释
Xml文件中的注释采用:“<!--注释-->” 格式。
XML声明只能作为XML文档中的第一行,所以不要把注释放在XML声明之前。
5)在XML中,空格和换行都作为原始内容被处理。
6)CDATA区
在编写XML文件时,有些内容可能不想让解析引擎解析执行,而是当作原始内容处理。
遇到此种情况,可以把这些内容放在CDATA区里,对于CDATA区域内的内容,XML解析程序不会处理,而是直接原封不动的输出。
语法:<![CDATA[ 内容 ]]>
在某些情况下,还要注意CDATA区中的起始和结束处的空格、换行等空白字符的影响。
7)处理指令
处理指令,简称PI (processing instruction)。处理指令用来指挥解析引擎如何解析XML文档内容。
处理指令以"<?"作为开头, 以"?"作为结束,XML声明语句就是最常见的一种处理指令。
在XML文档中可以使用xml-stylesheet指令,通知XML解析引擎,应用css文件显示xml文档内容。
例如: <?xml-stylesheet type="text/css" href="1.css"?>规定了XML文档内容的表现形式由1.css文件控制。