[XML]学习笔记(二)——DTD的声明与实体

本文主要探讨了XML中DTD的声明,包括内部和外部DTD的区别,以及参数实体和一般实体的详细解释,重点介绍了内部参数实体、外部参数实体、内部一般实体和外部一般实体的应用。
摘要由CSDN通过智能技术生成

一、 文档类型声明:
a) 内部DTD的声明:
DTD定义语句与XML文档在同一文档,通常放在头部。格式如下:

<!DOCTYPE root_tag[
<!ELEMENT xxx (…)>
…
]>


注意在DOCTYPE后面跟的是根标记的名字。
b) 外部DTD的声明:
i.
<!DOCTYPE root_tag SYSTEM “*.dtd”>
<!ELEMENT xxx (…)>
…


ii. 参数SYSTEM表明该DTD文档是一份私有DTD;
参数PUBLIC表示该DTD文档是一份公有DTD,而且多了一个参数”LIST”,称为DTD的名字,用于标志一个DTD。一些应用程序处理DTD时会根据名字先到自己的DTD文档库中查找,当找不到时才到后一个参数指定的路径上去查找。
c) 外部DTD与内部DTD联合使用:
<!DOCTYPE root_tag SYSTEM “*.dtd” [
<!ELEMENT xxx (…)>
…
]>


当内部DTD和外部DTD在标记的定义和文档的结构定义方面发生冲突时,以内部DTD的定义为准。
二、 元素声明的语法:没有声明的就是禁止的
a) #PCDATDA型数据:标记的内容是可解析文本(不包含标记的文本),定义为#PCDATA型的标记是叶子标记,不能具有任何子标记或其他的不可解析性数据内容。
b) ANY:当很难确定一个标记的类型时可以先定义为ANY,但尽量少用(与XML文档的数据结构性相违背)。
c) +:一个或多个;
*:0个或多个;
?:0个或一个;
(tag1|tag2)+:tag1和tag2可以任意组合,只要有一个出现至少
  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值