- From: Eric van der Vlist <vdv@dyomedea.com>
- Date: Mon, 11 Dec 2000 08:41:45 +0100
- To: Giuseppe Fanuzzi <gifa75@yahoo.it>
- CC: www-style@w3.org
Giuseppe Fanuzzi wrote: > > Hi people! > Someone knows how sorting no alphabeticly and no > numberly a list of XML data using XSL? You need to do a kind of "join" with a list of possible values that can be embedded in the stylesheet itself. > Example: > I would sorting the follow list > Major, Minor and Open_issue > > in this specific order: > Major, Open_issue, Minor > > How does it work? Can be something like: ====GiUSEpPe.xml: <?xml version="1.0" encoding="UTF-8"?> <?xml-stylesheet type="text/xsl" href="GiUSEpPe.xslt"?> <issues> <issue>Major</issue> <issue>Minor</issue> <issue>Open_issue</issue> </issues> ====GiUSEpPe.xslt: <?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:g="http://4xt.org/ns/GiUSEpPe" exclude-result-prefixes="g"> <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/> <xsl:variable name="issues" select="document('')/xsl:stylesheet/g:issues"/> <g:issues > <issue>Major</issue> <issue>Open_issue</issue> <issue>Minor</issue> </g:issues> <xsl:template match="/"> <ul> <xsl:apply-templates select="/issues/issue"> <xsl:sort data-type="number" select="count($issues/issue[.=current()]/preceding-sibling::*)"/> </xsl:apply-templates> </ul> </xsl:template> <xsl:template match="issue"> <li> <xsl:value-of select="."/> <xsl:comment> position=<xsl:value-of select="count($issues/issue[.=current()]/preceding-sibling::*)"/> </xsl:comment> </li> </xsl:template> </xsl:stylesheet> ====result: <?xml version="1.0" encoding="utf-8"?> <ul> <li>Major<!-- position=0--> </li> <li>Open_issue<!-- position=1--> </li> <li>Minor<!-- position=2--> </li> </ul> Eric > Thanks > -- ------------------------------------------------------------------------ Eric van der Vlist Dyomedea http://dyomedea.com http://xmlfr.org http://4xt.org http://ducotede.com ------------------------------------------------------------------------
Received on Monday, 11 December 2000 02:39:38 UTC