首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >RelaxNG与XML

RelaxNG与XML
EN

Stack Overflow用户
提问于 2011-02-15 00:57:51
回答 5查看 9.3K关注 0票数 24

我有一个项目,我使用RelaxNG (jing)来验证xml。我喜欢RelaxNG的语法,但是我拥有的大多数工具都可以处理XML schema (实际上,除了jing之外,我不认为我有其他工具可以这样做)。在大多数支持似乎都围绕着XML schema的时候,我使用RelaxNG是不是犯了一个设计和未来支持的错误?我是不是应该坚持使用RelaxNG,然后让其他所有人都学习它(如果有必要,可以大喊大叫,j/k)?我是否应该因为工具支持而切换到xml模式?

谢谢。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2011-02-15 01:05:04

答案有点老生常谈:视情况而定。

你可能会问,是什么原因?在您的用户可能会使用的工具上。如果你依赖你的用户,如果缺乏好的工具会把他们赶走,你可能会失去他们。根据我的经验,由于XML模式被广泛使用,您可能需要重新考虑是否继续使用Relax NG。它比XML模式更好、更容易理解,但这并不意味着它会使您的项目成功。

如果你想冒险一点,那就使用Relax NG吧。在开发的每个步骤中,尝试使用Trang之类的工具将Relax NG转换为XML schema。以防有一天你觉得Relax NG不值得这样做,而且你知道你有一个合理的备份。

票数 17
EN

Stack Overflow用户

发布于 2011-02-19 07:18:13

编写略微有限风格的RELAX NG,然后使用Trang自动转换为XSD (我们从未接触或查看过它)对我们来说非常有效。

票数 6
EN

Stack Overflow用户

发布于 2011-02-15 04:03:14

我同意这一点,这完全取决于您需要使用模式来做什么。这里还有一点:如果你所需要的是验证,是的,只需要使用RelaxNG就可以了:它对这个目的很好。

但是,如果您计划执行数据绑定(如JAXB)或其他类型的代码生成任务,则XML Schema是(不幸的是...)更好的选择,因为它更多地设计为对象到xml的方法,而不是RelaxNG。相反,对于XML验证来说并不是那么好;特别是考虑到增加的复杂性。实际上,可以将XML Schema称为类型系统,而不是XML的模式。

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

https://stackoverflow.com/questions/4994875

复制
相关文章

相似问题

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