Subject: Re: [xsl] Variable and parameter with same name and scope allowed in 2.0|
From: "andrew welch" <andrew.j.welch@xxxxxxxxx>
Date: Tue, 2 May 2006 15:10:11 +0100
> I've only tried this with Saxon 8.7.1 so I'm assuming it's > intentional? Is there a good reason for this - something > that I'm not seeing at the moment?
It's intentional and the reason for it is that people voted for it, but I can't read their minds to tell you why they did so.
It can be quite convenient though when writing a micro-pipeline:
<xsl:variable name="selected-nodes" select="...."/> <xsl:variable name="selected-nodes" select="if (XYZ) then $selected-nodes else ...."/> <xsl:variable name="selected-nodes" select="if (PQR) then $selected-nodes else ...."/>
Hmmm the convenience of not having to use distinct variable names versus a few hours debugging (followed by raw anger that you really did make that mistake)....
At least its reasonably well known it seems. It came as a surprise to me as it doesn't feel right for XSLT, which is usually more strict.