Saxon 7.8 doesn't support exslt:function. XSLT 2.0 would allow a
processor to support it, but it's the implementation's choice. The
reason I removed it was that it was just too complicated to maintain it
in parallel with the standard xsl:function declaration.
Michael Kay
-----Original Message-----
From: owner-xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
[mailto:owner-xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com] On Behalf Of
Andrew Welch
Sent: 19 January 2004 14:06
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: [xsl] Exsl functions in xslt 2
Hi all,
Recently DC came up with a very neat solution to get around
using function-available all over the place in a stylesheet
that needed to be portable between Saxon and MSXML
For those that missed it, it was this:
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:exslt="http://exslt.org/common"
xmlns:exsltf="http://exslt.org/functions"
xmlns:msxsl="urn:schemas-microsoft-com:xslt"
extension-element-prefixes="exslt exsltf msxsl">
<xsl:variable name="x">
<foo>
<bar>hello world</bar>
</foo>
</xsl:variable>
<exsltf:function name="msxsl:node-set">
<xsl:param name="x"/>
<exsltf:result select="exslt:node-set($x)"/>
</exsltf:function>
<xsl:template match="/">
<xsl:value-of select="msxsl:node-set($x)//bar)"/>
</xsl:template>
</xsl:stylesheet>
(MSXML will use msxsl:node-set directly, Saxon will use the
exsltf:node-set)
This is great and works well for Saxon 6.5.3 and MSXML 4.
However, I would also like it to work with Saxon 7.8 - could
someone with xslt 2.0 experience let me know if its possible
to have this kind of solution work for Saxon 7.8 and MSXML4
(Saxon 7.8 currently complains... as I believe functions are
built into 2.0)?
The history is that the app Im writing for uses Saxon 7.8,
and there is a requirement to view transforms outside of the
app using MSXML4. If possible, it would be best to add this
functionality in the stylesheets, rather than alter the code
for the app.
Thanks for any suggestions,
cheers
andrew
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list