Subject: Re: Use of xsl:apply-templates exception with an element
From: "G. Ken Holman" <gkholman@xxxxxxxxxxxxxxxxxxxx>
Date: Fri, 25 Sep 2009 07:50:25 -0400
|
At 2009-09-25 16:31 +0800, lee qm wrote:
How about this?
<xsl:template match="blockquote">
<blockquote>
<xsl:apply-templates select="*[name()!='attribution']"/>
<xsl:apply-templates select="attribution"/>
</blockquote>
</xsl:template>
For the maillist record, the above approach is not namespace-safe and
so is not a general solution for XSLT 1.0. Rather, the following
would be a more appropriate approach:
<xsl:template match="blockquote">
<blockquote>
<xsl:apply-templates select="*[not(self::attribution)]"/>
<xsl:apply-templates select="attribution"/>
</blockquote>
</xsl:template>
The name() function is for exposition, not for testing.
I hope this helps.
. . . . . . . . . . Ken
--
Upcoming hands-on code list, UBL, XSLT, XQuery and XSL-FO classes.
Interested in other classes? http://www.CraneSoftwrights.com/s/i/
Crane Softwrights Ltd. http://www.CraneSoftwrights.com/s/
Training tools: Comprehensive interactive XSLT/XPath 1.0/2.0 video
Video lesson: http://www.youtube.com/watch?v=PrNjJCh7Ppg&fmt=18
Video overview: http://www.youtube.com/watch?v=VTiodiij6gE&fmt=18
G. Ken Holman mailto:gkholman@xxxxxxxxxxxxxxxxxxxx
Male Cancer Awareness Nov'07 http://www.CraneSoftwrights.com/s/bc
Legal business disclaimers: http://www.CraneSoftwrights.com/legal
|