Subject: [xsl] Re: xsl-list Digest 22 Jun 2005 05:10:01 -0000 Issue 455 From: Michel Charpentier <charpov@xxxxxxx> Date: Wed, 22 Jun 2005 16:26:15 -0400 |
Date: Tue, 21 Jun 2005 23:24:29 +0100 To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx From: David Carlisle <davidc@xxxxxxxxx> Subject: Re: [xsl] Contexts that are atomic values Message-Id: <200506212224.XAA23479@xxxxxxxxxxxxxxxxx>
Is this behavior normal?
Yes, or at least it will be. (It's best to say if you are using xslt2:-)
distinct-values() as its name suggests returns values not teh nodes the
values they were in, so it's like going
<xsl:for-each select="(1,2,3,4)"
in which the current item would be the integers 1 2 3 4 but being integers rather than nodes they can't be used as the base for any relative XPath (or even / as that depends on the current dpcument)
you can go <xsl:variable name="input" select="/"/> as a top level variable (or anywhere outside the for-each) and then use
<xsl:apply-templates select="$input/key('by-type',current())"/> or equivalently
<xsl:apply-templates select="key('by-type',current(),$input)"/>
Or perhaps more naturally don't use distinct-values at all, but ciew it
as a grouping problem
<xsl:for-each-group select="item" group-by="@type"> ...
for-each-group groups the nodes themselves rather than just the values.
MC -- 2p3p[dl!d2+s!%0=@l!l^!<#]s#[s/0ds^]s@[p]s&[ddvs^3s!l#x0<&2+l.x]ds.x
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] gathering entities when t, Carolyn Oliver | Thread | Re: [xsl] Re: xsl-list Digest 22 Ju, David Carlisle |
[xsl] gathering entities when trans, Carolyn Oliver | Date | Re: [xsl] Re: xsl-list Digest 22 Ju, David Carlisle |
Month |