[Home] [By Thread] [By Date] [Recent Entries]
Hi All,
As I rely heavily on the superb diagnostics of Saxon when testing client-side (browser) XSLT 1.0 I would like to understand the following. When I run the stylesheet below with SAXON 6.5.5 (with two <xsl:copy-of statements) then the (unexpected) output is <?xml version="1.0" encoding="utf-8"?>
<test>
<Title>From exsl:node-set($rtf)/a/b:</Title>
<b>
<c>
<d/>
</c>
</b>
<Title>Directly from $rtf/a/b/c:</Title>
<c>
<d/>
</c>
</test>However, if I delete the first <xsl:copy-of then I get this error message from the other one To use a result tree fragment in a path expression, either use exsl:node-set() or specify version='1.1' as I think correctly. Did I miss something XSLT-wise ? Regards, Manfred <?xml version="1.0" encoding="UTF-8" ?> <xsl:stylesheet version="1.0" xmlns:exsl="http://exslt.org/common" exclude-result-prefixes="exsl" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output indent="yes"/> <xsl:template match="/"> <xsl:variable name="rtf"> <a> <b> <c> <d /> </c> </b> </a> </xsl:variable> <test> <Title><xsl:text>From exsl:node-set($rtf)/a/b:</xsl:text></Title> <xsl:copy-of select="exsl:node-set($rtf)/a/b"/> <Title><xsl:text>Directly from $rtf/a/b/c:</xsl:text></Title> <xsl:copy-of select="$rtf/a/b/c"/> </test> </xsl:template> </xsl:stylesheet>
|

Cart



