DTD - 概述
XML 文档类型声明,通常称为 DTD,是一种精确描述 XML 语言的方式。DTD 根据相应 XML 语言的语法规则检查 XML 文档的结构和词汇的有效性。
XML 文档可以定义为 −
格式良好 − 如果 XML 文档遵守所有一般 XML 规则,例如标签必须正确嵌套、开始和结束标签必须匹配以及空标签必须以 '/>' 结尾,则称其为 格式良好。
或
有效 −如果 XML 文档不仅格式正确,而且符合可用的 DTD,则该文档被视为有效,该 DTD 指定了它使用哪些标签、这些标签可以包含哪些属性以及哪些标签可以出现在其他标签内,以及其他属性。
下图表示 DTD 用于构造 XML 文档 −

类型
DTD 可以根据其在 XML 文档中的声明进行分类,例如 −
内部 DTD
外部 DTD
如果 DTD 在文件中声明,则称为内部 DTD,如果在单独的文件中声明,则称为外部DTD。
我们将在DTD 语法
一章中详细了解这些内容功能
以下是 DTD 描述的一些要点 −
可以在 XML 文档中出现的元素。
它们出现的顺序。
可选和强制元素。
元素属性以及它们是可选的还是强制的。
属性是否可以具有默认值。
使用 DTD 的优势
文档 −您可以为 XML 文件定义自己的格式。查看此文档,用户/开发人员可以了解数据的结构。
验证 − 它提供了一种检查 XML 文件有效性的方法,方法是检查元素是否按正确顺序出现、必需元素和属性是否到位、元素和属性是否以错误的方式插入等。
使用 DTD 的缺点
它不支持命名空间。命名空间是一种将元素和属性名称分配给组的机制。但是,在 DTD 中,必须在 DTD 内定义命名空间,这违反了使用命名空间的目的。
它仅支持 文本字符串数据类型。
它不是面向对象的。因此,继承的概念不能应用于 DTD。
表达元素基数的可能性有限。