|
Subject: RE: [xsl] more on Using apply-templates instead of for-each? From: "Passin, Tom" <tpassin@xxxxxxxxxxxx> Date: Tue, 15 Apr 2003 14:50:35 -0400 |
[ Kathy Burke]
> Please remember: newbie!
>
> I know Wendell's right about using apply-templates instead of
> for-each but
> I've been trying to change my structure without
> success...would appreciate
> knowing how I could adjust the following template to
> accomplish it using
> apply-templates..
It is not much different (in this case), just some re-arranging.
<xsl:template match="safety">
<table border="1" width="100%" cellpadding="4">
<tr bgcolor="red" valign="bottom">
<th align="left">
<h3>SAFETY</h3>
</th>
</tr>
<xsl:apply-templates
select="numbered_list/listitem" mode='safety'/>
</table>
<br />
</xsl:template>
<xsl:template match='listitem' mode='safety'>
<tr>
<td>
<xsl:number level="multiple" format="1. " count="listitem" />
<xsl:value-of select="." />
</td>
</tr>
</xsl:template>
Notice that I used a mode on the template for "listitem". That is so
you can process other "listitem" elements that are not in a "safety"
block differently (in case there are any) - just use a template that
matches "listitem" but has a different or no mode.
In this example, thre is not much difference between the for-each and
the apply-templates approach. It is much like using subroutines instead
of in-line code. In-line is fine for short bits of code, subroutines are
preferred for longer or more complex sections of code.
In other cases, the fact that the context is a single node (in
for-each) vs. a node-set (in apply-templates and call-templates) can
make quite a difference.
Did this answer your question?
Cheers,
Tom P
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| [xsl] more on Using apply-templates, Kathy Burke | Thread | RE: [xsl] more on Using apply-templ, Kathy Burke |
| [xsl] Variable creation and scoping, Andrew Kirkpatrick | Date | Re: [xsl] xsl:if giving me "Invalid, James J. Ramsey |
| Month |