[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Re: Re: Should variable resolution be done at compile-

Subject: Re: Re: Should variable resolution be done at compile-time or run-time?
From: "Dimitre Novatchev" <dnovatchev@xxxxxxxxx>
Date: Sun, 19 Oct 2003 10:43:53 +0200
xsl variable lazy evaluation
> > Among other things lazy evaluation means not to report an
> > error, which does not actually affect the evaluation.
>
> This is one reason why in XSLT 2.0 we have distinguished very clearly
> between static errors and dynamic errors. If an error is defined as a
> static error then the processor must report it, even if the code is
> never executed. Referring to an undeclared variable is a static error in
> XSLT 2.0.
>
> However, I am surprised that any 1.0 processor should fail to report an
> error on the example submitted, where the reference to the undeclared
> (or out-of-scope) variable does actually appear to be evaluated.

The original example, submitted by Eric Promislow:

source.xml:
========
<x>special contents</x>


xslt stylesheet:
==========
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
<xsl:output method="xml" />

<xsl:template match="/">
    <xsl:variable name="v1">bupkis</xsl:variable>
    <xsl:apply-templates />
</xsl:template>

<xsl:template match='x2'>
  <output>
    First, var v1 = <xsl:value-of select="$v1"/>.
    Text = <xsl:value-of select='.' />
  </output>
</xsl:template>
</xsl:stylesheet>


Here I did replace

   <xsl:template match='x'>

with

  <xsl:template match='x2'>

as Eric said he did.

The template matching "x2" will never be instantiated, because there isn't
any "x2" element in the source.xml

So, why do you think that:

>  the reference to the undeclared
> (or out-of-scope) variable does actually appear to be evaluated.

Now, as I think of it, JIT (just in time) compilation of templates does make
sense.



=====
Cheers,

Dimitre Novatchev.
http://fxsl.sourceforge.net/ -- the home of FXSL








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


Current Thread

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.