[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

Re: [xsl] Using Key in the middle of Xpath

Subject: Re: [xsl] Using Key in the middle of Xpath
From: "Ihe Onwuka ihe.onwuka@xxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx>
Date: Mon, 19 Jan 2015 15:44:00 -0000

Off the top of my head I believe the / in an Xpath expression are
iterators, so you should mentally interpret a for-each each time you see a
/ in the expression.

A key returns a node-set (or sequence in XSLT 2) just like navigating the
child axis does.

I would only note that the key expression does not seem to be making use of
it's context (nothing in it depends on //aaa/bbb) but I read the expression
as saying evaluate the key expression for each child of aaa/bbb and get all
the fooval children from the of the called to the key.

On Mon, Jan 19, 2015 at 10:33 AM, Mailing Lists Mail daktapaal@xxxxxxxxx <
xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote:

> Guys,
> where I consult, I was going through the XSLTs to check if they have
> all been done correctly... I came across this Xpath which I thought
> was a little unheard of,. I am thinking it is wrong usage, but want to
> confirm with you guys.
> Xpath :
> <xsl:variable name = "foo" select =
> "//aaa/bbb/key('mykey','myval')/fooval"/>
> where key is :
> <xsl:key name = "mykey" select = "ccc/ddd" use = "@id"/>
> The code has been working ( I wondered if it was by a toss ) .. But I
> have never ever seen a key being used in the middle of the Xpath. For
> me it does not make any sense of the use of key.
> Comments?
> Dak

Current Thread