【发布时间】:2010-10-12 10:41:10
【问题描述】:
我有一个包含元素和属性规范的简单 DTD 文件。我可以创建一个合适的 XML 文件(带有 DOM)来用 Java 解析这个 DTD 而没有外部 API 吗?
提前致谢
【问题讨论】:
我有一个包含元素和属性规范的简单 DTD 文件。我可以创建一个合适的 XML 文件(带有 DOM)来用 Java 解析这个 DTD 而没有外部 API 吗?
提前致谢
【问题讨论】:
我对您的问题的理解与 Eugene Morozov 不同。如果我是对的,请告诉我:您需要一个将 DTD 作为输入并自动 生成根据此 DTD 有效的 XML 文件的程序。描述正确吗?
如果是这样,那当然是有可能的,其他“结构语言”也存在这样的程序(参见 abnfgen 了解 BNF 语法;在 XML 世界中,例如 XMLSpy 似乎可以打开 W3C Schema 文件 - XSD文件 - 并生成一个示例有效 XML),但我不知道 DTD/XML,你必须自己编写。
请注意,根据给定的 DTD,存在 无限 的有效 XML 文件。您的程序只会生成一个小子集(但它可能足以满足您的目的:它到底是什么?)
【讨论】:
有些误会。您不能使用 DOM 或 SAX 解析 DTD。 DTD 描述文档结构。您可以使用各种工具根据 DTD 验证生成的文档。
只需阅读并理解 DTD 并相应地生成 XML 文档。您可以稍后检查文档是否符合 DTD。
编辑:您不必为解析 DTD 编写代码。首先,您应该阅读有关 DTD 的内容。以Wikipedia description开头,最后有更多链接。
然后手动阅读 DTD 并了解所需的文档结构。然后只需生成符合 DTD 的 XML。
【讨论】: