In some <Article> elements, the <Comment> element is empty (usually it
contains another <Article> element or set of <Article> elements. When
<Comment> is empty, I want to bypass the transformations done in the Comment
template below. I cannot seem to get the code to ignore empty <Comment>
elements.
Input:
<Article>
<Person>Gerald M. van Zanten</Person>
<Title>New issues: Slovakia</Title>
<IssueName>Sep/Oct</IssueName>
<IssueNumber>5</IssueNumber>
<Year>2007</Year>
<Page>37</Page>
<Comment/> <!-- WHEN EMPTY ELEMENT MATCHED, IGNORE
</Article>
Template:
<xsl:template match="Comment">
<xsl:if test="not(empty(.))"> <!-- THIS DOES NOT SEEM TO WORK
<!-- <xsl:if test="Article"> NOR DOES THIS -->
<span class="comment">
<xsl:text> {Comment: </xsl:text>
<xsl:for-each-group select="Article" group-by="Person">
<xsl:sort select="Year"></xsl:sort>
<xsl:sort select="IssueNumber" data-type="number"></xsl:sort>
<xsl:sort select="Page"></xsl:sort>
<xsl:sort select="Title" collation="{$sorting-collation}"></xsl:sort>
<!-- <xsl:sort select="Person"
collation="{$sorting-collation}"></xsl:sort> -->
<xsl:if test="not(Title eq preceding-sibling::Article[1]/Title)">
<span class="comment-title">
<xsl:apply-templates select="Title"></xsl:apply-templates>
</span>
</xsl:if>
<xsl:apply-templates select="Person"></xsl:apply-templates>
<!--and for each citation-->
<!-- Dump duplicate citations for 1939-1999 data -->
<xsl:if test="not(. eq preceding-sibling::Article[1])">
<xsl:call-template name="citation"></xsl:call-template>
</xsl:if>
</xsl:for-each-group>
<xsl:text>} </xsl:text>
</span>
</xsl:if>
</xsl:template>