Re: [xsl] apply-templates with exceptions

Subject: Re: [xsl] apply-templates with exceptions
From: Wendell Piez <wapiez@xxxxxxxxxxxxxxxx>
Date: Tue, 11 Nov 2003 15:50:18 -0500
Hi Matt,

At 03:15 PM 11/11/2003, you wrote:
In this particular case I want the output to have the <title> output above the output of <steps> and its other children. Basically, I want a way to get the equivalent in the <steps> template of apply-templates for everything except <title> elements, eg:

<xsl:template match="steps">
 <xsl:apply-templates select="title" />
 <ol class="steps">
  <xsl:apply-templates /> //(... to everything except "title")
 </ol>
</xsl:template>

<xsl:template match="steps/title">
 <p><b><xsl:apply-templates /></b></p>
</xsl:template>

Is there a way to accomplish this cleanly? I reckon there must be, but I can't think of it...

There is, but it uses a bit of advanced-level XPath:


<xsl:apply-templates select="*[not(self::title)]"/>

which translates into XPath long syntax as "child::*[not(self::title)]".

Cheers,
Wendell


====================================================================== 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 ======================================================================


XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list



Current Thread