Может быть лучше использовать выбор, не нужно набирать (или, возможно, неправильно) свои выражения более одного раза, и это позволяет вам следовать дополнительным различным поведениям.
Я очень часто использую count(/html/body) = 0
, так как конкретное количество узлов интереснее, чем множество. Например ... когда неожиданно найдется более одного узла, соответствующего вашему выражению.
<xsl:choose>
<xsl:when test="/html/body">
<!-- Found the node(s) -->
</xsl:when>
<!-- more xsl:when here, if needed -->
<xsl:otherwise>
<!-- No node exists -->
</xsl:otherwise>
</xsl:choose>