我需要为 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="..."/>
在序列化时添加它