【XML】——DTD

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Sophia_0331/article/details/84778854

DTD的定义与用途

DTD是Document Type Definition的缩写

  • 定义XML文件的结构
  • 为XML文件提供语法与规则
  • 内容既可以定义在XML文件中,也可以定义在XML文件之外
  • 使用XML进行数据交换的行业或组织可定义自己的DTD
  • DTD对于XML是可选的内容

为了正确交换数据,XML文件需要确定的结构。

外部DTD

  • 每个XML文档单独定义的DTD可推广为一个系统内共享的公用DTD
  • 关键字SYSTEM用于引用一个作者或组织所编写的众多XML文档中通用的DTD
  • 另一种外部DTD,一个由权威机构制定的,提供给特定行业或公众使用的DTD。关键字是PUCBLIC。

XML文件构成

所有的XML文件,均由以模块构成:

  • 元素
  • 属性
  • 实体
  • PCDATA
  • CDATA

DTD——元素

  • 在DTD中,元素声明使用下面的语法:
<!ELEMENT 元素名称 类别>
或者
<!ELEMENT 元素名称(元素内容)>

栗子:

<!ELEMENT 书名(#PCDATA)>
<!ELEMENT 计算机书籍(书名,价格,简要介绍)>
  • 空元素通过关键词EMPTY进行声明:

<!ELEMENT 元素名称 EMPTY>

栗子:

DTD中:

<!ELEMENT br EMPTY>

XML中:

<br />
  • 表示带有任何内容的元素

<!ELEMENT 元素名称 ANY>

栗子:

DTD中:

<!ELEMENT student ANY>

XML中:

<student>刘伟</student>
或者
<student><name>刘伟</name></student>

(1)子元素要求顺序:

(2)子元素不要求顺序

(3)重复元素的栗子

(4)成组元素

属性

  • 在DTD中,属性通过ATTLIST来进行声明
  • 语法:
    <!ATTLIST 元素名称 属性名称 属性类型 默认值>

    栗子:

DTD文件中:

<!ATTLIST payment type CDATA "cash">

XML文件中:

<payment type="cash"/>
  • 属性的类型:

  • 属性的默认值:

DTD的结构

DTD中定义元素

DTD中定义元素的属性

猜你喜欢

转载自blog.csdn.net/Sophia_0331/article/details/84778854