Re: Excluding a complete branch while identity copying
You'll be pleased to know that your application is about the easiest conceivable task for a near-identity transform.
Start with the identity template:
<xsl:template match="node()|@*"> <xsl:copy> <xsl:apply-templates select="node()|@*"/> </xsl:copy> </xsl:template>
And then simply add a template to match the elements you want to discard, which does nothing with the elements it matches:
<xsl:template match="Evens | Squares"/>
-- and you're done. (Well, except for running and testing.)
This "Evens | Squares" template overrides the general-purpose copying template for the elements it matches.
Since it does nothing with the matched elements, nothing resembling them or their contents appears in the output. The identity template matches and copies everything else.
The arrangement of elements in the input doesn't matter since template matching doesn't concern itself directly with this, but simply reflects the source data in its given order, unless you do something to force some reordering.
If this raises questions about the XSLT processing model (why does this work?), so much the better, as it's also an excellent opportunity to study up on this and learn more about XSLT always works.
At 01:44 PM 10/10/2008, you wrote:
I want to be able to copy a complete XML instance as/is except for [say] some specific parts of the input tree. I thought immediately of using an identity transform and specifying copy, but how to remove those pesky sub-trees :-
====================================================================== Wendell Piez mailto:wapiez@xxxxxxxxxxxxxxxx Mulberry Technologies, Inc. http://www.mulberrytech.com 17 West Jefferson Street Direct Phone: 301/315-9635 Suite 207 Phone: 301/315-9631 Rockville, MD 20850 Fax: 301/315-8285 ---------------------------------------------------------------------- Mulberry Technologies: A Consultancy Specializing in SGML and XML ======================================================================
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