RE: Removing elements based on contents
In XSLT you don't remove the elements you want to lose, you copy the elements you want to keep. So: <xsl:template match="Root"> <xsl:copy> <xsl:copy-of select="Story[.='End Here']/following-sibling::*"/> </xsl:copy> </xsl:template> Michael Kay http://www.saxonica.com/ > -----Original Message----- > From: Chad Chelius [mailto:cchelius@xxxxxxxxxxxxxxx] > Sent: 24 June 2006 13:04 > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx > Subject: Removing elements based on contents > > I have an XML file that looks something like this: > > <Root> > <Story>Content</Story> > <Story>More Content</Story> > <Story>End Here</Story> > <Story>Good stuff that I want</Story> > </Root> > > My question is: Is there a way using XSLT to remove all > elements up to and including the one who's content contains > <Story>End Here</ > Story> and leave the rest intact? Basically everything from the top > of the XML file down to and including that tag is junk that I > don't want to include in the file but the rest of it I want > to keep. I don't think XSLT traverses I file in that way > though. Does anyone have any ideas?
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