передача xpath в xquery - PullRequest
       10

передача xpath в xquery

1 голос
/ 27 сентября 2011

Я обычно передаю xpath в xqueries следующим образом:

let $xml :=
<books>
  <book price="1">
    <name>abc</abc>
  </book>
</books>

return $xml/book/name

Я пытаюсь выяснить, есть ли способ указать путь xpath в качестве строковой переменной и использовать его в xquery примерно так::

declare variable $xpath as xs:string external;
let $xml :=
    <books>
      <book price="1">
        <name>abc</abc>
      </book>
    </books>
return $xml/$xpath

Скажем, значение, передаваемое в $ xpath, это book / name.

Спасибо.

1 Ответ

2 голосов
/ 27 сентября 2011

краткий ответ: нет.Однако, если у вашего процессора есть метод "eval ()", вы можете сконструировать ваш запрос в виде строки и оценить его.Возможно, вы сможете создать запрос в каком-то внешнем процессе и таким образом внедрить динамический путь.Если у вас небольшое количество дел, вы можете передать переменную, указывающую, какой из них использовать.Но в языке xquery нет средств для оценки динамических путей.

...