[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

Re: [xsl] accessing multiple xml documents from within one template


Subject: Re: [xsl] accessing multiple xml documents from within one template
From: Stefan Hunziker <stefan.stanjasele@xxxxxxxxx>
Date: Sat, 17 Jan 2009 12:31:52 +0100

just for documentation, here is the working xsl:

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
	<xsl:output  method="text" indent="no"/>
	<xsl:variable name="reportDef" select="document('reportDef.xml')"/>
	
	<xsl:template match="books">
		<xsl:apply-templates select="$reportDef" mode="header"/>&#xA;
		<xsl:apply-templates select="book"/>
	</xsl:template>
	
	<xsl:template match="book">
		<xsl:variable name="detail" select="."/>
		<xsl:for-each select="$reportDef/reportDef/col">
			<xsl:variable name="fieldname" select="@field"/>;
			<xsl:value-of select="$detail/*[name()=$fieldname]"/>
		</xsl:for-each>
	</xsl:template>
	
	<xsl:template match="col" mode="header">
		<xsl:value-of select="@title"/>;
	</xsl:template>
</xsl:stylesheet>


Current Thread