Elemente suchen und zu einer Liste zusammenfügen

Die folgende Transformation sucht alle Elemente mit Namen src:Element und kopiert sie hintereinander in ein umschließendes Tag dst:List:

<?xml version="1.0" encoding="UTF-8" ?>
<xsl:stylesheet
  version="1.0"
  xmlns:src="..."
  xmlns:dst="..."
  xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  <xsl:template match="/">
    <dst:List>
      <xsl:apply-templates select="//src:Element" />
    </dst:List>
  </xsl:template>
  <xsl:template match="src:Element">
    <xsl:copy-of select="."/>
  </xsl:template>
</xsl:stylesheet>


Das select="//tns:Element" im ersten apply-templates sucht alle Elemente, egal wo sie in der Hierarchie auftauchen. Das zweite Template kopiert sie in die Ausgabe.