DOM解释

学习使用文档对象模型(Document Object Model, DOM),使用这种树 API 可以直接访问 XML 文档的各个部分。DOM 可能是最为流行的 XML 文档访问方式,它通过损失性能实现了访问的便利性。

Document Object Model (DOM) [W3C 推荐标准] 是一种用于 XML 文档的对象模型,可用于直接访问 XML 文档的各个部分。在 DOM 中,文档被模拟为树状,其中 XML 语法的每个组成部分(例如元素或文本内容)都被表示为一个节点。作为一种 API,DOM 允许您遍历文档树,从父节点移动到子节点和兄弟节点等,并利用某种节点类型特有的属性(元素具有属性,而文本节点具有文本数据)。DOM 被设计为与语言无关。OMG(Object Management Group, 对象管理组)的 CORBA Interface Definition Language (IDL) [ISO 国际标准,编号 14750] 可用于表示 DOM 节点和支持接口。

DOM 最初源于 Web 浏览器中对 HTML 和 XML 对象标准化脚本操作的对象模型。某些情况下,当将它作为独立的编程 API 时,使用起来有些笨拙,而本文主要讨论的就是这种用法。DOM 的发展经历了不同级别,每一级别在前一级别基础上添加了新功能。级别 1 涵盖了基本功能;级别 2 添加了名称空间支持、UI 事件模型、迭代器等功能;级别 3 添加了可从 XML 文档文件进行加载和保存的 API,并集成了 XPath,添加了验证支持等。

通常,DOM 比 Simple API for XML (SAX) 更容易掌握,因为它没有涉及回调和复杂的状态管理。然而,DOM 的实现常常将所有 XML 节点保持在内存中,这使较大的文档变得效率低下。尽管许多语言都提供了 DOM 的实现,但是 DOM 试图实现与语言无关,这使得其他语言的追随者经常抱怨 DOM 非常笨拙且不能利用任何语言的专长。因此,涌现出众多特定于语言的树 API。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值