[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

[xsl] Can't match node without node()[name(.) syntax


Subject: [xsl] Can't match node without node()[name(.) syntax
From: "Robert Soesemann" <rsoesemann@xxxxxxxxxxx>
Date: Tue, 30 Nov 2004 14:55:48 +0100

Help;-(

I experienced that I cannot match any element in the normal way of just
Naming the node name. Instead I also need to write "node()[name(.)='....
Any ideas why that happens? Could it be the identity template that I
use?

This works (I see <FOOOOOO/>):
-----------------------------
	<!-- Copy nodes except those affected by other templates -->
	<xsl:template match="/ | @* | node()">
	   <xsl:copy>
	     <xsl:apply-templates select="@* | node()"/>
	   </xsl:copy>
	</xsl:template>

	<!-- Match all kiwi-relation elements  -->
	<xsl:template match="node()[name(.) = 'my-relation']">

        <FOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO/>
        ...

This doesn't works (I don't see <FOOOOOO/>):
-------------------------------------------
	<!-- Copy nodes except those affected by other templates -->
	<xsl:template match="/ | @* | node()">
	   <xsl:copy>
	     <xsl:apply-templates select="@* | node()"/>
	   </xsl:copy>
	</xsl:template>

	<!-- Match all kiwi-relation elements  -->
	<xsl:template match="my-relation">
        <FOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO/>
        ...
Why that?


Current Thread