如何将"<" ">"添加到元素值?



我需要为 ceneo 准备 XML,我必须添加

<![CDATA[text]]> 

对于所有这样的值:

<a name="Kod_producenta"><![CDATA[82981]]></a>
<a name="EAN"><![CDATA[5907640829815]]></a>

我的 xslt 的一部分不起作用:

<a>
<xsl:attribute name="name">
<xsl:value-of select="'Producent'"/>
</xsl:attribute>
<xsl:value-of select="concat('<![CDATA[', producer/@name, ']]>')"/>
</a>

我收到如下错误:

元素类型不得包含"<"字符

永远不可能直接在 XSLT 中编写词法标记(除非可能使用禁用输出转义的黑客,它只在某些情况下有效(。XSLT旨在生成节点树,而不是词法XML输出,并且定义该树的XDM数据模型对CDATA一无所知。

XML 的使用者实际上不应该关心文本是否在 CDATA 部分中,但如果他们关心,您可以使用<xsl:output cdata-section-elements="..."/>在序列化时添加它

相关内容

  • 没有找到相关文章

最新更新