今天老师主要讲了定义DTD内部结构的三种规则。
首先,我们来看DTD的语法格式。
一、 内部DTD
<!DOCTYPE 根元素名称 [
元素规则;
属性规则;
实体规则
]>
下面对三种规则的语法格式简要的说明一下。
1、 元素规则
<!ELEMENT 元素名称 类型>
类型:
EMPTY :表示为空
ANY:表示可以为任意。也可以为空
PCDATA:文本、CDATA、($/</>/’’/”” 不能使用)
CDATA:把内容当作字符来显示
当然在这过程中还有一些子元素列表 :
(子元素?):表示该子元素可以出现0到一次
(子元素+):表示该子元素可以出现1到无数次(一般可用于学校的记录信息应用)
(子元素*):表示子元素可以出现0到无数次
…….
2、 属性规则
这是今天新接触的一个新概念。
语法格式:
<!ATTLIST 元素名 属性名1 类型 默认值>
类型:
1)CDATA:表示值为字符,默认值表示未赋值时自动给定的值;
(en1|en2…..):枚举类型,表示只能从给定集合选择对应值;
2)ID :表示值为唯一ID;
3)IDREF:参照已存在(其他)ID;
4)IDREFS:值为一个或多个参照已存在(其他)ID;
多个参数中间用“空格”为分隔符,不能使用“逗号”;
3、 实体规则
指的是声明并引入不同的字符集或者特殊字符的快捷方式的变量。
语法格式:
<!ENTITY 实体名 “值”>
例如:<!ENTITY abc “aabcabcABC”>
二、外部:引入文件
<!DOCTYPE 根元素名称 SYSTEM/PUBLIC “路径”>
DTD文件分为内部文件和引入外部文件。上述主要讲的是内部文件的格式,其实外部文件的引入就是写入它的绝对路径即可