<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

	<xsl:template match="/">
		<xsl:element name="Begin">Begin</xsl:element>
		<xsl:apply-templates select="A"/>
		<xsl:element name="End">End</xsl:element>
	</xsl:template>

	<xsl:template match="A">
		<!--
		<xsl:element name="B">B guy</xsl:element>
		-->
		<xsl:call-template name="CalledTemplate1"/>
	</xsl:template>

	<xsl:template name="CalledTemplate1">
		<xsl:apply-templates select="B"/>
	</xsl:template>

	<xsl:template match="B">
		<xsl:element name="B">B guy</xsl:element>
		<xsl:call-template name="CalledTemplate2"/>
	</xsl:template>

	<xsl:template name="CalledTemplate2">
		<xsl:element name="In">Inside 2</xsl:element>
	</xsl:template>
</xsl:stylesheet>