Re: [xsl] How to sort?

Subject: Re: [xsl] How to sort?
From: Mike G <row.filter@xxxxxxxxx>
Date: Thu, 14 Oct 2004 11:43:11 +0200
I am using MSXML and XslTransform() in C# to transform documents.
There is only one stylesheet.

original XML doc is 1500 lines large tough.

Transform is very very slow.

-Mike


On Thu, 14 Oct 2004 12:28:58 +0300, jarno.elovirta@xxxxxxxxx
<jarno.elovirta@xxxxxxxxx> wrote:
> Hi,
> 
> > If this is the XML with previously missing root-elements
> >
> > <Documents>
> >        <Document title="1" chapter="i" href="file1.xml" filter="food">
> >                <Article title="1.1" info="sub" filter="drink"
> > state="1"/>
> >                <Article title="1.2" info="main" filter="food"
> > state="3"/>
> >                          <Article title="1.3" info="main"
> > filter="drink" state="2"/>
> >        </Document>
> >        <Document title="2" chapter="ii" href="file2.xml"
> > filter="drink">
> >                <Article title="2.1" info="main"
> > filter="drink" state="1"/>
> >                <Article title="2.1" info="sub" filter="drink"
> > state="3"/>
> >                <Article title="2.2" info="main" filter="food"
> > state="2"/>
> >        </Document>
> >        <Document title="3" chapter="1" href="file2.xml" filter="">
> >                <Article title="3.1" info="sub" filter="drink"
> > state=""/>
> >                <Article title="3.2" info="child" filter="" state="8"/>
> >        </Document>
> >        <Document title="4" chapter="2" href="file2.xml" filter="">
> >                <Article title="3.1" info="sub" filter="drink"
> > state=""/>
> >                <Article title="3.2" info="main" filter="food"
> > state="1"/>
> >        </Document>
> > </Documents>
> >
> >
> > could this be correct XSLT for my output. Could you check it? It runs
> > very slow for some reason.
> 
> I get (Saxon 6.5.3, intended in Xselerator)
> 
> <?xml version="1.0" encoding="utf-8"?>
> <Documents>
>  <Document title="1" chapter="i" href="file1.xml" filter="food">
>    <Article title="1.3" info="main" filter="drink" state="2"/>
>    <Article title="1.2" info="main" filter="food" state="3"/>
>  </Document>
>  <Document title="2" chapter="ii" href="file2.xml" filter="drink">
>    <Article title="2.1" info="main" filter="drink" state="1"/>
>    <Article title="2.2" info="main" filter="food" state="2"/>
>  </Document>
>  <Document title="4" chapter="2" href="file2.xml" filter="">
>    <Article title="3.2" info="main" filter="food" state="1"/>
>  </Document>
> </Documents>
> 
> Which engine are you using? Also, is you stylesheet
> 
> <?xml version="1.0"?>
> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform";>
> <xsl:template match="/">
> <Documents>
>   <xsl:apply-templates select="Documents/Document[Article/@info = 'main']"/>
> </Documents>
> </xsl:template>
> <xsl:template match="Document">
>   <xsl:copy>
>     <xsl:copy-of select="@*"/>
>     <xsl:for-each select="Article[@info = 'main']">
>       <xsl:sort select="@state" data-type="number"/>
>       <xsl:copy-of select="."/>
>     </xsl:for-each>
>   </xsl:copy>
> </xsl:template>
> </xsl:stylesheet>
> 
> or did you embed the templates into some other stylesheet your've not showing us?
> 
> Cheers,
> 
> Jarno - Seabound: Contact
> 
> 


-- 

[row.filter]

Current Thread