XML 简介

XML 被设计用来传输和存储数据。HTML 被设计用来显示数据。


应该掌握的基础知识:

在您继续学习之前,需要对以下知识有基本的了解:

HTML / XHTML

JavaScript

您也可以点击链接来先学习以上必备知识。


什么是 XML?

  • XML 指可扩展标记语言(EXtensible Markup Language)
  • XML 是一种标记语言,很类似 HTML
  • XML 的设计宗旨是传输数据,而非显示数据
  • XML 标签没有被预定义。您需要自行定义标签。
  • XML 被设计为具有自我描述性。
  • XML 是 W3C 的推荐标准

XML 的特点

  • XML可以从HTML中分离数据
  • XML可用于交换数据
  • XML可应用于B2B中
  • 利用XML可以共享数据
  • XML可以充分利用数据
  • XML可以用于创建新的语言

XML 与 HTML 的主要差异

  • XML 不是 HTML 的替代。
  • XML 和 HTML 为不同的目的而设计:
  • XML 被设计为传输和存储数据,其焦点是数据的内容。
  • HTML 被设计用来显示数据,其焦点是数据的外观。
  • HTML 旨在显示信息,而 XML 旨在传输信息。

XML 不是对 HTML 的替代

XML 是对 HTML 的补充

XML 不会替代 HTML,理解这一点很重要。在大多数 web 应用程序中,XML 用于传输数据,而 HTML 用于格式化并显示数据。

对 XML 最好的描述是:XML 是独立于软件和硬件的信息传输工具。


XML 与 JSON 的主要差异

同时作为目前最流行的存储和传输数据的格式,XML 与 JSON 都有很多相似之处,也有着显著的不同特点,比如:

  • XML 是基于标签的,JSON 不使用标签
  • JSON 的读写速度比 XML 稍快
  • JSON 可使用数组,而 XML 不能
  • XML 对数据的描述性比 JSON 好

最大的不同在于:

XML 必须使用 XML 解析器进行解析。而 JSON 是可通过标准的 JavaScript 函数进行解析。


XML 示例

下面是 韩梅梅 写给 李雷 的便签,存储为 XML:

  1. <note>
  2. <to>李雷</to>
  3. <from>韩梅梅</from>
  4. <heading>提醒</heading>
  5. <body>不要忘记开会!</body>
  6. </note>

上面的这条便签具有自我描述性。它拥有标题以及留言,同时包含了发送者和接受者的信息。


XML 仅仅是纯文本

XML 没什么特别的。它仅仅是纯文本而已。有能力处理纯文本的软件都可以处理 XML。

不过,能够读懂 XML 的应用程序可以有针对性地处理 XML 的标签。标签的功能性意义依赖于应用程序的特性。


通过 XML 您可以发明自己的标签

上例中的标签没有在任何 XML 标准中定义过(比如 <to> 和 <from>)。这些标签是由文档的创作者发明的。这是因为 XML 没有预定义的标签。

在 HTML 中使用的标签(以及 HTML 的结构)是预定义的。HTML 文档只使用在 HTML 标准中定义过的标签(比如 <p> 、<h1> 等等)。

XML 允许创作者定义自己的标签和自己的文档结构。


XML 是 W3C 的推荐标准

可扩展标记语言 (XML) 于 1998 年 2 月 10 日成为 W3C 的推荐标准。


XML 无所不在

XML已开始被广泛接受,大量的应用标准,特别是针对因特网的应用标准,纷纷采用XML进行制定。有人甚至认为,XML标准是因特网时代的ASCII标准。在这因特网时代,几乎所有的行业领域都与因特网有关。而它们旦与因特网发生关系,都必然要有其行业标准,而这些标准往往采用XML来制定。

目前,XML 在 Web 中起到的作用不会亚于一直作为 Web 基石的 HTML。