xsl-list
[Top] [All Lists]

Re: [xsl] flattening an xml hierarchy

2009-01-08 11:23:12
USe identity transformation.

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform";>
        <xsl:template match="node()|@*">
                <xsl:copy>
                        <xsl:apply-templates select="node()|@*"/>
                </xsl:copy>
        </xsl:template>
        <xsl:template match = "Dontwant1">
                <xsl:apply-templates select="node()|@*"/>
        </xsl:template>
        <xsl:template match = "dontwant2"/>
</xsl:stylesheet>

This will do your job. Although.. You have 2 definitions of what you
want to Remove.

1. Node and its children
2. Node .

I am not sure what you meant by "remove" But anyway, in either case,
if you want to remove node and all its children, you just define an
empty template
if you want to ignore the node alone, then you define the template for
that node and not bothor about copying the current node, and copy all
its children.

HTH

2009/1/8 Tim <timlhunt(_at_)mindspring(_dot_)com>:
Hi,
I'd like to remove some elements from an xml hierachy using xslt:

Original xml example:
<Dontwant1>
  <dontwant2>foo</dontwant2>
  <x3>
      <x4>stuff</x4>
      <y5>more stuff</y5>
  </x3>
</Dontwant1>

Like to have transform output:
<x3>
 <x4>stuff</x4>
  <y5>more stuff</y5>
</x3>

Thanks for your insghts.

Tim

--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: 
<mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--





-- 
Vasu Chakkera
Numerical Algorithms Group Ltd.
Oxford
www.vasucv.com

--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--