[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: Determine position in node sequence based on crite
Agreed. It seems like it would be real handy to have position() take an argument: The position of what item in what sequence? or loosen the restrictions on position() in a for expression, or have a different function where you could get the position in a for expression: This all depends on maintaining more context, and we've arguably got too much context-sensitivity already, especially in XSLT. It would be much cleaner with a higher-order function, which you can write in XSLT/XPath 2.1: <xsl:function name="f:index-of" as="xs:integer*"> <xsl:param name="sequence" as="item()*"/> <xsl:param name="test" as="function(item()) as xs:boolean"/> <xs:sequence select="for $i in 1 to count(sequence) return $i[$test($seq[$i])]"/> </xsl:function> then f:index-of(../c, function($c){matches($c, $regex)}) Michael Kay Saxonica
|
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
|