Hallo,
kann mir jemand ein Beispiel angeben, wie ich mit XSL das jeweils gleiche Attribut in zwei aufeinanderfolgenden Nodes vergleichen kann.
-------- xml ---------
<?xml version="1.0" encoding="iso-8859-1"?>
<?xml-stylesheet type="text/xsl" href="test.xsl"?>
<data>
<element attribut="apfel"></element>
<element attribut="birne"></element>
<element attribut="banane"></element>
<element attribut="erdbeere"></element>
<element attribut="apfel"></element>
<element attribut="apfel"></element>
<element attribut="melone"></element>
<element attribut="pflaume"></element>
<element attribut="pflaume"></element>
</data>
------------- xslt -----
<?xml version="1.0" encoding="iso-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/data">
<html><head><title>Test</title></head>
<body>
<xsl:apply-templates select="element" />
</body>
</html>
</xsl:template>
<xsl:template match="element">
xsl:choose
<xsl:when test="@attribut = following-sibling::element[1]/@attribut">
<xsl:value-of select="@attribut" /><strong>(Duplikat existiert)</strong><br />
</xsl:when>
<xsl:when test="@attribut = preceding-sibling::element[1]/@attribut"></xsl:when>
xsl:otherwise
<xsl:value-of select="@attribut" /><br />
</xsl:otherwise>
</xsl:choose>
</xsl:template>
</xsl:stylesheet>
------------------ Ausgabe -------
apfel
birne
banane
erdbeere
apfel(Duplikat existiert)
melone
pflaume(Duplikat existiert)
Grüße
Thomas