[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: merging generic elements in a parent-child relatio
This may be too generic, it doesn't hard code any element names but it doesn't use a parameter to limit them either, if you need to paramaterise it you may need to replace * by *[contains($param,name()] or some such, but this produces teh specified output on teh test file David <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:output indent="yes"/> <xsl:key name="idx" match="*" use="@*[starts-with(name(.),'id') and (name() != 'id')]"/> <xsl:template match="root"> <root> <xsl:apply-templates select="*[not(@*[starts-with(name(.),'id') and (name() != 'id')])]"/> </root> </xsl:template> <xsl:template match="*"> <xsl:copy> <xsl:copy-of select="@*"/> <xsl:apply-templates select="key('idx',@id)"/> </xsl:copy> </xsl:template> </xsl:stylesheet> _____________________________________________________________________ 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
|