Subject: Re: [xsl] Using XSLT's key() function while context in secondary document? From: "Andrew Welch" <andrew.j.welch@xxxxxxxxx> Date: Tue, 19 Feb 2008 17:24:25 +0000 |
On 19/02/2008, Scott Trenda <Scott.Trenda@xxxxxxxx> wrote: > <xsl:for-each select="key('chnam', document('s.xml')//Channel)"> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ I don't know the origins of this thread but that looks highly dubious - the key lookup would be the string value of all of the <Channel> elements in s.xml. If this is XSLT 1.0 then the pattern is: <xsl:variable name="this" select="/"> <xsl:variable name="sDoc" select="document('s.xml')"/> <xsl:for-each select="$sDoc//Channel"> <xsl:variable name="lookup" select="."/> <xsl:for-each select="$this"> <xsl:apply-templates select="key('chnam', $lookup)"/> .. .. In 2.0 its much easier because you don't have to maintain a pointer to the original source XML, and you have the slash operator, so the equivalent is: <xsl:apply-templates select="$sDoc//Channel/key('chnam', ., /)"/> cheers -- Andrew Welch http://andrewjwelch.com Kernow: http://kernowforsaxon.sf.net/
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] Using XSLT's key() functi, Scott Trenda | Thread | RE: [xsl] Using XSLT's key() functi, Scott Trenda |
Re: [xsl] [saxon - Help] SystemID a, Johannes Neubauer | Date | Re: [xsl] [saxon - Help] SystemID a, Andrew Welch |
Month |