# Doppelte Einträge aussortieren



## Guest (15. Feb 2005)

Hallo,

mit diesem Konzept filtere ich die doppelten Einträge raus.

```
<xsl:for-each select="$pfad/Member[@name='A']/Member[@name=$B]">
                <xsl:if test="position()!=1">
                   <xsl:value-of select="', '"/>
                </xsl:if>
                <xsl:value-of select="'&rot&'"/>
                <xsl:value-of select="Member[@name='m'][not(.=following::Member[@name='m'])]"/>
                <xsl:value-of select="'&/rot&'"/>
</xsl:for-each>
```
Das sortiert bei mir bsp. Blau, Blau, Grün, Rot, zum: , Blau, Grün, Rot. 
Nun die Frage:
Wie bekomme ich den Komma vor dem aussortierten Wert weg?
Danke für Hilfe


----------



## Bleiglanz (15. Feb 2005)

verstehe die Frage nicht

```
<!--
                <xsl:if test="position()!=1">
                   <xsl:value-of select="', '"/>
                </xsl:if>
-->
```


----------



## Bleiglanz (15. Feb 2005)

es gibt auch xsl:sort?

was soll das zweimal rot?


----------



## CelikBlek (15. Feb 2005)

wenn die xml dateien doppelte einträge haben sollten die rausgefiltert werden und nicht angezeigt werden. es geht nur um die komma setzung. wenn du 
A, B, C, D, B, E 
hast sieht es aktuell nach der sortierung so aus:
A, B, C, D, , E
da soll der eine komma weg.


----------



## CelikBlek (16. Feb 2005)

Kann mir denn keiner helfen? :-(


----------



## Bleiglanz (16. Feb 2005)

```
<xsl:value-of select="'&rot&'"/>
                <xsl:value-of select="Member[@name='m'][not(.=following::Member[@name='m'])]"/>
                <xsl:value-of select="'&/rot&'"/>
```
Was bewirkt das &rot&, kenn ich irgendwie nicht? Ist dein for-each in irgendeinem grösseren Kontext eingebettet, den du nicht verraten willst????

teste halt einfach, ob was da ist

```
<xsl:if test="position()!=1">
                   <xsl:if>test="Member[@name='m'][not(.=following::Member[@name='m'])]">

                        <xsl:value-of select="', '"/>
                    </xsl:if>
                </xsl:if>
                <xsl:value-of select="'&rot&'"/>
                <xsl:value-of select="Member[@name='m'][not(.=following::Member[@name='m'])]"/>
                <xsl:value-of select="'&/rot&'"/>
```


----------



## CelikBlek (16. Feb 2005)

Ich denke das wird funktionieren... danke.
mir hat quasi diese if abfrage gefehlt. das mit "..rot..." bewirkt nur das die tags erzeugt werden <rot></rot>. Dadurch werden diese selektierten rot markiert. 
den rest habe ich deshalb nicht geschrieben, weil ich dachte wäre unwichtig.


----------

