This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Re: Deep copy that excludes the element tag
- To: <xsl-list at lists dot mulberrytech dot com>
- Subject: Re: [xsl] Deep copy that excludes the element tag
- From: Laurence O Garfield <lgarfiel at students dot depaul dot edu>
- Date: Wed, 25 Jul 2001 13:55:28 -0500 (CDT)
- Reply-To: xsl-list at lists dot mulberrytech dot com
On Wed, 25 Jul 2001, Jason Macki wrote:
> Hello,
>
> Is it possible to use XHTML to transform this:
>
> <myhtml>This is some <b>HTML</b>!</myhtml>
>
> Into this:
>
> This is some <b>HTML</b>!
>
> In other words, I'd like to do a deep copy (a copy that includes any
> elements within the element) of the contents of "myhtml" while excluding
> the tag for the "myhtml" element.
>
> Thanks,
> Jason
Try the following:
<xsl:template match="myhtml">
<xsl:apply-templates mode="copyall"/>
</xsl:template>
<xsl:template match="@*|*|text()" mode="copyall">
<xsl:copy>
<xsl:apply templates select="@*|*|text()" mode="copyall"/>
</xsl:copy>
</xsl:template>
That would apply the identity transformation ("keep the same") for only
sub-nodes of myhtml, and anywhere else that you called apply-templates
with the copyall mode.
I think that should work, anyway.
--Larry Garfield
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list