首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用XML DTD验证YAML

使用XML DTD验证YAML
EN

Stack Overflow用户
提问于 2011-09-15 20:06:03
回答 1查看 1.2K关注 0票数 3

我在系统上使用了大量遗留代码,这些代码要求来自其他部门、几乎没有技术经验的各种人员必须学习XML (以及一组相当复杂的DTD)来实现文档的数字化,然后将这些文档传递给一些专门使用XML的专门设备。

我想到了YAML或JSON (或者其他我根本没听说过的东西?)对于那些对标记语言一无所知的人来说,在人类的创作端可能要容易得多。有没有一个库可以根据大量的XML DTD来验证YAML (对于Visual Studio来说是理想的,这样我就可以避免使用像Ruby这样的更简单的东西所涉及的企业繁琐程序),或者YAML首先需要以某种方式完全转换成XML,然后/然后/验证?

我担心的是,工具的内部用户不知道如何处理验证错误,因为验证错误已经通过转换得到了进一步的消除。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-09-15 21:00:09

我不知道这样的工具是否存在,但即使它存在,它也可能不可能足够精确地向用户产生有意义的错误消息。即使在编写XML时,DTD或XSD通常也很难理解错误消息。

然而,编写这样的工具不会太难。这一切都是为了将YAML转换成可以由XSD中的规则验证的东西。这可以通过将YAML转换为XML,然后验证该XML来实现,但是也可以通过将XSD或DTD编译为C#,然后构建C#代码所期望的对象树来实现。

如果这样的工具保留了关于YAML的元数据(如行数和字符数),那么可能会向用户返回一些有意义的错误消息。如果首先将XSD或DTD转换为C#,情况可能尤其如此,因为在C#中,您对XML本身的依赖性较低,并且可以更容易地将验证扩展到适合YAML的内容。

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

https://stackoverflow.com/questions/7430508

复制
相关文章

相似问题

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