创建自定义外部DTD时,您可以选择将其设为私有或公开。应该何时公布DTD? 在这种情况下,我正在为描述产品的xml文件创建一个DTD。 XML将由我们的客户创建,填充来自旧系统的数据 我们会将这些数据导入我们正在为他们构建的新系统中。
不同公司之间的这种交换是否需要公共DTD?有什么好处或缺点?
答案 0 :(得分:2)
我认为你在这里有一些误解。
您是否使用“公开”一词来引用DOCTYPE中的PUBLIC标识符,或者您是否正式使用它来表示“可用”?
将PUBLIC ID放入DOCTYPE意味着没有目录,任何程序或人员都无法找到实际的DTD内容。将SYSTEM ID放入DOCTYPE(如果该ID是URL)意味着人员和程序可以找到它。
如果验证解析器找到并使用DTD对您来说很重要,那么您必须将PUBLIC与目录使用结合起来,或者坚持使用SYSTEM和URL。
目前,W3C XML Schema比DTD更常用于此目的。