一、 XML的一些介绍
XML(Extensible Markup Language)可扩展标记语言,属于一种标记语言。它在写法上类似于HTML,属于SGML的子集,它不仅继承SGML(Standard Generalized Markup Language----标准通用标记语言,是一种指示文档标准语言或标记集的标准)自定义标记的优点又摒弃了一些SGML复杂的部分,在功能上能够补充HTML标记的不足,拥有更多的扩展性。
二、 XML文件的组成
XML文件基本上可以说是由标记和内容组成的,在XML文件中能够出现的组成元素主要有六种:
a) 元素(Element)
XML文件是由元素组成的俄,XML的元素和标记代表的意义是不同的:
Ø 标记(Tag):XML能自定义的标记,用来标识文件的部分内容
Ø 元素(Element):XML元素为整个文件的主要架构,元素的本身可以是标记 加上文字内容或是元素包含其他的元素,元素它是一个完整的项目包含了标记、属性、开始标记和结尾标记内的文字内容和结尾标记。
b) 属性(Attribute)
在开始标记的标记名称后,可以替标记加上属性名称,每一个属性都拥有属性名称和值且值需用引号括起来。
c) 实体参考(Entity Reference)
标记语言本身拥有一些保留符号,如“<”,如果文件内容需使用到这些符号时就需要使用实体参考,在XML中有五个预先保留的实体参考,如下表:
实体参考 |
符号 |
< |
<
|
> |
>
|
& |
& |
' |
‘ |
"e; |
“ |
d) 注释(Commet)
与HTML注释一样,由“开始和以“—>”结尾
e) CDATA块(CDATA Section)与PCDATA
在XML文件的文字内容就是PCDATA,在处理XML元素title时,标记中的文字内容就是PCDATA
f) PI(Processing Instructions)
PI允许XML文件包含应用程序的指令。如XML文件的开头声明就是一个PI,这些信息告诉XML解析器如何处理该XML文件
PI格式是以“开始和以“?>”结束,name就是“PI目标”(PI Target)名称
g) DTD(Document Type Declarations)
XML规格中有很大的部分属于DTD文件验证指令,这是SGML默认的文件验证方式,也被XML所采用,在XML文件除了元素外就是检查这些元素的DTD
三、 XML文件的声明
所有的XML文件都需要特别的程序代码来声明这份文件为XML文件,因而在XML文件文件的开头我们经常会看到这样的文件声明块:
Version:声明该XML文件的版本
Encoding:声明该XML文件使用的字符集(这里使用了简体中文)
Standalone:声明该XML文件是否为独立文件或者说是否使用外部DTD文件 (yes表示不使用外部DTD文件,no表示使用。该属性可省略)
四、 XML文件的语法
a) 开始标记和结束的语法
Ø 开始标记:
这里的tag_name是标记的名称,后面是其属性,也可以没有属性
注意:在XML中大小写是有区分的,标记名称必须成对出现,如….
Ø 结束标记:
b) 空元素的标记语法
如果开始和结束标记没有任何内容,我们称之为空元素标记,空标记有两种写法:
Ø
Ø
c) 元素标记的注意点
Ø 嵌套的XML元素不可以重叠
Ø 属性值需要有双引号
五、 XML命名空间
为什么会介绍命名空间问题呢?我们在程序中经常会遇到在一个文件中有重复的标记问题,而这连个标记又处于不同的空间下,为了进一步辨识他们我们使用命名空间。(通俗的来说,在一个XML文件中,我们在节点
a) 标记的完整名称
<命名空间前缀 :标记名称>
由于网址是唯一的,通常我们将其标记为命名空间,同时我们可以使用 urn声明命名空间。
b) 默认声明
在同一个XML元素的范围内声明默认的命名空间只需要在根元素声明命名空间,格式如下: xmlns :prefix = “uri”
在xmlns”:”后加上的是前缀名称,如 xmlns:company = “http://www.haiye.com”
c) 显示声明
由于XML文件中的元素从属于多个命名空间,我们可以使用前缀名称来显示声明
如:
xmlns: product = = http://www.haiyeMusic.com>
< company :name> 海业购物网 company :name>
< company :produceList>
< /product: list >
< product:name>
< company :produceList>
< company :address> 上海市浦东张江 company :address>
company : Intorduce>
六、 结束语
我想通过我对XML的一些介绍和总结能对刚刚接触XML的初学者起到一个入门的重用,这里面所讲的应该比较通俗易懂。在以后的笔记中我将对XML这一目前应用广泛的标记语言作深入介绍,如XML Schema等以及在程序中如何操作和利用XML来更好地为我们的应用程序或系统服务,尤其能让初学者从易而难地掌握他。
整理人: Steven
时 间:2007-4-7