简介 可扩展标记语言XML是一种元标记语言,它使用简单灵活的标准格式,为基于Web的应用提供了一个描述数据和交换数据的有效手段. Sommaire 前言 前言 网络以前所未有的速度发展,成为与报纸,广播,电视相比肩的第四媒体. 它需要更完整的语言表达网络内容的内涵. 人们越来越发现HTML这种语言已经远远不能满足网络潜在应用能力的需要. "可扩展性标识语言"XML的出现,把网络表达语言集合推进了一大步. 下面我们就来详细了解一下这一全新的标识语言.. 1. 何谓标识 SGML,HTML,XML都是标识语言: SGML(Standard Generalized Markup Language)标准通用标记语言 最早,标识是文件在排版的时候,用来指示文字如何编排的指令.标识并不处理文件的内容,主要用来处理文件世界的呈现外观,这类的标识称为程序性标识(Procedural Markup). 一般而言,程序性标识的作用都只针对单一文件. 另一类标识称为描述性标识(Descriptive Markup),也称为通用标识.所描述的是文件的内容(content)或结构(structure),而不是文件的呈现外观.描述文件结构的凡是以标识指定结构中的元素(elements) XML,SGML都是典型的通用标识语言,HTML就比较特殊了,HTML的标签集(tag set)中的大部分都是用来设定文件在WEB上的呈现外观,少部分描述文件的结构.(如:head, title, body) 由于HTML是SGML的一种应用,所以HTML并非程序性标识语言,而是以描述性标识的方式来控制文件的呈现外观. . HTML 2.1. HTML ”HTML (超文本链接标示语言)是我们的数据类型” __比尔.盖茨(1996.2) 这句话预示了户联网无可限量的发展前景. 无论是公司,政府机构,还是个人,网络和它最初用以表达信息的方法HTML都获得了圆满的成功,HTML以简单易学、灵活通用的特性,使人们发布、检索、交流信息都变得非常简单,从而使Web成了最大的环球信息资源库。 这样看来HTML可以解决绝大部分问题了,但是,一些独具慧眼的人却已经认识到有必要重新发展一种新的语言,即XML. 2.2.HTML的缺点 “HTML只说明数据看起来应该是什么样,而XML则说明数据是什么意思.” 首先,HTML存在很大的局限性, 由于标准的标记已经由W 其次,HTML的另一个问题就是它的标记的集合是固定的,用户不能增加自己的有意义的标记。而且各大浏览器的规格不尽相同,要使我们用HTML做的网页能够被所有浏览器正常显示,我们只能够使用W 3. XML的诞生 XML,extensible markup language(可扩展标识语言),是当代最热门的网络技术之一,被称为”第二代web语言”,”下一代网络应用的基石.”自从它被提出来,几乎得到了业界所有大公司的支持,丝毫不逊于当年HTML被提出来的热度. XML是1986年国际标准组织(ISO)公布的一个名为”标准通用标识语言”(standard general ized markup language,sgml)的子集.它是由成立于1994年10月的W 4.HTML于XML比较 与HTML相比,XML具有以下几点技术优势:
1.XML同HTML都来自SGML. 5.XML的构成 XML主要有3个组成元素:Schema(模式)、XSL(可扩展样式语言)和XLL(可扩展链接语言) Schema规定了XML文件的逻辑结构,定义了XML文件中的元素、元素的属性以及元素和元素属性之间的联系,它可以帮助XML的分析程序校验XML文件标记的合法性;XSL是用于规定XML文档样式的语言,它能在客户端使Web浏览器改变文档的表示法,从而不需要再与服务器进行交互通信;XLL将进一步扩展目前Web上已有的简单链接。 由于XML具有许多HTML所不可比拟的优点,许多公司和组织都提供了对XML的支持。如W3C开发的PICS(theplatformforInternetcontentselection,Internet内容挑选平台)和RDF(resourcedescriptionframework,资源描述框架)、Microsoft的CDF(channeldefinitionformat,频道定义格式)、Netscape的MCF(metacontentframework,元内容框架)等。 6.显示 单独实用XML不能显示页面,因为XML是将数据和格式分离的, XML本身不知道如何来显示,必须有辅助文件来帮助实现.比如CSS或者XSL. (XML取消了所有标识,包括font, color, p等风格样式定义标识,因此XML全部是采用类似DHTML中CSS的方法来定义文档风格样式.), XML中用来设定显示风格样式的文件类型有: 6.1.XSL XSL是将来设计XML文档显示样式的主要文件类型.它本身也是基于XML语言的.使用XSL,可以灵活的设置文档显示样式,文档将自动适应任何浏览器和PDA(掌上电脑.) 6.2.CSS CSS,全称是Cascading Style Sheets, 层叠样式表,是目前用来在浏览器上显示XML文档的主要方法. 6.3.Behaviors Behaviors现在还没有称为标准,它是微软的IE浏览器特有的功能,用它可以对XML标识设定一些有趣的动作. 7.XML的独特之处 7.1.更有意义的搜索 数据可被XML唯一的标识。没有XML,搜索软件必须了解每个数据库是如何构建的。这实际上是不可能的,因为每个数据库描述数据都是不同的。例如,有了XML,书就可以很容易以标准的方式按照作者、标题、ISBN序号或其他的标准分类。搜索书就变得十分方便。 7.2. 开发灵活的Web应用软件 数据一旦建立,XML能被发送到其他应用软件、对象或者中间层服务器做进一步地处理。或者它可以发送到桌面用浏览器浏览。XML和HTML、脚本、公共对象模式一起为灵活的三层Web应用软件的开发提供了所需的技术。 7.3. 不同来源数据的集成 现在搜索多样的不兼容的数据库实际上是不可能的。XML能够使不同来源的结构化的数据很容易的结合在一起。软件代理商可以在中间层的服务器上对从后端数据库和其他应用处来的数据进行集成。然后,数据就能被发送到客户或其他服务器做进一步的集合、处理和分发。 7.4. 多种应用得到的数据 扩展性和灵活性允许它描述不同种类应用软件中的数据,从描述搜集的Web页到数据记录。同时,由于基于XML的数据是自我描述的,数据不需要有内部描述就能被交换和处理。 7.5. 本地计算和处理 XML格式的数据发送给客户后,客户可以用应用软件解析数据并对数据进行编辑和处理。使用者可以用不同的方法处理数据,而不仅仅是显示它。XML文档对象模式(DOM)允许用脚本或其他编程语言处理数据。数据计算不需要回到服务器就能进行。分离使用者观看数据的界面,使用简单灵活开放的格式,可以给Web创建功能强大的应用软件,这些软件原来只能建立在高端数据库上。 7.6. 数据的多样显示 数据发到桌面后,能够用多种方式显示。通过以简单开放扩展的方式描述结果化的数据,XML补充了HTML,被广泛的用来描述使用者界面。HTML描述数据的外观,而XML描述数据本身。由于数据显示与内容分开,XML定义的数据允许指定不同的显示方式,使数据更合理地表现出来。本地的数据能够以客户配置、使用者选择或其他标准决定的方式动态地表现出来。CSS和XSL为数据的显示提供了公布的机制。 7.7. 粒状的更新 通过XML,数据可以粒状的更新。每当一部分数据变化后,不需要重发整个结构化的数据。变化的元素必须从服务器发送给客户,变化的数据不需要刷新整个使用者的界面就能够显示出来。目前,只要一条数据变化了,整一页都必须重建。这严重限制了服务器的升级性能。XML也允许加进其他数据,比如预测的温度。加入的信息能够流入存在的页面,不需要浏览器发一个新的页面。 7.8. 在Web上发布数据 由于XML是一个开放的基于文本的格式,它可以和HTML一样使用HTTP进行传送,不需要对现存的网络进行变化。 7.9. 升级性 由于XML彻底把标识的概念同显示分开,处理者能够在结构化的数据中嵌套程序化的描述以表明如何显示数据。这是令人难以相信的强大的机制,使得客户计算机同使用者间的交互作用尽可能的减少了,同时减少了服务器的数据交换量和浏览器的响应时间。另外,XML使个人的数据只能通过更新的布告发生变化,减少了服务器的工作量,大大增强了服务器的升级性能。 7.10. 压缩性 XML压缩性能很好,因为用于描述数据结构的标签可以重复使用。XML数据是否要压缩要根据应用来定,还取决于服务器与客户间数据的传递量。XML能够使用HTTP1.1中的压缩标准。 7.11. 开放的标准 XML基于的标准是为Web进行过优化的。微软和其他一些公司以及W 7.12. 微软产品的支持 微软IE4.0支持通用的XML解析器、XML对象模式和XML数据源对象。IE5和Office2000支持许多添加的XML特性和技术。 8.XML的应用 正如前面所说,XML是SGML的简化,因此它也属于元语言.可以由使用者自行定义,进而残生出完全符合使用者需求的应用语言.如应用于数学方面的MATHML.应用于向量图的SVG,应用于化学方面的CML,应用于描述网络资源的RDF等. 8.1. XML/EDI电子数据交换 EDI(Electronic Data Interchange)是用电子技术代替基于纸张的操作手段,用于公司之间的单据交换。XML的丰富的格式语言可用来描述不同类型的单据,例如信用证、贷款申请表、保险单、索赔单以及各种发票等。结构化的XML文档送至Web的数据可以被加密,并且很容易附加上数字签名。XML的安全保密措施可在EDI的应用中充分显示它的魅力,XML有希望推动EDI的大规模的应用。 8.2.化学标识语言CML和数学标识语言MATH ML CML(chamical Markup Language)和Math ML(Mathematical Markup Language)是XML应用于描述化学和数学公式的标记语言。CML可描述分子与晶体结构、化合物的光谱结构等。而Math ML则是数学家的福音,自Web问世以来,数学家们第一次可以使用Math ML将数学公式精确地显示在浏览器上。 8.3.开放式软件描述格式OSD 和EDI的命运相仿,软件包的上网发行一直处于试行阶段。OSD(Open Software Descriptipon)是XML的一组用来描述各种软件产品的标记集,可以详细说明软件的规格、使用说明以及可运行平台等。 8.4.通道定义格式CDF 通道定义格式CDF(Channel definition format)是Microsoft在IE 4.0浏览器中使用的XML数据格式, 用于描述活动通道的内容和桌面部件,指明通道的信息及其更新情况。CDF 使不同平台的互操作成为可能,使Web发布者可以控制推(push)技术。专用的推技术将不再影响不同推技术的互操作性,这样一来,从互不兼容的平台上可以获得相同的Web内容。 8.5.开放式财务交换OFX OFX(Open Financial Exchange)也是XML的一种标记集,用于描述会计事务所与客户之间的业务往来。使用OFX,客户与会计事务所之间可以直接交换财务数据,包括电子银行和支付协议等说明文件。 9.开发工具 开发XML有许多工具可以使用 ,以下为几种比较常见的工具 1) Notepad 最直接,最简单的文本编辑工具,在Windows附件中就可找到. 2) Microsoft XML Notepad 微软专门为设计XML文档而提供的编辑软件,可以借助它验证XML文档的有效性.http://msdn.microsoft.com/xml/NOTEPAD/intro.asp 3) Visual InterDev 该软件是用来开发Web应用程序的,不仅局限于XML,还可以开发ASP.HTML.XSL样式单等等. 4) Micosoft XML Tree Viewer 利用这个软件可以把XML文档的内容用树的结构形式显示出来 http://msdn.microsoft.com/xml/demos/default.asp 5) Microsoft XML Validator 该软件可以检查XML文档是否是格式良好的以及其有效性,并对错误发出警告. http://msdn.microsoft.com/xml/demos/defaul.asp 6) Microsoft XSL Debugger 样式单文件的复杂性使开发人员在编写时容易出现错误,这个软件就是帮助用户调试样式单文件的,把复杂枯燥的调试过程用可视化界面显示出来. http://msdn.microsoft.com/xml/_archive/xsl-debugger/xsl-debugger.htm 7) WorkPerfect 一种对开发XML和SGML提供高级支持的文字处理器,具有所见即所得的开发环境,提供向导,自动化控件的插入和文档的自动生成等功能,它是一款收费的商业产品,支持windows 95/98/2000和Linux平台. http://www./ 8) SixPack 为XML的解析和开发提供简洁的界面,支持 Macintosh平台,并公开源代码. http://www./sixpack/info.htm 9) Xray 一种具有实时错误检查的XML编辑器.它根据DTD或者XML Schema,允许用户创建格式良好的XML文档或验证文档的有效性,并且支持多文档编辑,是一款免费软件 http:///xray/ |
|