📜  DTD-概述(1)

📅  最后修改于: 2023-12-03 15:00:33.232000             🧑  作者: Mango

DTD-概述

DTD(Document Type Definition,文档类型定义)是一种定义 XML 或 HTML 等文档的结构的语法规则。

DTD 的作用

DTD 可以用来限制 XML 文档中的元素和属性。它可以指定哪些元素和属性可以用于文档,以及它们之间的关系。

DTD 的语法格式

DTD 的基本语法格式如下:

<!DOCTYPE 根元素名称 [
    <!ELEMENT 元素名称 元素内容>
    <!ATTLIST 元素名称 属性名称 属性类型 属性默认值>
]>

其中,<!DOCTYPE> 用于定义文档类型,<!ELEMENT> 用于定义元素,<!ATTLIST> 用于定义元素的属性。

下面是一个具体例子:

<!DOCTYPE note [
    <!ELEMENT note (to,from,subject,body)>
    <!ELEMENT to (#PCDATA)>
    <!ELEMENT from (#PCDATA)>
    <!ELEMENT subject (#PCDATA)>
    <!ELEMENT body (#PCDATA)>
]>
DTD 的元素类型

在 DTD 中,有以下几种元素类型:

  • EMPTY:空元素,没有内容。
  • ANY:任意元素,可以包含任意类型的内容。
  • #PCDATA:包含字符数据的元素。
  • (元素类型):表示元素内容为另一个元素类型。
DTD 的属性类型

在 DTD 中,有以下几种属性类型:

  • CDATA:表示属性值是字符数据。
  • ID:表示属性值是唯一标识符,且不能重复。
  • IDREF:表示属性值是唯一标识符的引用。
  • IDREFS:表示属性值是多个唯一标识符的引用。
  • NMTOKEN:表示属性值是不包含空格和其他特殊字符的名称。
  • NMTOKENS:表示属性值是多个不包含空格和其他特殊字符的名称。
总结

通过 DTD 的定义,我们可以限制 XML 文档的结构,从而保证文档的正确性和规范性。在实际开发中,我们可以根据实际情况灵活使用 DTD。