XML技术入门讲座(1)

XMLeXtensible Markup Language,可扩展置标语言)是由W3CWorld Wide WebConsortium,互联网联合组织)于19982月发布的一种标准,同HTML一样是SGMLStandard Generalized MarkupLanguage,标准通用置标语言)的一个简化子集。由于它将SGML的丰富功能与HTML的易用性结合到了Web的应用中,自推出以来,迅速得到软件开发商的支持和程序开发人员的喜爱,显示出强大的生命力。


 
由于XML较好地解决了HTML无法表达数据内容等问题,使它在政府、金融、证券、邮电、保险、税务、司法、出版以及电子商务等方面得到了广泛的应用。


XML
技术入门讲座


XML
HTML的比较
Internet
提供了全球范围的网络互连与通信功能,Web技术的发展更是一日千里,其丰富的信息资源给人们的学习和生活带来了极大的便利。特别是应运而生的HTML(超文本置标语言),以简单易学、灵活通用的特性,使人们发布、检索、交流信息都变得非常简单,从而使Web成了最大的环球信息资源库。然而,电子商务、电子出版、远程教育等基于Web的新兴领域的全面兴起使得传统的Web资源更加复杂化、多样化,数据量的日趋庞大对网络的传输能力也提出更高的要求。同时,人们对Web服务功能的需求也达到更高的标准,比如:用户需要对Web进行智能化的语义搜索和对数据按照不同的需求进行多样化显示等个性化服务;公司和企业要为客户创建和分发大量有价值的文档信息,以降低生产成本,以及对不同平台、不同格式的数据源进行数据集成和数据转化等等,这些需求越来越广泛和迫切。
传统的HTML由于自身特点的限制,不能有效地解决上述问题:作为一种简单的表示性语言,它只能显示内容而无法表达数据内容。而这一点恰恰是电子商务、智能搜索引擎所必需的。另外,HTML语言不能描述矢量图形、数学公式、化学符号等特殊对象,在数据显示方面的描述能力也不尽如人意。最重要的是:HTML只是SGMLStandardGeneralized MarkupLanguage,标准通用置标语言)的一个实例化的子集,可扩展性差,用户根本不能自定义有意义的置标供他人使用。这一切都成为Web技术进一步发展的障碍。
SGML
是一种通用的文档结构描述置标语言,为语法置标提供了异常强大的工具,同时具有极好的扩展性,因此在数据分类和索引中非常有用。但SGML复杂度太高,不适合网络的日常应用,加上开发成本高、不被主流浏览器所支持等原因,使得SGMLWeb上的推广受到阻碍。在这种情况下,开发一种兼具SGML的强大功能、可扩展性以及HTML的简单性的语言势在必行。由此诞生了XML语言。
XML
eXtensible MarkupLanguage,可扩展置标语言)是由W3C19982月发布的一种标准。它同样是SGML的一个简化子集,它将SGML的丰富功能与HTML的易用性结合到Web的应用中,以一种开放的自我描述方式定义了数据结构,在描述数据内容的同时能突出对结构的描述,从而体现出数据之间的关系。这样所组织的数据对于应用程序和用户都是友好的、可操作的。
XML
的优缺点
XML
的优势之一是它允许各个组织、个人建立适合自己需要的置标集合,并且这些置标可以迅速地投入使用。这一特征使得XML可以在电子商务、政府文档、司法、出版、CAD/CAM、保险机构、厂商和中介组织信息交换等领域中一展身手,针对不同的系统、厂商提供各具特色的独立解决方案。
XML
的最大优点在于它的数据存储格式不受显示格式的制约。一般来说,一篇文档包括三个要素:数据、结构以及显示方式。对于HTML来说,显示方式内嵌在数据中,这样在创建文本时,要时时考虑输出格式,如果因为需求不同而需要对同样的内容进行不同风格的显示时,要从头创建一个全新的文档,重复工作量很大。此外HTML缺乏对数据结构的描述,对于应用程序理解文档内容、抽取语义信息都有诸多不便。
XML
把文档的三要素独立开来,分别处理。首先把显示格式从数据内容中独立出来,保存在样式单文件StyleSheet)中,这样如果需要改变文档的显示方式,只要修改样式单文件就行了。XML的自我描述性质能够很好地表现许多复杂的数据关系,使得基于XML的应用程序可以在XML文件中准确高效地搜索相关的数据内容,忽略其他不相关部分。XML还有其他许多优点,比如它有利于不同系统之间的信息交流,完全可以充当网际语言,并有希望成为数据和文档交换的标准机制。
当然,XML作为一个新建立的标准,还有许多不足之处:它在强调了数据结构的同时,语义表达能力上略显不足,例如定义了<地址>这样一个置标,如果不是在文档中实际定义内容,我们就无法知道是要表达家庭住址还是E-mail地址。另外,XML的有些技术尚未形成统一的标准,充分支持XML的应用处理程序很少,甚至浏览器对XML的支持也是有限的。
所以,XML还并不能完全取代HTML,毕竟HTML是最为方便、快捷的网上信息发布方式。况且HTML是描述数据显示的语言,而XML是描述数据及其结构的语言,二者在功能上也是截然不同的。
XML
的使用前景
不管怎样,Web的应用将随着XML的发展而更加精彩:
1.
商务的自动化处理
XML
丰富置标完全可以描述不同类型的单据,例如信用证、保险单、索赔单以及各种发票等。结构化的XML文档发送至Web的数据可以被加密,并且很容易附加上数字签名。因此,XML有希望推动EDIElectronicData Interchange)技术在电子商务领域的大规模应用。有兴趣的读者可以访问网站http://www.xmledi.org
2.
信息发布
信息发布在企业的竞争发展中起着重要作用。服务器只需发出一份XML文件,客户可根据自己的需求选择和制作不同的应用程序以处理数据。加上XSLeXtensibleStylesheet Language)的帮助,使广泛的、通用的分布式计算成为可能。
3.
智能化的Web应用程序和数据集成
XML
能够更准确地表达信息的真实内容,其严格的语法降低了应用程序的负担,也使智能工具的开发更为便捷。来自不同应用程序的数据也能够转化到XML这个统一的框架中,进行交互、转化和进一步的加工。
XML
的优点备受瞩目,它的发展方兴未艾,未来的Web将是XMLWeb
XML
的开发工具
开发XML有许多工具可以使用:
● Notepad
:最直接、最简单的文本编辑工具,在Windows附件中就可找到。
● Microsoft XML Notepad:
微软专门为设计XML文档而提供的编辑软件,可以借助它验证XML文档的有效性,详细说明和下载地址: http://msdn.microsoft.com/xml/NOTEPAD/intro.asp
● Visual InterDev
:该软件是用来开发Web应用程序的,不仅仅局限于XML,还可以开发ASPHTMLXSL样式单等等
● Microsoft XML Tree Viewer:
利用这个软件可以把XML文档的内容用树的结构形式显示出来:http://msdn.microsoft.com/xml/demos/default.asp
● Microsoft XML Validator:
该软件可以检查XML文档是否是格式良好的以及其有效性,并对错误发出警告,它的下载地址是:http://msdn.microsoft.com/xml/demos/default.asp
● Microsoft XSL Debugger:
样式单文件的复杂性使开发人员在编写时容易出现错误,这个软件就是帮助用户调试样式单文件的,把复杂枯燥的调试过程用可视化界面显示出来。下载地址:http://msdn.microsoft.com/xml/_archive/xsl-debugger/xsl-debugger.htm
● WordPerfect:
一种对开发XMLSGML提供高级支持的文字处理器,具有所见即所得的开发环境,提供向导、自动化控件的插入和文档的自动生成等功能,它是一款收费的商业产品,支持Windows95/98/2000Linux平台。详情请访问http://www.corel.com/
SixPack:
XML的解析和开发提供简洁的界面,支持Macintosh平台,并公开源代码,详情请访问http://www.trafficstudio.com/sixpack/info.htm
Xray:
一种具有实时错误检查的XML编辑器。它根据DTD或者XMLSchema,允许用户创建格式良好的XML文档或验证文档的有效性,并且支持多文档编辑,是一款免费软件,支持Windows95/98/NT/2000平台。详情请访问http://architag.com/xray/