RE: [xsl] Context document with exsl:node-set()?

Subject: RE: [xsl] Context document with exsl:node-set()?
From: "Scott Trenda" <Scott.Trenda@xxxxxxxx>
Date: Thu, 1 Nov 2007 14:32:24 -0500
I think I was trying to ask, is the template content of a variable
treated as its own document? It would make sense if it were, considering
it's possible to create new nodes within it, rather than creating a set
of references to nodes in the original document when @select is used.
Then exsl:node-set() essentially acts like document(), correct? I think
I was getting confused because I started out making copies of the nodes
in the template content.

~ Scott

-----Original Message-----
From: Michael Kay [mailto:mike@xxxxxxxxxxxx]
Sent: Thursday, November 01, 2007 1:47 PM
To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Subject: RE: [xsl] Context document with exsl:node-set()?

>
> What happens to the context document when you use this in XSLT 1.0?

Technically there's no such thing as the "context document", though it's
a
convenient shorthand for "the document containing the context node".

> My suspicions
> are that the context document changes to the contents of
> $structured-data when I apply-templates to it

Correct, when you apply-templates to a node that node becomes the
context
node.

If you need to refer back to the original document, it's usually best to
have a global variable bound to it.

<xsl:variable name="main-doc" select="/"/>

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

Current Thread