Hi,
Am I misunderstanding something or should the follow xslt
snippet work:
-----
<xsl:template match="/">
<foo>
<xsl:apply-templates mode="foo">
<xsl:with-param name="wit">B</xsl:with-param>
</xsl:apply-templates>
</foo>
</xsl:template>
<xsl:template match="body" mode="foo">
<xsl:param name="wit" />
<xsl:if test="contains(@wit, $wit)">
<body wit="{$wit}"><xsl:apply-templates mode="foo"/></body>
</xsl:if>
</xsl:template>
-----
I expected that the root template would apply any
other templates with mode="foo" and make available to
them the param $wit with value 'B'. But the output
always has <body wit=""> ... If I supply a default to
the xsl:param in the template body, it is of course picked
up, but not if I pass it with xsl:with-param. Is it
something to do with using @mode with xsl:apply-templates?
Or is there something else obvious I'm missing?
Thanks for any suggestions,
-james
--
Dr James Cummings, James(_dot_)Cummings(_at_)uea(_dot_)ac(_dot_)uk,
http://www.uea.ac.uk/~q503
Cursus Project, School of Music, University of East Anglia,
Norwich, Norfolk, NR4 7TJ, UK Tel:(01603)593-595
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list