Re: [xsl] document() and xpath

Subject: Re: [xsl] document() and xpath
From: Joerg Heinicke <joerg.heinicke@xxxxxx>
Date: Mon, 29 Apr 2002 21:15:13 +0200
You have to bring the focus back to the original document. For this you must store the document in a variable:

<xsl:variable name="document1" select="/"/>
<xsl:variable name="document2" select="document('xml.xml')"/>

<xsl:for-each select="$document2/menu/name">
  <xsl:apply-templates select="$document1/page/form"/>
</xsl:for-each>

Regards,

Joerg

Meltem Kogelbauer schrieb:
Hi All,

here is the simplified version of code;
1st XML that is generated on-the-fly
<page>
	<form>
		<name/>
		<id/>
	</form>
...
</page>

2nd XML that is a flat file, xml.xml
<menu>
	<name/>
	<name/>
	<name/>
</menu>

In the XSL

<for-each select="document('xml.xml')/menu/name">
	<value-of select="text()"/>
	<apply-templates select="/page/form" />
</for-each>


My problem is with the xpath (I think) in <apply-templates> element. When looping in the external XML, how can I write the XPath to the current document? Is this possible?

cheers

Meltem


XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list


Current Thread