XML第一讲:XML概述、编写XML文档

XML: eXtensible Markup Language (可扩展的标记语言)

     XML是一个比较重要的内容,不管是对网络数据传输,还是Web开发,都是非常重要的,它是数据交换的需要,电子商务的基础,在局域网聊天的项目中,我们之前是使用字符流进行传输,这种情况不是不可以,而是不符合规范,在实际中是要用xml来进行数据的传输。这部分内容会在以后的课程中讲到。

1. XML知识体系

1) XML语法规则

2) XML核心技术

(1) 文档描述、验证、约束技术 -- DTD/Schema

   Document Type Definition (DTD,文档类型定义)

(2)文档转换技术 -- XSL

(3)数据查询技术 -- XPath

(4)链接技术 -- XLink/XPointer

(5) 编程接口 -- DOM/SAX [重点]

   如何使用Java语言来处理XML,比如说给定一个XML,可以把想要的东西解析出来,另外一个方面如何利用程序从数据库或其他载体中得到数据利用XML保存到硬盘上,或利用网络传输给其他人。这需要编程接口,几乎所有的程序语言都提供了对XML的编程接口。

2. 主要内容:

1) XML的基本格式

2) XML描述、验证、约束技术

3) XML数据转换

4) DOM

5) XML应用

3. Document Type Definition (DTD,文档类型定义)

    DTD是伴随着XML的,XML经常是与DTD相伴相生的,它们之间的关系是,DTD是用来验证XML的,就是给你一份XML文档,他是否是有效的,就必须去验证他。它相当于XML的语法一样。

4.XML描述的是结构和语义,而不是格式化

1) XML标记描述的是文档的结构和意义。

2) 它不描述页面元素的格式化。可用样式单为文档增加格式化信息。文档本身只说明文档包括什么标记,而不是说明文档看起来是什么样的。

   XML第一讲:XML概述、编写XML文档_第1张图片

    初看HTML与XML很像,其实之前差别太多了,HTML是包括了格式化的标记,而且HTML中的标记都是已经定义好的了,是HTML语法的定义。而XML没有,这是他们最大的不同了。HTML中的很多标签都是有开始,而没有结束的,而XML中是绝对不允许的。

3)什么是标记语言

   当我们需要通过标记将有用的信息告知一组用户时

   (1) 我们必须有一个标准,用它来描述什么是有效的标记

      HTML中,标记就是所谓的"标签"(tag).

  (2) 我们还要有一个标准描述每个标记的具体含义。

5. 现在我们来写一个XML文档:first.xml

<?xml version="1.0"?> 
<students>

	<student>

		<id>100</id>
		<name>lisi</name>
		<address>beijing</address>

	</student>

</students>

编辑如上所示内容,让后用浏览器打开first.xml,如果编辑正确,则浏览器会自动将XML结构解析出来。如下图1所示:

需要注意的一些内容:

1) XML 中的每个元素都是成对出现的(有开始,有结束),如<student> </student>

2)XML中的元素嵌套关系要保持正确性,即先开始的标记要先结束,后开始的标记要后结束。

3) 每一个 XML 文档都有且只有一个根元素(Root Element)。所谓根元素,就是唯一一个包含了其他所有元素的元素。如上中的 <student> </student> 

如下例2所示,是不合法的

<?xml version="1.0"?> 
<students>
	<student>
		<id>100</id>
		<name>lisi</name>
		<address>beijing</address>
	</student>
</students>

<teacher>
	
</teacher>

如下例3所示,则是合法的

<?xml version="1.0"?> 
<students>

	<student>
		<id>100</id>
		<name>lisi</name>
		<address>beijing</address>
	</student>

	<student>
		<id>100</id>
		<name>lisi</name>
		<address>beijing</address>
	</student>
	
</students>

3. XML 中的每个元素都是成对出现的有开始,有结束),<student> </student>, XML 中的元素嵌套关系要保持正确性,即先开始的标记要先结束,后开始的 标记要后结束。 

4. 每一个 XML 文档都有且只有一个根元素(Root Element)。所谓根元素,就是唯一一个包含了其他所有元素的元素。 

5. XML 描述的是文档的内容与语义,而不是文档应当如何显示。

6. XML的制定目标

7. HTML缺陷

XML第一讲:XML概述、编写XML文档_第2张图片

8. XML的优越性


   讲到这边我们回顾之前的聊天器的项目中比如客户端的数据传输,我们之前是用字符串的形式如:zhangsan@@192.168.0.100_9000,这个形式来传输。现在如果用XML的形式就会更加方便,如下所示:

    <client>
        <username>zhangsan</username>
        <clientHost>192.168.0.100</clientHost>
        <clientPort>9000</clientPort>
    </client>

   这样传输过程中,再利用其特有的XML解析机制,就可以很方便的进行数据的转换了。

9. 注意XML是一种树形结构面向对象编程,就比如上面3的XML例子,将其倒过来就可以发现其为树形结构,如下图所示


XML第一讲:XML概述、编写XML文档_第3张图片






你可能感兴趣的:(xml)