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