This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
RE: Flattening a tree
- To: "'xsl-list at mulberrytech dot com'" <xsl-list at mulberrytech dot com>
- Subject: RE: Flattening a tree
- From: Kay Michael <Michael dot Kay at icl dot com>
- Date: Thu, 13 Jul 2000 16:14:12 +0100
- Reply-To: xsl-list at mulberrytech dot com
Ignoring the "inline elements", you could do
<xsl:for-each select=".//text()">
<xsl:element name="{name(..)}">
<xsl:value-of select="."/>
</xsl:element>
</xsl:for-each>
Can't immediately think how to handle the inline elements, but perhaps you
can build on the above.
Mike Kay
>
> Does anyone know how it would be possible to transform a
> (sub)tree into a
> flat list of some of its elements (those considered not
> "inline"), mixing
> cdata and subelements, for example how to transform :
>
> <document>
> <para>
> content-1
> <List>
> <Item>content-2</Item>
> <Item>content-3</Item>
> </list>
> content-4
> </graphic>
> content-5
> </para>
> </document>
>
> into :
>
> <document>
> <para>content-1</para>
> <Item>content-2</Item>
> <Item>content-3</Item>
> <para>content-4</para>
> </graphic>
> <para>content-5</para>
> </document>
>
> "content-n" being arbitrary contents mixing cdata, entities and inline
> elements.
>
> Thanks
>
> Pierre-Yves
>
>
> XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
>
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list