I'm the clever cloggs ;-) Seems, the code I've written is right! I was
interpreting the results incorrectly :-D.

Thanx for the response though Ruben... that's a very interesting link
and I have made a note of it ;-)

Shaun




On 4 Feb, 13:32, Ruben Willems <[email protected]> wrote:
> HI
>
> I'm not an expert in Xsl either,
> but maybe this kind of thing is a lot easier in .Net itself
>
> here's a tip on calling .NEt code from xsl, maybe that can help you 
> outhttp://bloggingabout.net/blogs/pascal/archive/2005/04/21/3658.aspx
>
> with kind regards
> Ruben Willems
>
> On Wed, Feb 4, 2009 at 2:27 PM, CinnamonDonkey <
>
> [email protected]> wrote:
>
> > Hi All,
>
> > I've been trying to solve this problem for a while now and just can't
> > get my head around this weird XSL business (Who comes up with a
> > language that only allows you to assign to a variable once?).
>
> > Given XML looking something like:
>
> > <Modifications>
> >   <Modification>
> >      <changeNumber>123<changeNumber>
> >      <comment>changes for 123<comment>
> >      <file>file1.cpp</file>
> >   </Modification>
> >   <Modification>
> >      <changeNumber>123<changeNumber>
> >      <comment>changes for 123<comment>
> >      <file>file2.cpp</file>
> >   </Modification>
> >   <Modification>
> >      <changeNumber>124<changeNumber>
> >      <comment>changes for 124<comment>
> >      <file>file1.cpp</file>
> >   </Modification>
> >   <Modification>
> >      <changeNumber>125<changeNumber>
> >      <comment>changes for 125<comment>
> >      <file>file1.cpp</file>
> >   </Modification>
> >   <Modification>
> >      <changeNumber>125<changeNumber>
> >      <comment>changes for 125<comment>
> >      <file>file2.cpp</file>
> >   </Modification>
> > <Modifications>
>
> > I want to see a table looking like:
>
> >   123   changes for 123
> >   124   changes for 123
> >   125   changes for 125
>
> > and not:
>
> >   123   changes for 123
> >   123   changes for 123
> >   124   changes for 123
> >   125   changes for 125
> >   125   changes for 125
>
> > That is; I what to not render a row if the change number for the
> > current row being rendered is the same as that of the preceeding row.
>
> > The closest I have come in my solution so far is:
>
> > <xsl:for-each select="//modification">
> >   <xsl:sort select="changeNumber" order="descending" data-
> > type="text" />
> >   <xsl:if test="(position() = 1) or (changeNumber != preceding-
> > sibling::modification[1]/changeNumber)">
> >      <tr>
> >         <td class="table-text" valign="top"> <xsl:value-of
> > select="changeNumber"/> </td>
> >         <td class="table-text" valign="top"> <xsl:value-of
> > select="comment"/
> > > </td>
> >      </tr>
> >   </xsl:if>
> > </xsl:for-each>
>
> > But this seems to skip entries when I have long lists of
> > modifications.
>
> > So the challenge is layed down! Come on clever cloggs!
>
> > Please help,
> > Shaun

Reply via email to