xsl-list
[Top] [All Lists]

apply-templates with exceptions

2003-11-11 13:15:10
Hi, sorry if the answer to this is in the archives/faq but it's hard to think what the search terms should be for this problem.

Basically, I want a way to pull out a particular sub-element or -elements for special styling, then do the equivalent of apply-templates on all the *other* sub-elements that haven't been "special-cased".

eg:

I have an element with various optional and unordered sub-elements, ie:

<steps>
 <title>Open a file</title>
 <step>Choose File &gt; Open</step>
 <para>Comment on the last step</para>
 <step>Click the name of a file</step>
</steps>

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

Thanks!

Matt


--
Matt Chaput               |   S I D E E F F E C T S   S O F T W A R E
Senior Technical Writer   |   www.sidefx.com
matt(_at_)sidefx(_dot_)com           |

"A goddamned ray of sunshine all the goddamned time" -- Sparkle Hayter



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



<Prev in Thread] Current Thread [Next in Thread>