Попробуйте: -
<xsl:variable name="numOfLeafNodes" select="count(//*[not(*)])" />
это скажет вам, сколько листовых узлов найдено во всем преобразуемом XML. Использование: -
<xsl:variable name="numOfLeafNodes" select="count(.//*[not(*)])" />
чтобы найти количество листовых узлов, которые являются потомками текущего узла контекста.