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

RE: [xsl] apply-template doesn't hit template


Subject: RE: [xsl] apply-template doesn't hit template
From: "Vasu Chakkera" <vasucv@xxxxxxxxxxx>
Date: Mon, 13 Sep 2004 13:38:29 +0000

Mike,
I think the bug is in the code he has shown..

>>><xsl:template select="kcm">
>>>	<xsl:message>template hits</xsl:message>
>>>	<!-- This message is never seen -->
>>>  </xsl:template>

Vasu




From: "Michael Kay" <mhk@xxxxxxxxx>
Reply-To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
To: <xsl-list@xxxxxxxxxxxxxxxxxxxxxx>
Subject: RE: [xsl] apply-template doesn't hit template
Date: Mon, 13 Sep 2004 14:33:14 +0100

Sometimes when you can't find a bug, it's because you're looking in the
wrong place.

What makes you so sure your bug isn't in the bits of code you haven't shown
us?

Michael Kay
http://www.saxonica.com/

> -----Original Message-----
> From: Frans Englich [mailto:frans.englich@xxxxxxxxx]
> Sent: 13 September 2004 13:59
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: [xsl] apply-template doesn't hit template
>
>
> Hello all,
>
> I have an embarrassing simple apply-templates/template
> problem. Here's my
> source document:
>
> <kcmtests>
>
> <kcm kcfg="true" [...]>
> [...]
> </kcm>
>
> <kcm kcfg="false" [...]>
> [...]
> </kcm>
>
> <kcm kcfg="false" [...]>
> [...]
> </kcm>
>
> </kcmtests>
>
> There's 21 kcm elements, all of them have "kcfg='true'".
>
> <xsl:template select="kcm">
> 	<xsl:message>template hits</xsl:message>
> 	<!-- This message is never seen -->
> </xsl:template>
>
> <xsl:template match="/">
> 	<xsl:apply-templates select="//kcm[@kcfg='true']"/>
> 	<xsl:message>
> 		<xsl:value-of select="count(//kcm[@kcfg='true'])"/>
> 		<!-- This reports 0, which is correct -->
> 	</xsl:message>
>
> 	<xsl:apply-templates select="//kcm[@kcfg='false']"/>
> 	<xsl:message>
> 		<xsl:value-of select="count(//kcm[@kcfg='false'])"/>
> 		<!-- This reports 21, which is correct -->
> 	</xsl:message>
> </xsl:template>
>
>
> What I want to achieve is to in one place select entries(the
> root template),
> and then with the first template format them for
> representation -- but it
> doesn't hit. Instead, the selected items(the 21 kcm) is
> printed right out in
> the output(their content, no elements).
>
> I have two questions:
>
> 1. Why doesn't the template hit?
>
> 2. Why are the content simply sent to the output? Is it
> because I selected
> them, but no template matched?
>
> The above XSL is that simple, I've commented out everything
> else for testing
> purposes.
>
>
> Thanks in advance,
>
> 			Frans


_________________________________________________________________
Stay in touch with absent friends - get MSN Messenger http://www.msn.co.uk/messenger



Current Thread
Keywords
xsl