|
Subject: Re: Can solve the N-queens - but can't count! From: "Oren Ben-Kiki" <oren@xxxxxxxxxxxxx> Date: Thu, 17 Jun 1999 12:41:52 +0200 |
James Clark <jjc@xxxxxxxxxx> wrote:
>The value of a variable is a result tree fragment if you define the
>variable it using xsl:variable without an "expr" attribute. For
>example, if you do:
>
> <xsl:variable name="x"><xsl:apply-templates/></xsl:variable>
>
>the $x refers to a result tree fragment, so doing
>
> <xsl:copy-of select="$x/a"/>
>
>is an error.
>
>On the other hand if you do:
>
> <xsl:variable name="x" expr="//foo"/>
>
>then $x refers to a node-set, so you can legally do
>
> <xsl:copy-of select="$x/a"/>
>
>See the third paragraph of Section 13.
Oh! I missed that. So if I create a variable containing a 'foo' element, it
matters _how_ I created it - if it was using an expression, it is a node
set, otherwise it is a result tree fragment. And that makes a huge
difference in what can be done to it, even though the contents is "the
same". I must say I find this to be confusing - from a stylesheet writer's
point of view, why should it matter?
BTW, I tried writing:
<xsl:variable name="x" expr="//foo"/>
<xsl:copy-of select="$x"/>
And the obvious variants, but kept getting empty results (using XT
1999-05-14). I expected to get:
<foo></foo>
What am I doing wrong?
Have fun,
Oren Ben-Kiki
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| Re: Can solve the N-queens - but ca, Oren Ben-Kiki | Thread | Re: Can solve the N-queens - but ca, James Clark |
| Re: Can solve the N-queens - but ca, James Clark | Date | Re: Can solve the N-queens - but ca, James Clark |
| Month |