是否有一些脚本语言可以比较两个包含数字数据的类似xml文件并生成delta xml?

时间:2015-01-23 05:56:47

标签: xml xpath scripting

是否有一种脚本语言支持比较两个包含数字数据的相同xml文件(例如两次连续测试运行之间的代码覆盖率xml)并生成差异的delta xml?

2 个答案:

答案 0 :(得分:0)

您可以使用许多,但是您需要考虑是否有可用于平台或开发语言的XML库来完成这项工作。

以下是一些需要考虑的问题:

答案 1 :(得分:0)

您可以使用DeltaXML Core命令行界面从脚本中调用此类比较。

在Core中,用于比较XML中的数值数据的一种流行方案是将XSLT过滤器添加到比较管道(使用XML描述),这适用于特定XPath位置的声明容差,例如

<xsl:template
   match="/weather/deltaxml:attributes/
   dxa:time[
   deltaxml:attribute-in-tolerance(. , xs:double('10.0'))]">
   <xsl:copy>
     <xsl:attribute name="deltaxml:ignore-changes" select="'true'"/>
     <xsl:copy-of select="@*"/>
     <xsl:apply-templates select="node()"/>
  </xsl:copy>
</xsl:template>

DeltaXML文档中的Numerical Tolerances示例更全面地描述了这一点。