You don't have a template rule that matches the document node (/) in
mode navigation-special_paint-selected, so when the recursion reaches
the root, the built-in template for document nodes is invoked. The
built-in template rule applies-templates to its children, so you
oscillate infinitely between the root document node and its element
child. The solution is to add a rule for match="/" that does nothing.
Michael Kay
Saxonica
On 08/02/2012 22:50, Karl Stubsjoen wrote:
This recursion template is failing. I'm getting the error, too many
recursions... I would expect that when I get to the root element it
would stop recursing. I guess I need a test for root element.
Karl..
<xsl:template match="*" mode="navigation-special_paint-selected">
<xsl:param name="node-id"/>
<xsl:choose>
<xsl:when test="generate-id() = $node-id">
<xsl:attribute name="background">#eee</xsl:attribute>
</xsl:when>
<xsl:otherwise>
<xsl:apply-templates select="parent::node()"
mode="navigation-special_paint-selected">
<xsl:with-param name="node-id" select="$node-id"/>
</xsl:apply-templates>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail:<mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--