版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、XML基础教程第2章 格式良好的XML文档第1页第第2章章 格式良好的格式良好的XML文档文档本章概述 本章的学习目标主要内容XML基础教程第2章 格式良好的XML文档第2页本章概述本章概述lXML文档使用了自描述的和简单的语法,熟悉文档使用了自描述的和简单的语法,熟悉HTML的读者会发现的读者会发现XML的语法和的语法和HTML非常相非常相似。本章重点介绍格式良好的似。本章重点介绍格式良好的XML文档的定义规文档的定义规则和语法,只有掌握了则和语法,只有掌握了XML文档的规则才能定义文档的规则才能定义出格式良好的出格式良好的XML文档,并为进一步学习文档,并为进一步学习XML的的深层知识打下
2、坚实的基础。深层知识打下坚实的基础。XML基础教程第2章 格式良好的XML文档第3页本章的学习目标本章的学习目标lXML文档的分类文档的分类lXML文档的结构文档的结构lXML声明的语法声明的语法lXML元素的语法元素的语法lXML对特殊字符的处理对特殊字符的处理lXML的命名空间的命名空间XML基础教程第2章 格式良好的XML文档第4页主要内容主要内容2.1 XML文档的分类文档的分类2.2XML文档的整体结构文档的整体结构2.3XML声明声明2.4XML文档的处理指令和注释文档的处理指令和注释2.5XML元素的基本规则元素的基本规则2.6实体引用和实体引用和CDATA段段2.7命名空间命名
3、空间2.8本章小结本章小结XML基础教程第2章 格式良好的XML文档第5页2.1 XML文档的分类文档的分类 按照对按照对XML文档规范的遵守程度,可将文档规范的遵守程度,可将XML文档文档分为分为3种类型:种类型:l格式不良好(格式不良好(malformed)的)的XML文档:完全没文档:完全没有遵守有遵守XML文档基本规则的文档基本规则的XML文档。文档。l格式良好(格式良好(well-formed)但无效的)但无效的XML文档。文档。l有效(有效(valid)的)的XML文档文档。XML基础教程第2章 格式良好的XML文档2.1.1 格式不良好的格式不良好的XML文档文档第6页标记语言的
4、发展历史标记语言的发展历史l这种这种XML文档完全没有遵守文档完全没有遵守XML文档规则,是最文档规则,是最差的差的XML文档,它甚至不是一份结构化的文档,文档,它甚至不是一份结构化的文档,因此不能正常转换为树状结构。因此不能正常转换为树状结构。XML基础教程第2章 格式良好的XML文档第7页2.1.2 格式良好的格式良好的XML文档文档 格式良好但无效的格式良好但无效的XML文档已经是一份结构化的文档已经是一份结构化的文档,因此可以将其转换为树状结构。如果为格文档,因此可以将其转换为树状结构。如果为格式良好但无效的式良好但无效的XML文档指定了文档指定了DTD或或Schema定义的语义约束,
5、而且该文档也遵守该语义约束,定义的语义约束,而且该文档也遵守该语义约束,那么这份文档就变成了有效的那么这份文档就变成了有效的XML文档。文档。XML基础教程第2章 格式良好的XML文档2.2 XML文档的整体结构文档的整体结构 XML文档由两部份组成:即文档序言和文文档由两部份组成:即文档序言和文档元素(或文档节点)。序言出现在档元素(或文档节点)。序言出现在XML文档的顶部,其中包含关于该文档的一些文档的顶部,其中包含关于该文档的一些信息,类似于信息,类似于HTML文档的文档的部分。部分。序言部分必须包含一个序言部分必须包含一个XML声明,还可以声明,还可以包含注释、处理指令或者包含注释、处
6、理指令或者DTD。格式良好。格式良好的的XML文档必须有一个文档元素,用来包文档必须有一个文档元素,用来包含可能有的其它内容,文档根元素可以包含可能有的其它内容,文档根元素可以包含多个嵌套的子元素。含多个嵌套的子元素。第8页XML基础教程第2章 格式良好的XML文档第9页XML文档的结构文档的结构XML基础教程第2章 格式良好的XML文档 格式良好的格式良好的XML文档,总的来说,应遵守文档,总的来说,应遵守以下原则:以下原则:lXML文档必须以一个文档必须以一个XML声明开始。声明开始。lXML文档有且只能有一个根元素。文档有且只能有一个根元素。l开始标记和结束标记必须成对出现。开始标记和结
7、束标记必须成对出现。l各元素之间正确的嵌套。各元素之间正确的嵌套。lXML标记都是大小写敏感的。标记都是大小写敏感的。l属性值必须使用引号属性值必须使用引号。第10页XML基础教程第2章 格式良好的XML文档第11页2.3 XML声明声明 XML文档的第一行通常是文档的第一行通常是XML声明,声明声明,声明以以“”结束。声明结束。声明中包含了中包含了XML文档的相关信息。上面文档文档的相关信息。上面文档的第一行就是的第一行就是XML声明:声明: XML基础教程第2章 格式良好的XML文档第12页2.3.1 XML声明中的声明中的version属性属性lXML声明中的属性声明中的属性“versi
8、on” 用于指出用于指出该该XML文件遵循哪个版本的文件遵循哪个版本的XML规范,一规范,一个个XML声明可以只包含版本属性。如果声声明可以只包含版本属性。如果声明中还包含其它属性,则必须将版本属性明中还包含其它属性,则必须将版本属性排在其它属性之前。目前,版本属性的值排在其它属性之前。目前,版本属性的值只可以取只可以取1.0,而,而XML的的1.1版本还没有正版本还没有正式公布式公布 。XML基础教程第2章 格式良好的XML文档第13页2.3.2 XML声明中的声明中的encoding属性属性 lencoding属性表示属性表示XML文件所使用的编码文件所使用的编码标准,该属性只可位于标准,
9、该属性只可位于version属性之后,属性之后,但可以省略,省略时表示采用默认的但可以省略,省略时表示采用默认的UTF-8编码方式。除此之外,常用的编码方式还编码方式。除此之外,常用的编码方式还有:简体中文的编码方式有:简体中文的编码方式 “GB2312”,繁,繁体中文的编码方式体中文的编码方式“BIG5”等。等。XML基础教程第2章 格式良好的XML文档第14页2.3.3 XML声明中的声明中的standalone属性属性lstandalone属性用来说明属性用来说明XML文件是否是文件是否是独立的,即是否与其他文件相关联,该属独立的,即是否与其他文件相关联,该属性可以为性可以为“yes”或
10、或“no”,默认值是,默认值是“no”。XML基础教程第2章 格式良好的XML文档第15页2.4 XML文档的处理指令和注释文档的处理指令和注释 XML的处理指令简称的处理指令简称PI,其用途是给处理,其用途是给处理XML文档的应用程序提供信息,告诉处理文档的应用程序提供信息,告诉处理程序该如何处理该文档。程序该如何处理该文档。XML处理指令的处理指令的格式如下:格式如下: 或或XML基础教程第2章 格式良好的XML文档lXML文档中可以使用注释(文档中可以使用注释(Comment)对)对语句进行某些提示或说明,以增加文档的语句进行某些提示或说明,以增加文档的可读性和清晰性。可读性和清晰性。X
11、ML解析器不会对注释解析器不会对注释做任何处理,注释中的内容在解析时会被做任何处理,注释中的内容在解析时会被忽略。忽略。第16页XML基础教程第2章 格式良好的XML文档 XML文档中的注释和文档中的注释和HTML文档中的完全一文档中的完全一样,样,XML中的注释要满足以下规则:中的注释要满足以下规则:l注释以注释以“”结束。结束。l注释不可以出现在注释不可以出现在XML声明之前。声明之前。l注释不能出现在标记中。注释不能出现在标记中。l注释中不能出现连续的两个连字符,即注释中不能出现连续的两个连字符,即“-”。l注释不能嵌套。注释不能嵌套。第17页XML基础教程第2章 格式良好的XML文档第
12、18页2.5 XML元素的基本规则元素的基本规则l元素是元素是XML文档的基本单元,文档的基本单元,XML文档就文档就是由一对对嵌套的元素所组成。整个是由一对对嵌套的元素所组成。整个XML文档从根元素开始,根元素包含若干子元文档从根元素开始,根元素包含若干子元素,而每个子元素又可以包含若干子元素素,而每个子元素又可以包含若干子元素,从而组织成庞大的,从而组织成庞大的XML文档。文档。XML基础教程第2章 格式良好的XML文档2.5.1 XML元素的命名规则元素的命名规则l与与HTML不同,不同,XML没有预置任何元素,没有预置任何元素,XML允许开发者自己定义元素。在允许开发者自己定义元素。在
13、XML中中,基本没有什么保留字,所以可以随心所,基本没有什么保留字,所以可以随心所欲地为元素命名欲地为元素命名。第19页XML基础教程第2章 格式良好的XML文档 XML元素的命名必须遵守以下原则:元素的命名必须遵守以下原则:l名字中可以包含字母、数字、下划线(名字中可以包含字母、数字、下划线(_)、中划线(、中划线(-)、冒号()、冒号(:)和点号()和点号(.)。)。l名字必须以字母或下划线(名字必须以字母或下划线(_)开始。)开始。l名字不能以名字不能以XML(或者或者xml,Xml,xMl等任等任意大小写组合意大小写组合)开始。开始。第20页XML基础教程第2章 格式良好的XML文档l
14、名字中不能包含空格。名字中不能包含空格。l名字中不能出现名字中不能出现XML保留的标识符,如保留的标识符,如“”等。等。l名字中尽可能不要使用冒号名字中尽可能不要使用冒号“:”,因为冒,因为冒号是为号是为“名字空间名字空间”(namespaces)预)预留的。留的。l尽量避免在名字中使用中划线尽量避免在名字中使用中划线“-” 和和 点点号号“.”,因为有的软件不能正确识别。,因为有的软件不能正确识别。第21页XML基础教程第2章 格式良好的XML文档第22页2.5.2 根元素根元素 根元素具有以下特点:根元素具有以下特点:l每个每个XML文档必须有且只有一个根元素。文档必须有且只有一个根元素。
15、l根元素是一个完全包括文档中其他所有元根元素是一个完全包括文档中其他所有元素的元素。素的元素。l根元素的起始标记要放在所有其他元素的根元素的起始标记要放在所有其他元素的起始标记之前。起始标记之前。l根元素的结束标记要放在所有其他元素的根元素的结束标记要放在所有其他元素的结束标记之后。结束标记之后。XML基础教程第2章 格式良好的XML文档2.5.3 元素的构成元素的构成 一个一个XML元素由一个开始标记、一个结束元素由一个开始标记、一个结束标记,以及夹在这两个标记之间的数据内标记,以及夹在这两个标记之间的数据内容所组成。其基本形式如下:容所组成。其基本形式如下: 数据内容数据内容第23页XML
16、基础教程第2章 格式良好的XML文档 带有属性的带有属性的XML元素形式如下:元素形式如下: 数据内容数据内容第24页XML基础教程第2章 格式良好的XML文档2.5.4 元素的嵌套元素的嵌套l非空元素包含的内容中既可以有文本数据非空元素包含的内容中既可以有文本数据也可以有子元素。当需要用也可以有子元素。当需要用“整体整体部部分分”关系来描述数据时,就可以使用非空关系来描述数据时,就可以使用非空元素和子元素。但是当一个元素中包含子元素和子元素。但是当一个元素中包含子元素时,有一个非常重要的要求元素时,有一个非常重要的要求它们它们之间必须正确地嵌套。也就是说,如果一之间必须正确地嵌套。也就是说,
17、如果一个元素在另一个元素内部开始,那么也必个元素在另一个元素内部开始,那么也必须在同一个元素内部结束。须在同一个元素内部结束。第25页XML基础教程第2章 格式良好的XML文档 元素之间的嵌套规则总结如下:元素之间的嵌套规则总结如下:l父元素的起始标记必须在子元素的起始标父元素的起始标记必须在子元素的起始标记之前,父元素的结束标记必须在子元素记之前,父元素的结束标记必须在子元素的结束标记之后。元素间不可交叉嵌套。的结束标记之后。元素间不可交叉嵌套。l子元素与子元素间是兄弟关系。子元素与子元素间是兄弟关系。l两元素之间不能既是父子关系又是兄弟关两元素之间不能既是父子关系又是兄弟关系。系。第26页
18、XML基础教程第2章 格式良好的XML文档2.5.5 元素的属性元素的属性 XML中的属性也是由用户自己定义的,属中的属性也是由用户自己定义的,属性可以为性可以为XML元素提供更多的信息。元素提供更多的信息。第27页XML基础教程第2章 格式良好的XML文档 定义属性时应注意以下几点:定义属性时应注意以下几点:l属性的命名规则同元素命名。属性的命名规则同元素命名。l属性值必须用引号括起来。属性值必须用引号括起来。l属性只能包含在开始标记中。属性只能包含在开始标记中。l特定的属性名称在同一个元素中只能出现特定的属性名称在同一个元素中只能出现一次。一次。第28页XML基础教程第2章 格式良好的XM
19、L文档2.6 实体引用和实体引用和CDATA段段lXML有有5种字符属于特殊字符,包括:左尖种字符属于特殊字符,包括:左尖括号括号 “”、与符号、与符号“&” 、单引号、单引号“ ”和双引号和双引号“ ”。对。对于这些特殊字符,于这些特殊字符,XML有特殊用途。所以有特殊用途。所以按按W3C制定的规范,文本数据中不可以含制定的规范,文本数据中不可以含有这些特殊字符。有这些特殊字符。 l要想在文本数据中使用这些特殊字符,可要想在文本数据中使用这些特殊字符,可以通过实体引用的方法。以通过实体引用的方法。第29页XML基础教程第2章 格式良好的XML文档l如果文本内容中包含大量的如果文本内容
20、中包含大量的“”、“”、“&”、“”及及“”等特殊符号,需要等特殊符号,需要花费很大的力气进行转换,转换后的文本花费很大的力气进行转换,转换后的文本数据中就会出现很多实体引用,导致文本数据中就会出现很多实体引用,导致文本的可读性变差,怎样解决这个问题呢?在的可读性变差,怎样解决这个问题呢?在XML中,可以把这样的文本包含到中,可以把这样的文本包含到CDATA(Character Data)段中,包含在)段中,包含在CDATA段中的文本不会被段中的文本不会被XML解析器解析,直接解析器解析,直接提供给应用程序提供给应用程序。第30页XML基础教程第2章 格式良好的XML文档2.7 命名空
21、间命名空间l当两个标记的名字相同时,它们可以通过当两个标记的名字相同时,它们可以通过隶属不同的命名空间来相互区分。隶属不同的命名空间来相互区分。l由此可见,命名空间只是为由此可见,命名空间只是为XML元素指定元素指定一个范围而已。通过为一个范围而已。通过为XML元素和属性指元素和属性指定命名空间,可以更好地区分不同范围的定命名空间,可以更好地区分不同范围的元素和属性。元素和属性。第31页XML基础教程第2章 格式良好的XML文档2.7.1 有前缀和无前缀命名空间有前缀和无前缀命名空间l命名空间用来区分相同名称的标记命名空间用来区分相同名称的标记 ,XML的命名空间分为有前缀命名空间和无前缀的命名空间分为有前缀命名空间和无前缀命名空间。命名空间。l声明有前缀的命名空间的语法如下:声明有前缀的命名空间的语法如下: xmlns:前缀命名空间的名字前缀命名空间的名字l无前缀的命名空间的声明语法如下:无前缀的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年国网湖南省电力有限公司人员招聘笔试参考试题及答案详解
- 2026年沈阳盛京金控投资集团有限公司人员招聘参考题库及答案详解
- 2026年云南省城市建设投资集团有限公司人员招聘参考题库及答案详解
- 2026年珠海航空城发展集团有限公司人员招聘考试题库及答案详解
- 2026年重庆三峡融资担保集团股份有限公司人员招聘考试参考试题及答案详解
- 2026年无极县教师招聘笔试备考题库及答案解析
- 2027届四川省阿坝藏族羌族自治州中考十校联考最后数学试题(含答案解析)
- 2026年全椒县教师招聘笔试模拟试题及答案解析
- 2026年江苏省联合征信有限公司人员招聘考试备考题库及答案详解
- 2026年校招:苏宁易购笔试题及答案
- 2026年全国煤炭生产经营单位(安全生产管理人员)考试题库含答案
- 2026年《中国脑卒中防治和康复管理指南(2026版)》
- 2026新教材数学 2.1.1 第1课时 有理数加法法则
- 第5课 中国人民站起来了 第3课时 课件(内嵌视频)2026-2027学年道德与法治五年级上册统编版
- 2026年全媒体运营师理论考试题库(重点350题)
- 2026新版检验检测机构管理评审报告
- 机械原理 课件 第2章-常用机构
- 职业卫生技术服务机构质量管理体系手册
- SYT 5079-2025《石油天然气钻采设备 油井测试设备》
- 2026年新疆事实政治专升本考试真题及参考答案
- 2026-2030中国蒸汽眼罩行业深度调研及投资前景预测研究报告
评论
0/150
提交评论