[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: extracting and removing an element nested at diff
Hi Gerrit,
Thanks for your suggestion. Both worked perfectly for me and produced identical results. Is there any advantage in using one technique rather than the other? Mark -----Original Message----- From: Imsieke, Gerrit, le-tex Sent: Tuesday, September 04, 2012 3:24 PM To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx Subject: Re: extracting and removing an element nested at different levels Two possible solutions using identity templates. The first one uses a dedicated mode for the nested items: <xsl:template match="List"> <xsl:copy> <xsl:apply-templates select=".//Item"/> </xsl:copy> </xsl:template> <xsl:template match="Item"> <xsl:copy> <xsl:apply-templates mode="suppress-item"/> </xsl:copy> </xsl:template> <xsl:template match="Item" mode="suppress-item" /> <xsl:template match="* | @*" mode="#all"> <xsl:copy> <xsl:apply-templates select="@*, node()" mode="#current"/> </xsl:copy> </xsl:template> Second solution, single mode, for-each, identity template: <xsl:template match="List"> <xsl:copy> <xsl:for-each select=".//Item"> <xsl:copy> <xsl:apply-templates/> </xsl:copy> </xsl:for-each> </xsl:copy> </xsl:template> <xsl:template match="Item" /> <xsl:template match="* | @*"> <xsl:copy> <xsl:apply-templates select="@*, node()" mode="#current"/> </xsl:copy> </xsl:template> Both wont leave an empty ElementA though because of the contained text nodes. And both wont process nested Lists in Items. Gerrit On 2012-09-04 23:56, Mark wrote: I have XML consisting of <Item> elements that have nested <Item> elements at various depths within the tree, in its simplest form something like:
Registergericht / Commercial Register: Amtsgericht Leipzig Registernummer / Registration Number: HRB 24930 Geschdftsf|hrer: Gerrit Imsieke, Svea Jelonek, Thomas Schmidt, Dr. Reinhard Vvckler
|
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
|