xml-dtd 笔记.doc

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
一、编写DTD:通用原则 XML文档由元素和属性组成。元素内容可通过其它元素或XML基本类型定义。 DTD是文档要关联的,文档中应用包含一条用于与DID建立关联的指令。当XML解析器读取到该指令时,将获取DTD,并根据其中定义的规则对文档进行校验。 1、DOCTYPE标记: DOCTYPE声明用于将DTD与文档关联,应放在XML声明之后但在任何文档元素之前。中间可插入注释和其它指令。 格式: 外部声明:DOCTYPE 文档根元素 可选的外部标识符 外部标识符包括(指明外部DTD源的关键字和DTD文件位置) 两种指明外部DTD源的关键字: a-1、SYSTEM: 解析器将根据其后的URL来定位DTD文件的位置。 !DOCTYPE Catalog SYSTEM “http://myservers/decs/Pubcatalog.dtd” a-2、PUBLIC: 用来声明公共的,众所周知的DTD,如一些标准组织定义的。解析文档的应用程序可能会根据若干策略来定位DTD,如:从数据库中,或与应用程序相关的技术获得。或应用程序有本地的拷贝。 Eg: !DOCTYPE Catalog PUBLIC “universal/Publishing/Book” “/Publishing/Pubcatalog.dtd” 前面的URI为公共的URI,由处理文档的应用程序由某种策略获取DTD,若失败,从后面的URL获取DTD。 内部子集声明:DOCTYPE 文档根元素 可选的标记声明块 eg: !DOCTYPE catalog […internal subset declarations here…] 注:可同时混合使用内部DTD和外部DTD,但两都出重复的声明时,内部的声明替换外部的声明。 2、DTD关键字: ELEMENT 元素类型声明 ATTLIST 属性类型声明 ENTITY 实体声明,该声明内容可重用 NOTATION 不需要处理的外部内容的格式声明,以及处理外部内容的应用程序 2-1:实体:为避免将标记文本与实体名字混淆,引用实体时的格式为: 实体名字; 预定义实体: 对于一些不可打印字符,及用于XML标记的保留字符,XML提供了一些预定义的实体: lt; lt; amp; ‘ apos; “ quot; 通用实体:(不能包含对自身的引用) 最简单的实体形式,它能够声明与某个名字相关联的可解析的文本块 Eg: !ENTITY copyright “zqw , inc, 2009 ” 引用:copyright; 注----实体名字与定界符 ;间不能够有空格。 当然,通用实体也有外部形式:即将置换文本放在外部文件中。 !ENTITY pub SYSTEM “xmldemo5.xml” SYSTEM用于指示外部源,而后面的URL用于指示文件的位置。 限制:属性值中不能引用可解析的外部实体,避免实体的字符编码与主文件编码不同 参数实体: 仅在DTD中使用的解析实体称为参数实体,它能让我们简便地引用和修改DTD中的常用的结构,我们只须要维护一处代码。 !ENTITY % peopleParameters “age CDATA #IMPLIED ” 参数实体必须在引用之前声明,意味着不能在内部DTD中引用外部DTD中声明的参数实体,因为解析器先读取内部DTD 引用参数实体: 定界符---- % ;(不再是 ;) Eg: ATTLIST teacher %peopleParameters; sex CDATA #IMPLIED 注:在内部DTD中,参数实体的引用只能位于其它的声明之间 与通用实体类似,参数实体的替换文本也可位于外部文件中: ENTITY % myparam SYSTEM “/myparam.txt” 2-2:元素 XML的核心和灵魂,通过标记ELEMENT声明的。 名称限制:字母、数字、标点符号:冒号、下划线、连字符(-)和句点(.) 第一个字符只能是字母、冒号和下划线。 四种类型: 空元素:不包含子元素、文本、但是可以有属性。 元素内容:只包含子元素,不包含文本。 复合内容:由子元素和可解析文本(#PCDATA)或文本的组合。 Eg: !ELEMENT FruitBasket (cherry, (orange|apple)) 注:orange与apple只能出现一

文档评论(0)

PPT精品 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档