xml-parsing - 免费桌面应用程序流 XML : DTD?

标签 xml-parsing metadata dtd freedesktop.org

我目前正在为 GUI 和非 GUI 应用程序编写元信息。

为此,我正在广泛学习the official metainfo documentation ,但它在很多地方都不太明确,温和地说(可选性、标签的多重性、排序……;事实上,文档正在使用 <tag/> 来定义实际包含内容 <tag>foobar</tag> 的标签和那些不包含内容的标签't,<tag prop="foobar"/>,类似)。

由于我计划遵循一种如果验证失败可能会被解析器拒绝的格式,因此我希望拥有解析器使用的 DTD。毕竟,这是 XML,而且我非常确定开发人员选择 XML 正是因为它带有模式规范语言。

但是,我找不到该架构。我尝试通过 appstream-generator 的源代码找到我的方法和appstream-cli ,但我没有成功。

最佳答案

IMSoP's hint我开始研究appstream source code 。结果是:

Appstream曾经拥有 XSD。他们删除了它,因为他们已经四年没有维护它了,而且它与文档不同步。

我不能赞扬这个决定,尽管我觉得这是可以理解的,因为维护模式需要时间,并且在单独的验证 CLI 工具中重复可解析模式的工作只会浪费时间。

关于xml-parsing - 免费桌面应用程序流 XML : DTD?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62727279/

相关文章:

sql-server - 列系统表(sys.columns、sys.all_columns 等)如何 self 描述?

xml - 我对 DTD 的理解正确吗?

xml - 免费的 DTD 到 XSD 转换实用程序?

xml - 使用 DTD 我可以指定元素出现的确切数量吗?

php - PHP 的最佳 XML 解析器

java - StAX 错误地读取事件读取器

xml - 如何使用Xquery和FLOWR来迭代并返回每个结果?

Python元素树——从元素中提取文本,剥离标签

dart - Dart Angular 2注解如何工作?

c - 对于 Eclipse CDT 项目,我需要从 Git 中遗漏什么