XML实用教程 教学课件 ppt 作者 丁跃潮 叶文来 第3章_文档类型定义(DTD)

上传人:E**** 文档编号:89183021 上传时间:2019-05-20 格式:PPT 页数:26 大小:73KB
返回 下载 相关 举报
XML实用教程 教学课件 ppt 作者 丁跃潮 叶文来 第3章_文档类型定义(DTD)_第1页
第1页 / 共26页
XML实用教程 教学课件 ppt 作者 丁跃潮 叶文来 第3章_文档类型定义(DTD)_第2页
第2页 / 共26页
XML实用教程 教学课件 ppt 作者 丁跃潮 叶文来 第3章_文档类型定义(DTD)_第3页
第3页 / 共26页
XML实用教程 教学课件 ppt 作者 丁跃潮 叶文来 第3章_文档类型定义(DTD)_第4页
第4页 / 共26页
XML实用教程 教学课件 ppt 作者 丁跃潮 叶文来 第3章_文档类型定义(DTD)_第5页
第5页 / 共26页
点击查看更多>>
资源描述

《XML实用教程 教学课件 ppt 作者 丁跃潮 叶文来 第3章_文档类型定义(DTD)》由会员分享,可在线阅读,更多相关《XML实用教程 教学课件 ppt 作者 丁跃潮 叶文来 第3章_文档类型定义(DTD)(26页珍藏版)》请在金锄头文库上搜索。

1、2019/5/20,1,第3章 文档类型定义(DTD),了解DTD的作用 掌握DTD的语法规则 掌握DTD的使用方法 掌握用XMLSpy2005进行DTD的编辑 利用XMLSpy2005自动生成DTD,2019/5/20,2,3 文档类型定义(DTD),XML文档最主要的用途是被程序处理,然而开发XML文档的时候是自由,这可能会给程序处理带来一定的麻烦!比如说,对于“作者”这一属性,你可以定义成“author”,也可以定义成“作者”,此时程序变得不好处理,因此需要一定的规范。XML提供了一种机制文档类型定义(Document Type Definition,DTD),并将其作为规范来对XML文

2、挡的编写加以限制,并且大家都来遵守,这样程序处理起来就容易多了。,2019/5/20,3,3.1DTD的作用,DTD是一套关于标记的语法规则,它说明了在XML文档中可以使用哪些标记,哪些标记具有属性,以及所使用的标记出现的顺序是什么。 通过创建DTD,能够正式而精确地定义词汇表。所有词汇表规则都包含在DTD中。凡是没有在DTD中出现的规则都不属于词汇表的一部分,因此解析器可以利用DTD验证文档标记的有效性。使用DTD时只需在文档实例中写入一条简单的声明语句,解析器就能够获取DTD,并将其中的内容与文档实例进行比较。,2019/5/20,4,3.1DTD的作用,XML创作工具也可以通过类似的方式

3、使用DTD。一旦选择了DTD,创作工具就能够实施DTD中的规则,它根据DTD中说明的结构,仅允许用户在文档中添加DTD允许的元素或属性。,2019/5/20,5,3.2 DTD元素,3.2.1 DTD元素的定义 元素类型声明指出元素类型的名称以及该元素所允许拥有的内容。 元素类型的声明以”结束,其格式如下: ,2019/5/20,6,3.2 DTD元素,对元素声明应注意几点: (1)ELEMENT是关键字,必须大写 (2)元素名称可以是字母、数字,也可以使用标点符号,如:冒号(:)、下划线(_)、连字符(-)和句点(.)。然而,元素名称不能以数字开头。它的第一个字符只能是字母、下划线或冒号。

4、(3)元素内容可以分为元素内容可以分为以下四种类型:空、文本元素、复合及任意四种。空内容用关键字EMPTY来表示它既不包含文本,也不含子元素,文本元素内容用(#PCDATA)表示,任意内容用关键字ANY表示。,2019/5/20,7,3.2 DTD元素,几个DTD声明的例子: ,2019/5/20,8,3.2 DTD元素,3.2.2元素出现顺序和子元素 DTD中的元素声明提供了两个元素符”,”和”|” ,分别用来表示元素以何种方式出现。 (1)”,”用来表示在DTD声明中各个元素在XML出现的顺序,该顺序必须与与在DTD声明的顺利一样。如声明了如下的元素: 则在XML中,publish子元素出

5、现的顺序应为publisher, ISBN, pubdate,2019/5/20,9,3.2 DTD元素,(2)”|”用来表示子元素只能从声明中的几个选取其中一个。如声明了如下的元素: 则在实际使用中currency的子元素只能从dollar, pound, rmb中选择。,2019/5/20,10,3.2 DTD元素,在DTD中如果某个子元素出现的次数不是唯一的, 可用元组运算符进行设置, 具体归纳如下: +: 子元素最少出现一次 *: 子元素出现零次或多次 ?: 子元素出现零次或一次,2019/5/20,11,3.3 DTD属性,3.3.1 DTD属性语法 为了保持文档的合法性,需要在文档

6、的DTD中声明属性。标记用于声明属性,其形式如下: Name为与属性相关联的元素名。Attribute为属性名,Type为属性类型。最常用的属性类型为CDATA。最后,若未规定属性值,则属性值为DefaultDecl。,2019/5/20,12,3.3 DTD属性,例如,对于下列元素: 三国演义 在DTD中,可按如下格式声明该元素: ,2019/5/20,13,3.3 DTD属性,对XML标记来说,元素通常具有多个属性。例如,对于Date元素需要Year,Month和Day属性: 因此可以用几个属性声明来声明这些属性,一个属性声明对应一个属性。,2019/5/20,14,3.3 DTD属性,3

7、.3.2属性类型 属性类型是DTD属性声明的一个组成部分,它指定了可以给文档中的属性赋予的数值类型。,2019/5/20,15,3.3 DTD属性,2019/5/20,16,3.3 DTD属性,3.3.3 属性的默认形态 在XML的元素声明中,DTD除了给出几种属性类型,还给出了几种属性默认形态: (1)#REQUIRED:用来告诉XML解析程序,该元素必须有该属性的值,不可缺省的。 (2)#IMPLIED:表示如果该元素的实例中没有指定该元素的值的话,就忽略该属性。也就是声明的该属性可有可无。,2019/5/20,17,3.3 DTD属性,(3)#FIXED:表示包含该属性的元素实例具有固定

8、的值。比如一个属性名称为bookcategory CDATA #FIXED “文艺“,如果在实例中没有列出这个属性的话,解析器仍然认为有bookcategory这个属性,而且值为“文艺“。 (4)Default:表示为属性提供一个默认的值。比如一个属性名称为bookcategory CDATA “文艺“,如果在实例中没有包含这个属性的话,解析器会自动为相应的元素添加属性bookcategory的值为“文艺“。,2019/5/20,18,3. 4 DTD实体,在XML文档中,可以把各种不同类型的数据定义为实体,并把它们合并到XML中,使得只需要定义一次,就可以达到重复的使用的效果。,2019/5

9、/20,19,3. 4 DTD实体,3.4.1内部实体 在DTD中,内部实体的定义可以通过来实现,具体格式如下: 其中,name表示实体名称,它必须以字母或下划线开头,后面是0或多个字母、数字、句点(.)、连字符(-)或下划线。Value表示实体值,对于内部实体来说,实体值是一系列的字符串,要单引号或双引号来界定,但是不能包含与用来界定它的引号相同的引号符号。在引用实体的时用“”,2019/5/20,20,3. 4 DTD实体,外部实体指的是包含基本元素/文档实体的主文件以外的数据。引用外部实体,可以在从几个相互独立或不相关的文件中获取数据,从而足见XML文档。定义外部实体的格式如下所示: 其

10、中,name表示实体名,fileposition表示文件名及其位置,它用单引号或双引号来做定界符,并可以包含除和定界相同的引号的所有字符。文件位置也可以是URL。,2019/5/20,21,3. 4 DTD实体,对于参数型实体可使用下列方法进行声明: 其中name表示实体名,Value表示实体值,实体值是一系列的字符串,要单引号或双引号来界定,但是不能包含与用来界定它的引号相同的引号符号。在引用实体的时用“%实体名称;”,2019/5/20,22,3.5 使用DTD,3.5.1 内部DTD的使用 将所需的全部声明都包含在文档内,就是一个使用内部DTD的简单实例。 3.5.2 外部DTD的使用

11、对于结构相同的XML文档可以公用一个DTD 3.5.3 内外DTD结合的使用 相同的部分使用用外部DTD描述,而对于不同的,特别的部分则可以使用内部DTD。,2019/5/20,23,3.6实例,建立一个XML文档 根据此代码创建文档 添加DTD文档 查看最终效果,并检查文档的有效性,2019/5/20,24,3.6实例,建立一个XML文档 生成DTD文档 命名DTD文档 将DTD文档添加进XML文档 查看最终效果,并检查文档的有效性,2019/5/20,25,小结,文档类型定义(Document Type Definition,DTD)作为规范来对XML文挡的编写加以限制,并且大家都来遵守。 DTD中元素类型声明的格式为。 DTD中属性声明格式为。 实体是把各种不同类型的数据的定义,并把它们合并到XML中,实体可以达到重复的使用的效果。,2019/5/20,26,谢谢,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号