ThomasM: Variablen und Schleifen - Kopfknotenalarm!

Beitrag lesen

Hallo Janine,

Was ich nun haben will: Eine Liste, die alle Elemente aus "old" und "new" vereint (also sowohl 1 und 5) als auch doppelte Einträge filtert (also nicht 2-4 doppelt):

<list>
	<id>1</id>
	<id>2</id>
	<id>3</id>
	<id>4</id>
	<id>5</id>
</list>

Dieser XSLT-2.0-Ansatz führt zum Ziel:

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
  <xsl:template match="list">
    <list>
      <xsl:for-each select="distinct-values(old/id | new/id)">
        <id>
          <xsl:value-of select="."/>
        </id>
      </xsl:for-each>
    </list>
  </xsl:template>
</xsl:stylesheet>

Grüße,
Thomas