[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] RE: dynamic sorting
At 2004-02-06 00:22 +0100, Peter Billen wrote:
But how do I combine test="self::book:title" with a variable $sort, You can't ... since you are dealing with strings being passed on the command line, and node tests along axes must be known at compile time, to be namespace-safe you must deal with both components of the name. Say you have from the command line two parameters: <xsl:param name="sort-name"/> <xsl:param name="sort-uri"/> Then you can sort by children with both name components in a namespace-safe fashion for string values using: <xsl:sort select="*[local-name()=$sort-name and namespace-uri()=$sort-uri]"/> Can you see how the above doesn't get impacted by the namespace prefix utilized by the instance? but test="self::book:$sort" will probably not work Yes, it will not work. You cannot use a variable in a node test, but you can use a variable in a predicate in most expressions (but not in pattern expressions). I hope this helps. ................................. Ken
G. Ken Holman mailto:gkholman@xxxxxxxxxxxxxxxxxxxx Crane Softwrights Ltd. http://www.CraneSoftwrights.com/s/ Box 266, Kars, Ontario CANADA K0A-2E0 +1(613)489-0999 (F:-0995) Male Breast Cancer Awareness http://www.CraneSoftwrights.com/s/bc XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|