- 1、本文档共41页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第3章 DTD实例2005
第3章 DTD文档类型定义
学习重点:
开发符合XML 1.0的XML文档时,出现了这样一个有趣的问题:如何与其他人交流设计的XML文档?通过前面的学习,我们知道,只要不违反XML格式良好的要求,就可以在一个XML文档中自由地定义标记的名字,并且使用自己的习惯的方式来描述事物。这意味着用XML表达相同事物的信息时,不同的文档编写者完全可能写出含有不同标记名、采用不同结构的XML文档这对于数据的统一处理来说极为不利,因为在这种情况下实现信息共享非常困难。所以需要一种机制指定应该如何构造描述同一事物的文档,或者说需要一种检验编写的文档是否符合要求的机制DTD就是这样的机制之一。
在本课中,我们将学习如何将XML的标记用我们想要的格式展现出来。我们将会深入地去了解如何设计“文档格式定义”,说明它有哪些定义的方法,以及它在XML中的重要地位。
学习目标:
1.了解DTD:首先了解一些有关DTD的概述性问题,使我们在深入学习DTD之前有一个大体上的认识。
2.元素的设置:本节将会介绍DTD中的元素的设置以及如何将元素对应到XML文档体中的标记。
3.实体的声明:实体可以说是由文档中的内容所组成,每个实体都有其名称以及内容。实体是在标头区被声明,然后再被元素引用。只要经过DTD的声明后,实体就可以被文档使用,这一节我们会学习如何使用实体。
4.元素的属性:在标记中我们可以加入属性的信息,属性值是一个很重要的部分,这一节我们会学习DTD中属性值的声明以及设置。
5.检错与应用:DTD定义的编写相当烦琐,而标准中提供了如何查找DTD定义上错误的语法,这在设计DTD定义时相当好用,在这一节的最后,我们将学习内部声明、外部声明等应用时的用法。
第3章 DTD实例 1
3.1 背景知识 3
3.1.1 DTD简介 3
1.DTD定义 3
2.DTD的使用 4
3.1.2 制作XML有效性检验的工具 4
3.1.3 DTD声明 5
1. 内部DTD定义 5
2. 外部DTD定义 5
3.1.4XML元素的声明 7
1.什么是元素 7
2.元素的定义 8
⑴ 父元素 8
⑵ EMPTY 8
⑶ ANY 9
⑷ 文本数据类型 9
3.1.5 DTD运算符 12
1.元组运算符―――声明标记出现的次数 12
2.顺序运算符和选择分隔符号 13
3.组合使用运算符―――混合型元素 14
4.无穷嵌套的修正 15
3.1.6 DTD中元素的属性 16
1.什么是属性 16
2.在DTD中设置属性 16
3.属性值的类型 16
⑴ #REQUIRED 17
⑵ #IMPLIED 17
⑶ #FIXED 18
⑷ 默认值 19
4.默认属性 20
5.属性类型 21
⑴ CDATA 22
⑵ ENTITY 22
⑶ ENTITIES 23
⑷ NOTATION 23
⑸ Enumberated 24
⑹ NMTOKEN 25
⑺ NMTOKENS 26
⑻ ID 26
⑼ IDREF 27
⑽ IDREFS 28
3.1.7 实体的的声明 29
⑴ 内部实体的声明和使用 29
⑵ 外部实体的声明和使用 30
⑶ 参数实体的引用 34
3.1.8 检错与应用 35
1.IGNORE和INCLUDE 35
2.内部与外部DTD的应用 37
3.2 实例简介 错误!未定义书签。
3.3 分析准备 错误!未定义书签。
3.4 实现步骤 错误!未定义书签。
3.5 小结 39
补充习题 39
3.1 背景知识
作为X M L词汇表的设计者,你必须通过某种通用的方式说明词汇表的语法规则。为此, XML 1.0提供了一种机制—文档类型定义( D o c u m e n t Type Definition,DTD),并将其作为规范的一部分。DTD使用正式的语法定义X M L文档的结构和允许值。
DTD将带来以下优越性:
(1)首先,通过创建DTD,能够正式而精确地定义词汇表。所有词汇表规则都包含在DTD中。凡是未在DTD中出现的规则都不属于词汇表的一部分。许多解析器可以利用DTD验证文档实例的有效性。只要在文档实例中写入一条简单的声明语句,解析器就能够获取DTD,并将其中的内容与文档实例进行比较。
(2) X M L工具也可以通过类似的方式使用DTD。一旦选择了DTD,工具就能够实施DTD中的规则,它根据DTD中说明的结构,仅允许用户在文档中添加DTD允许的元素或属性。
(3)XML 1.0推荐标准专门描述了如何构建DTD,以及如何将它与根据其中规则编写的文档相关联。它还定义了解析器应该对DTD执行的处理。
如果文档配备了DTD,程序员就不必为了确认对词汇表的理解程度与词汇表的设计者进行面对面的交流。文档本身是用一种正式的(具有严格精确的格式)语法书写的,解析器就能够阅读这些规
文档评论(0)