copy from:http://bbs.51js.com/index.php
主 题: 使用XML的五种场合[精华]
作 者: ChinaOk (蓝蝶[授人以鱼,不如授人以渔])
等 级:
信 誉 值: 103
所属论坛: XML/SOAP
问题点数: 1
回复次数: 76
发表时间: 2002-4-8 16:54:32
在很多研讨会和培训班上我遇到过许多人,他们还不明白为什么要使用XML也不知道如何
在他们的应用中使用XML。一些来自诸如Gartner公司的报告建议说,商业公司不能再做
局外人了,不能对XML置之不理。如果你还不清楚XML到底有什么好处的话,你并不是唯
一的人。
我决定把与人们和媒体关于XML话题的交谈整理成文,列出XML在应用中的五个最令人喜
爱的用法。尽管这些并不能包含XML的所有潜在应用,至少是些最重要的领域。
1、数据交换
用XML在应用程序和公司之间作数据交换已不是什么秘密了,毫无疑问应被列为第一位。
那么为什么XML在这个领域里的地位这么重要呢?原因就是XML使用元素和属性来描述数
据。在数据传送过程中,XML始终保留了诸如父/子关系这样的数据结构。几个应用程序
可以共享和解析同一个XML文件,不必使用传统的字符串解析或拆解过程。
相反,普通文件不对每个数据段做描述(除了在头文件中),也不保留数据关系结构。使
用XML做数据交换可以使应用程序更具有弹性,因为可以用位置(与普通文件一样)或用元
素名(从数据库)来存取XML数据。
2、Web服务
Web服务是最令人激动的革命之一,它让使用不同系统和不同编程语言的人们能够相互交
流和分享数据。其基础在于Web服务器用XML在系统之间交换数据。交换数据通常用XML标
记,能使协议取得规范一致,比如在简单对象处理协议(Simple Object Access Protoc
ol, SOAP)平台上。
SOAP可以在用不同编程语言构造的对象之间传递消息。这意味着一个C#对象能够与一个
Java对象进行通讯。这种通讯甚至可以发生在运行于不同操作系统上的对象之间。DCOM
, CORBA或Java RMI只能在紧密耦合的对象之间传递消息,SOAP则可在松耦合对象之间传
递消息。
3、内容管理
XML只用元素和属性来描述数据,而不提供数据的显示方法。这样,XML就提供了一个优
秀的方法来标记独立于平台和语言的内容。
使用象XSLT这样的语言能够轻易地将XML文件转换成各种格式文件,比如HTML, WML, PD
F, flat file, EDI, 等等。XML具有的能够运行于不同系统平台之间和转换成不同格式
目标文件的能力使得它成为内容管理应用系统中的优秀选择。
4、Web集成
现在有越来越多的设备也支持XML了。使得Web开发商可以在个人电子助理和浏览器之间
用XML来传递数据。
为什么将XML文本直接送进这样的设备去呢?这样作的目的是让用户更多地自己掌握数据
显示方式,更能体验到实践的快乐。常规的客户/服务(C/S)方式为了获得数据排序或更
换显示格式,必须向服务器发出申请;而XML则可以直接处理数据,不必经过向服务器申
请查询-返回结果这样的双向“旅程”,同时在设备也不需要配制数据库。
甚至还可以对设备上的XML文件进行修改并将结果返回给服务器。想像一下,一台具有互
联网功能并支持XML的电冰箱将会给市场带来多么大的冲击吧。你从此不必早起去取牛奶
了!
5、配制
许多应用都将配制数据存储在各种文件里,比如.INI文件。虽然这样的文件格式已经使
用多年并一直很好用,但是XML还是以更为优秀的方式为应用程序标记配制数据。使用.
NET里的类,如XmlDocument和XmlTextReader,将配制数据标记为XML格式,能使其更具
可读性,并能方便地集成到应用系统中去。使用XML配制文件的应用程序能够方便地处理
所需数据,不用象其他应用那样要经过重新编译才能修改和维护应用系统。
如前所述,这里提到的五种使用XML的途径不包括全部场合。