Subject: Re: Question about variable definition and types
From: Michael Müller-Hillebrand <mmh@xxxxxxxxxxxxx>
Date: Fri, 7 Mar 2008 12:31:56 +0100
|
Am 07.03.2008 um 11:20 schrieb Andrew Welch:
The presence of the attribute "as" determines whether the
value of
the variable is evaluated to a sequence or a temporary tree
[snip]
Ah.... thanks for the explanation. That clears up a lot :-)
It's worth adding the when you do as="element()+" the elements
represented by that variable aren't siblings because they don't have a
common parent.
<xsl:variable name="foo" as="element()+">
<a/>
<b/>
</xsl:variable>
here a/following-sibling::b returns false
...so it's worth bearing that in mind when deciding what the as
attribute should be.
So
<xsl:variable name="foo" as="document-node()">
<a/>
<b/>
</xsl:variable>
would be the equivalent of (identical to?) an un-typed variable and
allow siblings?
- Michael
|