RE: [xsl] SXLM0001 error occurred

Subject: RE: [xsl] SXLM0001 error occurred
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Thu, 17 Apr 2008 16:28:00 +0100
Saxon-specific problems are best reported on the saxon-help list at
SourceForge.

It looks to me as if Saxon9 is simply using a bit more stack space than
earlier releases when executing this particular stylesheet: you were
probably close to the limit before, and have now gone over it. If it runs
when you allocate a bit more stack space, then you seem to have fixed the
problem.

There might be things you can do to reduce the stack space used - for
example, restructuring your code to make it tail-recursive - but it's hard
to advise without seeing the bigger picture.

Michael Kay
http://www.saxonica.com/

> -----Original Message-----
> From: Peter Kester [mailto:peter.kester@xxxxxxxxxxx] 
> Sent: 17 April 2008 16:08
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: [xsl] SXLM0001 error occurred
> 
> Hi all,
> 
> we used saxon 7 and java 1.4.2 for some transformations of 
> xml files to an xtg format for Quark Express This works fine 
> but we wanted to use the use-character-maps feature of the 
> newer version we upgraded to saxon9.0.0.4j After the upgrade 
> we received the following message.
> "SXLM0001: Too many nested apply-templates calls. The 
> stylesheet 
> <http://www.stylusstudio.com/videos/publisher1/publisher1.html
> >  is probably looping.
> Transformation failed: Run-time errors were reported"
> This occurred on a line containing the <xsl:apply-templates/> 
> instruction within a the below mentioned template match:
> <xsl:template match="al">
>     <xsl:variable name="in.context" 
>         select="parent::opmerking|parent::structuurtekst|
>             parent::wijzig-divisie|parent::tekst|
>             parent::bezwaar|parent::divisie|
>             parent::bijlage|parent::nota-toelichting|
>             parent::algemeen|parent::artikelsgewijs|
>             parent::wettekst"/>
>     <xsl:if test="$in.context and 
> preceding-sibling::*[1][not(self::kop
> | self::al-groep | self::tussenkop)]">
>         <xsl:call-template name="newline"><xsl:with-param 
> name="element"
> select="concat('voor-',local-name())"/></xsl:call-template>
>     </xsl:if>
>     <xsl:if test="not(parent::lid)">
>         <xsl:text>&lt;P&gt;</xsl:text>
>     </xsl:if>
>     <xsl:apply-templates/>
>     <xsl:call-template name="newline"/>
> </xsl:template>
> 
> Then we went back to version saxon 8.1.1 and the error disappeared. 
> I could not find any differences between the versions 8 and 9 
> other that pointed directly into this direction (or did I 
> miss them?) Eventually I could fix the problem for saxon 9 by 
> setting -Xss800k in the commandline. Initially it ran with 
> the default value for this parameter.
> Extra detail: On a Windows machine I did not get the error 
> message but on a Solaris machine I received the 
> before-mentioned error. (both with default values for the 
> -Xss option) Maybe somebody can explain why the error occurred.
> Regards,
> 
> Peter Kester
>    
>  
> Ing. P.A. Kester
> Senior Consultant
>  
>  
> 
> Daidalos BV
> Source of Innovation
> Hoekeindsehof 1-4
> 2665  JZ  Bleiswijk
> Tel.: +31 (0) 10 850 1200
> Fax: +31 (0) 10 850 1199
> www.daidalos.nl
> KvK 27164984
> 
> 
> De informatie - verzonden in of met dit emailbericht - is 
> afkomstig van Daidalos BV en is uitsluitend bestemd voor de 
> geadresseerde. Indien u dit bericht onbedoeld hebt ontvangen, 
> verzoeken wij u het te verwijderen. Aan dit bericht kunnen 
> geen rechten worden ontleend.

Current Thread