- 3
- 0
- 约4.58千字
- 约 37页
- 2016-09-26 发布于江苏
- 举报
DTD定义与合法性 第4章 本章主要内容 文档类型定义(DTD) 文档类型声明 DTD的合法性 元素清单 元素声明 DTD中的说明 可在文档间共享的通用DTD 文档类型定义 DTD代表文档类型定义。一项文档类型定义应规定元素清单、属性、标记、文档中的实体及其相互关系。 DTD可以包括在它描述文档的文件中,或者与外部的URL相链接。这些外部DTD可以被不同文档和网站所共享。 文档类型定义 (续) DTD有助于不同的人们和程序互相阅读文件。 DTD可以在没有实际数据的情况下展现出页面上的不同元素是如何安排的。 用DTD还可以做更多的事。 文档类型声明 文档类型声明指定了文档使用的DTD。 文档类型声明出现在文档的序言部分,处在XML声明之后和基本元素之前,它可能包括文档类型定义或是标识文档类型定义所在文档的URL。 在有些情况下文档类型定义有内外两个子集,则文档类型声明可能同时包括以上两种情况。 文档类型声明(续) 带DTD的hello.xml 清单4-1 list\4-1.doc 文档类型声明(续) 带有DTD和样式单的Hello.xml 清单4-2 list\4-2.doc 根据DTD的合法性检验 合法文档必须符合DTD指定的约束条件。而且,它的基本元素必须是在文档类型声明中指明的。 清单4-3:不符合DTD规则的不合法的Hello XML list\4-3.doc 合法文档不允许使用任意的标记。使用的任何标记都要在DTD内声明。而且,必须以DTD允许的方式使用。 不是所有的文档都必须合法,也不是所有的语法分析程序都检查文档的合法性。事实上,多数Web浏览器都不检查文档的合法性。 根据DTD的合法性检验(续) 进行合法性检查的语法分析程序读取DTD并检查文档是否合乎DTD指定的规则。如果是正确的,则分析程序将数据传送到XML解析程序(如Web浏览器和数据库)。如果分析程序发现错误,它将报告出错。 在Web上可找到几十种不同的进行合法性检查的语法分析程序,其中多数是免费的。 根据DTD的合法性检验(续) RichardTobin的基于RXP的以Web为宿主的XML结构完整性和合法性检查程序 根据DTD的合法性检验(续) 检查清单4-3显示出的错误结果 根据DTD的合法性检验(续) 布朗大学提供的程序装载清单4-3 根据DTD的合法性检验(续) 布朗大学提供的程序装载清单4-3的检查结果 列出元素 要为一个文档创建适当的DTD,第一步是了解用DTD中定义的元素编码的信息结构。 所编写的DTD要为每个元素作元素声明。每一元素声明列出元素名和它的子元素。 列出元素(续) 清单4-4:需要编写DTD结构完整的XML文档 list\4-4.doc 表4-1:学生成绩统计中的元素 list\表4-1.doc 元素声明 ANY 元素声明(续) #PCDATA 清单4-5 list\4-5.doc 清单4-6 list\4-6.doc 清单4-7 list\4-7.doc 元素声明(续) 子元素列表 清单4-8:有两个KIND子元素的EDUCATION元素 list\4-8.doc 元素声明(续) 序列 用逗号隔开的一系列子元素称为一个序列 例如: 元素声明(续) 一个或多个子元素 在子元素清单的元素名后放一个加号(+)来说明有一个或多个子元素 例如: 元素声明(续) 零或多个子元素 在子元素清单中在元素名上附加一个星号(*) 例如: 元素声明(续) 零或一个子元素 在子元素列表后面附加一个问号(?) 例如: 元素声明(续) 完整的文档和DTD 清单4-9:一份合法的教育统计文档和DTD list\4-9.doc 清单4-10:另外一份符合教育DTD的合法的XML文档 list\4-10.doc 元素声明(续) 选择 在父元素声明中,可以使用管道符号——竖线(|)而不是逗号来分开子元素,以便指明文档作者需要输入一个或另一个子元素。 例如: 元素声明(续) 带括号的子元素 每一对括号把数个元素合为一个独立元素。括号内的元素可以作为独立元素嵌套在其他括号内。而且,还可以加上加号、逗号或问号作为后缀。你还可以将这些括号组合成更大的括号组合来构成复杂的结构。 例如: 元素声明(续) 混合内容 如果一个标记同时包含子元素和可析字符数据,那么该标记的内容就叫做混合内容。 例如: !ELEMENT SCHOOL (#PCDATA|SCHOOL_CITY|SCHOOL_NAME|STUDENT)* 带有可解析的字符数据的混合子元素会严重地限制文档的结构。 使用混合内容的最基本的理由是,当将老式的文本数据转换成X
您可能关注的文档
- QC0800002课程.ppt
- 《极限配合与测量技术基础》第二章课程.ppt
- 第11章气压传动课程.ppt
- 第四章切削力课程.ppt
- PCB基础知识简介课程.ppt
- 操作系统7课程.ppt
- 毕业论文-副本97051课程.ppt
- 存货成本培训06456课程.ppt
- Oracle数据仓库课程.ppt
- worldnatural课程.ppt
- 2025年全国演出经纪人员资格认定考试试卷带答案(研优卷).docx
- 2025年全国演出经纪人员资格认定考试试卷完整版.docx
- 2025年全国演出经纪人员资格认定考试试题库及完整答案.docx
- 2025年全国演出经纪人员资格认定考试试卷完美版.docx
- 2025年全国演出经纪人员资格认定考试试卷含答案(实用).docx
- 2025年全国演出经纪人员资格认定考试试卷及答案(各地真题).docx
- 2025年下半年内江市部分事业单位公开考试招聘工作人员(240人)备考题库附答案.docx
- 2025年全国演出经纪人员资格认定考试试卷及答案1套.docx
- 2025年下半年四川成都市郫都区面向社会引进公共类事业单位人员2人备考题库最新.docx
- 2025年下半年内江市部分事业单位公开考试招聘工作人员(240人)备考题库附答案.docx
最近下载
- 塔吊工作安全培训内容课件.pptx VIP
- 2024-2025学年天津市部分区七年级(上)期末历史试卷(含答案).docx
- 天津大学物理化学教学课件ppt合集.pptx
- 土豆种植时间和方法.doc VIP
- SMAR公司DT301密度计说明书.pdf
- 2、高鸿业宏观经济学教案.doc VIP
- 高杆灯取电照明装置.pdf VIP
- Unit 2 Expressing yourself Part B let's learn 教案 三年级英语下册 人教PEP版.docx VIP
- 【通用】马年猜猜乐PPT(猜成语)打印版【课件】.pptx
- PDCA循环-提高手术间无菌物品定位放置规范率PPT优秀案例.pptx
原创力文档

文档评论(0)