当前位置:编程学习 > XML/UML >>

XML 介绍

XML,称为可扩展标记语言(Extensible Markup Language),用来创建自定义标记的标记语言。它由万维网协会(W3C)创建,用来克服 HTML(即超文本标记语言(Hypertext Markup Language),它是所有网页的基础)的局限。和 HTML 一样,XML 基于 SGML ― 标准通用标记语言(Standard Generalized Markup Language)。XML 是为 Web 设计的。

XML是以数据为中心的,用来标记数据,说明数据是什么的。

应用领域为:

n 信息存储和交换领域,类似于数据管理系统,来存储数据。这种数据处理与硬件,软件没有太大的关系,就是一个文本文件,具有可移植性。处理XML数据的时候,通过JAVA代码写的解析器就可以存取XML数据。

n 在J2EE服务器用的比较多,在服务器端通过XML文件来进行处理数据业务。配置文件几乎全是XML文件。在EJB,Hibernate等JAVA热门技术领域,XML的应用更加重要。

XML与HTML相同点:

n XML与HTML都是基于文本的标记语言。

XML与HTML差别:

n 在功能上最大的区别就是XML是标识数据的,HTML是显示数据的。

n 在内容上的最大的区别是HTML里面的标记(markup)都是定义好的,XML里面的标记都是自定义的。比如:对于那些HTML中的标记中形如"用斜体显示数据"(<i>…</i>)的地方,XML标签则表现为程序中的一个字段名。它为一个数据定义一个标记(label)来表示该数据。(如:<name>andy lau</name>)。注意:由于标识数据可以让你看出其中的意义(如何解释它,应该如何处理它),XML有时也被描述为一种能够指明数据意义(语义)的机制。

HTML是最成功的标记语言。您几乎可以在任何设备(从掌上电脑到大型机)上查看最简单的HTML标记,甚至可以用合适的工具将HTML标记转换成语音和其它格式。既然HTML成功了,为什么W3C(万维网协会)还要创建XML呢?为了回答这个问题,请查看下面这个文档:

<p>

<b>张三</b>

<br>男

<br>西安电子科技大学:电子信息工程

</p>

HTML的问题在于它是为人设计的。即使不用浏览器查看上面的HTML文档,您和我也会知道那是某个人的信息。作为高级动物---人来讲:您和我具有理解大多数文档的含义和意图的智慧。但是遗憾的是机器不能做到。尽管这个文档中的标记告诉浏览器如何显示该信息,但标记没有告诉浏览器信息是什么?!您和我都知道它是一个人的信息,但计算机并不知道。要显示HTML,浏览器只需遵守HTML文档中的指令即可。段标记告诉浏览器在新的一行显示,并且通常在前面有一个空行,而两个换行标记则告诉浏览器前进到下一行,并且行之间没有空行。尽管浏览器出色地将文档格式化,但计算机仍不知道这个代表某个人的信息。

如下图在浏览器里的显示:

  \


 

为了完成对样本HTML文档的讨论,请考虑从该信息中提取出该人是学哪个专业的?请看下面的算法:

从该文档中找到有两个<br>标记的段落,那么学校就是第二个换行标记的后面的第一个冒号后面的内容,尽管该算法对该文档起作用,但是不具备通用性。如果文档格式一改变,那么该算法就不生效了。

现在让我们来看一个样本XML文档。使用XML,您可以给文档中的标记赋予某种涵义。更重要的是,计算机也容易处理这样的信息。

请看下例:

<person>

<name>张三</name>

<sex>男</sex>

<daxue>西安电子科技大学</daxue>

<zhuanye>电子信息工程</zhuanye>

</person>

现在算法编写又简单又具有通用性:

我们只需要找到<zhuanye>和</zhuanye>标记之间的内容(技术上称为<zhuanye>元素),就可以从该文档抽取邮政编码。

 

 

摘自  Java教程
 
补充:Web开发 , 其他 ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,