Subject: RE: [xsl] Correctly sorting ID's From: "Niki Dinsey - CSW" <niki.dinsey@xxxxxxxxx> Date: Tue, 21 Jan 2003 16:25:32 -0000 |
Thanks for the quick response Américo, unfortunately this didn't help, the out put for substring is as follows: (different id's but you get the idea) <id>CM09.1</id> <id>CM09.10</id> <id>CM09.18</id> <id>CM09.2</id> <id>CM09.20</id> <id>CM09.28</id> <id>CM09.3</id> <id>CM09.30</id> <id>CM09.31</id> <id>CM09.44</id> <id>CM09.5</id> <id>CM09.1.5</id> <id>CM09.3.1.1</id> <id>CM09.3.2</id> <id>CM09.3.3.1</id> Thanks anyway Niki -----Original Message----- From: owner-xsl-list@xxxxxxxxxxxxxxxxxxxxxx [mailto:owner-xsl-list@xxxxxxxxxxxxxxxxxxxxxx] On Behalf Of Américo Albuquerque Sent: 21 January 2003 15:45 To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx Subject: RE: [xsl] Correctly sorting ID's Hi Niki. You are sorting strings, not numbers, so you'll have to change a bit your sorting criteria: <xsl:sort select="substring(node()/@id,3)" data-type="number"/> Hope this helps you. -----Original Message----- From: owner-xsl-list@xxxxxxxxxxxxxxxxxxxxxx [mailto:owner-xsl-list@xxxxxxxxxxxxxxxxxxxxxx] On Behalf Of Niki Dinsey - CSW Sent: terça-feira, 21 de Janeiro de 2003 15:24 To: xsl-list-digest@xxxxxxxxxxxxxxxxxxxxxx Subject: [xsl] Correctly sorting ID's Hi there list guru's, I have a question. In a transform, is it possible to correctly sort these poorly formed id's listed below Currently my standard sort: <xsl:apply-templates> <xsl:sort select="node()/@id"/> </xsl:apply-templates> Returns this: <someNode id="CM09.1"/> <someNode id="CM09.1.5"/> <someNode id="CM09.10"/> <someNode id="CM09.10.10.3"/> <someNode id="CM09.10.15"/> <someNode id="CM09.18.2"/> <someNode id="CM09.2"/> <someNode id="CM09.2.2"/> <someNode id="CM09.22"/> <someNode id="CM09.22.1"/> it's the old classic... 1 then 10 before 2 etc. I really need them sorted like the following: <someNode id="CM09.1"/> <someNode id="CM09.1.5"/> <someNode id="CM09.2"/> <someNode id="CM09.2.2"/> <someNode id="CM09.10"/> <someNode id="CM09.10.10.3"/> <someNode id="CM09.10.15"/> <someNode id="CM09.18.2"/> <someNode id="CM09.22"/> <someNode id="CM09.22.1"/> I'm looking now to see if I can work this out and I was wondering if anybody would be able to help me with the correct sort selection. The only other issue to be aware of is that the dots can go on indefinitely and I don't know until runtime the highest number of dot's in the any one id will be. If anybody could point me to a resource that deals with this I would be most grateful. Regards, Niki Dinsey XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] Correctly sorting ID's, Américo Albuquerque | Thread | Re: [xsl] Correctly sorting ID's, W. Eliot Kimber |
Re: [xsl] Correctly sorting ID's, W. Eliot Kimber | Date | RE: [xsl] Correctly sorting ID's, Niki Dinsey - CSW |
Month |