This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Re: xsl:variable
- From: David Carlisle <davidc at nag dot co dot uk>
- To: xsl-list at lists dot mulberrytech dot com
- Date: Thu, 10 Jan 2002 23:29:08 GMT
- Subject: Re: [xsl] xsl:variable
- References: <002001c19a2c$8c4e1310$155e5f40@NOGGIN13>
- Reply-to: xsl-list at lists dot mulberrytech dot com
var expert1layer="<xsl:apply-templates
select="document(/sco/loadexperts/$expert1id/text" />";
You can't do that, anymore than you can do
"document(/sco/loadexperts/'foo'/text" />";
an Xpath is an expression not a string, it would be like saying in C if
you had the string x= "2 +" could you go y= x 3 and have that evaluate
as y = 2 + 3 and set y to 5.
some systems have an evaluate extension that allows the evaluation of
strings as xpath expressions (see threads on that over the last couple
of days) then you would do
document(saxon:evaluate(concat('/sco/loadexperts/',$expert1id,'/text')))" />";
but here you can probably just do
select="document(/sco/loadexperts/*[name()=$expert1id]/text" />";
so long as the variable just has an element name not a whole chunk of
xpath.
David
_____________________________________________________________________
This message has been checked for all known viruses by Star Internet
delivered through the MessageLabs Virus Scanning Service. For further
information visit http://www.star.net.uk/stats.asp or alternatively call
Star Internet for details on the Virus Scanning Service.
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list