This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Re: How to copy all child elements except specific one?
- To: xsl-list at lists dot mulberrytech dot com
- Subject: Re: [xsl] How to copy all child elements except specific one?
- From: David Carlisle <davidc at nag dot co dot uk>
- Date: Tue, 16 Jan 2001 18:21:43 GMT
- CC: xsl-list at lists dot mulberrytech dot com
- References: <2B92A3D0D399D311BA7E00A0C90F8FDD88BE80@mailgate.snellingcorp.com>
- Reply-To: xsl-list at lists dot mulberrytech dot com
> I assume
>
> <xsl:copy-of select="" />
>
> will do what I need assuming I can come up with the correct select
> expression. How do I build an expression that will choose all child elements
> except for a specific one?
that's an alternative to the method i suggested.
(ie change the template of the parent rather than the element you are
trying to change.
<xsl:copy-of select="*[not(self::thisElement)]"/>
does what you ask, but this method only works if you don't mind
changing the order of your child nodes. This will process all the
"other" elements together. If you have the "specific" element you want
to change interspersed with other elements, and you want the generated
fragments to go into the same place using the identity transform method
I suggested earlier is probably simpler.
David
_____________________________________________________________________
This message has been checked for all known viruses by Star Internet delivered
through the MessageLabs Virus Control Centre. For further information visit
http://www.star.net.uk/stats.asp
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list