Was ist in XSLT 1.0 der kürzeste/sauberste/empfohlene Weg, um den aktuellen Kontextknoten an eine aufgerufene Vorlage zu übergeben und diesen Knoten zum Kontextknoten innerhalb der aufgerufenen Vorlage zu machen?XSLT Aktuellen Kontext in Call-Vorlage übergeben
Es wäre schön (würde es, richtig?) Wenn eine Vorlage ohne xsl: param und durch eine leere Call-Vorlage aufgerufen würde einfach den Kontextknoten des Aufrufers abholen, aber das Beste, was ich mir vorstellen kann, ist dies:
<xsl:call-template name="sub">
<xsl:with-param name="context" select="." />
</xsl:call-template>
mit
<xsl:template name="sub">
<xsl:param name="context" />
<xsl:for-each select="$context">
</xsl:for-each>
</xsl:template>
Danke Dimitre. Ich habe das nicht dokumentiert und es schien nicht zu funktionieren, als ich es versuchte. Ich habe nicht an der richtigen Stelle gesucht und muss etwas anderes falsch gemacht haben. +1 Q hat geantwortet. Prost. – JPM
@JPM: Gern geschehen. Möglicherweise haben Sie sich die Anweisung xsl: function in XSLT 2.0 angesehen - sie unterscheidet sich von einer benannten Vorlage dadurch, dass sie nicht den Kontext des Aufrufers der Funktion empfängt und der Aufrufer seinen Kontextknoten übergeben muss als Parameter, wenn dieser Kontextknoten übergeben werden muss. –