XML是Extensible Markup Language的缩写
|
XML是Extensible Markup Language的缩写,即可扩展标记语言是一种您可以用来创建自己的标记的标记语言。它由万维网协会(W3C)创建,用来克服 HTML(即超文本标记语言(Hypertext Markup Language),它是所有网页的基础)的局限。和 HTML 一样,XML 基于 SGML ― 标准通用标记语言(Standard Generalized Markup Language)。尽管 SGML 已在出版业使用了数十年,但其理解方面的复杂性使许多本打算使用它的人望而却步(SGML 也代表“听起来很棒,但或许以后会用(Sounds great, maybe later)”)。XML 是为 Web 设计的。
XML的先进特性 XML继承了SGML的许多特性,首先是可扩展性。XML允许使用者创建和使用他们自己的标记而不是HTML的有限词汇表。这一点至关重要,企业可以用XML为电子商务和供应链集成等应用定义自己的标记语言,甚至特定行业一起来定义该领域的特殊标记语言,作为该领域信息共享与数据交换的基础。 其次是灵活性。HTML很难进一步发展,就是因为它是格式、超文本和图形用户界面语义的混合,要同时发展这些混合在一起的功能是很困难的。而XML提供了一种结构化的数据表示方式,使得用户界面分离于结构化数据。所以,Web用户所追求的许多先进功能在XML环境下更容易实现。 第三是自描述性。XML文档通常包含一个文档类型声明,因而XML文档是自描述的。不仅人能读懂XML文档,计算机也能处理。XML表示数据的方式真正做到了独立于应用系统,并且数据能够重用。XML文档被看作是文档的数据库化和数据的文档化。 除了上述先进特性以外,XML还具有简明性。它只有SGML约20%的复杂性,但却具有SGML功能的约80%。XML比完整的SGML简单得多,易学、易用并且易实现。另外,XML也吸收了人们多年来在Web上使用HTML的经验。XML支持世界上几乎所有的主要语言,并且不同语言的文本可以在同一文档中混合使用,应用XML的软件能处理这些语言的任何组合。所有这一切将使XML成为数据表示的一个开放标准,这种数据表示独立于机器平台、供应商以及编程语言。它将为网络计算注入新的活力,并为信息技术带来新的机遇。目前,许多大公司和开发人员已经开始使用XML,包括B2B在内的许多优秀应用已经证实了XML将会改变今后创建应用程序的方式。 从1998年开始, XML 被引入许多网络协议,以便于为二个软件提供相互通信的标准方法。简单对象访问协议(SOAP)和 XML- RPC规范为软件交互提供了独立于平台的方式,从而为分布式计算环境打开了大门。几乎所有主要的软件厂商都支持SOAP。SOAP的快速成功史无前例地提高了软件的互操作潜力。当今,Web服务革命正在兴起,而SOAP正是其基础协议。 我们为什么需要 XML? HTML 始终是最成功的标记语言。您几乎可以在任何设备(从掌上电脑到大型机)上查看最简单的 HTML 标记,并且您甚至可以用合适的工具将 HTML 标记转换成语音和其它格式。既然 HTML 成功了,为什么 W3C 还要创建 XML 呢?为了回答这个问题,请查看下面这个文档: Mrs. Mary McGoon
HTML 的问题在于它是为人设计的。即使不用浏览器查看上面的 HTML 文档,您和我也会知道那是某个人的邮政地址。(具体而言,它是美国某个人的邮政地址;即使您一点也不熟悉美国邮政地址的格式,您可能也会猜出这表示什么。)作为人,您和我具有理解大多数文档的含义和意图的智慧。遗憾的是机器不能做到。尽管这个文档中的标记告诉浏览器如何显示该信息,但标记没有告诉浏览器信息是什么。您和我知道它是一个地址,但机器不知道。 显示 HTML 要显示 HTML,浏览器只需遵循 HTML 文档中的指令即可。段标记告诉浏览器在新的一行显示,并且通常在前面有一个空行,而两个换行标记则告诉浏览器前进到下一行,并且行之间没有空行。尽管浏览器出色地将文档格式化,但机器仍不知道这是地址。 处理 HTML 为了完成对样本 HTML 文档的讨论,请考虑从该地址抽取邮政编码的任务。下面是一个在 HTML 标记中查找邮政编码的算法(我有意使用脆弱的算法),如果您找到有两个 尽管该算法对于这个示例起作用,但对于全世界许多完全有效的地址,该算法根本不起作用。即使您可以编写算法来找出任何用 HTML 编写的地址的邮政编码,但许多具有两个换行标记的段落根本不包含地址。即便有可能编写算法来查看任意 HTML 段落并找出其中的任意邮政编码,也是极其困难的。 样本 XML 文档 现在让我们来看一个样本 XML 文档。使用 XML,您可以给文档中的标记赋予某种含意。更重要的是,机器也容易处理这样的信息。您只需通过找到 和 标记之间的内容(技术上称为 元素),就可以从该文档抽取邮政编码。 XML和HTML的主要区别是什么 XML是用来存放数据的; XML 什么也不做 XML 被设计成什么都不做的。 这个便条有信息头,又信息主体,还包括发送人和接收人。尽管如此,这个XML文档仍然什么都不做,他只是用XML标记存储信息的文件。有人已经编写出来发送和接收并且显示这种格式信息的软件。 XML是自由的、可以扩展的 XML标记并不是预先规定好的,你必须创造你自己的标记。 XML是HTML的补充 XML并不是HTML的替代品。 XML在未来Web开发中的应用 XML无处不在。 [1] [2] 下一页 源代码网供稿. |
