This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
RE: key with restricting the scope of use attribute
- To: <xsl-list at lists dot mulberrytech dot com>
- Subject: RE: [xsl] key with restricting the scope of use attribute
- From: "Michael Kay" <mhkay at iclway dot co dot uk>
- Date: Fri, 11 May 2001 09:48:05 +0100
- Reply-To: xsl-list at lists dot mulberrytech dot com
> I have a key that works when the match is anchored to
> fixed path /a/b/c
>
> <xsl:key name="MyKey" match="/a/b/c" use="?"/>
>
> My ultimate goal is to recursively process //a/b/c
> using a single key using a breadth first or depth first
> algorithm. If the node I am currently processing is held
> in a variable $CurrentNode, how would you construct
> the key to restrict its matching to just this node? In other
> words, I need to form the use attribute knowing $CurrentNode
> so that match="//a/b/c" does not match anthing other than
> $CurrentNode.
There's some basic misunderstanding here about what a key is.
Think of <xsl:key> as being like "create index" in SQL: it defines an index
for all the "match"ed nodes in the document, that allows them to be
retrieved using the value of the "use" property. The contents of the index
are fixed when the source document is loaded, it doesn't make sense to
change them depending on the contents of a variable.
Mike Kay
Software AG
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list