我需要能够使用XSLT
替换soap body的CDATA标签内的一些文本XML在
之下<env:Envelope xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<env:Header/>
<env:Body env:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<Response>
<result xsi:type="xsd:string"><![CDATA[<?xml version="1.0" encoding="UTF-8" standalone="no"?><Extract authenticated="0"><ErrorList><Error>1</Error></ErrorList></Extract>]]></result>
</Response>
</env:Body>
</env:Envelope>
我希望能够替换CDATA标记内的数据,删除XML声明版本并在开头和结尾添加新标记
&#34;提取主要&#34;
<ExtractMain><Extract authenticated="0"><ErrorList><Error>1</Error></ErrorList></Extract></ExtractMain>
我开始尝试下面的东西,但我不熟悉XSLT,这对我来说似乎相当复杂
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()" />
</xsl:copy>
</xsl:template>
<xsl:template match="//*[local-name()='Extract']">
// what do i do?
</xsl:template>
</xsl:stylesheet>