XML-1 20110926

 XML语言的诞生及其优点
  1996年,W3C(万维网联盟)寻找一种在Web中应用SGML的灵活性和强大功能的方法,这导致了19982XML 1.0规范的发布。XML(eXtensible Markup Language,可扩展置标语言)不但具备了SGML的核心特性,而且非常简洁,XML规范的内容甚至不到SGML1/10XML作为SGML的子集,同样继承了SGML的优点——扩展性、结构化和有效性。

HTML相比,XML具有以下几个优点:
  (1) 可扩展性强。
  定义一个标记语言并进行推广和应用,这在XML语言出现之前是非常困难的。一方面,新的标记语言标准化时间很长,从标准提交到相关标准化的建立,要经过几轮的评定和修改,等到正式发布标准时,可能已经过了几年的时间。另一方面,为了推广标准的广泛应用,制定者必须开发相应的标记解释和浏览工具,新的标记语言需要各个厂商进行支持和开发,同样要耗费大量的时间和精力。

(2) 遵循严格的语法要求。
  HTML语法要求并不严格,浏览器可以显示有语法错误的HTML文件。例如,“<b>加粗显示”和“<b>加粗显示</b>”这两条语句在浏览器中的显示效果是一样的,但前者明显没有进行标记的配对。
  XML非常注重准确性,在语法结构上只要有丝毫错误,分析器都会停止对XML进行进一步的处理。XML不但要求标记配对、嵌套,而且还要求严格遵守DTD(文档类型定义)的约定。 

XML分析器处理XML文档的过程中不会进行任何猜测和修改,要么文档被判定为正确而执行或显示,要么文档被判定为错误而停止处理。而HTML的标记已成为标准,HTML分析器可以判断出HTML中到底有什么,又缺什么。
  XML分析器的这种严格性大大减轻了浏览器开发人员的负担,也提高了浏览器的效率;同时,严格的语法要求又为XML文档提供了较好的可读性和可维护性。

(3) 数据内容与数据表达分离。
  下面给出一个XML示例文档来了解一下XML是如何表达数据的。

XML不但是置标语言,而且是可扩展(extensible)的置标语言。HTML提供了一组事先定义好的标记库,XML则提供了一组标准。根据这个标准,可以根据实际需要自定义新的标记语言,并设计相应的一套标记,就像我们在数据库设计时为了表达信息而设计一组字段一样。因此,准确地说,XML是一种元置标语言,它允许程序开发人员根据它所提供的规则制定各种各样适合实际问题需要的标记语言,这也正是XML制定之初的目标所在。

XML规范展示了如下的设计目标: 
  (1) Internet上直接使用XML。用户能够像使用HTML文档那样快速而简单地打开和浏览XML文档。在实际应用中,只有当XML浏览器像HTML浏览器那样被大量广泛地使用时,才能达到这个目标。
  (2)  XML应该支持非常广泛的应用,它能够在著作、浏览、内容分析等领域发挥巨大的作用。如此看来,当初仅因为需要在Web上传送结构化文档而定义XML的想法倒显得十分狭隘了。

 (3) 由于XML可以兼容SGML,因此很多人用它来处理那些十分庞大、繁琐而原本需要SGML来处理的信息。XML设计得很实用,能够兼容已经存在的标准,并且能够解决在Web中传输结构化文档的新问题。 
  (4) 计算机程序能够很好地处理XML文档。说得比较通俗一点,开发一个处理XML文档的程序相当容易。
  (5) XML中,随意数值保持足够地小,理想上是0。随意特征不可避免地带来兼容性的问题,以至于用户在共享文档时会出现失败的情况。

(6)  XML文档应该保持可读性和一定的清晰程度。如果没有XML浏览器,或者接收到一个篇幅巨大的XML文档,也能够通过常用的文字编辑软件来阅读XML文档,并且了解其内容。
  (7)  XML的设计应该是结构合理而简洁的。可以用很多种办法实现上面第(4)条所提到的目标,归根结底来说,XML应符合EBNF(Extended Backus-Naur Form)的表述规范,并遵从现代编译工具和方法来实现。从很多点上可以说明SGML的语法是不符合EBNF的表述规范的,写一个合适的SGML解析器需要处理繁杂的工作,而且难以解析语言的特性,XML不应该如此。

(8)  XML文档应该是易于创建的,尽管最终需要使用专用的编辑器来创建和修改XML内容,但是那并不是很紧迫的。在中间过渡期,我们可以选择一些其他的方法来创建XML文档,例如直接用字处理软件生成,或者使用简单的ShellPerl脚本来生成,等等。
  (9)  XML标记的简练是其最大的价值所在。XML并不支持SGML中一些功能强大的特性,而这些特性也使得SGML解析器增加了许多额外的负担。

XML的应用
  1.创建新的标记语言
  作为元标记语言,XML可以为用户定义适合本行业领域的标记语言。如对例1-1描述的图书信息如果加以深入的研究和开发,完全可以编写出应用于表达图书信息的一套标记库。

2.存储数据
  XML文档是带有一定语义的纯文本格式的文件,可以用来存储数据,也可以方便地编写应用程序来存储和读取存储的数据。由于XML对于硬件、软件、应用程序是独立的,因此也可以使用除标准HTML浏览器以外的其他应用程序来处理XML文档数据。XML数据文档配合DTDSchema使用时,应用程序完全可以将XML数据文档作为数据源来使用,就像访问数据库一样。XML良好的自我描述特性也使它成为保存历史档案的最佳选择。

3.交换数据
  Microsoft SQL ServerOracleMicrosoft Access等数据库虽然提供了强有力的数据存储和数据分析能力,但存储的数据格式是不一样的;而我们常用的字处理软件WordAcrobat等存储数据也各不相同。XML的平台独立性可以将数据在兼容的系统或应用程序中进行交换,并将数据转换成XML文档,从而能够被不同类型的多种应用程序阅读,可大大降低引用的复杂性。XML也将成为在Internet上的企业之间交换金融信息的主要语言。

4.Web应用
  XML文档将成为Web资源的重要组成部分,XML使得搜索引擎更为智能和准确。XMLWeb上的应用主要有以下几个方面:
  (1) 集成不同的数据源。
  XML可以用来描述包含在不同应用中的数据,比如从Web页面到数据库记录等。Web应用的中间层服务程序将这些用XML表示的数据组合起来,然后交给客户端或者下一步的应用。XML还提供客户端包含机制,可以将多个数据源的数据进行集成。

(2) 本地计算。
  XML数据传送到客户端后,客户端可以利用本地的XML分析器对数据进行解析和进一步处理,这样既完成了应用系统所需的功能,又合理地分配了一部分服务器的处理负荷。例如,数据库记录可以直接传输到客户端进行排序、二次筛选或运算等处理。
  (3) 数据的多种显示。
  XML将数据内容与数据表现分离的优点,决定了XML只描述数据的结构和语义,显示外观则通过样式单文件(Style Sheet)进行描述。因此,只需在显示时应用不同的样式单,同一数据集即可实现多种显示效果。

(4) 网络出版。
  互联网的高速发展及其海量的内部信息使网络已经成为一种新的媒体。人们在网络上发布各种信息时,信息的发布形式和发布语言多种多样,其中基于XML的显示技术和显示语言发挥了重要的作用。例如,eBookeNewspaper等电子出版物就利用了XML的优秀特性。
  (5) 支持Web应用的互操作和集成。
  Web界面定义语言(Web Interface Definition Language, WIDL)WebMethods公司定义的一个XML应用,它是一个能够用于Web资源和企业应用接口的语言标准。通过它,Web应用可以自动存取Web资源和企业应用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值