全球旧事资料 分类
计用于分析文档(这里是指XML文件),以及做一些特定于该信息的事情。在诸如SAX这样基于事件的API中,解析器将向某种监听器发送事件。在诸如DOM这样基于树的API中,解析器将在内存中构造一颗数据树。作为API的DOM
f从DOMLevel1开始,DOMAPI包含了一些接口,用于表示可从XML文档中找到的所有不同类型的信息。它还包含使用这些对象所必需的方法和属性。Level1包括对XML10和HTML的支持,每个HTML元素被表示为一个接口。它包括用于添加、编辑、移动和读取节点中包含的信息的方法,等等。然而,它没有包括对XML名称空间(XMLNamespace)的支持,XML名称空间提供分割文档中的信息的能力。DOMLevel2添加了名称空间支持。Level2扩展了Level1,允许开发人员检测和使用可能适用于某个节点的名称空间信息。Level2还增加了几个新的模块,以支持级联样式表、事件和增强的树操作。当前正处于定稿阶段的DOMLevel3包括对创建Docume
t对象(以前的版本将这个任务留给实现,使得创建通用应用程序很困难)的更好支持、增强的名称空间支持,以及用来处理文档加载和保存、验证以及XPath的新模块;XPath是在XSL转换(XSLTra
sformatio
)以及其他XML技术中用来选择节点的手段。DOM的模块化意味着作为开发人员,您必须知道自己希望使用的特性是否受正在使用的DOM实现所支持。确定特性可用性DOM推荐标准的模块性质允许实现者挑选将要包括到产
品中的部分,因而在使用某个特定的特性之前,首先确定该特性是否可用可能是必要的。本教程仅使用DOMLevel2CoreAPI,不过在着手您自己的项目时,了解如何能够检测特性是有所帮助的。DOM中定义的接口之一就是DOMImpleme
tatio
。通过使用hasFeature方法,您可以确定某个特定的特性是否受支持。DOMLevel2中不存在创建DOMImpleme
tatio
的标准方法,不过下面的代码将展示如何使用hasFeature来确定DOMLevel2样式表模块在某个Java应用程序中是否受支持。importjavaxxmlparsersDocume
tBuilderFactoryimportjavaxxmlparsersDocume
tBuilder
fimportorgw3cdomDOMImpleme
tatio
publicclassShowDomImplpublicstaticvoidmai
Stri
gargstryDocume
tBuilderFactorydbfDocume
tBuilderFactory
ewI
sta
ceDocume
tBuilderdocbdbf
ewDocume
tBuilderDOMImpleme
tatio
domImpldocbgetDOMImpleme
tatio
ifdomImplhasFeature
好听全球资料 返回顶部