In XML 模式和 DTD 有什么区别? https://stackoverflow.com/questions/1544200/what-is-difference-between-xml-schema-and-dtd,两个回答者表示 DTD“已被弃用”。其中之一,用户 vtd-xml-author,指出
DTD 几乎已被弃用,因为它的用处有限 [...]
用户 Jesse Chisholm 发表评论
已弃用?不。[XDR 已弃用] 过时了吗?或许 [...]
In DTD到底是什么? https://stackoverflow.com/questions/9307571/what-is-dtd-exactly,用户AlexR对一个答案的评论如下:
请注意,DTD 已被弃用,取而代之的是更具声明性和更强大的 XSD。
在这种情况下,没有人会表示不同意见。
那么 DTD 是否已被弃用呢?这肯定是事实问题,而不是意见问题。据推测,W3C 或其他一些标准机构有权确定 DTD 是否实际上已被弃用。当然,在给定上下文(例如,特定软件系统)中使用 DTD 可能会被弃用,而 DTD 本身在该(或任何)上下文之外也不会被弃用。
DTD 尚未正式弃用,但现在有比 DTD 更好的选择来指定 XML 词汇和语法。
通俗地说,已弃用通常用来指不再鼓励的旧方法。从这个意义上说,人们可能会说 DTD 已被弃用。 XSD 比 DTD 更具表现力。 (RELAX NG 和 Schematron 也是更好的选择。)此外,在跨许多领域指定 XML 词汇和语法方面,XSD 的采用早已超过了 DTD。
然而从技术上来说,已弃用通常应用于责任方的正式行为用于其控制下的标准、API、库或其他工件。 W3C 从未声明 DTD 已弃用,因此说 DTD 已弃用在技术上是不正确的。
除了语义之外,对于您开始的任何新的 XML 词汇和语法工作,请选择 XSD(或 RELAX NG 或 Schematron)。目前 DTD 不一定是一个糟糕的选择,但不必被正式弃用。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)