This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: document() and xpath


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]