Заменаа такжев XSL - PullRequest
       1

Заменаа такжев XSL

0 голосов
/ 29 декабря 2010

Я пытаюсь изменить xsl более старой версии. Я сталкиваюсь со следующим

<xsl:eval>FormatAccount(this)</xsl:eval>

<xsl:script>
function FormatAccount(e) {
   // function details
}

</xsl:script>
             I am trying to call the FormatAccount() javascript function using `<xsl:eval>` and the function is written in `<xsl:script>`.

Как это сделать в соответствии с последними стандартами ????

Ответы [ 2 ]

1 голос
/ 29 декабря 2010

Последним стандартом является XSLT 2.0 http://www.w3.org/TR/xslt20/,, в нем нет возможности определять функции в Javascript, однако он позволяет определять функции с помощью самого XSLT: http://www.w3.org/TR/xslt20/#stylesheet-functions. XSLT 2.0 поддерживается XSLTПроцессоры 2.0, такие как Saxon 9 http://saxon.sourceforge.net/, AltovaXML Tools http://www.altova.com/altovaxml.html или XQSharp http://www.xqsharp.com/xqsharp/beta.htm.

Если вы хотите использовать Javascript для определения функций расширения, нам нужно знать, какой процессор XSLT вы используете,из этих трех процессоров XSLT 2.0, о которых я упоминал, я думаю, что только AltovaXML Tools позволяет это (http://manual.altova.com/AltovaXML/altovaxmlcommunity/index.html?xextmsxsl.htm), и только, я думаю, для упрощения миграции таблиц стилей XSLT 1.0, написанных для Microsoft MSXML.

Если вы хотите использоватьПроцессор XSLT 1.0, то есть определение функций расширения в конкретном языке программирования, таком как Javascript, зависит от процессора, который вы используете, для MSXML есть элемент msxsl:script: http://msdn.microsoft.com/en-us/library/ms256042.aspx.

0 голосов
/ 29 декабря 2010

Встроенные функции расширения на другом языке не являются моделью содержимого XSLT.

Элементы расширения и функции расширения являются частью модели содержимого, как описано в http://www.w3.org/TR/xslt#extension:зависит от реализации, как именно процессор XSLT регистрирует эти расширения.

Как указано в ответе @Martin Honnen, в XSLT 2.0 вы можете объявлять «функции таблицы стилей» с помощью самого XSLT.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...