需要替换<符号与<使用xslt从特定节点的xml

时间:2014-05-04 19:23:02

标签: xslt

INPUT

“大家好我需要一个xslt来替换xml的特定节点中的<符号到& lt:”,我该怎么做呢。“

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:adm="http://axn/someurl/">
<soapenv:Header/>
<soapenv:Body>
  <adm:Access>
     <String1> <log item='value' price='fixed'/></String1>
     <String2><US/></String2>
  </adm:Access>
 </soapenv:Body>
</soapenv:Envelope>

输出

“这是我最终需要的。再次使用&lt; at&lt; at node0和node1.i只需要替换”&lt;“而不是”&gt;“符号”

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:axn="http://axn/someurl/">
<soapenv:Header/>
<soapenv:Body>
  <axn:Access>
  <node0>&lt;log item='value' price="fixed"  /></node0>
  <node1>&lt;US /></node1>
  </axn:Access>
  </soapenv:Body>
 </soapenv:Envelope>

“尝试将node0和node1的内容解析为带有和替换的文本但是它的工作”

1 个答案:

答案 0 :(得分:0)

使用XSLT无法替换 <符号。 XSLT提供对标记内部值(例如元素名称)和标记有效负载的访问 - 而不是标记本身(除了通过复制)。

可以做的是使用上述值输出一些文字 - 例如参见:
Converting XML to escaped text in XSLT
How do I Emit Escaped XML representation of a Node in my XSLT's HTML Output