This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Re: node-set() function in MSXML?
- To: <xsl-list at mulberrytech dot com>
- Subject: Re: node-set() function in MSXML?
- From: "Steve Muench" <smuench at us dot oracle dot com>
- Date: Tue, 1 Aug 2000 16:49:48 -0700
- References: <BNEMICIEADHDDOIKLHNCOEPHCAAA.elenz@xyzfind.com>
- Reply-To: xsl-list at mulberrytech dot com
|
| Does MSXML implement a node-set() function (in a standard way)?
|
Not sure what you mean by "in a standard way", since the
node-set() function is not part of the XSLT 1.0 Recommendation,
but my experience playing with MSXSL3 (retested just now on the
July 2000) is that MSXSL3 does not require a node-set()
function because it treats Result Tree Fragments as node-sets
Try the following with MSXSL3 (using any convenient XML file as input):
<test xsl:version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:variable name="x">
<a>
<b>one</b>
<b>two</b>
</a>
</xsl:variable>
<xsl:for-each select="$x/a/b">
<c><xsl:value-of select="."/></c>
</xsl:for-each>
</test>
You'll get:
<?xml version="1.0" encoding="UTF-16"?>
<test><c>one</c><c>two</c></test>
as output.
Late-model versions of Saxon, OracleXSL, XT, and Xalan
complain about "cannot convert result tree fragment",
so require an extension function to achieve this.
______________________________________________________________
Steve Muench, Lead XML Evangelist & Consulting Product Manager
BC4J & XSQL Servlet Development Teams, Oracle Rep to XSL WG
Author "Building Oracle XML Applications", O'Reilly
http://www.oreilly.com/catalog/orxmlapp/
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list