Subject: Re: [xsl] :apply-templates in another document From: Jeni Tennison <jeni@xxxxxxxxxxxxxxxx> Date: Mon, 19 May 2003 10:06:08 +0100 |
Hi Stefan, > I need to apply-templates on a second .xml file referenced by a first .xml > where which references a .xsl sheet. > > I try following: > ... > <xsl:apply-templates > select="document(@tag)/tag/description/@*|node()"> > <xsl:with-param name="level" select="$level"/> > </xsl:apply-templates> The trouble is that the XPath you're using to select the content of the document is parsed as: (document(@tag)/tag/description/@*) | node() In other words, you apply templates to the attributes of the <description> element in the second .xml file, and the node() children of the context node in the first .xml file. The easiest thing would be to change the select attribute to: document(@tag)/tag/description and add a template that matched the <description> element and applied templates to its attributes and children: <xsl:template match="description"> <xsl:param name="level" /> <xsl:apply-templates select="@* | node()"> <xsl:with-param name="level" select="$level" /> </xsl:apply-templates> </xsl:template> Cheers, Jeni --- Jeni Tennison http://www.jenitennison.com/ XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] :apply-templates in another d, Stefan Geelen | Thread | [xsl] sum within template, shadab |
Re: [xsl] extensions and XSLT 2.0, Frédéric Laurent | Date | Re: [xsl] extensions and XSLT 2.0, Frédéric Laurent |
Month |