現在、アンパサンド記号 (&) を含む特定の XML タグを出力しようとすると、問題が発生します。
もっと具体的に、次のタグを出力しようとすると。エラーが発生する
<fullname>Ben & Jerry</fullname>
ただし、次のタグを使用しても問題なく動作します
<fullname>Ben and Jerry</fullname>
次のコードで試してみました
<xsl:template match="fullname">
<xsl:apply-templates/>
</xsl:template>
そして、私も試しました
<xsl:template match="fullname">
<xsl:value-of-select="." disable-output-escaping="Yes"/>
</xsl:template>
どちらもエラーになりました。私がそれを機能させる唯一の方法は、このようにCDATAを使用することです
<fullname><![CDATA[Ben & Jerry]]></fullname>
ただし、受信した XML ファイルを制御することはできないため、これは実行可能なオプションではありません。この問題を回避/修正するために XSLT 内でできることはありますか?
ありがとう!