DTD
dtd基本认识
- 基本概念:document type definition–文档类型定义
- 该文件一般和xml文件配合使用
- 主要是用来约束xml(不是你想写什么就写什么)
- 除了dtd技术之外,还有一个schema技术也用于约束xml书写规范
基本语法:<!ELEMENT 元素名 类型>
引入:!DOCTYPE 根元素 SYSTEM(当前系统) "文件名"
我们发现引入了DTD
文件,好像没有作用,因为我们是需要自己写编程html
文件来校验XML
和DTD
是否配套.
DTD细节
DTD分类
- 内部DTD——
<!DOCTYPE 根元素[定义内容]>
- 外部DTD——
<!DOCTYPE 根元素 SYSTEM "DTD 文件路径"
- 一般用外部的多
在xml中引入dtd有两种方式
- 引入本地的dtd——
!DOCTYPE 根元素 SYSTEM
- 引入公共的dtd—-
!DOCTYPE PUBLIC url
DTD元素语法
<!ELEMENT 元素名称 EMPTY>----不能包含子元素和文本
<!ELEMENT 元素名称 ANY>--可以嵌套子元素,但是要在DTD定义过的,文本内容可以随意放
<!ELEMENT 元素名称 #PCDATA>--可以包含任意字符,但是不能嵌套子元素
DTD属性的语法
基本语法:<!ATTLIST 元素名 属性名 类型 特点 ...>
类型:
- CDATA —可以放文本
- ID——-表示属性的值是唯一的,不能以数字打头
- IDREF/IDREFS—-(IDREF)引用另外的一个id,(IDREFS)如果希望引入多个,用空格隔开
- Enumerated——事先定义好一些值,属性值必须在所列值的范围
ENTITY/ENTITIES
- 为一段内容创建一个别名,以后XML文档中就可以使用别名引用这段内容了
有两种类型:
- 引用实体
<!ENTITY 名称 文本>
—最好定义在dtd最后,在xml中引用&名称;
- 参数实体
<!ENTITY %名称 内容
—引用:%名称;
属性特点:
- #REQUIRED —-必须有
- IMPLIED —可有可无
- FIXED “value” —如果有,则必须是”value”值
- default “value”–如果不指定,则默认值
如果您觉得这篇文章帮助到了您,可以给作者一点鼓励