xsl-list
[Top] [All Lists]

Re: AW: Using key() from outside the default namespace

2003-08-04 18:16:08
On Mon, 2003-08-04 at 21:34, David Carlisle wrote:
As has been commented your references to namespaces are a red herring.

O good. 

It's not the different namespaces but the different document that is the
issue.

OK, I thought you could use namespaces on a per-document basis to act as
the triggers for going back to where you wanted.  Pity.

key() looks up keys in the current document only. If you are in another
document you need to go back to where you want to do the key lookup.

OK. But when I do it, it triggers the document root template each time.

usual model is:

<xsl:variable name="originaldoc" select="/"/>
<xsl:for-each select="document('jhcgalshgalal')/a/b/c">
  stuff in other doc...
  <xsl:variable select="some expression to generate the key" name="x"/>
  <xsl:for-each select="$originaldoc">
    <xsl:value-of select="key('k',$x)">
   </xsl:for-each>
  more stuff in other doc

I'll sort out a minimal instance to demonstrate this.
(Which will doubtless guarantee I'll find the problem en route...)

///Peter



 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list