dtd
解析xml文檔的解析器叫parser。。 Xml的约束模式。定义了xml文文件中语序出现的元素名元素属性,元素中的内容类型以及元素之间的潜逃关系,还定义了xml文檔必须遵循的什么样的结构。 若xml是表,xml约束就是结构的定义 Xml约束模式内容也需要遵循语法规则,定义另一种预言的语言,源语言,, 他是模式文文件。写出的文文件是实例文文件。 Dtd :简单 schema:更多功能,更加灵活 遵守语法规则,符合xml约束,,有效的 Dtd: 早期的约束檔。文檔类型定义 .dtd 文件 用正则表达式 + 一或多,* 0或多 ?0 或1 。。。 <!ELEMENT BOOKSHOP (SHOP+)>
<!ELEMENT BOOK (NAME,AUTHOR,PRCICE)>,表示顺序出现
<!ELEMENT NAME (#PCDATA)>
<!ELEMENT AUTHOR (#PCDATA)>
<!ELEMENT PRCICE (#PCDATA)>
Dtd文 檔必须是使用 utf-8 或者是unicode
Xml文檔中引入外部的dtd文件,也可以直接嵌入did定义语句。
用DOCTYPE 来声明他遵循的dtd文件,DOCTYPE文件紧跟在xml文件声明的后面
(1) <!DOCTYPE NAME SYTEM “URL”> 自己的dtd文件 xml文件的跟元素
(2) <!DOCTYPE NAME PUBLIC “DTDNAME”,”URL”> 公共的
内嵌,,
<!DOCTYPE NAME [
…..
]>
元素定义。
语法格式
<!ELEMENT 元素内容 使用规则>
使用规则:
#PCDATA PASERD CHARACTER DATA
(NAME,AUTHOR,PRICE) 子元素
(name,#pcdata)
Empty 为空
Any 任何的都可以
元素定义 –> 细节
每条元素定义语句的顺序是无关紧要的。
具有不同用途的元素不能使用相同的元素名
<!elemnet myfile (tiltle,author,email)> 顺序出现
<!element myfile (tiltle|author|email)> 只能出现一个
属性的定义
<!ATTLIT 元素名 (给哪个元素定义属性)
属性名 属性类型 设置说明>
<!ATTLIST 商品
类别 CDATA #REQUIRED //必须的
颜色 CDATA #IMPLIED //可有可无
号码 CDATA # fixed > //固定值
实体的定义
应用实体 在 dtd中定义 在xml文件中引用
<!ENTITY 变量 “值”>
饮用时 用 &变量;引用
还可以 用实体代表外部的xml文档。。
参数实体
在dtd中定义,在dtd中引用。
<!ENTITY %实体名 “实体内用”>
引用 %实体名