RE: [xsl] stability with variables

Subject: RE: [xsl] stability with variables
From: Jarno.Elovirta@xxxxxxxxx
Date: Mon, 18 Nov 2002 09:47:03 +0200
Hi,

> Using the variables inside xslt makes it more stable 
> even if there is not well-formed xml. To be more specific,
> in this case even if the data.xml is not well-formed.
> 
> Concider the following:
> <a href="{$opendocument}{following-sibling::AttachID}">
> 
> Which uses variable opendocument, this variable 
> is imported to the main xslt from commands.xsl.
> 
> <xsl:variable name="opendocument">  		
> <xsl:value-of select="document('data.xml')/xslt/Open/command"/>
> </xsl:variable>

You could rewrite this to

<xsl:variable name="opendocument" select="document('data.xml')/xslt/Open/command" />

As you're only using the string value of the variable above.

> Which reads the final value form external xml file. In Xalan
> you dont need to use xalan:evaluate() function. Why? I dont know.

Why should you need it? There's no Expression that cannot be compiled at parse-time.

> But reality (tested) is that the data.xml file can contain
> syntax errors and yet the program does not result internal 
> server error.

Xalan it probably recovering from the parsing error and returning an empty node-set. If it's returning the valua of command even thought data.xml is ill-formed, you probably has the document cached somewhere.

Jarno - Xorcist: Erlicheda

 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread