Re: [xsl] Dereferencing not working in certain context

Subject: Re: [xsl] Dereferencing not working in certain context
From: David Carlisle <davidc@xxxxxxxxx>
Date: Mon, 26 Jan 2004 15:39:34 GMT
  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


Current Thread