Из цикла я читаю каждую форму xml и передаю ее в таблицу стилей xslt.
Может быть из вашего приложения выполнение таблицы стилей впустая форма (Форма 1) вызывает это.Попробуйте справиться с этим, выполняя таблицу стилей только в том случае, если форма не пуста.
Кроме того, вы можете изменить свою таблицу стилей на эту:
<xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="2.0">
<xsl:output method="text"/>
<xsl:strip-space elements="*" />
<xsl:template match="info/a">
<xsl:value-of select="concat(normalize-space(.),
' ',
normalize-space(@href))"/>
<xsl:if test="follwing-sibling::a">
<xsl:text>
</xsl:text>
</xsl:if>
</xsl:template>
</xsl:stylesheet>
Где normalize-space()
используется для обеспечениячто в ваших входных данных нет лишних пробелов.