Subject: Re: SUMMARY: Selecting unique value of an attribute From: Dimitre Novatchev <dnovatchev@xxxxxxxxx> Date: Thu, 24 Aug 2000 04:25:36 -0700 (PDT) |
You'll speed up the first solution considerably if you use <xsl:if test="not(@entry = preceding::index[1]/@entry)"> instead of <xsl:if test="not(@entry = preceding::index/@entry)"> In the first case you perform a single comparison using the fact that the template was applied on a set of "index" elements already sorted by the value of their @entry attribute. The second test is more general, will work on an unsorted node-list, but will require an average of count(//index) div 2 comparisons. Cheers, Dimitre Novatchev. Paul Terray <terray@xxxxxxxxxxxx> wrote: >- - One using the comparison with the preceding element in a sorted subtree, >with a sub-template. This give a solution like this : >"Robert Stupak" <robert@xxxxxxxxxxx> > <xsl:template match="text"> > <xsl:apply-templates select="index"> > <xsl:sort select="@entry"/> > </xsl:apply-templates> > </xsl:template> > > > <xsl:template match="index"> > <xsl:if test="not(@entry = preceding::index/@entry)"> > <xsl:value-of select="@entry"/> > </xsl:if> > </xsl:template> > >This solution is clean to read, although I do prefer the other one for >compacity and probably performance. __________________________________________________ Do You Yahoo!? Yahoo! Mail - Free email you can access from anywhere! http://mail.yahoo.com/ XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: Show - hide with xslt?, Chris Bayes | Thread | internationalization / localization, Stephan . Otte |
Re: XML & XSL with IE5, Gilles Durys | Date | Re: parse malformed XML element, Wendell Piez |
Month |