Subject: RE: copy attribute question
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Tue, 24 Mar 2009 22:48:44 -0000
|
If template 1 doesn't produce any output that's because it's not being
invoked. Where is the apply-templates call that selects a node that it would
match?
Michael Kay
http://www.saxonica.com/
> -----Original Message-----
> From: Garvin Riensche [mailto:g.riensche@xxxxxxx]
> Sent: 24 March 2009 22:14
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: copy attribute question
>
> Hello,
>
> I am wondering why the context seems to be different in the
> following templates because I thought the output would be the same.
>
> Input:
> <a id="1"/>
>
> Template 1:
> <xsl:template match="a/@*">
> <aa>
> <xsl:copy/>
> </aa>
> </xsl:template>
>
> Template 2:
> <xsl:template match="a">
> <xsl:for-each select="@*">
> <aa>
> <xsl:copy/>
> </aa>
> </xsl:for-each>
> </xsl:template>
>
> Template 1 doesn't produce any output and template 2 outputs:
> <aa id="1"/>
>
> Why doesn't Template 1 copy the attribute node to element
> <aa> like template 2?
>
>
> regards,
> Garvin
|