RE: [xsl] Question on <xsl:apply-templates>

Subject: RE: [xsl] Question on <xsl:apply-templates>
From: "Michael Kay" <mhk@xxxxxxxxx>
Date: Fri, 31 Oct 2003 10:54:14 -0000
> I have a case where I am making a TOC for a large document, 
> and using XSLT. I am using a mode on my template. I only want 
> to output elements that are matched for the mode (in 
> otherwords only output for the templates I have created). It 
> is outputting every node, not just the ones denoted by the mode.
> 
Add the rule

<xsl:template match="*" mode="toc"/>

or

<xsl:template match="*" mode="toc">
  <xsl:apply-templates select="*"/>
</xsl:template>

The first one stops processing of any subtree rooted at an "unknown"
element.

The second one stops processing of text nodes when in "toc" mode, so you
still search the whole tree for chapter and section elements, but don't
output the text nodes.

Michael Kay



> Example XSLT:
> 
> <xsl:template match="chapter" mode="toc">
>     //do some stuff
>    <xsl:apply-templates mode="toc"/>
>  </xsl:template>
> 
>  <xsl:template match="section" mode="toc">
>    //do some stuff
>    <xsl:apply-templates mode="toc"/>
> </xsl:template>
> 
> Example XML:
> 
> <chapter>
>   <para>this is a para</para>
>   <section>
>   <para>this is another para</para>
>   </section>
> </chapter>
> 
> Output:
> 
> {//Stuff for chapter template match}this is a para{//Stuff 
> for section template match}this is another para
> 
> Robert Ogden
> IETM Developer
> Navy Programs
> (763) 572-7121
> 
> 
> **********CONFIDENTIALITY NOTICE**********
> The information contained in this e-mail may be proprietary and/or 
> privileged and is intended for the sole use of the individual or 
> organization named above.  If you are not the intended 
> recipient or an 
> authorized representative of the intended recipient, any 
> review, copying or distribution of this e-mail and its 
> attachments, if any, is prohibited. If you have received this 
> e-mail in error, please notify the sender immediately by 
> return e-mail and delete this message from your system.
> 
> 
>  XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
> 


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


Current Thread