Subject: RE: [xsl] Correctly sorting ID's From: "Michael Kay" <michael.h.kay@xxxxxxxxxxxx> Date: Tue, 21 Jan 2003 17:27:02 -0000 |
> > In a transform, is it possible to correctly sort these poorly > formed id's listed below If you're prepared to write some recursive XSLT code to transform the keys, you could achieve this by the technique of prefixing each numeric component with a digit indicating its length. Thus 1 becomes 11, 10 becomes 210, 15 becomes 215, 109 becomes 3109. This will give you a key that collates alphabetically. Michael Kay Software AG home: Michael.H.Kay@xxxxxxxxxxxx work: Michael.Kay@xxxxxxxxxxxxxx > > 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
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Correctly sorting ID's, Jeni Tennison | Thread | RE: [xsl] Correctly sorting ID's, Niki Dinsey - CSW |
Re: [xsl] Correctly sorting ID's, Jeni Tennison | Date | [xsl] Re: Questions about footnotes, Gustaf Liljegren |
Month |