首页 > 解决方案 > XQuery 中有动态绑定吗?

问题描述

我正在研究 XQuery 以及它如何与 SQL 一起用于查询 XML 文档,我了解到 XQuery 1.0 版不支持动态绑定或面向对象的设计,这意味着 XQuery 对于大型程序不是很有用。我可能弄错了,但 XQuery 3.0 中没有引入动态绑定吗?如果可以,你能举一个简单的例子吗?

标签: sqloopxquerydynamic-programmingxquery-3.0

解决方案


高阶函数

fn:function-lookup()返回具有给定名称和数量的函数,如果有的话。

表达式fn:function-lookup(xs:QName('fn:substring'), 2)('abcd', 2)返回 ' bcd'。

fn:function-name()返回由函数项标识的函数的名称。

表达式fn:function-name(fn:substring#2)返回fn:QName("http://www.w3.org/2005/xpath-functions", "fn:substring")。(返回的 QName 的命名空间前缀是不可预测的。)。

fn:function-arity()返回由函数项标识的函数的元数。

表达式fn:function-arity(fn:substring#2)返回2

fn:应用()

表达式fn:apply(fn:concat#3, ["a", "b", "c"])返回“ abc”。


推荐阅读