RE: [xsl] how to keep context when copying

Subject: RE: [xsl] how to keep context when copying
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Tue, 18 Aug 2009 15:02:47 +0100
> <xsl:function name="fdx:GetDef">
>   <xsl:param name="ref"/>
>   <xsl:copy-of select="key('keyItems', $ref/@OID)"/> </xsl:function>
> 
> My problem is that the nodes returned by this function lack 
> ancestor info that would be useful in downstream processing 
> of the node.  Is there a way that I can rewrite the function 
> to return a node that allows me to get at the node's 
> ancestors for example.


Just return the node itself, instead of making a copy.

<xsl:sequence select="key('keyItems', $ref/@OID)"/>

Regards,

Michael Kay
http://www.saxonica.com/
http://twitter.com/michaelhkay 

Current Thread