вы можете проверить, является ли узел и его подузлы пустыми, с помощью:
<xsl:if test="normalize-space(.)=''">All nodes empty: true
</xsl:if>
или вы можете проверить, есть ли у него пустой узел, с помощью:
<xsl:if test="normalize-space(*)=''">Contains an empty node: true
</xsl:if>
, когда эта таблица стилейзапускается против вашего входного XML:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
<xsl:output omit-xml-declaration="yes"/>
<xsl:template match="Address">
<xsl:if test="normalize-space(.)=''">All nodes empty: true
</xsl:if>
<xsl:if test="normalize-space(*)=''">Contains an empty node: true
</xsl:if>
</xsl:template>
</xsl:stylesheet>
это даст:
All nodes empty: true
Contains an empty node: true
См. в action .