Java理论与实践:用XQuery进行屏幕搜集 - 编程入门网
清单 2 显示了一个示例 XML 文档 bib.xml,它表示一个书目。然后我们将 介绍一些快速的 XQuery 表达式,让您对 XQuery 能够做什么形成一种认识,最 后我们将再转到屏幕搜集的示例上。要全面介绍 XQuery 的语法和使用情况可能 要用几百页的篇幅,有关更详细的参考材料和示例,请参阅 参考资料 小节。 清单 2. 示例 XML 书目
清单 3 显示了一个 XQuery 表达式,它选择 Addison-Wesley 在 1991 年以 后出版的所有书籍,提取它们的标题,并把标题格式化成前面有项目符号的 (<ul>)列表。大括号表示从“表示模式”(数据直接传递到输出 ,例 如 <ul> 和 <li> 标签)到“代码模式”的切换;然后在 return 子句之后立即进行从“代码模式”到“表示模式”的隐式切换。 清单 3. 根据查询参数选择图书标题的 XQuery 表达式
Java理论与实践:用XQuery进行屏幕搜集(2)时间:2010-12-20 IBM Brian Goetz查询语法引入了“for”,通常称之为“Flower 表达式”(来自 FLWOR,是 for-let-where-order-return 的缩写),该语法从文档中选择一系列 XML 节点 ,在该例中,用 XPath 选取了来自 bib.xml 文档的 <book> 节点集,然 后进一步过滤出与指定查询参数(出版商是 Addison-Wesley,出版日期是 1991 年之后)匹配的节点。对于选出的每个节点,将在 return 子句中计算表达式, 在这里是标记(<li> 标签)与代码(提取出每个 <book> 节点的 <title> 元素的内容)的混合。 这个简单的 XQuery 示例描述了 XQuery 的几个方面 —— 某一文档中表示 与代码的混合、XPath 的运用、子条件的运用($b 引用)、非凡的查询表达式 、XQuery 函数(data()),还有一个事实:输出文档的结构不必与输入文档的 结构匹配。就在这个相当紧凑的、读起来不是很难的查询中,孕育着强大的处理 能力。 清单 4 显示了一个更简单的 XQuery 表达式,它把书目中不同出版商的数量 ,在一个 <count> 元素中输出。像前一个示例一样,它用 XPath 表达式 选择一组节点,然后用 XQuery 函数选择惟一值,并计算节点的数量。它通过运 算获得一个数字 —— bib.xml,即文档中不同出版商的数量。 清单 4. 计算不同出版商数量的 XQuery 表达式
这些示例只是 XQuery 能够执行的各种查询类型的很少一部分,提供这些例 子仅仅是为了让您对使用 XQuery 能够做的事情有些感觉,以及提示您如何才能 用 XQuery 把 XML 文档转换成自己选择的格式。虽然 XQuery 的大部分功能主 要用于查询大型文档或者其他数据源,但是也可以使用 XQuery 非常简单的子集 来对 HTML 文档进行屏幕搜集,为各种应用程序提取出需要的数据,例如在屏幕 大小有限的设备(例如蜂窝电话)上显示有关的数据,或者创建 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |