XQuery中的动态谓词

时间:2018-07-16 07:56:31

标签: xquery basex

我注意到一个事实,当谓词具有要比较的动态字段时,它将不起作用。

例如:

  db:open("library")//book[$filterFields = $pattern]

为此,我得到0个结果,

但是当我放例如category而不是$ filterField时,我得到了一些结果。

如何在谓词中将变量用作字段?

1 个答案:

答案 0 :(得分:2)

如果假设$filterFields包含元素名称列表,则可以使用以下查询:

db:open("library")//book
  [*[name() = $filterFields] = $pattern]