【发布时间】:2010-11-13 10:43:04
【问题描述】:
我一直发现针对模式的验证是对抗 thinkos 的无价之宝,我希望将验证检查作为项目的一部分,我经常需要手写几百行长度的 XML 文件。我的文本编辑器有一个相当不错的 CLI 集成功能,所以我正在寻找一个命令行验证器。
当我没有通过 Google 找到任何明确的赢家时,我在这里四处寻找并找到了一个 similar question,但那里建议的工具都不太适合我的需求:
- libxml(通过 cygwin)——不报告行号;我不知道哪里我的错误在哪里!
- msxml — 不能从命令行运行?
- xerces-c — 似乎需要 Visual C 的副本?
- xerces2-j — 不能从命令行运行?
- xmlstarlet — XSD 支持不足*
(*我验证的架构使用了替换组 - 不恰当,但它在项目外部,所以我无法更改它 - 这导致 xmlstarlet 即使在有效文件上也会阻塞。)
通常,这是解决问题的关键点“臭名昭著”。
所以我又回来寻找一个预先存在的工具。我的要求很简单:
- 在 Win32 上运行(特别是 Windows XP SP3)
- 命令行;我的编辑器可以使用标准输入/输出/-err、参数、临时文件等的任意组合。
- 相当完整的 XSD 支持(尤其是命名空间和替换组)
- 报告发生错误的行号!
这样的工具存在吗?我不想安装 Visual Studio 和朋友(太臃肿,IMO),但我已经安装了 Cygwin 和 Python。
【问题讨论】:
标签: windows xml validation command-line xsd