Subject: RE: [xsl] Aberrant Alphabetizing. From: "Andrew Welch" <AWelch@xxxxxxxxxxxxxxx> Date: Fri, 7 Mar 2003 12:05:21 -0000 |
> I have run into something (embarrassingly) unexpected, using > sort to alphabetize Hi Wendy, Unfortunately you have also fallen into the for-each trap... using <xsl:for-each select="."> as the first child of a matching template will always select just one node - the element that it is being matched against. What I think you should be doing is sorting the <book> child nodes of whatever parent they have by title, something like: <xsl:template match="insert-parent-of-book-here"> <xsl:apply-templates select="book"> <xsl:sort select="title"/> </xsl:apply-templates> </xsl:template> Think of it as building a list of nodes to process using <xsl:apply-templates select="..."/>, and then sorting them using <xsl:sort/> cheers andrew > -----Original Message----- > From: Wendy McFarland [mailto:wmcfarla@xxxxxxx] > Sent: 07 March 2003 11:40 > To: XSL-List@xxxxxxxxxxxxxxxxxxxxxx > Subject: [xsl] Aberrant Alphabetizing. > > > I have run into something (embarrassingly) unexpected, using > sort to alphabetize > book titles to be printed in a catalog. The sort is working > pefectly for most of > the books. But here are 5 examples of incorrect sorting (that > were, sigh, > pointed out to me by the client): > > Computers at Risk: Safe Computing in the Information Age > (should be 2nd) > > Computer Science and Artificial Intelligence > (should be 1st) > > Effectiveness of the United States Advanced Battery Consortium as a > Government-Industry Partnership > (should be 5th) > > Effective Services for Young Children: Report of a Workshop > (should be 4th) > > Effect of Environment on Nutrient Requirements of Domestic Animals > (should be 3rd) > > > ---- The XSLT ----------------- > <xsl:template match="book"> > <xsl:for-each select="."> > <xsl:sort select="title"/> > <xsl:apply-templates select="title"/> > </xsl:for-each> > </xsl:template> > ------------------------------- > > ---- The XML ------------------ > <book> > <title>Computers at Risk: Safe Computing in the > Information Age</title> > </book> > <book> > <title>Computer Science and Artificial Intelligence</title> > </book> > <book> > <title>Effectiveness of the United States Advanced > Battery Consortium as a > Government-Industry Partnership</title> > </book> > <book> > <title>Effective Services for Young Children: Report of > a Workshop</title> > </book> > <book> > <title>Effect of Environment on Nutrient Requirements of Domestic > Animals</title> > </book> > ------------------------------- > > > Can anyone help me understand why the alphabetizing doesn't > come out as > expected? > > > > XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list > > > > > > --- > Incoming mail is certified Virus Free. > Checked by AVG anti-virus system (http://www.grisoft.com). > Version: 6.0.458 / Virus Database: 257 - Release Date: 24/02/2003 > > --- Outgoing mail is certified Virus Free. Checked by AVG anti-virus system (http://www.grisoft.com). Version: 6.0.458 / Virus Database: 257 - Release Date: 24/02/2003 XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] Aberrant Alphabetizing., Yates, Danny (ANTS) | Thread | Fwd: [xsl] Aberrant Alphabetizing., Wendy McFarland |
RE: [xsl] Aberrant Alphabetizing., Yates, Danny (ANTS) | Date | Fwd: [xsl] Aberrant Alphabetizing., Wendy McFarland |
Month |