Subject: RE: Can't match node without node()[name(.) syntax
From: Pieter Reint Siegers Kort <pieter.siegers@xxxxxxxxxxx>
Date: Tue, 30 Nov 2004 08:34:35 -0600
|
Hi Robert,
It would help if you post your XML (or a typical excerpt if it's too long).
Cheers,
<prs/>
-----Original Message-----
From: Robert Soesemann [mailto:rsoesemann@xxxxxxxxxxx]
Sent: Tuesday, November 30, 2004 7:56 AM
To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Subject: Can't match node without node()[name(.) syntax
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?
|