12、超越惰性 XML 解析:优化解析性能的新方法

超越惰性 XML 解析:优化解析性能的新方法

1. 包含级别概述

在处理 XML 文档时,我们会遇到不同的数据包含级别。这些级别决定了在对应的 XInclude 元素中复制分区根元素数据的方式。以下是具体的包含级别及其相关信息:
| 包含级别 | 要包含的数据 | 属性名称 |
| — | — | — |
| NONE | 无 | N/A |
| TAG | 标签(默认) | xiPartitionTag |
| TAG_ATR | 标签 + 属性 | xiPartitionAtr |
| TAG_ATR_TX | 标签 + 属性 + 文本 | xiPartitionTxt |

对于 TAG_ATR 级别,我们使用一个单一属性,其值的形式为 field1=value1&field2=value2& … 。例如,如果我们根据包含级别 TAG_ATR 扩展图 3(b) 中所示的 XInclude 元素,并执行相同的 XPath 查询,我们可以在 XInclude 指针元素中找到有关标签名称和属性值的必要信息。这样,分区 P1 和 P4 就无需加载,因为添加到 XInclude 指针的属性值可以帮助我们在不加载分区的情况下判断哪些 “Chapter” 元素满足属性条件。

2. XML 文件分区
2.1 分区目标

我们对 XML 文档进行分区的主要目标是最小化在文档上导航所需的 2LP 解析时间。与其他为存储目的对 XML 文档进行分区的工作不同,我们的目标是最小化给定请求所访问的分区数量。

2.2 分区标准

分区原始文档

下载前必看:https://pan.quark.cn/s/a4b39357ea24 在本资料中,将阐述如何运用JavaScript达成单击下拉列表框选定选项后即时转向对应页面的功能。 此种技术适用于网页布局中用户需迅速选取并转向不同页面的情形,诸如网站导航栏或内容目录等场景。 达成此功能,能够显著改善用户交互体验,精简用户的操作流程。 我们须熟悉HTML里的`<select>`组件,该组件用于构建一个选择列表。 用户可从中选定一项,并可引发一个事件来响应用户的这一选择动作。 在本次实例中,我们借助`onchange`事件监听器来实现当用户在下拉列表框中选定某个选项时,页面能自动转向该选项关联的链接地址。 JavaScript里的`window.location`属性旨在获取或设定浏览器当前载入页面的网址,通过变更该属性的值,能够实现页面的转向。 在本次实例的实现方案里,运用了`eval()`函数来动态执行字符串表达式,这在现代的JavaScript开发实践中通常不被推荐使用,因为它可能诱发安全问题及难以排错的错误。 然而,为了本例的简化展示,我们暂时搁置这一问题,因为在更复杂的实际应用中,可选用其他方法,例如ES6中的模板字符串或其他函数来安全地构建和执行字符串。 具体到本例的代码实现,`MM_jumpMenu`函数负责处理转向逻辑。 它接收三个参数:`targ`、`selObj`和`restore`。 其中`targ`代表要转向的页面,`selObj`是触发事件的下拉列表框对象,`restore`是标志位,用以指示是否需在转向后将下拉列表框的选项恢复至默认的提示项。 函数的实现通过获取`selObj`中当前选定的`selectedIndex`对应的`value`属性值,并将其赋予`...
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值