Чтобы долго не тратить время сразу скажу:
Макрос news related_links() (http://dev.docs.umi-cms.ru/spravochnik_makrosov_umicms/novosti/news_related_links/#xslt-templating) возвращается результат в виде:
udata/items/item или udata без item внутри
Этот результат обрабатывается кем-то. Предположительно шаблоном \templates\ШАБЛОН САЙТА\xslt\modules\news\news-item.xsl в блоках
<xsl:template match="udata[@method = 'related_links']" />
<xsl:template match="udata[@method = 'related_links' and count(items/item)]">
<h4>
<xsl:text>&news-realted;</xsl:text>
</h4>
<ul>
<xsl:apply-templates select="items/item" mode="related" />
</ul>
</xsl:template>
<xsl:template match="item" mode="related">
<li umi:element-id="{@id}">
<a href="{@link}" umi:field-name="news">
<xsl:value-of select="." />
</a>
</li>
</xsl:template>
где шаблон
<xsl:template match="udata[@method = 'related_links']" />
отвечает как раз за состояние когда записей нет, а остальная часть - за состояние когда записи есть.
По крайней мере это кусок из стандартного demodizzy. В вашем шаблоне может быть что-то иначе.