Динамический XQuery с использованием saxon:evaluate не работает в Oxygen с выражением типа XPath 3.1?

Меня интересует использование saxon:evaluate в XQuery (с использованием XML-редактора Oxygen 24.0), и я хотел увидеть, как он работает в очень простом примере с использованием выражения типа XPath 3.1, чтобы я мог выбрать значение из проанализированного объекта JSON (используя Saxon-EE XQuery 9.9). Однако при этом я получаю сообщение об ошибке. Статическая ошибка в выражении XPath, предоставленном saxon:evaluate: Анализатор XPath не настроен на использование синтаксиса XPath 3.1?

Я попробовал следующее:

      
let $rawJ :=
                    <jroot><![CDATA[
                                 {
                                    "siam_envelope": 
                                    {
                                        "protocol_version": "1"
                                    }
                                    }]]>
                    </jroot>
let $j := parse-json($rawJ)
let $expression := "$p1?siam_envelope?protocol_version"
let $result := saxon:evaluate($expression, $j)

return $result

Я ожидал, что это вернет значение «1», но вместо этого появилось сообщение «Статическая ошибка в выражении XPath, переданном в saxon:evaluate: синтаксический анализатор XPath не настроен на использование синтаксиса XPath 3.1»

Предположительно, это связано с тем, что я использую тип карты XPath, который поддерживается только в XPath 3.1. Однако, поскольку отчеты об ошибках «не настроены», я надеюсь, что есть какая-то конфигурация, которую я могу применить, чтобы это заработало? Если нет, знает ли кто-нибудь в этом сообществе, как запустить динамическое выражение типа XPath 3.1 в XQuery? Конечно, это должно быть возможно?

Заранее спасибо за любые полезные предложения!

0 ответов

Другие вопросы по тегам