Re: [xsl] Re: Re: What do we have in variable?

Subject: Re: [xsl] Re: Re: What do we have in variable?
From: "Roma Yankin" <polfin@xxxxxxxx>
Date: Fri, 10 May 2002 14:38:20 +0400
----- Original Message ----- 
From: "Dimitre Novatchev" <dnovatchev@xxxxxxxxx>
To: <xsl-list@xxxxxxxxxxxxxxxxxxxxxx>
Sent: Thursday, May 09, 2002 11:48 PM
Subject: [xsl] Re: Re: What do we have in variable?


> > >I'm just trying to understand, whenever we initialize some variable
> > > for example in that way <xsl:variable name="somevar" 
> > > select="ancestor::*"/> what do we have stored inside it? Is it an 
> > > array or some root node?
> > 
> > It's not an array: there is no such thing in the data model. Nor is 
> > it a root node: it's a node set.
> 
> More precisely, in this concrete case this will evaluate to a node-set
> consisting only of element nodes, or the empty node-set.
> 
> > 
> > What node set it is, exactly, depends on the context node, which is 
> > to say the node from which the ancestory axis, in this case, is 
> > traversed; this will depend on where the variable declaration occurs 
> > (inside which template or instruction, etc.). The dependence of the 
> > node set returned by an XPath location path on the context in which 
> > that location path is invoked is one of the important subtleties of 
> > XPath commonly missed by newcomers to the language.
> 
> I think that the question "what an xsl:variable contains?" is a little
> bit incorrect. The right question should be: "what an xsl:variable
> evaluates to?".
> 
> For me "contains" is synonymous with "it is a store, that has contents
> at any moment".
> 
> On the other side, an xsl:variable may be evaluated only when it's been
> referenced (e.g. lazy evaluation), or it may not be created at all
> until it's necessary, or it may be destroyed between two moments when
> it's referenced (e.g. space optimisation).
> 
> I think, it's important to distinguish an xsl:variable from "store". In
> fact it is a "definition", which may or may not be evaluated.
> 
> Cheers,
> Dimitre Novatchev.
> 
> 
> 
> 


Thanks everyone for your input!!! I guess the problem is resolved

Roman.



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


Current Thread