- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第4章 规范XML的DTD
补充题 对上述博物馆信息先分别设计,再合成一个完整的DTD、一个完整的XML,具体要求: 分别设计油画、雕塑、古币信息的 DTD文档 使用外部实体的方式设计系统的DTD文档 根据设计好的DTD文档,编写XML文档 生成完整的XML文档 用DTD验证XML文档的有效性 第4章 规范XML的DTD DTD的作用 DTD元素 DTD属性 DTD的引用 综合实例 4.1 认识DTD DTD文档是新的标记语言的法律性文档。 DTD定义了文档的逻辑结构,规定了文档中所使用的元素、实体、元素的属性、元素与实体之间的关系。 语法符合DTD的定义和规则的XML文档是一个合法的XML文档。 只有合法的XML文档才能被应用软件有效处理 4.1 认识DTD 4.1.1 DTD的作用 描述文档内容和结构,统一格式; 验证文档的合法性 ; 提高XML应用的开发效率和规范程度 保证数据交流和共享的顺利 4.1 认识DTD 4.1.2 DTD的基本结构 DTD 组成:若干条有关元素、属性、实体等约束和声明语句的集合 DTD分类 内部DTD:DTD包含在XML文档内部,被称为内部DTD 外部DTD :独立保存为一个文件.dtd,称为外部DTD,然后再将xml文件与该外部DTD文件关联 二者的差异主要在位置上。 4.1.2 DTD的基本结构 内部DTD:内部DTD的定义语句和XML文档在同一个文档中,且放在文档头部 定义格式: !DOCTYPE Root_Element_Name [ …… ] (说明:《XML的有效性》介绍了如何使用DTD) 内部DTD !DOCTYPE 客户名单 [ !- - Writen by Yangling -- !ELEMENT 客户名单 (客户) !ELEMENT 客户 (编号,客户地址,姓名,订单) !ELEMENT 编号 (#PCDATA) !ELEMENT 客户地址 (#PCDATA) !ELEMENT 姓名 (#PCDATA) !ELEMENT 订单 (#PCDATA) !ATTLIST 客户 种类 CDATA #REQUIRED ] 4.1 认识DTD 内部 DTD的基本结构 “!”为DTD定义的开始标记,“”为DTD定义的结束标记,DOCTYPE为关键字,必须大写。 “客户名单”为XML文档的根元素,规定一对中括号要放到根元素后面。 “!ELEMENT”为元素定义的开始标记,“”为元素定义的结束标记。这部分内容是DTD中最主要的内容。在XML中不管是树枝节点还是树叶节点,都需要进行元素定义。 “!ATTLIST”为元素的属性定义。有一些元素具有属性,属性是为了在应用程序对文档进行处理时,提供参数或者控制信息。元素所有的属性都必须在DTD中进行定义。 “!- - Writen by Yangling --”为注释。与文档本体一样,DTD中也可以含有注释。 4.1 认识DTD 外部DTD:独立存放在一个外部文件中 私有文件:未公开的、属于某组织或个人的私有DTD 格式:!DOCTYPE Root_Element_Name SYSTEM “URL” 公开文件:由国际标准化组织为某一领域所制定的公开的标准DTD 格式:!DOCTYPE Root_Element_Name PUBLIC “Public_DTD_Name” “Public_DTD_URL Public_DTD_Name:公开DTD文件的文件名 Public_DTD_URL:公开DTD文件的路径 4.2 DTD元素 元素的基本类型 简单型:具有文本数据。声明格式为 !ELEMENT Element_Name (#PCDATA) 复杂型:可包含其他元素。声明格式为 !ELEMENT Element_Name (OtherE1, …,OtherEn) 元素的声明 元素声明的格式: !ELEMENT Element_Name Element_defination 4.2 DTD元素 例如 复杂元素 !ELEMENT bookinfo (title,author,publish,price) 简单元素 !ELEMENT publisher(#PCDATA) 空元素 !ELEMENT hr EMPTY 不限定元素 !ELEMENT person ANY 选择性元素 !ELEMENT publish (publisher|ISBN|pubdate) 混合性元素 !ELEMENT publish (#PCDATA|publisher|ISBN,… 元素组 !ELEMENT bookinfo ((title,author,price)+
原创力文档


文档评论(0)