• 热门标签

当前位置: 主页 > 航空资料 > 计算机 >

时间:2010-08-09 13:05来源:蓝天飞行翻译 作者:admin
曝光台 注意防骗 网曝天猫店富美金盛家居专营店坑蒙拐骗欺诈消费者

构造一个对象树而提供文档的一个视图。文档的主要组件结构是对象树中的节点,访问对象树
并处理它是通过使用D O M接口浏览解析树实现的第5章将介绍D O M对象模型,并讲解如何使用
D O M接口进行处理X M L文档的编码工作。
1.6.5 XML 简单API
在使用X M L文档时,另一个重要的A P I是X M L简单A P I(Simple API for XML,S A X)。与
D O M不同,S A X并非是一个标准组织的产品。它是早期X M L开发过程中,许多X M L开发者为了
寻求一种有效的A P I而创造出来的产品。S A X至今依然流行的原因是因为它通过另一种途径来访
问X M L文档。S A X并不把应用程序的注意力集中在整个文档的树状图上,而是在解析时提供事
件驱动。事件的内容往往是这样的形式,“这里是一个起始标记;这里有一些元素内容;这里是
一个结束标记”,等等。兼容S A X的解析器并不保留文档;而是在使用它的程序处理文档的每个
部分时发出通知。对一个事件所做出的反映取决于使用解析器的程序。一个程序对文档状态的
维护要承当全部责任。这样就可以根据需要来维持适量的信息以满足激活应用程序的需要。
我们可以想象,这样一来,解析器会相当短小精悍,对系统资源要求甚少。对于处理大的
X M L文档来说会非常理想。如果你面对的是一个由各部分目录组成的1 6 M大小的X M L文档,肯
定不希望将它们都读入到内存中。虽然目前D O M是最常见的X M L的A P I,但找到S A X解析器也
不困难。第6章我们会了解S A X是什么,如何使用,以及何时使用。你看到的将是对如何使用兼
容S A X的解析器处理X M L文档的精彩介绍。
1.6.6 命名空间和模式
我们真诚地希望,随着大家越来越多地了解到X M L和它给应用程序带来的好处之后,能够
14使用XML 高级编程
下载
编制出更加巧妙的文档和词汇表。你也可能想在结构的自动检测方面了解更多的信息。
如果你尝试过用D T D来完成这项工作,会遇到一些障碍。解决的办法就是X M L的模式
(S c h e m a)和命名空间(N a m e s p a c e),针对它们的开发工作早已经开始。
随着X M L的发展,正在开发的X M L词汇表已经越来越多。其结果之一,就是开发者开始遇
到来自别的开发者的、对于解决自身问题大有好处的词汇表。这类词汇表不能满足所有需要,
但它们确实能够极大地简化开发新词汇表的工作。当你正在开发一项解决常见问题的新应用时,
如果有人已经考虑过这个问题并编制了一个X M L词汇表可是个不错的消息。如果你不需要它所
有的部分,可以借用其中的内容重新编制一个。即使孤立无援,你也会希望分阶段、有步骤地
完成;将一个大的问题分解为若干小的问题会有利于它的解决。
X M L的研究者意识到了这一问题并设计出命名空间作为解决办法。命名空间是文档设计者
们希望利用的名称的资源。通过它们的属性,你可以利用其他资源并毫不犹豫地采纳其中的部
分内容。如果你应付的是一个大难题,可以编写一系列词汇表,其中的每一个只涉及整个问题
的一小部分,然后使用命名空间将各类X M L词汇表混合起来。
这样做的问题之一是D T D—XML 1.0中指定词汇表的办法—不允许你使用命名空间。我
们在第7章会讲到, D T D还有其他问题。现有的解决方案是模式,使用X M L语法的替代品。这一
章会解释几种采用模式的途径,并使用本书的目录举例来说明它的好处。第3章开发的D T D将被
转化为模式的形式。你会看到一些与D T D相比,模式的过人之处。最后,当我们创建一个使用
基于浏览器的脚本代码的索引程序时,你会全面了解如何编制模式的代码。
1.6.7 链接和查询
H T M L定义的特征之一就是链接。在这种标记语言当中,它可能是最受欢迎的一个部分。在
使用时,关系型数据库会形成一个链接自身的表单,使用外键获取另一个表的数据。任何技术
如果要应用到稳定的数据库中,就必须具备某种与数据主体链接的能力。X M L也不例外。许多
开发者希望把一个X M L文档与另一个链接起来,或者将非X M L的内容与X M L文档链接起来。如
果在X M L中有链接的话,图像和二进制数据就能够和X M L文档配合起来使用。所以,链接是
X M L研究者们投入极大精力的一个重要领域。W 3 C正在制定相关的几项计划,其中比较吸引人
的是X L i n k和X P o i n t。第8章将向你介绍这些计划。你会学习如何在自己的应用程序中使用X M L
链接。由于对X M L解析器中的链接来说没有标准支持,所以你看到的是可能实现的链接的常见
形式。
X M L研究者们感兴趣的另一个领域是查询。我们必须由某种途径能够把一些规则传递给
X M L解析器,然后得到符合这些规则的文档片断集合。有了这种能力,大的X M L文档就成为了
某种类型的数据库。除了有类似于数据库查询的特征以外, X M L的查询也是转换操作的中心,
操作和改变X M L的关键模式。第8章将从为X M L提出的主要计划中提炼出X M L查询的语法知识。
1.6.8 转换XML
转换( t r a n s f o r m a t i o n)是一项非常强大的X M L技术。通过转换,编程者可以根据应用在第
一个文档中的一套规则将这个文档转换成另一种形式的文档。X M L转换用于在类似的X M L词汇
第1章XML 简介使用15 下载
表之间进行转换,以及把X M L文档转换为其他基于文本的文件格式,比如以逗号分隔值的文本
文件。对于We b开发者来说,这是一个非常重要的工具。如果要合并现有的资源,你需要执行一
些有效的转换以得到统一的格式。如果你在同若干伙伴进行合作,比如B 2 B运作,就肯定需要将
文档从一种格式转换到另一种格式。第9章将告诉你如何做到这一点。转换的有趣在于映射规则
是在一个独立的文档而不是代码中指定。如果你需要动态地在一系列相关格式之间进行转化,
可以开发一系列的规则文档。在运行的时候,你在决定使用哪一个转换,然后将正确的规则应
用到手头的文档上。对于B 2 B模式和供应链应用来说,这项功能特别有用。
一种被称作可扩展样式语言( Extensible Style Language,X S L)的用于X M L的样式语言中
 
中国航空网 www.aero.cn
航空翻译 www.aviation.cn
本文链接地址:XML高级编程上(7)