Re: generalized unique element
tried doing something like.. <xsl:if test="not(name(.) = preceding::node()/name())"> the / operator has to have path expressions not functions that return a string, like name(). You want the second name() to be like te first, taking the node as argument. name(preceding::node()) unfortunately you then can't use the magic property of = to test all elements of a node set, so you then need to use a predicate,something like <xsl:variable name="n" select="name(.)"/> <xsl:if test="preceding::*[name(.)=$n]"> You mentioned though the "Meunchian method" which does the same using keys which will be quicker on large data sets David _____________________________________________________________________ This message has been checked for all known viruses by Star Internet delivered through the MessageLabs Virus Scanning Service. For further information visit http://www.star.net.uk/stats.asp or alternatively call Star Internet for details on the Virus Scanning Service. 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