DTD - 概述


XML文档类型声明,通常称为DTD,是一种精确描述XML语言的方法。DTD 根据相应 XML 语言的语法规则检查 XML 文档的结构和词汇的有效性。

XML 文档可以定义为 -

  • 格式良好- 如果 XML 文档遵守所有通用 XML 规则,例如标签必须正确嵌套、开始和结束标签必须平衡、空标签必须以“/>”结尾,则称为格式良好

    或者

  • 有效- 当 XML 文档不仅格式良好,而且还符合可用的 DTD,指定它使用哪些标签、这些标签可以包含哪些属性以及哪些标签可以出现在其他标签内等时,就被认为是有效的特性。

下图表示 DTD 用于构建 XML 文档 -

类型

DTD 可以根据 XML 文档中的声明基础进行分类,例如 -

  • 内部DTD

  • 外部DTD

当 DTD 在文件中声明时,称为“内部 DTD”;如果在单独的文件中声明,则称为“外部 DTD”

我们将在DTD 语法一章中了解更多相关信息

特征

以下是 DTD 描述的一些要点 -

  • 可以出现在 XML 文档中的元素。

  • 它们出现的顺序。

  • 可选和强制元素。

  • 元素属性以及它们是可选的还是强制的。

  • 属性是否可以有默认值。

使用 DTD 的优点

  • 文档- 您可以为 XML 文件定义自己的格式。查看此文档,用户/开发人员可以理解数据的结构。

  • 验证- 它提供了一种方法来检查 XML 文件的有效性,方法是检查元素是否以正确的顺序出现、强制元素和属性是否到位、元素和属性是否以错误的方式插入等等。

使用 DTD 的缺点

  • 它不支持命名空间。命名空间是一种将元素和属性名称分配给组的机制。然而,在 DTD 中,命名空间必须在 DTD 中定义,这违背了使用命名空间的目的。

  • 它仅支持文本字符串数据类型。

  • 它不是面向对象的。因此,继承的概念不能应用于 DTD。

  • 表达元素基数的可能性有限。