首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >XML Schema (XSD)验证工具?

XML Schema (XSD)验证工具?
EN

Stack Overflow用户
提问于 2008-09-24 01:19:54
回答 13查看 290.6K关注 0票数 271

在办公室,我们目前正在编写一个应用程序,该应用程序将根据给定的模式生成XML文件。我们将模式保存在一个.XSD文件中。

有没有工具或库可以用于自动化测试,以检查生成的XML是否与模式匹配?

我们更喜欢适合商业使用的免费工具,尽管我们不会捆绑模式检查器,因此它只需要在开发过程中由开发人员使用。

我们的开发语言是C++,尽管我不认为这有什么不同,因为我们可以生成xml文件,然后在测试中通过调用单独的程序进行验证。

EN

回答 13

Stack Overflow用户

回答已采纳

发布于 2008-09-24 19:41:22

经过一些研究,我认为最好的答案是Xerces,因为它实现了所有的XSD,是跨平台的,并且被广泛使用。我已经创建了一个small Java project on github,以便使用默认的JRE解析器从命令行进行验证。这可以在Windows/Mac/Linux上使用。

如果你更喜欢使用C++ version of Xerces,你也可以使用它。可以使用StdInParse utility从命令行调用它。另外,下面的评论者指向这个more complete wrapper utility

您还可以使用xmllint,它是libxml的一部分。您很可能已经安装了它。示例用法:

代码语言:javascript
复制
xmllint --noout --schema XSD_FILE XML_FILE

一个问题是libxml没有实现所有的规范,所以您可能会遇到问题:(

或者,如果你在Windows上,你可以使用msxml,但是你需要某种包装器来调用它,比如这个DDJ article中描述的GUI。然而,似乎大多数Windows用户都使用XML Editor,比如Notepad++ (如Nate's answer所述)或XML Notepad 2007 as suggested by SteveC (还有几个商业编辑器,我在这里不再赘述)。

最后,你会发现,不幸的是,不同的程序会产生不同的结果。这在很大程度上是由于XSD规范的复杂性。您可能希望使用几个工具来测试您的模式。

更新:我在blog post中对此进行了扩展。

票数 248
EN

Stack Overflow用户

发布于 2009-07-06 18:52:48

Notepad++有一个名为XML Tools的插件,它提供XML验证和对XSD的验证。

你可以看看如何使用它here

票数 114
EN

Stack Overflow用户

发布于 2010-10-12 21:19:30

在Windows上有免费的XML Notepad 2007。您可以选择XSD作为验证依据

更新:更好的是,在XML Tools插件中使用Notepad++

票数 17
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/124865

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档