用于 XML 模式 (XSD) 比较的 FOSS(命令行)工具?

FOSS (command line) tools for XML Schema (XSD) comparison?

提问人:Phillip B Oldham 提问时间:3/25/2013 最后编辑:CommunityPhillip B Oldham 更新时间:3/30/2013 访问量:749

问:

除了这个问题之外,是否有任何免费/开源的 (*nix) 命令行工具可以比较和报告两个 XML 架构文档 (XSD) 之间的差异?

我特别在寻找可以引入编程工作流的东西,以报告我无法控制的 XSD 更新,但我必须遵守/验证。

命令行 XSD 比较

评论

0赞 Petru Gardea 3/30/2013
没有这样的工具——我假设你想要真实的东西,类似于我在这里描述的。如果您的兴趣如此之高(从赏金大小来看),我们可以解决有关免费部分的问题,假设 i) 我们确实满足了您的需求(您可以在 Windows 工作站上免费评估)和 ii) 它实际上可以在 Mono 上工作(这可能支持您的 *nix 风格),作为回报,您将不得不帮助测试,因为我们不支持 Mono......
0赞 Petru Gardea 3/30/2013
(续)我们所拥有的旨在支持持续集成的命令行界面,与您正在寻找的相同行,但仅在 Windows 上受支持。如果您有兴趣了解更多,请通过我网站上的支持地址给我发送电子邮件。
0赞 thoku 4/4/2013
Python 是一种选择,因为有例如 lxml generateDS pyxb
0赞 Phillip B Oldham 4/4/2013
@thoku是的,Python 是一种选择,但我还没有找到一个库可以对 XMLSchema 进行直接的 logic=logic 比较。我必须自己构建它,这不是我特别感兴趣的事情。

答:

-1赞 Mark Leighton Fisher 3/30/2013 #1

这个问题归结为“一个免费的XML差异程序”,因为XSD文件只是一种特定类型的XML文件。

一种便宜的解决方案是漂亮地打印 XSD 文件,然后在漂亮的固定 XSD 文件上使用标准的文本差异程序。这两项任务都有免费程序。

评论

1赞 Phillip B Oldham 4/1/2013
我不认为会。XSD 文件中有一些逻辑,可以使用略有不同的标记来表示。这意味着两个 XSD 在语法/语法上可能不同,但在逻辑上是相同的,因此简单的 XML 差异是不合适的。
0赞 Petru Gardea 4/2/2013
这可能就像在这里吹我自己的喇叭,但看看这个链接。如果有的话,只需查看 Tiny 模式版本,您肯定会看到@unpluggd讨论的内容的示例。有趣的是,帖子中引用的问题的公认答案指向一个完全按照你所说的去做的工具......
0赞 Wesley De Keirsmaeker 11/3/2023
注释、顺序,而不是设置默认值,...当它们在功能上无关紧要时,它们都会表现出差异。