本书由国际知名的微软技术专家撰写,主要探讨由.NET框架所提供的XML工具集。全书共分四个部分,第一部分深入讨论在.NET平台中实现XML的各个核心类,同时介绍读取器和编写器、数据验证以及XML模式方面的一些例子和参考信息;第二部分讨论XML数据操作,包括XMLDOM、XPath、XSLT等。第三部分介绍XML与数据访问,讲述XML与数据库之间的互操作;最后集中讨论应用程序与互操作性,并简要讨论SQLServer2000及其XML扩展、.NET远程化、XMLWeb服务,并包括两个介绍XML配置文件、XML数据岛以及浏览器/部署托管控件的章节。本书条理清晰,实例丰富,适合学习XML的开发人员阅读,尤其适合.NET框架下的XML开发人员参考。大约5年前,当我刚完成我的第一本书后,出版商向我提出了一个相当有吸引力的建议:“为什么不着手写一本新书呢”?现在我知道,所有的出版商都会提这类建议,但在那时它确实很诱人,并且我认为这里面还含有欣赏的成分。“看起来你在新技术方面干得很不错,”他们说道:“我们希望你能够考虑一下XML这个新的题材”。那是我第一次听说XML,XML那时还不是W3C推荐规范。但当时却发生了很多的事情,以至于很长时间后我才开始着手XML。可以确信,在编写本书时,已经有成千上万的IT经理们正在以这样或那样的方式进行包含XML的各种演示。几年前,在一个软件讨论会上,我曾听到一位产品经理突出强调了在他所推荐的产品套件中XML所起的关键作用。在说了最初的十多句关于“如果没有XML,将来都不知会是什么样子”的话后,就有一个听众提出了一个很坦率的问题:“存不存在不使用XML的地方呢?”推荐者的激情使得现场的每个听众都相信:没有XML的强大功能,程序设计简直不可能再进行了。结果,我们再一次从演讲者的回答中取消了疑虑:“哦,在编译器中就不使用XML。”先不管对XML所做的广告,XML确实是软件中的关键元素。如今,XML不仅仅是一种软件技术,它还是各种编程的基础组成元素,其本质就像水与空气对于我们每个人一样。现实中,人类要求以某种方式利用水和空气,同样,程序设计形式的“生命”必须取得软件工具的支持才能有效应,并发挥出互操作、适应性以及信息方面的潜在能力。对于XML,最重要的莫过于解析器了。XML解析器读取XML文本,并输出内容的内存表示。尽管可以以各种字符集编码,但XML解析器的输入总是表现为无格式的平台无关的文本,然而,XML解析器的输出却严格地束缚在底层硬件和软件平台上。根据操作系统与所选的编程环境,XML解析器可以生成COM对象、Java类或JScript类。然而,不管输出种类如何,最终结果都是可编程形式的XML数据。伙伴应用程序需要增加集成与配合的程度,这使交换XML代码越来越复杂,经常需要使用更专用的语言来解析,如SOAP以及XPath。结果,XML编程需要特殊的工具来读写这些语言,更妙的是,那些工具已经紧密地集成到了某种编程框架中。有效的XML编程要求能够以功能更强大的方式生成XML文档,而不仅仅是连接字符串。XMLAPI必须有足够的扩展性能,适应可插入技术并定制各个功能。并且XML必须是可串行化的,与数据存储和交换的其他元素也有良好的集成,包括数据库、复杂数据类型(数组、表以及列表)以及可视化用户界面元素。简单地说,XML必须不再是拴在核心框架中的一个独特的API,而是融入这个大家族中的完全一个成员。很幸运,XML在Microsoft.NET框架中正好是完全集成的。本书中介绍的就是.NET框架中的XML编程。本书探讨由.NET框架提供的XML工具集。XML遍布.NET框架各处,从远程化到Web服务,从数据访问到配置。本书第一部分深入讨论在.NET平台中实现XML的各个关键类,同时介绍了读取器和编写器、验证以及模式方面的一些例子和参考信息。接着讨论.NET版本的XPath、XSLT和XMLDOM方面的内容。本书最后集中讨论数据访问以及互操作性,并简要讨论SQLServer2000及其XML扩展、.NET远程化及XMLWeb服务方面的内容。另外还有两个介绍XML配置文件、XML数据岛以及浏览器/部署托管控件方面内容的章节。