Subject: RE: [xsl] removing nodes according to attibute value From: "Michael Kay" <mike@xxxxxxxxxxxx> Date: Tue, 1 Nov 2005 16:04:56 -0000 |
> I'm trying to remove all elements that have a specific > attribute containing > some characters. Start with an identity template that copies everything: <xsl:template match="*"> <xsl:copy><xsl:copy-of select="@*"/><xsl:apply-templates/></xsl:copy> </xsl:template> > See example below... I need to remove all > /ApplicationCatalogue/Category/Product that have @code > starting with TT. Add a template rule that doesn't copy such elements: <xsl:template match="Product[starts-with(@code, 'TT')]"/> > It has to be generic as the xml provided can have more attributes & > elements. > Also I would need to remove the > /ApplicationCatalogue/Category if it doesn't > have any Product left after the removal Add another template rule: <xsl:template match="Category[not(Product[not(starts-with(@code, 'TT))])]"/> Michael Kay http://www.saxonica.com/ > Any idea ??? Thanx a million ... > > > <ApplicationCatalogue name="42222_downloads_stg"> > <Category name="2_live_crew" description="2_live_crew"> > <Product code="TT050089891" position="0"> > <Alias isDefault="true"> > <Name>89891</Name> > <Extra></Extra> > </Alias> > <Attributes> > <OTAobject_otaother_namepreview>Getting > High</OTAobject_otaother_namepreview> > <OTAobject_otaother_author>2 Live Crew</OTAobject_otaother_author> > </Attributes> > </Product> > <Product code="PP050089892" position="0"> > <Alias isDefault="true"> > <Name>89892</Name> > <Extra></Extra> > </Alias> > <Attributes> > <OTAobject_otaother_namepreview>Pimp Of The > Year</OTAobject_otaother_namepreview> > <OTAobject_otaother_author>2 Live Crew</OTAobject_otaother_author> > </Attributes> > </Product> > <Product code="PP050089893" position="0"> > <Alias isDefault="true"> > <Name>89893</Name> > <Extra></Extra> > </Alias> > <Attributes> > <OTAobject_otaother_namepreview>Shake Junk > Queen</OTAobject_otaother_namepreview> > <OTAobject_otaother_author>2 Live Crew</OTAobject_otaother_author> > </Attributes> > </Product> > <Product code="TT050089894" position="0"> > <Alias isDefault="true"> > <Name>89894</Name> > <Extra></Extra> > </Alias> > <Attributes> > <OTAobject_otaother_namepreview>Stop > Playin</OTAobject_otaother_namepreview> > <OTAobject_otaother_author>2 Live Crew</OTAobject_otaother_author> > </Attributes> > </Product> > </Category> > </ApplicationCatalogue>
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] removing nodes according , David Carlisle | Thread | RE: [xsl] removing nodes according , drkm |
Re: [xsl] removing nodes according , David Carlisle | Date | [xsl] removing nodes according to a, Charles Ohana |
Month |