1 XML简介
1.1 XML与HTML
XML 是 Extensible Markup Language(可扩展标记语言)的缩写。
XML和HTML的区别:
HTML 是用于编写网页的标记语言,XML 是用于定义任意标记语言的元语言(通常把用于定义新语言的语言称作元语言,通过使用XML 可以定义出各种各样的新语言)。
XML本身并不会限定标签的种类,反倒是允许 XML 的使用者随心所欲地创建标签。也就是说,在“<”和“>”中的单词可以是任意的。这就是所谓的“可扩展”。在 HTML 中,我们只能使用由 HTML 定义出的那若干种标签,因此 HTML 是固定的标记语言。与此相对,XML 是可扩展的标记语言。
1.2 XML中的约束
为XML标签设定命名空间:
XML 的数据是纯文本格式的,也就是说只包含字符。通常把遵循了 XML 的约束编写出的文档称为“XML 文档”;把保存着 XML 文档的文件称为“XML 文件”。
举例:
1.3 XML的主要用途
- XML可以为信息赋予意义。
如下定义le<productId>、<productName>、<price>
等标签,然后用它们表示商品编号、商品名称、价格等信息。程序加载了带有这些标签的文件后,就能够轻松地识别出商品编号、商品名称和价格了,因为信息的含义已经用这些标签标记出来了。
HTML 是给人看的,XML 是给计算机看的。
- XML是通用的数据交换格式。
W3C 的推荐标准是不依赖于特定厂商的通用规范。因此可以认为成为 W3C 推荐标准的 XML 是一种通用的数据交换格式。也就是说,如果某家厂商的某个应用程序把数据保存到了 XML 文件中,那么其他厂商的另一个应用程序就应该可以通过加载这个 XML 文件来使用数据。除此之外,XML 也可以在同一个厂商的不同应用程序之间交换数据。
XML的应用领域:
1.4 XML的完整格式
完整的 XML 文档包括 XML 声明、XML 实例和 DTD 三个部分。
所谓 XML 声明,就是写在 XML 文档开头的、形如 <?xml version="1.0" encoding="Shift_JIS"?> 的部分。XML实例是文档中通过标签被标记的部分。而 DTD 的作用是定义 XML 实例的结构。虽然也可以省略 DTD,但是通过 DTD 可以严格地检查XML 实例的内容是否有效。
与 DTD 相同,还有一个名为 XML Schema 的技术也可用于定义XML 实例的结构。在 XML 中,DTD 借用了可称得上是标记语言始祖的 SGML(Standard Generalized Markup Language,标准通用标记语言)语言的语法。而 XML Schema 是为了 XML 新近研发的技术,因此它可以对 XML 文档执行更严格地检查,例如检查数据类型或数字位数等。DTD 是 1996 年发布的 W3C 推荐标准,而 XML Schema 发布于 2001年。今后将成为主流的是崭新的 XML Schema,而不是古老的 DTD。
1.5 XML解析组件
用于于处理 XML 文档的程序组件:比如已成为 W3C 标准的 DOM(Document Object Model,文档对象模型)以及由 XML-dev
社区开发的 SAX(Simple API for XML)。其实无论是 DOM 还是 SAX,都只是组件的规范,实际的组件是由某个厂商或社区提供的。
参考资料: