Subject: RE: [xsl] getting the longest text node From: "Lars Huttar" <lars_huttar@xxxxxxx> Date: Thu, 3 Apr 2003 10:10:17 -0600 |
florian wrote: > > right now i do it via: > > <xsl:for-each select="/*/*"> > <xsl:for-each select="/*/*[local-name = local-name(current())]"> > > ... > > wrong? It's a good start, but you'll get each element processed N times, where N is the number of that elements with that name. In other words, if you have two <apple> elements, you'll get each of them processed twice. In other words, this is a classic grouping problem... find the members of a group but eliminate duplicate processing. Look at http://www.dpawson.co.uk/xsl/sect2/N4486.html for help, or read ch. 10 of Tennison's "Beginning XSLT". Lars > > > > hi! > > > > how could i access the nodes though, if all i know is their > structure > > but 'foo', 'orange' and 'apple' could be also any other name.. and > > foo could also contain a flexible amount of children.. > > > > all i could think off is some kinda akward looking looping.. : / > > > > ciao! > > florian > > > > > > > I just thought I'd provide a variation. I can't make any > performance > > > claims vs. a sort in a for-each. Maybe someone else knows. > > > > > > <xsl:template match="/"> > > > <xsl:apply-templates select="//orange"> > > > <xsl:sort data-type="number" order="descending" > select="string-length(.)"/> > > > </xsl:apply-templates> > > > </xsl:template> > > > > > > <xsl:template match="orange"> > > > <xsl:if test="position()=1"> > > > <LongString type="{name()}" string-length="{string-length(.)}"> > > > <xsl:value-of select="."/> > > > </LongString> > > > </xsl:if> > > > </xsl:template> > > > > > > -rick > > > > > > At 10:35 PM 3/11/03 +0100, you wrote: > > > > > > >hi! > > > > > > > >i have a xml document like this: > > > > > > > > > > > ><root> > > > > <foo> > > > > <apple>a</apple> > > > > <orange>oiasd</orange> > > > > </foo> > > > > <foo> > > > > <apple>hellooooo</apple> > > > > <orange>test</orange> > > > > </foo> > > > ></root> > > > > > > > >what would be the most performant and best way to get > > > >the longest text of a apple node, and the longest text > > > >of a orange node? > > > > > > > >thanks alot! > > > > > > > >ciao! > > > >florian > > > > > > > > > > > > XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list > > > > Rick Taylor > > XML Developer > > PPDM Association > > > > > > 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 XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] getting the longest text , florian | Thread | RE: [xsl] getting the longest text , Lars Huttar |
Re: [xsl] How do you set the action, Ricardo Castillo | Date | [xsl] dynamic header height in regi, Joerg Heinicke |
Month |