В XSLT 1.0 есть только две вещи, которые изменяют контекст, и ни одна из них не является функцией. Это:
<xsl:apply-templates select='some-test'/>
(что приведет к обработке выбранных узлов, каждый из которых станет узлом контекста в процессе обработки)
и
<xsl:for-each select='some-test'/>
В XSLT 2.0 у вас также есть
<xsl:for-each-group/>
(который устанавливает узел контекста несколько более сложным способом, чем xsl:apply-templates
и xsl:for-each