假如DTD被包含在XML源文件中,它应当通过下面的语法包装在一个 !DOCTYPE 声明中:
<!DOCTYPE 根标签 [标签声明]>
注意:标签和元素基本上相等
当引用的DTD文件在本地时:
<!DOCTYPE 根标签 SYSTEM "这里填文件名称,包含后缀dtd">
当引用的DTD文件在网络上时:
<!DOCTYPE 根标签 PUBLIC "这里填文件名称,包含后缀dtd" "这里填URL(通俗点就是网址)">
DTD一般用于定义标签,属性和实体
定义标签:
语法:<!ELEMENT 标签名称 使用规则>
使用规则:
#PCDATA 标签的主体内容只是普通的文本
EMPTY 标签的主体内容为空
ANY 标签的主体内容为任意类型
(子元素) 指示包含的子标签
补充:
子元素之间的关系用逗号隔开表示出现的先后顺序
用|表示任选其一
?(0次或1次)+(至少出现1次)*(可有可无)
注意:默认子标签出现一次
定义属性:
语法:<!ATTLIST 标签名称 属性名称1 属性值类型 设置说明1........属性名称n 属性值类型 设置说明n>
属性值类型:
CDATA 表示属性的取值为普通的文本字符串
(a|b|c) 表示只能在abc中选择其一
ID表示取值不能重复
设置说明:
#REQUIRED表示这个属性必须出现
#IMPLIED表示该属性可有可无
#FIXED表示该属性为固定值
定义实体引用:
<!ENTITY 实体名称 "实体内容">
xml中引用:&实体名称