[xsl] multiple passes dont work

Subject: [xsl] multiple passes dont work
From: "Szabo, Patrick \(LNG-VIE\)" <patrick.szabo@xxxxxxxxxxxxx>
Date: Fri, 18 Feb 2011 11:47:17 +0100
Hi,

I know i've asked a quite similar question recently but i can't seem to
realize this.
I want to have one Stylesheet do do a few passes. (isntead of using more
than one stylesheet).

I did this:

<xsl:variable name="pass2">
		<xsl:apply-templates select="node()"/>
</xsl:variable>


<xsl:template match="* | processing-instruction()">
	<xsl:copy>
		<xsl:copy-of select="@*"/>
		<xsl:apply-templates/>
	</xsl:copy>
</xsl:template>

<xsl:template match="* | processing-instruction()" mode="second">
	<xsl:copy>
		<xsl:copy-of select="@*"/>
		<xsl:apply-templates/>
	</xsl:copy>
</xsl:template>


<xsl:template match="/">
	<xsl:apply-templates select="$pass2" mode="second"/>
</xsl:template>


There are also a couple of templates that actually do something.
Most oft hem have no mode definend (for the first pass) and 1 of them
has mode="second".

Unfortunately the result looks just like it would look after the first
pass.

What am I doing wrong ?!

Kind regards

. . . . . . . . . . . . . . . . . . . . . . . . . .
Patrick Szabo
 XSLT-Entwickler
LexisNexis
Marxergasse 25, 1030 Wien

mailto:patrick.szabo@xxxxxxxxxxxxx
Tel.: +43 (1) 534 52 - 1573
Fax: +43 (1) 534 52 - 146

Current Thread