|
Subject: Re: [xsl] A general <xsl:key> question. From: David Carlisle <davidc@xxxxxxxxx> Date: Thu, 5 Dec 2002 17:22:52 GMT |
> Do keys have to be used within a context in which the associated nodes
> exist?
I'm not sure I parsed that correctly, but..
key() like id() will only ever return nodes that are in teh same
document as the current node. If you use document() or a xx:node-set()
extension then these things are new documents.
The usual idiom (I believe there is an example in the xslt spec)
is if you are processing document a and want to look up a key in
document b then you do
<xsl:for-each select="document('b')">
<xsl:copy-of select="key(....
</xsl:for-each>
Note the for-each is just looping over a list of 1, just to move the
current node to the other document. of course if you are doing that a
lot you can define $bdoc to be "document('b') and use
$bdoc instead of calling document() each time.
David
_____________________________________________________________________
This message has been checked for all known viruses by Star Internet
delivered through the MessageLabs Virus Scanning Service. For further
information visit http://www.star.net.uk/stats.asp or alternatively call
Star Internet for details on the Virus Scanning Service.
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| Re: [xsl] A general <xsl:key> quest, G. Ken Holman | Thread | [xsl] Re: Key and/or grouping quest, Edward L. Knoll |
| Re: [xsl] A general <xsl:key> quest, G. Ken Holman | Date | [xsl] Locating Things Relative to L, W. Eliot Kimber |
| Month |