Subject: Re: XSL: using document()
From: Tony Graham <tkg@xxxxxxxxxxxx>
Date: Wed, 24 Jan 2001 19:32:36 -0400 (EST)
|
At 24 Jan 2001 13:13 -0800, george.fink@xxxxxxx wrote:
> <xsl:apply-templates select="document($file)" mode="translate">
> <xsl:with-param name="param1" select="$value"/>
> </xsl:apply-templates>
This selects the root node of the referenced document, which, as well
as being the root of the document tree, is a "root" node.
> <xsl:template match="*" mode="translate">
> <xsl:param name="param1"/>
> ...
> </xsl:template>
This matches any "element" node.
There is a disconnect between your xsl:apply-templates and your
xsl:template. The nodes selected by one are not processed using the
other. You want either to select the document element of the
referenced document using:
<xsl:apply-templates select="document($file)/*" mode="translate">
or to match on the root node:
<xsl:template match="/" mode="translate">
(but not both, or you'll be back in the same predicament).
Regards,
Tony Graham.
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
|