Re: [xsl] template stack trace

Subject: Re: [xsl] template stack trace
From: Oliver Becker <obecker@xxxxxxxxxxxxxxxxxxxxxxx>
Date: Fri, 27 Jul 2001 18:40:24 +0200 (MET DST)
Hi Richard,

> One can use the <xsl:message terminate="yes> .... </message>
> as a method of indicating that a fatal error occurred in your xslt
> program.
> What I would like is to be able to print out the named-template stack
> trace
> so that I can tell the context inwhich the error arose.
> (if template A calls template B calls template C and in C a fatal error
> is
> detected, how do I find out that I am within templates A and B?)

Unless a diligent XSLT implementor provides such a facility in an XSLT
processor you may implement this stack yourself:

<xsl:template match="A">
   <xsl:param name="stack" />
      <xsl:with-param name="stack" select="concat('A - ', $stack)" />
   <xsl:message terminate="yes">
      Template stack: <xsl:value-of select="$stack" />

<xsl:template match="B">
   <xsl:param name="stack" />
   <!-- dito -->

However, this seems to be quite laborious ...


|  ob|do        Dipl.Inf. Oliver Becker                             |
|  --+--        E-Mail: obecker@xxxxxxxxxxxxxxxxxxxxxxx             |
|  op|qo        WWW: |

 XSL-List info and archive:

Current Thread