(精品)第2章 规范的XML.ppt

上传人:hwp****526 文档编号:84700953 上传时间:2023-04-07 格式:PPT 页数:32 大小:282.50KB
返回 下载 相关 举报
(精品)第2章 规范的XML.ppt_第1页
第1页 / 共32页
(精品)第2章 规范的XML.ppt_第2页
第2页 / 共32页
点击查看更多>>
资源描述

《(精品)第2章 规范的XML.ppt》由会员分享,可在线阅读,更多相关《(精品)第2章 规范的XML.ppt(32页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、1第第2章章 规范的规范的XML文件文件“格式良好格式良好”的的XML文档文档2学习要点与难点学习要点与难点l要点要点l理解结构良好的理解结构良好的XML文档概念文档概念l掌握掌握XML的基本语法,熟悉元素、属性、的基本语法,熟悉元素、属性、CDATA段的用法段的用法l理解理解XML名称空间名称空间l掌握建立简单正确的掌握建立简单正确的XML文档文档l难点难点l名称空间名称空间3XML文档结构文档结构lXML是元语言是元语言自定义标记的自由性自定义标记的自由性l一个格式规范的一个格式规范的XML文档会遵守文档会遵守W3C的的XML1.0推荐标准的语法要求。推荐标准的语法要求。4XML文档结构文

2、档结构张三丰张三丰2007年年3月月2日日脸盆脸盆20序言序言主体主体尾部尾部5规范的规范的XML文档文档6规范性规范性l一个规范的必须满足一个规范的必须满足W3C所指定的标准。一个所指定的标准。一个规范的规范的XML文件应当满足如下语法规则:文件应当满足如下语法规则:lXML文件用文件用“XML声明声明”开始开始lXML文件有且仅有一个根标记文件有且仅有一个根标记lXML文件的非根标记都必须封装在根标记中文件的非根标记都必须封装在根标记中l非空标记必须由非空标记必须由“开始标记开始标记”与与“结束标记结束标记”组成组成l空标记没有空标记没有“开始标记开始标记”和和“结束标记结束标记”lXML

3、文件的标记必须是树型结构文件的标记必须是树型结构7处理指令处理指令l处理指令目的是告诉处理指令目的是告诉XML解析器处理一些信息解析器处理一些信息或执行一定的动作或执行一定的动作l格式格式ll注意注意lXML(不分大小写)在(不分大小写)在XML标准中为保留字标准中为保留字8XML声明声明l规范的规范的XML文档第一行必须为文档第一行必须为XML声明声明l声明格式声明格式llversion是必须声明的属性,表示是必须声明的属性,表示XML文件使用的文件使用的版本类型,目前只能使用版本类型,目前只能使用1.0lencoding为可选项,规定为可选项,规定XML文件编码使用的字文件编码使用的字符集

4、,默认为符集,默认为UTF-8lStandalone为可选项,表示是否有外部实体引用,为可选项,表示是否有外部实体引用,默认取默认取no9XML标记标记-空标记空标记l所谓空标记就是不含有任何内容的标记。由于空标记所谓空标记就是不含有任何内容的标记。由于空标记不含有任何内容,所以空标记不需要开始标签和结束不含有任何内容,所以空标记不需要开始标签和结束标签,空标记以标签,空标记以“”标识结束,标识结束,根据空标记是否含有属性,空标记的语法格式分别为:根据空标记是否含有属性,空标记的语法格式分别为:ll l作用作用l空标记的名称主要用于抽象带有属性的数据,该数据本身并空标记的名称主要用于抽象带有属

5、性的数据,该数据本身并不需要用具体文本进行描述不需要用具体文本进行描述.l例如例如l10XML标记标记-非空标记非空标记l非空标记必须由非空标记必须由“开始标签开始标签”与与“结束标签结束标签”组成,组成,“开始标签开始标签”与与“结束标签结束标签”之间是该标记所标记的之间是该标记所标记的内容。内容。l语法格式语法格式l l非空标记的内容非空标记的内容 l文本数据文本数据l子标记子标记l作用作用:l非空标记包含的内容中既可以有文本数据也可以有子标记,非空标记包含的内容中既可以有文本数据也可以有子标记,当需要用当需要用“整体整体-部分部分”关系来描述数据时,就可以使用非关系来描述数据时,就可以使

6、用非空标记空标记 11标记名称标记名称l命名规范:命名规范:l不能以数字开头,必须是字母或下划线不能以数字开头,必须是字母或下划线l标记名称可以包含数字、中文、英文、标记名称可以包含数字、中文、英文、_、.、-等字等字符,不能包含空格符,不能包含空格l标记区分大小写标记区分大小写l非空标记应该对称的嵌套非空标记应该对称的嵌套l例如:例如:l李云龙李云龙l李云龙李云龙12非空标记内容非空标记内容张三丰张三丰2007年年3月月2日日脸盆脸盆 20 标记标记“顾客顾客”包含的文本数据:包含的文本数据:张三丰张三丰 标记标记“顾客顾客”包含的子标记包含的子标记“日期日期”的文本内容:的文本内容:200

7、72007年年3 3月月2 2日日 (1212个字符)个字符)“商品商品”的文本内容:的文本内容:脸盆脸盆 (1010个字符)个字符)“售价售价”的文本内容:的文本内容:2020(2 2个字符)个字符)13根标记根标记lXML文件必须有且仅有一个根标记,其它标记都必须文件必须有且仅有一个根标记,其它标记都必须封装在根标记中。封装在根标记中。XML文件的标记必须形成树型结构。文件的标记必须形成树型结构。张三张三 1998年年12月月28日日 14标记的子孙关系标记的子孙关系 l规范的规范的XML文件有且仅有一个根标记,其它标文件有且仅有一个根标记,其它标记都必须封装在根标记中,文件的标记必须是记

8、都必须封装在根标记中,文件的标记必须是树形结构,这样一来,标记之间就形成了树形结构,这样一来,标记之间就形成了“子子孙孙”关系。关系。15特殊字符的使用特殊字符的使用实体引用实体引用特殊字符特殊字符意义意义<大于号大于号&&和或连接符和或连接符'单引号单引号"“双引号双引号16特殊字符的使用(示例)特殊字符的使用(示例)if(a<b)then max=b 17CDATA的格式的格式lXML解析时元素内容的文本也会被解析,解析时元素内容的文本也会被解析,CDATA标记中的内容被解析器当成纯文本解析,原封不标记中的内容被解析器当成纯文本解析,原封不动将这段代

9、码传给下一个动将这段代码传给下一个XML应用程序应用程序lHTML标记中的标记中的预定义格式标记,该预定义格式标记,该标记当中的内容将按原有格式显示,标记当中的内容将按原有格式显示,CDATA标记标记与此类似与此类似l语法语法l18CDATA段段男男20175cm60kg!CDATA这是一个这是一个CDATA段段 售货员售货员 19CDATA段段lfunction matchwo(a,b)if(a b&a 0)thenreturn 1elsereturn 0!CDATAfunction matchwo(a,b)if(a b&a 20XML属性属性l属性是一个属性是一个“名名-值值”对,即属性必

10、须由名字对,即属性必须由名字和值组成。属性必须在非空标记的开始标签或和值组成。属性必须在非空标记的开始标签或空标记中声明,用空标记中声明,用“=”为属性指定一个值。为属性指定一个值。l语法语法l非空标记非空标记l内容内容l空标记空标记linfomation21属性名字命名规则属性名字命名规则l命名规则和元素命名规则相似命名规则和元素命名规则相似l属性命区分大小写属性命区分大小写l属性值必须使用单引号或双引号属性值必须使用单引号或双引号l属性值使用特殊字符时,必须使用字符引用或属性值使用特殊字符时,必须使用字符引用或实体引用实体引用22属性转换属性转换l存储在子元素中的数据也可以存储在属性中存储

11、在子元素中的数据也可以存储在属性中l属性与子元素不同点:属性与子元素不同点:l属性不能包含多个重数值,子元素可以属性不能包含多个重数值,子元素可以l属性不易扩展属性不易扩展l属性不体现数据的结构,只是数据的附加信息,而属性不体现数据的结构,只是数据的附加信息,而 子元素体现数据的结构子元素体现数据的结构l属性难以被程序代码处理属性难以被程序代码处理l属性很难通过属性很难通过DTD进行测试进行测试男男20175cm60kg 售货员售货员 23属性选用规则属性选用规则l元素无需扩展元素无需扩展l需要存储的数据量不大需要存储的数据量不大l数据与元素关系密切数据与元素关系密切l与元素的关系是一一对应与

12、元素的关系是一一对应24注释规则注释规则lXML文件的注释和文件的注释和HTML文件相同,注释以文件相同,注释以“”结束,结束,XML解析器将解析器将忽略注释的内容,不对它们实施解析处理。忽略注释的内容,不对它们实施解析处理。l注意注意l注释不能出现在注释不能出现在XML声明之前声明之前l注释不能出现在标记中注释不能出现在标记中l注释不能出现连续两个连字符注释不能出现连续两个连字符l注释中包含元素,但元素中不能拜含注释中包含元素,但元素中不能拜含”-”,包含的包含的元素在解析时被忽略元素在解析时被忽略l注释不能嵌套注释不能嵌套 你好你好 25名称空间名称空间lXML文档允许自定义标记,如果不同

13、的文档允许自定义标记,如果不同的XML文文档以及同一档以及同一XML文档就可能名字相同但内容不文档就可能名字相同但内容不同的标记,那该如何处理呢?同的标记,那该如何处理呢?lXML名称空间是名称空间是XML元素解决多义性和名字冲元素解决多义性和名字冲突问题的方案。突问题的方案。lXML名称空间可用于区分同名的名称空间可用于区分同名的XML项,也可项,也可用于将相同类型或功能的用于将相同类型或功能的XML数据组合在一起。数据组合在一起。1987年生,二等奖学金年生,二等奖学金 1988年生,一等奖学金年生,一等奖学金26名称空间定义名称空间定义l命名空间由前缀和本地部分组成命名空间由前缀和本地部

14、分组成l语法语法xmlns:prefix=“URI”lxmlns 必须的属性必须的属性lprefix 命名空间别名,不能为命名空间别名,不能为xmllURI 用于标识抽象或物理资源的字符串用于标识抽象或物理资源的字符串l对对xml命名空间来说,命名空间来说,URI引用标识抽象资源。引用标识抽象资源。lURL 统一资源定位器统一资源定位器lURN 统一资源名称统一资源名称27名称空间的名字名称空间的名字l名称空间的目的是有效的区分名字相同的标记,那么名称空间的目的是有效的区分名字相同的标记,那么就有涉及到怎样区分名称空间的名字。就有涉及到怎样区分名称空间的名字。lW3C推荐使用统一资源标识符推荐

15、使用统一资源标识符URI(Uniform Resource Identifier)作为名称空间的名字。在实践)作为名称空间的名字。在实践中,大多数中,大多数URI实际上就用统一资源定位符实际上就用统一资源定位符URL(Uniform Resource Locator).l例如:例如:lhttp:/lc:documentmybookjavahello.txt 28名称空间定义名称空间定义l名称空间通过使用声明名称空间来建立,分为名称空间通过使用声明名称空间来建立,分为有前缀名称空间和无前缀名称空间有前缀名称空间和无前缀名称空间。l有前缀的名称空间的语法:有前缀的名称空间的语法:lxmlns:前缀

16、名称空间的名字前缀名称空间的名字l如:如:xmlns:person=“USTB.tj l无前缀的名称空间声明语法:无前缀的名称空间声明语法:l xmlns名称空间的名字名称空间的名字l 如:如:xmlns=“”29标记中声明名称空间标记中声明名称空间l名称空间的声明必须在标记的名称空间的声明必须在标记的“开始标记开始标记”里里面,而且名称空间的声明必须放在开始标记中面,而且名称空间的声明必须放在开始标记中标记名字的后面,标记名字的后面,l例如:例如:1986年出生。年出生。30名称空间作用域名称空间作用域l一个标记如果使用了名称空间声明,那么该名称空间一个标记如果使用了名称空间声明,那么该名称

17、空间的作用域是该标记及其所有的子孙标记。的作用域是该标记及其所有的子孙标记。l如果一个标记中声明的是有前缀的名称空间,那么该如果一个标记中声明的是有前缀的名称空间,那么该标记及其子孙标记如果准备隶属该名称空间,必须通标记及其子孙标记如果准备隶属该名称空间,必须通过名称空间的前缀引用这个名称空间,使得该标记隶过名称空间的前缀引用这个名称空间,使得该标记隶属于这个名称空间。属于这个名称空间。l如果一个标记中声明的是无前缀的名称空间,那么该如果一个标记中声明的是无前缀的名称空间,那么该标记及其子孙标记都默认地隶属于这个名称空间。标记及其子孙标记都默认地隶属于这个名称空间。l 尽管子标记可以通过名称空间的前缀来引用父标记声尽管子标记可以通过名称空间的前缀来引用父标记声明名称空间表明自己隶属该名称空间,但子标记也可明名称空间表明自己隶属该名称空间,但子标记也可以重新声明名称空间。以重新声明名称空间。31综合示例综合示例32综合示例综合示例

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

当前位置:首页 > 生活休闲 > 生活常识

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁