Jaki jest najkrótszy/najczystszy/zalecany sposób przekazania aktualnego węzła kontekstu do wywoływanego szablonu i czy ten węzeł staje się węzłem kontekstu wewnątrz szablonu wywoływanego?XSLT Przekaż bieżący kontekst w szablonie wywołania
Byłoby miło (tak, prawda?), Gdyby szablon bez xsl: param i wywoływany przez pusty szablon wywołania po prostu podniósłby węzeł kontekstu dzwoniącego, ale najlepiej mogę myśleć o tym:
<xsl:call-template name="sub">
<xsl:with-param name="context" select="." />
</xsl:call-template>
z
<xsl:template name="sub">
<xsl:param name="context" />
<xsl:for-each select="$context">
</xsl:for-each>
</xsl:template>
Dzięki Dimitre. Nie widziałem tego udokumentowanego i wydawało się, że nie działa, gdy go wypróbowałem. Nie szukałem we właściwym miejscu i musiałem robić coś złego. +1 Q odpowiedział. Twoje zdrowie. – JPM
@JPM: Nie ma za co. Być może patrzyłeś na instrukcję 'xsl: function' w XSLT 2.0 - jest ona różna od nazwanego szablonu, ponieważ nie odbiera kontekstu wywołującego funkcji i jeśli wywołujący musi przekazać swój węzeł kontekstu jako parametr, jeśli ten węzeł kontekstu musi zostać przekazany. –