Subject: Re: [xsl] For-each and keys() From: Steve <subsume@xxxxxxxxx> Date: Wed, 2 Aug 2006 11:17:28 -0400 |
> XSL goes something like:
>> <xsl:for-each select="$Definitions"> >> <xsl:value-of select="count(key('oldID',$current))" /> >> </xsl:for-each> >I really don't understand this.
key() returns all the nodes that match the key _in the current document_ so if you want to look up keys in a different document then (in xslt1) you need touse xsl:for-each to make that document current. In XSLT2 you could equivalently go <xsl:value-of select="$Definitions/count(key('oldID',$current)) or <xsl:value-of select="count(key('oldID',$current,$Definitions))
Ahh, if only. The for-each you mention is what I am attempting, however, I've gotten no better idea than that (The How gets me, not the What).
> I really don't understand this. I should mention there are many other > branches within $Definitions besides /disabilities. If $Definitions is defined using document() then it will represent a well formed document so there can be at most one top level element (presumably <disabilities>) so I do not see what you can mean by "other branches"
You seem to know, given the way you mention for-each. Perhaps then you can tell me where the code I have errs.
<xsl:key name="options" match="option" use="@type" /> <xsl:key name="oldID" match="option" use="@oldID" /> <xsl:template match="Record" mode="x"> <xsl:param name="type" /> <tr> <td> <xsl:value-of select="$type" /> </td> <td> <xsl:variable name="current" select="disabPrimary" /> <xsl:for-each select="$cilDefinitions"> <xsl:value-of select="count(key('oldID',$current))" /> </xsl:for-each> </td> </tr> </xsl:template> <xsl:template match="/" > <table> <xsl:for-each select="$Definitions/disabilities/option[generate-id(.)=generate-id(key('options',@type)[1])]"> <xsl:sort select="@type"/> <xsl:apply-templates mode="x" select="$vP2/Records/Record"> <xsl:with-param name="type" select="@type" /> </xsl:apply-templates> </xsl:for-each> </table> </xsl:template>
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] For-each and keys(), David Carlisle | Thread | Re: [xsl] For-each and keys(), Steve |
Re: [xsl] Re: Querying an Active Di, Wendell Piez | Date | Re: [xsl] For-each and keys(), Steve |
Month |