[$page_number] is true if $page_number evaluates to the boolean value true
except in one special case that $page_number is numeric in which case
it is true if [position()= $page_number] is true.
<xsl:param name="page_number" select="5"/>
would make $page_number numeric and so the filter would test position()=5
but you have
<xsl:param name="page_number" select=" '5' "/>
which makes $page_number the string "5" and so the filter
[$page_number]
is true just if the string is non-empty (which it always is)
David
________________________________________________________________________
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