Мне нужно передать узел в качестве параметра в таблицу стилей XSL. Проблема в том, что параметр отправляется как строка. Я видел несколько вопросов SO по этой теме, и я знаю, что решение (в XSLT 1.0) заключается в использовании внешней функции node-set()
для преобразования строки в набор узлов.Передача узла как параметра в таблицу стилей XSL
Моя проблема в том, что я использую eXist DB. Кажется, я не могу заставить его XSLT-процессор найти любую такую функцию. Я пробовал EXSLT node-set()
из пространства имен http://exslt.org/common
, а также версию Saxon и Xalan (я думаю, что eXist использовал Xalan, но теперь это может быть Saxon).
Являются ли эти расширения допустимыми даже в XSLT-процессоре, используемом eXist? Если нет, есть ли что-то еще, что я могу сделать?
Ну, вы можете сначала просмотреть информацию о вашем используемом XSLT-процессоре со стилем, например http://home.arcor.de/martin.honnen/xslt/processorTest3.xml, для вывода таких свойств, как 'system-property ('xsl: vendor ') 'и' system-property (' xsl: product-version ') '. Что касается ваших текущих попыток, используете ли вы код Java для преобразования XSLT или XQuery? Рассмотрим, чтобы показать детали этого кода, передающего параметр и выполняющего преобразование. –
Вы не хотите читать другие подобные вопросы/ответы SO, если они не связаны конкретно с eXist, поскольку способ передачи параметров в XSLT-преобразование зависит от деталей API, предлагаемых конкретным продуктом, и который зависит от одного продукта другому. И НЕ является целью функции node-set() для синтаксического анализа XML, поставляемого в виде строки, хотя некоторые реализации делают это. –
http://exist-db.org/exist/apps/fundocs/view.html?uri=http://exist-db.org/xquery/transform&location=java:org.exist.xquery.functions.transform.TransformModule&details = true говорит о параметрах. Параметры «Таблицы стилей» могут передаваться в третьем аргументе с использованием фрагмента XML со следующей структурой: « ' ". Кажется, что параметры, по крайней мере для функции 'transform', являются просто парами имен/значений. –