Проблема с этим ...
<xsl:variable name="is-notempty-table" select="max(count(thead/row/entry))" />
Это то, что count(thead/row/entry)
будет возвращать только одно значение;а именно количество всех entry
узлов в thead
.(И он вернет 3, а не 0).Если вы хотите найти максимальное число узлов entry
для строк в пределах thead
, вы хотите получить следующее выражение:
<xsl:variable name="is-notempty-table" select="max(thead/row/count(entry))" />
Или для tbody
<xsl:variable name="is-notempty-table" select="max(tbody/row/count(entry))" />
Или, чтобы проверить всю таблицу ...
<xsl:variable name="is-notempty-table" select="max(*/row/count(entry))" />
Кроме того, использование имени переменной is-notempty-table
предполагает, что вы просто хотите проверить, есть ли в таблице entry
узлы?Если это так, вы можете просто сделать это ...
<xsl:variable name="is-notempty-table" select="*/row/entry" />
<xsl:if test="$is-notempty-table">Table is not empty</xsl:if>