Re: [xsl] sort with using document()

Subject: Re: [xsl] sort with using document()
From: "G. Ken Holman" <gkholman@xxxxxxxxxxxxxxxxxxxx>
Date: Mon, 07 Jul 2003 16:06:18 -0300
At 2003-07-07 14:28 -0400, Fei Zheng wrote:
I'd like to sort result by an element which is in an included xml with using document(). I did it this way...

<xsl:for-each select="tech[tech]">
<xsl:variable name="current-tech" select="@descr"/>
<xsl:value-of select="$current-tech" />
<xsl:apply-templates select="document('css_report.xml')//item[metadata/technology=$current-tech]" mode="report" />
</xsl:for-each>


<xsl:template match="item" mode="report">
        <xsl:sort select="content/company"/>
        <xsl:value-of select="content/company"/><br/>
</xsl:template>

<xsl:sort/> must be a child of <xsl:for-each> or <xsl:apply-templates>, not a child of <xsl:template>, because it is modifying the parent instructions that are obtaining node sets to be processed. If you move the <xsl:sort/> instruction above to be a child of <xsl:apply-templates> you will get some meaningful results.


I hope this helps.

................. Ken

--
Upcoming hands-on courses: in-house corporate training available;
North America public:  XSL-FO Aug 4,2003; XSLT/XPath Aug 12, 2003

G. Ken Holman                mailto:gkholman@xxxxxxxxxxxxxxxxxxxx
Crane Softwrights Ltd.         http://www.CraneSoftwrights.com/s/
Box 266, Kars, Ontario CANADA K0A-2E0   +1(613)489-0999 (F:-0995)
ISBN 0-13-065196-6                      Definitive XSLT and XPath
ISBN 0-13-140374-5                              Definitive XSL-FO
ISBN 1-894049-08-X  Practical Transformation Using XSLT and XPath
ISBN 1-894049-11-X              Practical Formatting Using XSL-FO
Member of the XML Guild of Practitioners:    http://XMLGuild.info
Male Breast Cancer Awareness http://www.CraneSoftwrights.com/s/bc


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



Current Thread