我可以用 Java 从 dtd 文件创建 XML 文档吗?

发布于 2024-07-14 09:27:15 字数 106 浏览 7 评论 0原文

我有一个简单的 DTD 文件,其中包含元素和属性规范。 我可以创建一个合适的 XML 文件(带有 DOM),用 Java 解析这个 DTD 而无需外部 API 吗?

提前致谢

I have a simple DTD file with elements and attributes specifications. Can i create a suitable XML file (with DOM) parsing this DTD with Java and no external APIs?

Thanks in advance

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

信愁 2024-07-21 09:27:15

我对你的问题的理解与尤金·莫罗佐夫不同。 告诉我我是否正确:您想要一个程序,该程序将 DTD 作为输入并自动生成根据此 DTD 有效的 XML 文件。 这是正确的描述吗?

如果是这样,那么当然有可能,其他“结构语言”也存在这样的程序(请参阅 abnfgen BNF 语法;在 XML 世界中,XMLSpy 似乎可以打开一个 W3C 架构文件(XSD 文件)并生成一个有效的 XML 示例),但我不知道 DTD/XML,您必须这样做你自己写吧。

请注意,根据给定的 DTD,有效的 XML 文件有无限。 您的程序只会生成一个小子集(但它可能足以满足您的目的:无论如何,它是什么?)

I understand your question differently from Eugene Morozov. Tell me if I'm right: you want a program which takes as input a DTD and automatically generates XML file(s) whch are valid according to this DTD. Is it a correct description?

If so, it is certainly possible, such programs exist for other "structure languages" (see abnfgen for BNF grammars; in the XML world, it seems that XMLSpy, for instance, can open a W3C Schema file - XSD file - and generates a sample valid XML) but I don't know one for DTD/XML, you'll have to write it yourself.

Just be aware that there is an infinity of valid XML files according to a given DTD. Your program will just generate a small subset (but it may be sufficient for your purpose: what is it, anyway?)

烟花肆意 2024-07-21 09:27:15

有一些误会。 您无法使用 DOM 或 SAX 解析 DTD。 DTD 描述文档结构。 您可以使用各种工具根据 DTD 验证生成的文档。

只需阅读并理解 DTD 并相应地生成 XML 文档即可。 您可以稍后检查文档是否符合 DTD。

编辑:您不必编写解析 DTD 的代码。 首先,您应该阅读 DTD。 从维基百科描述开始,最后有更多链接。

然后手动阅读DTD并了解所需的文档结构。 然后生成符合 DTD 的 XML。

There's some misunderstanding. You can't parse DTD using DOM or SAX. DTD describes document structure. You can validate generated document against DTD using various tools.

Just read and understand the DTD and generate XML document accordingly. You can later check if the document conforms to DTD.

EDIT: You don't have to write code for parsing DTD. First, you should read about DTD. Start with Wikipedia description, there're more links at the end.

Then read DTD manually and understand required document structure. Then just generate XML that will conform to the DTD.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文