毫无疑问,21世纪初是Web的时代。随着Internet的飞速发展,各种新技术应运而生。标记语言特别是HTML的出现改变了计算机的发展方向,以文档对象为基础、以浏览器为载体、内容更丰富且更具实时性的图形界面取代了单调的命令行界面,没有任何网络基础的普通用户也可以通过鼠标点击而轻松地阅读新闻和收发邮件。然而,HTML本身却存在着很多缺陷。首先,HTML是一种样式语言,它目前在Internet中扮演的只是数据表示的角色,随着信息量的增多,HTML变得越来越难以胜任; 其次,HTML对浏览器的过度依赖性也形成了HTML标准的严重不统一,从而导致许多信息表示只能由某种特定的浏览器来解释。HTML的这些不足使得人们重新思考HTML在Internet上的角色,并开始研究一门新的语言来弥补HTML的缺陷,XML的产生就正是这种思考的最终结果。
XML是一种专门为Internet所设计的标记语言,它的重点是管理数据本身,数据的表示形式交给其他技术来解决。这种明确的分工带来了更高效的程序设计、更快速的搜索引擎、更统一的数据表示方式以及更方便的数据交流。
XML是一种定义语言的语言,它克服了HTML的缺点,给了程序员更自由的空间。近几年,XML在除数据表示以外的其他方面也得到越来越广泛的应用,从数据存储到数据交换再到系统整合,XML都发挥着强大的作用。基于XML的新技术也如雨后春笋般层出不穷,Web服务、AJAX等技术相继形成,并逐渐开始发展成熟。W3C(万维网联盟)也不断为XML制定新的标准,对其进行完善。毫不夸张地说,XML一统Web天下的局面已经指日可待。
因此,作为计算机专业的学生,了解并掌握XML是十分必要的。本书面向XML的初学者,避开XML的高级应用不谈,而是从最简单、最基础的内容入手,使读者把基本的知识牢牢掌握,这样再学习和研究高级应用就会容易得多。
本书共分为8章。第1章从标记语言入手,引出XML的概念和相关技术,并介绍了如何创建一个最简单的XML文档。第2章重点介绍XML语法,并学习如何创建格式良好的XML文档。第3章介绍文档类型定义(DTD),DTD可以详细说明允许或者不允许哪些元素出现在文档中,以及这些元素的确切内容和结构。在第3章中,读者将学习如何定义元素、实体和属性,如何将DTD附加到文档上,如何使用DTD验证文档的正确性以及如何编写自己的DTD来解决遇到的问题。第4章介绍文档对象模型(DOM),DOM提供了一系列接口,使应用程序可以方便地访问XML文档,本章将重点介绍这些接口。第5章为XSL转换,XSL是比CSS更复杂更强大的样式语言,XSL转换是XSL的一种,它可以将XML树状结构转化为其他形式的树状结构。第6章介绍了XLink和XPointer,XLink提供多方向的超文本链接,XPointer不仅可以链接到特定文档,还可以链接到特定文档的个别部分。第7章介绍了命名空间和Schema,命名空间可以解决名称冲突的问题,而Schema则弥补了DTD的一些不足。第8章介绍了XML Web Service,并引出WSDL与SOAP。
第3~5章为本书的重点,应该着重掌握。
由于时间仓促,本书不足之处恳请读者批评指正。
编者〖〗2007年6月
