- 1、本文档共75页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第7讲 在XML文档中使用DTD PHP与MySQL5程序设计 教学课件
DTD实体声明 实际应用中有时候出现多个文档调用同样的内容,比如公司名称,版权信息等等。为了避免重复输入这些内容,我们可以声明一个实体来表示这些内容。 XML文档实质上是一个个实体组合 实体被声明后,就可在其它地方被引用 XML中实体分为通用实体和参数实体: 在XML文档中的实体是通用实体,它以开始,以;结束 在文档声明中引用的是参数实体,它以%开始,以;结束 也可以使用范围分类:分为内部实体和外部实体 实体声明示例 内部实体示例: !ENTITY 实体名 实体内容 外部实体示例: !ENTITY 实体名 SYSTEM 实体内容 参数实体示例: !ENTITY %实体名 实体内容 !ENTITY %实体名 SYSTEM 外部实体名 DTD实体声明 实体的分类: 解析实体:可以由XML解析器处理的实体,主要是由文本字符数据内容构成的实体。实质是使用较短的文本取代较长的文本的方法 未解析实体:不能被XML解析器所处理等实体,只是提供给其他的应用程序去处理。通常以某种二进制形式存在,如图片、声音、动画等。 注意: 解析实体在元素中引用 未解析实体只能在属性中,XML处理器必须知道如何处理这些未解析实体 DTD实体声明 内部实体的声明: 内部实体:!ENTITY 实体名 文本内容 文本内容在使用中要用双引号括起来,是一个可以解析的文本数据内容 举例: !ENTITY right “copyright 1999 XXXX.com(beijing),ltd,all right reserved.” 使用: bookright;/book 例:entity1.xml DTD实体声明 外部实体的声明: 外部实体:!ENTITY 实体名 SYSTEM 文件的路径 如果实体所代表的内容不仅仅是一串字符,而表示的是一个外部文件,且是文本字符数据时使用 举例:! ENTITY bookfile SYSTEM /bookfile.xml DTD实体声明 内部实体在XML文档内部定义,实体的内容在声明中给出。内部实体都是已分析的实体,它们没有单独的物理存储对象。 外部实体在单独的(外部)文件中定义,外部实体可以是已分析实体,也可以是未分析实体。外部一般实体的声明形式如下: !ENTITY copyright SYSTEM copyright.xml 关键字SYSTEM表明这是一个私有的外部一般实体,后面的URI称为该实体的系统标示符,用于给出外部文件的位置。 copyright.xml文件的内容为: ?xml version=1.0 encoding=gb2312? #169;2005 程序员之家,All Rights Reserved ?xml version=1.0 encoding=gb2312?称为文本声明。文本声明类似于XML声明,不过文本声明standalone属性,并且version属性也是可选的。外部已分析实体可以使用不同于UTF-8的编码,使用文本声明来指明实体内容的编码方式。 DTD实体声明 外部实体的声明: 外部实体:!ENTITY 实体名 SYSTEM 文件的路径 NDATA 二进制文件种类 如果实体所代表的内容是二进制文件时使用 DTD实体声明举例: 想在文档中包含一幅外部的图像,可以声明一个ENTITY类型的属性来引入图像:? !ATTLIST image src ENTITY #REQUIRED? 在DTD中,还需要声明一个外部的一般实体:? !ENTITY logo SYSTEM “/logo.gif” NDATA gif? 关键字NDATA表示该实体是一般未分析的实体,后面的gif是记号名称(notation name),说明实体的数据格式或指定一个外部的处理程序。记号gif的声明如下:? !NOTATION gif SYSTEM “iexplore.exe”在XML文档中,可以在src属性中引入图像:? image src=”logo”/这句代码将http://www. /logo.gif文件与image元素关联在一起。 DTD实体声明 参数实体的声明: 格式:!ENTITY %实体名 文本内容 参数实体只能出现在DTD文件中 举例: !ENTITY %HeadingAlign “left|center|right” !ELEMENT message(Content,Align)+ !ELEMENT Content(#PCDATA) !ELEMENT Align(%HeadingAlign;) 记法声明 记法声明是使用自定义的符号来描述非XML数据格式,以便于XML应用程序读出或显示这些数据。 记法声明的结构如下: !NOTATION name SYSTEM exte
文档评论(0)