如何将“<”“>”添加到元素值?
How to add "<" ">" to element value?
我需要为 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>
我收到如下错误:
element type must not contain the '<' character
永远不可能直接在 XSLT 中编写词法标记(除非可能使用仅在某些情况下有效的禁用输出转义 hack)。 XSLT 旨在生成节点树,而不是词汇 XML 输出,并且定义该树的 XDM 数据模型没有任何 CDATA 知识。
你的 XML 的消费者真的不应该关心文本是否在 CDATA 部分,但如果他们关心,你可以在序列化时使用 <xsl:output cdata-section-elements="..."/>
我需要为 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>
我收到如下错误:
element type must not contain the '<' character
永远不可能直接在 XSLT 中编写词法标记(除非可能使用仅在某些情况下有效的禁用输出转义 hack)。 XSLT 旨在生成节点树,而不是词汇 XML 输出,并且定义该树的 XDM 数据模型没有任何 CDATA 知识。
你的 XML 的消费者真的不应该关心文本是否在 CDATA 部分,但如果他们关心,你可以在序列化时使用 <xsl:output cdata-section-elements="..."/>