XML基本概念汇总课件_第1页
XML基本概念汇总课件_第2页
XML基本概念汇总课件_第3页
XML基本概念汇总课件_第4页
XML基本概念汇总课件_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第2章XML基本概念李慧芬lhfen@B5-105第2章XML基本概念李慧芬第2章XML基本概念2.1文档2.2元素2.3属性2.4实体第2章XML基本概念2.1文档2.1文档<?xmlversion="1.0"encoding="gb2312"?><!--这是一个xml文档--><persons><person><name>小张</name><teltype="office">1234567</tel></person><person><name>小王</name><teltype="home">5555555</tel></person></persons>2.1文档<?xmlversion="1.0"encoXML声明XML声明:说明这是一个XML文档,包含了XML文件的相关信息。格式:"<?xml"开头,以"?>"结束例:<?xmlversion="1.0"encoding="UFT-8"?>注意:应当在文件的第一行,在其前面不能有空白或其他的任何字符。“<”、“?”和“xml”之间以及“?”和“>”之间不要有空格。XML声明XML声明:说明这是一个XML文档,包含了XML文XML声明中的版本属性版本属性:version

目前,版本属性的值只可取1.0。 <?xmlversion="1.0"?>XML声明可以只包含版本属性。如果声明中还包含有其它属性,版本属性必须排在其它属性之前。XML声明中的版本属性版本属性:versionXML声明中的编码属性编码属性:encoding规定了该XML文件采用编码的字集,默认值是UTF-8。常用可选的字符集有:

GB2312或GBK:简体中文编码。

BIG5:繁体中文编码。

UTF-8:压缩Unicode编码XML声明中的编码属性编码属性:encodingXML声明中的编码属性如果XML文档使用中文标记或出现中文内容,XML声明应使用“GB2312”编码:<?xmlversion=”1.0”encoding=”gb2312”?><persons><person><name>小李</name><tel>1234567</tel></person></persons>XML声明中的编码属性如果XML文档使用中文标记或出现中文内XML声明中的编码属性如果XML文档使用中文标记或出现中文内容,XML声明应使用“GB2312”编码:<?xmlversion=”1.0”encoding=”UTF-8”?><persons><person><name>小李</name><tel>1234567</tel></person></persons>XML声明中的编码属性如果XML文档使用中文标记或出现中文内XML声明中的独立属性独立属性:

standalone说明XML文件是否是完全独立的,即是否与其他文件相关联。属性可以取值为“yes”或“no”,默认值是“no”。例:<?xmlversion=”1.0”standalone=”yes”?>XML声明中的独立属性独立属性:standalone2.1.1处理指令处理指令(ProcessingInstruction,PI)允许文档包含应用程序的指令语句,用来给处理XML文档的应用程序提供信息。格式:<?

处理指令名处理指令信息?><?xmlversion="1.0"?><?worddocument="test2.doc"?><test></test>2.1.1处理指令处理指令(ProcessingInst2.1.2文档类型说明XML文档类型说明(DocumentTypeDeclaration)是XML文档符合有效性的一个基本要求。<?xmlversion="1.0"?><!DOCTYPEbook[<!ELEMENTbook(name,price)><!ELEMENTname(#PCDATA)><!ELEMENTprice(#PCDATA)>]><book><name>XML</name><price>28.00</price></book>2.1.2文档类型说明XML文档类型说明(Documen2.1.3

注释添加注释,增强程序的可读性和可维护性。注释的格式:<!--注释内容-->例:

<?xmlversion=”1.0”?><!--只含有根标记的XML文件--><root></root>注意:

注释不能出现在XML声明之前。注释不能出现在标记中。注释中不能出现连续两个连字符,即“—”。注释不能嵌套。

结束标志前不能使用连字符“-”。2.1.3注释添加注释,增强程序的可读性和可维护性。例:2.1.4文档结构XML文档具有严格的格式,可以准确地转换成树状结构(TreeStructure)。<?xmlversion="1.0"encoding="gb2312"?><persons><persion><name>小张</name><sex>male</sex><birthday>1983.10.25</birthday></person><person><name>小王</name><sex>female</sex><birthday>2003.10.20</birthday></person></persons>personspersonname:小张sex:malebirthday:1983.10.25personname:小王sex:femalebirthday:2003.10.202.1.4文档结构XML文档具有严格的格式,可以准确地转换2.1.5良构性与有效性XML文档的基本规则:整个XML文档有且仅有一个根元素。每个元素都由开始标签和结束标签组成。Eg:<abc></abc>元素与元素之间合理嵌套。元素的属性必须有属性值,属性值用引号(单引号和双引号都可以)引起来。实体引用必须书写正确。各种指令必须正确地编写和放置在文档的正确位置。2.1.5良构性与有效性XML文档的基本规则:2.1.5良构性与有效性可将XML分为3种类型:格式不良好(malformed)的XML文档格式良好(well-formed)但无效的XML文档有效的(valid)XML文档:2.1.5良构性与有效性可将XML分为3种类型:格式不良好的XML文档完全没有遵守XML文档基本规则的XML文档:<!--一个简单的XML文件--><?xmlversion=”1.1”?><fruits> <fruit> <name>orange<price> </name>1.2</price></fruit><fruit><name>banana<price></name>1.8</price></fruit></Fruits>格式不良好的XML文档完全没有遵守XML文档基本规则的XML格式良好但无效的XML文档遵守了XML文档的基本规则;没有使用DTD或Shema定义语义约束,或使用了语义约束,但没有遵守所定义的语义约束的XML文档。<?xmlversion=”1.0”?><!--一个简单的XML文件--><fruits> <fruit> <name>orange</name> <price>1.2</price> </fruit> <fruit> <name>banana</name> <price>1.8</price> </fruit></fruits>格式良好但无效的XML文档遵守了XML文档的基本规则;<?x有效的XML文档遵守了XML文档那个基本规则;使用DTD或Schema定义语义约束,而且完全遵守了DTD或Schema定义的约束的XML文档。<?xmlversion=”1.0”?><!--一个简单的XML文件--><!--添加DTD约束--><!DOCTYPEfruits[ <!ELEMENTfruits(fruit)*> <!ELEMENTfruit(name,price)> <!ELEMENTname(#PCDATA)> <!ELEMENTprice(#PCDATA)>]><fruits> <fruit> <name>orange</name> <price>1.2</price> </fruit> <fruit> <name>banana</name> <price>1.8</price> </fruit></fruits>有效的XML文档遵守了XML文档那个基本规则;<?xmlv练习修改下面的XML文件中的错误:练习修改下面的XML文件中的错误:2.2元素XML元素:由开始标记、结束标记以及位于开始标记、结束标记之间的内容构成。<标记名>

内容</标记名>

元素内容:文本数据、子元素

例:

<name>

小王<sex>男</sex></name>2.2元素XML元素:由开始标记、结束标记以及位于开始标记标记名元素的标记名可以任意命名,但是必须符合下面的规则:标记名必须以字母或者下划线(_)开始,后继字符可以是一个或者多个数字、字母、句点(.)、连字符(-)和下划线(_)。标记名不能包含冒号(:),冒号被用于定义名称空间。标签名不能以字符xml(任意大小写字母组合XML、Xml)开始,(为将来版本的标准化而保留的)。如果XML文件采用GB2312等编码,标记的名称还可以包含汉字及其它多种语言中的文字。例:合法的标记名:<name>,<Name2>,<_name>,<user-name>,<>,<姓名>标记名元素的标记名可以任意命名,但是必须符合下面的规则:例:注意:XML文档严格区分大小写,因此开始标签和标签的标签名必须绝对相同,大小写也要完全一致。标签名不能包含<、>、,、$等符号。标签名不能包含空格。例:错误的标记名:<name$>,<<name>>,<2name>,<user:name>,<姓名>注意:XML文档严格区分大小写,因此开始标签和标签的标签名必嵌套子元素XML允许无限深度地嵌套子元素,只要保证元素之间合理嵌套即可。<Y-City><X-Street><C-Building> <B-Floor>

<A-House> Thenameofthishouse</A-House></B-Floor></C-Building><X-Street><Y-City><Y-City><X-Street><C-Building> <B-Floor>

<A-House> Thenameofthishouse</A-House></C-Building></B-Floor><X-Street><Y-City>嵌套子元素XML允许无限深度地嵌套子元素,只要保证元素之间合空元素空元素:不包含任何内容的元素。空元素不可以包括子元素;空元素没有元素内容。<标记名></标记名>

可简写成:<空标记名称/>

例: <book></book><book/>空元素空元素:不包含任何内容的元素。注意在IE中自动判断开始标记和结束标记之间是否有字符,如果没有字符或只有空格字符,自动变成空元素标记形式。例:空元素可以包括属性,且可包括多个属性:例:<bookname="xml"price="28.00"/><?xmlversion="1.0"?><root><book/><book></book><book></book></root>注意在IE中自动判断开始标记和结束标记之间是否有字符,如果没字符数据XML处理程序会处理开始标记和结束标记之间的任意字符:例:下面三个元素里包括不同的内容:若文本字符串中包含一些有特殊意义的字符,如"<","&"等,就会引起文档混乱:

<book>ComputerNetworks</book>

<book>ComputerNetworks</book><book>ComputerNetworks</book><?xmlversion="1.0"encoding="GBK"?><逻辑表达式><!--字符串内容中有特殊字符--><比较符>1+1<3</比较符></逻辑表达式>解决办法:使用实体引用:用另一个特殊标记来代替这些特殊符号使用CDATA标记:将整段文档定义成字符串字符数据XML处理程序会处理开始标记和结束标记之间的任意字符实体引用实体引用所代表的符号说明<<小于符号>>大于符号&&and符号''英文单引号""英文双引号<?xmlversion="1.0"encoding="GBK"?><逻辑表达式><!—下面用实体应用表示特殊字符--><比较符>1+1<3</比较符></逻辑表达式>注意:使用实体引用的格式相当固定:总是以“&”开始,以“;”结束,不要忘记实体引用后面的英文分号。实体引用实体引用所代表的符号说明<<小于符号>>CDATA标记在特殊标记CDATA下,XML解析器对其中的内容不进行解析。格式:<![CDATA内容]]>“<![CDATA[”和“]]>”各字符间不能有空格符内容可以包括任意字符。<?xmlversion="1.0"encoding="GBK"?><逻辑表达式><比较符><![CDATA[1+1<3]]></比较符></逻辑表达式>注意:CDATA段中不可以嵌套另一个CDATA段。CDATA标记在特殊标记CDATA下,XML解析器对其中的内CDATA标记<?xmlversion="1.0"encoding="GB2312"?><booklist><![CDATA[<book><name>XML编程原理与实例教程</name><price>28.00</price></book><book><name>疯狂XML讲义</name><price>65.00</price></book>]]></booklist>由于XML不会对CDATA标记内的内容进行任何解析,因此在CDATA内可放置任何内容,其中的内容永远不会出错。CDATA标记<?xmlversion="1.0"enc2.3

属性属性是由属性名和属性值构成。属性必须在开始标记中声明:<标记名属性列表>标记内容</标记名><空标记名

属性列表

/>属性名:与标记名的命名规则相同。属性值:属性值是一个用单引号或双引号括起来的字符串。例:<汽车车型="A4"颜色="黑"><轮胎规格="195/60R15"/></汽车>2.3属性属性是由属性名和属性值构成。例:<汽车车注意XML元素的属性必须有属性值,属性值必

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论