Похоже, вы должны использовать Шаблоны значений атрибутов здесь. Итак, синтаксис, который вы должны использовать, это ...
<fo:block id="{$BlockId}">
Итак, возможно, ваш пример кода должен выглядеть следующим образом
<xsl:for-each select="report/content">
<xsl:variable name="BlockId" select="sampledetail/field[@id='SampleNo']/text()" />
<fo:basic-link internal-destination="{$BlockId}" color="blue">
<xsl:value-of select="$BlockId" />
</fo:basic-link>
</xsl:for-each>
.
.
.
.
<xsl:for-each select="report/content">
<xsl:variable name="BlockId" select="sampledetail/field[@id='SampleNo']/text()" />
<fo:block id="{$BlockId}">
<xsl:apply-templates select="sampledetail" />
</fo:block>
<xsl:for-each>