[xsl] node() problem

Subject: [xsl] node() problem
From: "Greene, Stephen" <Stephen.Greene@xxxxxx>
Date: Fri, 4 Jul 2003 12:00:53 -0400
Hi all,

A quick question:

I am using this piece of code:

<xsl:template match="@*|node()">
	<xsl:element name="_r">
	<xsl:attribute name="n">
		<xsl:value-of select="name(.)"/>
	</xsl:attribute>
	<ind><xsl:value-of select="."/></ind>
	</xsl:element> 
</xsl:template>

To handle all of the tags not explicitly matched.

I would expect that:
<foo>goo</foo>

would be transformed to

<_r n="foo"><ind>goo</ind></_r>

However the output is:
<_r n="foo"><ind>goo</ind></_r>
<_r n=""><ind></ind></_r>

When run through msxml, xltproc, and through Java's xslt engine.
The only engine that produces the correct output is XMLSPY's transformation
engine, but it is simply too slow and not practical to run on large files.

Why is it that there appears to be an "empty" node that get's matched in the
first 3 engines?
Is this correct and do you know a fix for it?

Thanks for your help,

Steve Greene

 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread