Subject: Re: XPath question
From: David Carlisle <davidc@xxxxxxxxx>
Date: Fri, 10 May 2002 17:48:57 +0100
|
<xsl:variable name="keyName"><xsl:value-of
select="substring-after(../../ViewKey, ';')"/></xsl:variable>
It's better to go
<xsl:variable name="keyName" select="substring-after(../../ViewKey, ';')"/>
As it;s shorter and makes keyName into a string rather than a result
tree fragment containing a root node containing a text node.
But that doesn't make any difference to your problem.
<xsl:apply-templates select="//appInfo[ViewName='viewName' and
ViewKey=$keyName]/Structure[@StructId='VFM']/Row[@DEPEND='001']" >
That looks OK although anything with // in it is likely to be
inefficient and quicker if replaced by a call to key().
The usual cause of problems in this area is that the <xsl:variable
isn't being evaluated where you think it's being evaluated:
stick
<xsl:message>
keyName = ,xsl;value-of select="$keyName"/>
</xsl:message>
just before the apply-templates and see if it has the value you expect
(ie the value you said you used as a literal string)
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
| Current Thread |
- XPath question
- Joseph Brightly - Thu, 2 May 2002 22:39:39 -0400 (EDT)
- Evan Lenz - Thu, 2 May 2002 23:50:45 -0400 (EDT)
- <Possible follow-ups>
- Haque, Suraiya - Fri, 10 May 2002 12:11:03 -0400 (EDT)
- David Carlisle - Fri, 10 May 2002 12:43:23 -0400 (EDT) <=
- Michael Kay - Fri, 10 May 2002 12:48:06 -0400 (EDT)
- Varley, Roger - Fri, 17 May 2002 10:06:42 -0400 (EDT)
- Macaulay,Malcolm (US) - Fri, 17 May 2002 10:47:31 -0400 (EDT)
|
|