XSLT将节点内的xml字符串转换为xml节点树

时间:2014-01-18 12:00:55

标签: xml xslt

我有这个XML文件,其中XML节点的内容是字符串中的另一个XML文档。

<Response>
  <XML>
    &lt;Ping&gt;
       &lt;Success /&gt;
       &lt;EchoData&gt;Hi, this is a ping!&lt;/EchoData&gt;
    &lt;/Ping&gt;
  </XML>
</Response>

我需要使用XSLT将其输出类似于下面的XML,但我不确定如何解决这个问题。 我尝试了一些替换功能,但没有运气。

这是我想要得到的结果:

<Ping>
  <Success />
  <EchoData>Hi, this is a ping!</EchoData>
</Ping>

这可能吗?

1 个答案:

答案 0 :(得分:0)

就像Ian建议的那样,我通过将disable-output-escaping添加到value-of来解决了这个问题。

我的转换现在看起来像这样,并给我我想要的结果。

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxsl="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl">
  <xsl:template match="/Response">
      <xsl:value-of select="XML" disable-output-escaping="yes" />
  </xsl:template>
</xsl:stylesheet>