My problem is that the select statement of the variable needs to be
dynamic. Such as... (and I know this doesn't work.. )
<xsl:choose>
<xsl:when test="$clientid = ''">
<xsl:variable name="selectclause" select = "//client"/>
</xsl:when>
<xsl:otherwise>
<xsl:variable name="selectclause" select =
"//client[$clientid]"/>
</xsl:otherwise>
</xsl:choose>
This is a bit tricky in XSLT 1.0. The usual recommendation for creating
a node-set conditinoally is:
<xsl:variable name="selectclause" select="(//client)[$clientid=''] |
(//client[$clientid!=''])"/>
or more generically
select = then-part[condition] | else-part[not(condition)]
In XSLT 2.0 of course you can do
select="if (condition) then expr-1 else expr-2"
Michael Kay
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list