But when count is equal to 4, the variable part of the result should be the
same the as the hard-coded "4" part of the result. Could someone please
tell me why it doesn't work?
you haven't shown the relevant bit of your code (the definition of the
variable). But we can make some guesses
If the variable count oes have the value 4
as in
<xsl:variable name="count" select="4"/>
then as you say, [4] and [$count] will work in the same way.
If however it has a value that is (or will be cast to) "4"
as in
<xsl:variable name="count" select="'4'"/>
or
<xsl:variable name="count">4</xsl:variable>
then [$count] will work like ['4'] which being a non-numeric filter will
work like [boolean('4')] which will work like [true()] as boolean()
returns true on a non-empty string (or non empty node set)
and a predicate of true() will not filter your node set at all.
David
--
http://www.dcarlisle.demon.co.uk/matthew
________________________________________________________________________
This e-mail has been scanned for all viruses by Star Internet. The
service is powered by MessageLabs. For more information on a proactive
anti-virus service working around the clock, around the globe, visit:
http://www.star.net.uk
________________________________________________________________________
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list