【发布时间】:2011-01-04 13:22:00
【问题描述】:
如何使用 libxml2 进行 dtd 验证? 我正在使用阅读器 api 阅读我的 xml 文件。 我有一个外部 dtd 验证文件。 我如何执行验证本身? 我必须将其转换为 xsd 吗?
【问题讨论】:
-
您使用的是什么“宿主”语言?
如何使用 libxml2 进行 dtd 验证? 我正在使用阅读器 api 阅读我的 xml 文件。 我有一个外部 dtd 验证文件。 我如何执行验证本身? 我必须将其转换为 xsd 吗?
【问题讨论】:
使用xmlValidateDtd api,如FAQ,第11 点所述。
当提供--dtdvalid 时,xmllint 应用程序使用此函数。查看源文件,xmllint.c,parseAndPrintFile 函数。搜索xmlValidateDtd,现在只用过一次。
【讨论】:
如果您使用 python 作为编程语言,请尝试使用 lxml。这具有 libxml2 的内置实现,在 XML DTD 验证中非常简洁。并且提供了很多有助于调试dtd或xml文件的信息。
【讨论】: