RE: [xsl] Select and display a node

Subject: RE: [xsl] Select and display a node
From: Sébastien Bicaïs <s.bicais@xxxxxxxxxxx>
Date: Wed, 9 Feb 2005 17:51:15 +0100
Thanx  joris for you answer. The problem was actually your 1st solution: I had
2 XML element with the same 'id' attributes...

-----Message d'origine-----
De : Joris Gillis [mailto:roac@xxxxxxxxxx]
Envoyi : mercredi 9 fivrier 2005 10:59
@ : xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Objet : Re: [xsl] Select and display a node

Tempore 09:57:50, die 02/09/2005 AD, hinc in xsl-list@xxxxxxxxxxxxxxxxxxxxxx
scripsit Sibastien Bicaos

> <xsl:template match="rss/channel" >
> <xsl:for-each select="item/page[@id=456]">
> 	id = <xsl:value-of select="@id"/>
> </xsl:for-each>
> </xsl/template>
> But when I run this, I get "id = 456" twice..
> Any suggestion welcome

I can only see 2 possible explanations:
1) Your real input XML contains elements with the same 'id' attributes.
2) You're not using any tool that displays error messages.

You tried this first:
<xsl:template match="rss/channel" >
<xsl:for-each select="item/page">
id = <xsl:value-of select="@id"/>

Which resulted (correclty) in 2 times "id = ..."

And then you changed to:
<xsl:template match="rss/channel" >
<xsl:for-each select="item/page[@id=456]"> id = <xsl:value-of select="@id"/>
</xsl:for-each> </xsl/template>

Which is not well-formed xml ('</xsl/template>') and caused the ouput file not
to be updated. Thus  creating the false impression that it returned 2 times
"id = ..." again.

Joris Gillis (
Fiat W3C in tenebris

Current Thread