У меня странный эффект. Я использую xalanj и xsltproc, и я думаю, что большинство скриптов работало на обоих (время назад). Однако через некоторое время скрипты xslt с функцией {http://exslt.org/functions} больше не работают в xsltproc. Это debian 7.9.xsltproc не распознает fx: function (не более)
Фрагмент кода
<xsl:transform version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:yz="http://www.hegny.de/xxyy"
xmlns:fx="http://exslt.org/functions">
...
<fx:function name="yz:format3">
<xsl:param name="x"/>
<xsl:choose>
...
будет нормально работать с xalanj но xsltproc пожалуется
compilation error: file /home/hegny/prog/syno_recording/xmltv_text.xsl line 67 element param
element param only allowed within a template, variable or param
(строка 67 является парам под Fx: функция)
Кроме того, при вызове xsltproc --dumpextensions
будет показан
Registered XSLT Extensions
--------------------------
Registered Extension Functions:
...(nothing containing exslt.org/functions)...
Registered Extension Elements:
{http://exslt.org/functions}result
{http://xmlsoft.org/XSLT/}test
{http://exslt.org/common}document
Registered Extension Modules:
http://icl.com/saxon
http://xmlsoft.org/XSLT/
http://exslt.org/functions
будет указывать, что он знает о fx: result, который принадлежит к функциям функций exslt, но не о функции fx: function - какой смысл это сделать? Кто-нибудь узнал, как получить функцию fx: (назад?) Для работы? - Благодаря
Я думаю, что ваш корневой элемент XSLT должен объявить 'extension-element-prefixes =" fx "', no? Является ли это единственным решением, я не уверен, поскольку я не использую 'xsltproc' много. –
Держу пари, я должен! - сделайте ответ и получите полную награду. Я думал, что попробовал это тоже, но потом снова, теперь он работает в xsltproc с функциями .. спасибо! –