This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Removing nodes that have duplicate names
- To: "'XSL-List at lists dot mulberrytech dot com'" <XSL-List at lists dot mulberrytech dot com>
- Subject: [xsl] Removing nodes that have duplicate names
- From: Phil Servedio <pservedio at fast-track dot com>
- Date: Wed, 22 Aug 2001 12:30:58 -0700
- Reply-To: xsl-list at lists dot mulberrytech dot com
I have an xml tree which looks like the following. I want
to copy the source tree to a result tree minus certain
nodes. However some node names are duplicated:
<dupnode>
<zzz>
</dupnode>
<aaa>
<bbb>
<ccc>
blah...
</ccc>
<dupnode>
blah...
</dupnode>
</bbb>
<aaa>
I want to remove the <dupnode> which is located
at the root but _not_ the one under aaa::bbb.
This xsl removes all <dupnode>s. How do I remove
only the <dupnode> at the root?
Can a template directive say 'match <this> andparent node = root'?
My xsl looks like:
<xsl:template match='/'>
<xsl:apply-templates/>
</xsl:template>
<xsl:template match='dupnode'/>
<xsl:template match='@* | node()'>
<xsl:copy>
<xsl:apply-templates select='@* | node()'/>
</xsl:copy>
</xsl:template>
-Phil
**************************
*
* Phil Servedio
* Fast Track Systems
* 32 Ross Common, Suite 230
* Ross CA, 94957-0870
* 415-464-8980 x212 (w)
* 415-203-4249 (c)
* pservedio@fast-track.com
*
**************************
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list