Hallo Franz,
Wenn du deine Template Rules direkt mit <xsl:apply-templates select="element"/> ansteuerst sparst du Dir das.
Allerdings macht es keinen Unterscheid ob ich den root-node mit "/" oder seinem Namen anspreche. oder hab ich da was falsch verstanden?
Der Wurzelknoten in XSLT/XPath ist sowas wie ein abstrakter Knoten. Ihn sprichst Du mit "/" an. Das Wurzelelement des Quelldokuments ist das Kind des Wurzelknotens (Root-Knotens). Das musst du dann explizit ansprechen.
Was ich meinte ist aber:
<xsl:template match="/adresse">
xsl:apply-templates/
</xsl:template>
sucht die Template Rules für ALLE Kinder des Elements adresse
<xsl:template match="/adresse">
<xsl:apply-templates select="mail"/>
</xsl:template>
sucht nur Template Rules für das Kindelement mail von adresse. Dadurch hast du mehr Kontrolle darüber welche Template Rules instantiiert werden und es kommt nicht zu unerwünschten Ausgaben.
Gruß
Franz