Xml XSLT:copy在CDATA周围添加了额外的空格
我正在尝试处理特定于应用程序的xml文件。当我试图复制输出中的源xml时,我发现处理器在CDATA周围添加了空格和新行 你知道避免这种情况的方法吗?我想编辑一些值,但需要澄清这个问题 以下是源xml:Xml XSLT:copy在CDATA周围添加了额外的空格,xml,xslt,space,Xml,Xslt,Space,我正在尝试处理特定于应用程序的xml文件。当我试图复制输出中的源xml时,我发现处理器在CDATA周围添加了空格和新行 你知道避免这种情况的方法吗?我想编辑一些值,但需要澄清这个问题 以下是源xml: <?xml version="1.0" encoding="utf-8"?><Application> <name><![CDATA[Flow1]]></name> <versionInfo><![CDATA[5
<?xml version="1.0" encoding="utf-8"?><Application>
<name><![CDATA[Flow1]]></name>
<versionInfo><![CDATA[572573
572573
619888]]></versionInfo>
<configUser><![CDATA[USER1]]></configUser>
<protected>0</protected>
<productRevision>
<productNumber><![CDATA[CER]]></productNumber>
<revision><![CDATA[DER]]></revision>
</productRevision>
</Application>
0
以下是我使用的xsl文件:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:strip-space elements="/Application/name" />
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>
以下是输出:
<Application>
<name> <![CDATA[Flow1]]>
</name>
<versionInfo> <![CDATA[572573
572573
619888]]>
</versionInfo>
<configUser> <![CDATA[USER1]]>
</configUser>
<protected>0</protected>
<productRevision>
<productNumber> <![CDATA[CER]]>
</productNumber>
<revision> <![CDATA[DER]]>
</revision>
</productRevision>
</Application>
0
谢谢我无法重现您的问题。您正在使用哪个处理器?这看起来非常有问题。输出甚至不应该包含任何CDATA部分。你们都是对的,我正在测试oracle客户端附带的xsl.exe,似乎它不是正确的处理器。我在cygwin中使用了xsltproc,现在的行为与您提到的相同。我的错…我面临着同样的问题。这个问题会因为旧的xslt版本而发生吗?我无法重现您的问题。您正在使用哪个处理器?这看起来非常有问题。输出甚至不应该包含任何CDATA部分。你们都是对的,我正在测试oracle客户端附带的xsl.exe,似乎它不是正确的处理器。我在cygwin中使用了xsltproc,现在的行为与您提到的相同。我的错…我面临着同样的问题。这个问题会因为旧的xslt版本而发生吗?