QQ咨询 官方微信

添加微信好友

官方小程序

百度小程序

微信小程序

头条小程序

关于我们

XML教程

了解WEB页面工具语言XML

 admin  2015-05-25 22:57:10

一、xml产生的背景

  XML同HTML一样,都来自Standard Generalized Markup Language, 即标准通用标记语言,简称SGML。早在Web未发明之前,SGML就早已存在。正如它的名称所言,SGML是一种用标记来描述文档资料的通用语言,它包含了一系列的文档类型定义(简称DTD),DTD 中定义了标记的含义,因而 SGML 的语法是可以扩展的。SGML十分庞大,既不容易学,又不容易使用,在计算机上实现也十分困难。鉴于这些因素,Web的发明者--欧洲核子物理研究中心的研究人员根据当时(1989年)计算机技术的能力,提出了HTML语言。

  HTML只使用SGML中很小一部分标记,例如HTML 3.2定义了70种标记。为了便于在计算机上实现,HTML规定的标记是固定的,即HTML语法是不可扩展的,它不需包含DTD。HTML这种固定的语法使它易学易用,在计算机上开发 HTML的浏览器也十分容易。正是由于HTML的简单性,使 Web 技术从计算机界走向全社会,走向千家万户,Web的发展如日中天。

  近年来,随着 Web的应用越来越广泛和深入,人们渐渐觉得HTML不够用了,HTML过于简单的语法严重地阻碍了用它来表现复杂的形式。尽管HTML推出了一个又一个新版本,已经有了脚本、表格、帧等表达功能,但始终满足不了不断增长的需求。另一方面,这几年来计算机技术的发展也十分迅速,已经可以实现比当初发明创造HTML时复杂得多的Web浏览器,所以开发一种新的Web页面语言既是必要的,也是可能的。

  有人建议直接使用SGML 作为Web语言,这固然能解决HTML遇到的困难。但是SGML太庞大了,用户学习和使用不方便尚且不说,要全面实现SGML的浏览器就非常困难,于是自然会想到仅使用SGML的子集,使新的语言既方便使用又实现容易。正是在这种形势下,Web标准化组织W3C建议使用一种精简的SGML版本--XML应运而生了。

二、xml的定义

  XML是一个精简的SGML,它将SGML的丰富功能与HTML的易用性结合到Web的应用中。XML保留了SGML的可扩展功能,这使XML从根本上有别于HTML。XML要比HTML强大得多,它不再是固定的标记,而是允许定义数量不限的标记来描述文档中的资料,允许嵌套的信息结构。HTML只是Web显示数据的通用方法,而XML提供了一个直接处理 Web 数据的通用方法。HTML着重描述Web页面的显示格式,而XML着重描述的是Web页面的内容。

  XML中包括可扩展格式语言XSL(Extensible Style Language) 和可扩展链接语言XLL(Extensible Linking Language)。

  XSL用于将XML数据翻译为HTML或其他格式的语言。XSL提供了一种叠式页面CSS的功能,使开发者构造出具有表达层结构的Web页面来,以有别于XML的数据结构。XSL也能和HTML一起构造叠式页面。XSL可以解释数量不限的标记,它使Web的版面更丰富多彩,例如动态的文本、跑马式的文字。此外,XSL还处理多国文字、双字节的汉字显示、网格的各种各样的处理等。

  XLL是XML的链接语言,它与HTML的链接相似,但功能更强大。XLL支持可扩展的链接和多方向的链接。它打破了HTML只支持超级文本概念下最简单的链接限制,能支持独立于地址的域名、双向链路、环路、多个源的集合链接等。XLL链接可不受文档制约,完全按用户要求来指定和管理。

    为了使XML易学易用,XML精简了一大片SGML难得用一次的功能。正如几十万汉字中常用的只不过八千,SGML常用的部分只占20%,XML抛弃了SGML中不常用的部分,使它一下就精简了80%。这样一来,XML的语法说明书只有30页,而SGML却有500页。

  XML设计中也考虑了它的易用性,易用性来自两个方面:一方面用户编写Web页面方便,另一方面设计人员实现XML浏览器也不太困难。

  总之,XML使用一个简单而有灵活的标准格式,为基于Web的应用提供了一个描述数据和交换数据的有效手段。HTML描述了显示全球数据的通用方法,而XML提供了直接处理全球数据的通用

三、支持xml的公司和它们的开发工具

  尽管XML还处在开发阶段,其标准正在由W3C组织制定,但是已经有许多公司表示全力支持XML,并开发了不少XML工具。Adobe公司的FrameMaker可以用来书写XML文档。Microsoft公司推出的IE 4.0已经可以显示、处理和编辑XML文档,Microsoft公司作出承诺,要在下一个版本的Office 软件如MS Word、Excel中支持XML。

  Netscape、Sun公司也不甘寂寞,纷纷表示要在他们的Web工具中支持XML。除了这些著名的公司有所行动外,其他小公司也把XML 作为一种商机,纷纷投入到XML的开发工作中。例如ArborText 公司的Cedar项目旨在开发XSL;ArborText公司和Microsoft公司一起向W3C提出了XSL的标准草案;Grif公司的Symposia Doc+则是一个编辑XML文档的可见即可得的工具。

  此外还有Copsol公司的XML开发工具,Norbert公司的XML句法分析器,Jade公司的XSL工具包以及支持客户/服务机应用的Serucie 98等。

四、xml应用分类

  总的说来的XML的应用可分为四类:

  (1)应用于客户需要与不同的数据源进行交互时。数据可能来自不同的数据库,他们都有各自不同的复杂格式。但客户与这些数据库间只通过一种标准语言进行交互,那就是XML。由于XML的自定义性及可扩展性,它足以表达各种类型的数据。客户收到数据后可以进行处理,也可以在不同数据库间进行传递。总之,在这类应用中,XML解决了数据的统一接口问题。但是,与其他的数据传递标准不同的是,XML并没有定义数据文件中数据出现的具体规范,而是在数据中附加tag来表达数据的逻辑结构和含义。这使XML成为一种程序能自动理解的规范。

  (2)应用于将大量运算负荷分布在客户端,即客户可根据自己的需求选择和制作不同的应用程序以处理数据,而服务器只须发出同一个XML文件。仍以上例为论,如按传统的"客户/服务器"工作方式,客户向服务器发出不同的请求,服务器分别予以响应,这不仅加重服务器本身的负荷,而且网络管理者还须事先调查各种不同的用户需求以做出相应不同的程序,但假如用户的需求繁杂而多变,则仍然将所有业务逻辑集中在服务器端是不合适的,因为服务器端的编程人员可能来不及满足众多的应用需求,也来不及跟上需求的变化,双方都很被动。应用XML则将处理数据的主动权交给了客户,服务器所作的只是尽可能完善、准确地将数据封装进XML文件中,正是各取所需、各司其职。XML的自解释性使客户端在收到数据的同时也理解数据的逻辑结构与含义,从而使广泛、通用的分布式计算成为可能。

  (3)应用于将同一数据以不同的面貌展现给不同的用户。这一应用也可在上例中体现出来。它又类似于同一个剧本,我们却可以用电视剧、电影、话剧、动画片等不同形式表现出来。这一应用将会为网络用户界面个性化、风格化的发展铺平道路。

  (4)应用于网络代理对所取得的信息进行编辑、增减以适应个人用户的需要。有些客户取得数据并不是为了直接使用而是为了根据需要组织自己的数据库。比方说,教育部建立一个庞大的题库,考试时将题库中的题目取出若干组成试卷,再将试卷封装进XML文件,接下来便是最精彩部份,在各个学校让其通过一个过滤器,滤掉所有的答案,再发送到各个考生面前,未经过滤的内容则可直接送到老师手中,当然考试过后还可以再传送一份答案汇编。此外,XML文件中还可以包含进诸如难度系数、往年错误率等其他相关信息,这样只需几个小程序,同一个XML文件便可变成多个文件传送到不同的用户手中。

 

了解WEB页面工具语言XML

五、xml带来的好处

  (1)更有意义的搜索

  数据可被XML唯一的标识。没有XML,搜索软件必须了解每个数据库是如何构建的。这实际上是不可能的,因为每个数据库描述数据都是不同的。有了XML,书就可以很容易以标准的方式按照作者、标题、ISBN序号或其他的标准分类。搜索书就变得十分方便。

  (2)开发灵活的Web应用软件

  数据一旦建立,XML能被发送到其他应用软件、对象或者中间层服务器做进一步地处理。或者它可以发送到桌面用浏览器浏览。XML和HTML、脚本、公共对象模式一起为灵活的三层Web应用软件的开发提供了所需的技术。

  (4)不同来源数据的集成

  现在搜索多样的不兼容的数据库实际上是不可能的。XML能够使不同来源的结构化的数据很容易的结合在一起。软件代理商可以在中间层的服务器上对从后端数据库和其他应用处来的数据进行集成。然后,数据就能被发送到客户或其他服务器做进一步的集合、处理和分发。

  (5)多种应用得到的数据

  XML的扩展性和灵活性允许它描述不同种类应用软件中的数据,从描述搜集的Web页到数据记录。同时,由于基于XML的数据是自我描述的,数据不需要有内部描述就能被交换和处理。

  (6)本地计算和处理

  XML格式的数据发送给客户后,客户可以用应用软件解析数据并对数据进行编辑和处理。使用者可以用不同的方法处理数据,而不仅仅是显示它。XML文档对象模式(DOM)允许用脚本或其他编程语言处理数据。数据计算不需要回到服务器就能进行。分离使用者观看数据的界面,使用简单灵活开放的格式,可以给Web创建功能强大的应用软件,这些软件原来只能建立在高端数据库上。

 (7)数据的多样显示

  数据发到桌面后,能够用多种方式显示。通过以简单开放扩展的方式描述结果化的数据,XML补充了HTML,被广泛的用来描述使用者界面。HTML描述数据的外观,而XML描述数据本身。由于数据显示与内容分开,XML定义的数据允许指定不同的显示方式,使数据更合理地表现出来。本地的数据能够以客户配置、使用者选择或其他标准决定的方式动态地表现出来。CSS和XSL为数据的显示提供了公布的机制。

  (8)粒状的更新

  通过XML,数据可以粒状的更新。每当一部分数据变化后,不需要重发整个结构化的数据。变化的元素必须从服务器发送给客户,变化的数据不需要刷新整个使用者的界面就能够显示出来。目前,只要一条数据变化了,整一页都必须重建。这严重限制了服务器的升级性能。XML也允许加进其他数据,比如预测的温度。加入的信息能够流入存在的页面,不需要浏览器发一个新的页面。

  (9)在Web上发布数据

  由于XML是一个开放的基于文本的格式,它可以和HTML一样使用HTTP进行传送,不需要对现存的网络进行变化。

  (10)升级性

  由于XML彻底把标识的概念同显示分开,处理者能够在结构化的数据中嵌套程序化的描述以表明如何显示数据。这是令人难以相信的强大的机制,使得客户计算机同使用者间的交互作用尽可能的减少了,同时减少了服务器的数据交换量和浏览器的响应时间。另外,XML使个人的数据只能通过更新的布告发生变化,减少了服务器的工作量,大大增强了服务器的升级性能。

  (11)压缩性

  XML压缩性能很好,因为用于描述数据结构的标签可以重复使用。XML数据是否要压缩要根据应用来定,还取决于服务器与客户间数据的传递量。XML能够使用HTTP1.1中的压缩标准。

  (12)开放的标准

  XML基于的标准是为Web进行过优化的。微软和其他一些公司以及W3C中的工作组正致力于确保XML的互用性,以及为开发人员、处理人员和不同系统和浏览器的使用者提供支持,并进一步发展XML的标准。

XML包括一套相关的标准:

  可扩展标识语言(XML)标准,这是W3C正式批准的。这意味着这个标准是稳定的,完全可用于Web和工具的开发。

  XML名域标准,这用来描述名域的句法,支持能识别名域的XML解析器。

  文档对象模式(DOM)标准,这为给结构化的数据编写脚本提供了标准,这样开发人员就能够同计算机在基于XML的数据上进行交互作用。

  可扩展类型语言(XSL)标准,这是一个工作草案。XSL有两个模块��XSL转换语言和XSL格式化对象。转换语言可用来转换XML以满足显示要求。由于XSL的两部分是模块,转换语言能够独立的用来进行多用途的转换,包括把XML转换成结构完整的HTML。CSS可应用于结构简单的XML数据,但不能以不同于信息如何传递来的方式显示信息。

  可扩展链接语言(XLL)标准和XML指针语言(XPOINTER)标准是当前的工作草案。XLL提供类似与HTML的链接,但功能更强大。例如,链接可以是多方向的,可以存在于对象上而不仅仅是页面上。IE5内在不支持XLL。

  (13)微软产品的支持

  微软IE4.0支持通用的XML解析器、XML对象模式和XML数据源对象。IE5和Office2000支持许多添加的XML特性和技术。

  (14)新的机会

  作为表示结构化数据的一个工业标准,XML为组织、软件开发者、Web站点和终端使用者提供了许多有利条件。更多的纵向市场数据格式建立起来,被应用于关键市场诸如高级的数据库搜索、网上银行、医疗、法律事务、电子商务和其他领域,这使得机会更进一步地扩大。当站点更多地进行分发数据,而不仅仅是提供数据浏览时,特别的机会就产生了。

  顾客服务正从电话和地理位置转移到Web站点上来,而且将会由于XML的强大功能受益更多。并且,由于大多数商业应用软件包括数据的处理和转移,如购买单、发货单、顾客信息、合同、图纸等等,XML将会改革终端用户在Internet上的行为,许多商业应用将能实现。另外,使用基于XML的面向企业内部互连网的词汇库,Web站点上的信息,无论是储存在文档中还是数据库中,可以被标识。这些词汇也能够对那些需要在顾客和供应商之间交换信息的中小型企业提供帮助。

  一个重要的未开发的市场是开发使终端用户很容易建立自己的Web站点的工具,包括用来从数据库信息和存在的使用者界面中产生XML数据的工具。另外,标准模式可以开发用来描述数据,可以使用规划、图表、Excel或其他电子数据表的功能。开发公布的用来描述从数据库中产生的XML的可视化工具是个很好的机会。观看XML数据的工具可以用Visual Basic,java和C++编写。

  XML需要强大的新工具用来在文档中显示丰富的复杂的XML数据,可以在分层的动态变化的数据上映射用户友好的显示层来实现这一目的。XML数据的布局图包括数据透视表等。

  Web站点可以提供股票报价、新文章或实时的交易数据。通过制定信息老化的规则,信息超载可以避免。开发用户用来制定规则和服务器和客户软件用来实现规则的基于XML的工具是个巨大的机会。可以用脚本编写一个标准对象模式用来过滤进来的信息,检查储存的信息,创建输出的信息,进入数据库等等。

六、xml展望

  任何一项新技术的产生都是有其需求背景的,XML的诞生是在HTML遇到不可克服的困难之后。近年来HTML在许多复杂的Web应用中遇到了问题,要彻底解决这些问题,必须用功能强大的XML来替代HTML作为Web页面的书写工具。XML有利于信息的表达和结构化组织,从而使数据搜索更有效;XML可以使用URL别名使 Web的维护更方便,也使Web的应用更稳定;XML可以使用数字签名使Web的应用更广阔拓展到安全保密领域。可以认为未来的Web书写工具必定是XML。而XML的广泛使用必然能推动Web不断发展,从而开创Web应用的新时代。

  Web的应用将随着XML的使用而更精彩,以下是可以预见的XML的几种应用。

  (1)XML/EDI电子数据交换

  EDI(Electronic Data Interchange)是用电子技术代替基于纸张的操作手段,用于公司之间的单据交换。XML的丰富的格式语言可用来描述不同类型的单据,例如信用证、贷款申请表、保险单、索赔单以及各种发票等。结构化的XML文档送至Web的数据可以被加密,并且很容易附加上数字签名。XML的安全保密措施可在EDI的应用中充分显示它的魅力,XML有希望推动EDI的大规模的应用。

  (2)化学标记语言CML和数学标记语言Math ML

  CML(chamical Markup Language)和Math ML(Mathematical Markup Language)是XML应用于描述化学和数学公式的标记语言。CML可描述分子与晶体结构、化合物的光谱结构等。而Math ML则是数学家的福音,自Web问世以来,数学家们第一次可以使用Math ML将数学公式精确地显示在浏览器上。

  (3)开放式软件描述格式OSD

  和EDI的命运相仿,软件包的上网发行一直处于试行阶段。OSD(Open Software Descriptipon)是XML的一组用来描述各种软件产品的标记集,可以详细说明软件的规格、使用说明以及可运行平台等。

  (4)通道定义格式CDF

  通道定义格式CDF(Channel definition format)是Microsoft在IE 4.0浏览器中使用的XML数据格式, 用于描述活动通道的内容和桌面部件,指明通道的信息及其更新情况。CDF 使不同平台的互操作成为可能,使Web发布者可以控制推(push)技术。专用的推技术将不再影响不同推技术的互操作性,这样一来,从互不兼容的平台上可以获得相同的Web内容。

  (5)开放式财务交换OFX

  OFX(Open Financial Exchange)也是XML的一种标记集,用于描述会计事务所与客户之间的业务往来。使用OFX,客户与会计事务所之间可以直接交换财务数据,包括电子银行和支付协议等说明文件。

  为了推动XML的使用,W3C已经批准了XML标准1.0版本,相信XML 1?0的颁布会带动大批高级的Web应用,用户必须从现在起开始考虑用XML来书写Web页面。但是XML的大量使用并不意味着HTML会马上消亡。习惯的势力是强大的,正如Cobol语言在很长的一段时间里没有退出历史舞台一样,由于现存的大量的Web页面都是用HTML书写的,HTML决不会轻易退出使用。可以预计,在未来的5年内,XML将和HTML携手并肩共同使用在Web应用的不同领域中。

 

¥ 打赏
×
如果您觉得文章帮助了您就打赏一下吧
非常感谢你的打赏,我们将继续分享更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫打赏

微信扫一扫打赏

本文《了解WEB页面工具语言XML》发布于石头博客文章,作者:admin,如若转载,请注明出处:https://www.pweb123.com/html/xml/226.html,否则禁止转载,谢谢配合!

文章点评

我来说两句 已有0条评论
点击图片更换

添加微信好友

添加微信好友

微信小程序

百度小程序