Subject: Re: [xsl] Find the node with maximum elements From: "Mukul Gandhi" <gandhi.mukul@xxxxxxxxx> Date: Sun, 4 Nov 2007 12:03:14 +0530 |
Hi Mike, IMHO, there seems to be a slight flaw in this logic. This program will return only the last instance (i.e. only 1) of the maximum, and not all maximum instances. I think, Ken's answer meets exactly the OP's requirements. On 11/4/07, Michael Kay <mike@xxxxxxxxxxxx> wrote: > Easiest (even in 2.0) is to sort elements according to the number of > children and take the last: > > <xsl:for-each select="Sample/*"> > <xsl:sort select="count(child::*)" data-type="number"/> > <xsl:if test="position()=last()"> > <xsl:value-of select="name()"/> > </ > </ > > Michael Kay > http://www.saxonica.com/ > > > -----Original Message----- > > From: Avaneesh Ramprasad [mailto:avaneesh@xxxxxxxxxxxxxx] > > Sent: 03 November 2007 19:05 > > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx > > Subject: [xsl] Find the node with maximum elements > > > > Hello, > > I have a requirement to write a xsl transformation to find > > the node which has the maximum number of elements > > > > Below is a sample xml file > > > > <Sample> > > <Toyota> > > <Car>Camry</Car> > > <Car>Corrola</Car> > > </Toyota> > > <Honda> > > <Car>Accord></Car> > > <Car>Civic</Car> > > <Car>Pilot</Car> > > </Honda> > > <Mitsubishi> > > <Car>Lancer</Car> > > <Car>Lancer</Car> > > <Car>Lancer</Car> > > </Mitsubishi> > > <Hyundai> > > <Car>Sonata</Car> > > <Car>Accent</Car> > > </Hyundai> > > </Sample> > > > > The xsl should return Honda and Mitsubishi > > > > Would appreciate your help. > > > > Thanks > > Avaneesh -- Regards, Mukul Gandhi
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] Find the node with maximu, Michael Kay | Thread | RE: [xsl] Find the node with maximu, Michael Kay |
RE: [xsl] Find the node with maximu, Michael Kay | Date | RE: [xsl] Find the node with maximu, Michael Kay |
Month |