|
Subject: Re: [xsl] Nesting XPath predicates From: "Andrew Welch" <andrew.j.welch@xxxxxxxxx> Date: Thu, 24 Apr 2008 09:17:05 +0100 |
On 24/04/2008, Liam Quin <liam@xxxxxx> wrote:
> Easier might be
> <xsl:template match="dataset">
> <xsl:variable name="sn" select="serviceName" />
> <xsl:value-of select="//service/[@name = $sn]/@base" />
> </xsl:template>
It is easier to use a variable when you're learning, but this is what
the current() function is for:
//service[@name = current()/serviceName]
(I've also dropped the odd / after service)
The current() function changes the context node to what is was outside
of the XPath, so the <dataset> element in this case.
Ultimately though, you should use a key here:
<xsl:key name="service-by-name" match="service" use="@name"/>
with
key('service-by-name', serviceName)
cheers
--
Andrew Welch
http://andrewjwelch.com
Kernow: http://kernowforsaxon.sf.net/
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| Re: [xsl] Nesting XPath predicates, Liam Quin | Thread | Re: [xsl] Nesting XPath predicates, Liam Quin |
| RE: [xsl] Force Unicode change, Pankaj Chaturvedi | Date | [xsl] RE: [xml-dev] IRIs - Question, Michael Kay |
| Month |