Если у вас есть:
<xsl:for-each select="xpath"> ...
Вы можете сделать что-то вроде:
<xsl:choose>
<xsl:when test="xpath">
<xsl:for-each select="xpath"> ...
</xsl:when>
<xsl:otherwise>
<xsl:text>Some default text</xsl:text>
</xsl:otherwise>
</xsl:choose>
Чтобы избежать двойного теста XPath (и дублирования), вы, вероятно, можете использовать xsl:variable
, что-то вроде следующего (синтаксис может быть немного неправильным, но грубая идея должна быть правильной).
<xsl:choose>
<xsl:variable name="elems" select="xpath"/>
<xsl:when test="$elems">
<xsl:for-each select="$elems"> ...
</xsl:when>
<xsl:otherwise>
<xsl:text>Some default text</xsl:text>
</xsl:otherwise>
</xsl:choose>