电子商务第3章xmlnew.ppt
《电子商务第3章xmlnew.ppt》由会员分享,可在线阅读,更多相关《电子商务第3章xmlnew.ppt(152页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、电子商务技术电子商务技术第第3章章 标记语言与标记语言与XMLXML技术技术 XML XML 概论和基本语法概论和基本语法XML XML 名字空间名字空间DTD DTD XML SchemaXML SchemaXSLT XSLT 电子商务技术电子商务技术XML概论和基本语法概论和基本语法电子商务技术电子商务技术XML(Extensible Markup Language),即可扩展,即可扩展标记语言标记语言(W3C,1998年年),一种),一种可以定义自己可以定义自己的标签的标签的元标记语言,也就是说它没有一套固定的的元标记语言,也就是说它没有一套固定的标签和元素,所以可以用来定义其他的标记规
2、范。标签和元素,所以可以用来定义其他的标记规范。XML非常灵活非常灵活,可用在各种网站、电子数据交换、,可用在各种网站、电子数据交换、语音邮件、远程程序调用甚至程序配置文件和操作语音邮件、远程程序调用甚至程序配置文件和操作系统中,等等系统中,等等 1.什么是什么是XMLXML概论概论电子商务技术电子商务技术HTML和和XML的比较的比较 比较内容比较内容HTMLHTMLXMLXML针对性针对性网络文档的呈示网络文档的呈示文档的内容文档的内容可扩展性可扩展性不具备可扩展性不具备可扩展性元标记语言,可扩展性强元标记语言,可扩展性强可读性可读性不易于人的阅读不易于人的阅读易于人的阅读易于人的阅读浏览
3、器支持性浏览器支持性 成熟成熟不够成熟不够成熟内容和显示内容和显示关系关系描描述述文文档档的的物物理理结结构构,内内容容和呈示混合和呈示混合描描述述文文档档的的逻逻辑辑结结构构,内内容容和呈示分离和呈示分离电子商务技术电子商务技术XML语法语法严格严格:XML提供了一套语法来规范标签的构成和放置,以提供了一套语法来规范标签的构成和放置,以及什么是合法的元素、如何为元素设置属性等。符及什么是合法的元素、如何为元素设置属性等。符合这种语法的合这种语法的XML文档称为文档称为“结构良好的结构良好的”(well-formed)。这种)。这种结构良好的结构良好的XML文档能文档能被被XML解析器解析器(
4、parser)阅读和处理,阅读和处理,而非结构良好的而非结构良好的XML文档将被解析器拒绝。文档将被解析器拒绝。电子商务技术电子商务技术2XML不是编程语言不是编程语言 XML本身只能用来描述文档的内容和结构本身只能用来描述文档的内容和结构。注注意意:不要用浏览器去显示自己编写的没有相应不要用浏览器去显示自己编写的没有相应XSLT文档的文档的XML文档文档。3.XML数据格式特点数据格式特点 XML具有自具有自ASCII文本文件以来最灵活最便携的文档文本文件以来最灵活最便携的文档格式,它提供了跨平台的数据格式,而且这种数据格式非格式,它提供了跨平台的数据格式,而且这种数据格式非常简单、直观和结
5、构良好。常简单、直观和结构良好。XML不是为某种特殊的平台而不是为某种特殊的平台而设计的设计的。电子商务技术电子商务技术4.XML如何工作如何工作 编辑工具:编辑工具:通用文本编辑器如通用文本编辑器如Emacs、MS Notepad、jEdit 专用的编辑器如专用的编辑器如XMLSPY、Polo。处理过程:处理过程:解析器将解析器将XML文档分解成个体的元素、属性等片段文档分解成个体的元素、属性等片段供上层程序(网络浏览器、数据库、文字处理器、绘图供上层程序(网络浏览器、数据库、文字处理器、绘图程序、电子表单、用户自编程序程序、电子表单、用户自编程序)处理。)处理。电子商务技术电子商务技术5X
6、ML技术内容技术内容(1)XML1.0。XML核心内容,对核心内容,对XML基本语法进行了定义,基本语法进行了定义,说明了什么是结构良好的说明了什么是结构良好的XML文档,并定义了文档,并定义了DTD。(2)DTD、XML Schema、DSD。DTD(Document Type Definition)即是)即是“文档类型定文档类型定义义”,对,对XML文档结构进行简单规范(包括其中的元素、文档结构进行简单规范(包括其中的元素、元素的属性)。元素的属性)。DTD简单灵活,但本身不用简单灵活,但本身不用XML语法,语法,对数据类型没有精确规范。对数据类型没有精确规范。XML Schema提供了对
7、数据类型进行严格定义的机制,提供了对数据类型进行严格定义的机制,而且使用而且使用XML语法,但相对于语法,但相对于DTD,显得较为复杂。,显得较为复杂。电子商务技术电子商务技术(3)Namespaces。Namespaces,即名字空间,是为了区分具有,即名字空间,是为了区分具有相同名称却有不同意思或属于不同相同名称却有不同意思或属于不同XML应用的元素和属性。应用的元素和属性。(4)XLink、XPointer、XPath。(5)XSL(XSL-FO,XSLT)。XSL(eXtensible Stylesheet Language),即可扩展式样),即可扩展式样单语言,分为两部分:单语言,分
8、为两部分:XSL Tansformations(XSLT)和和XSL Formatting Objects(XSL-FO)。XSLT是一种是一种XML应用,它提供将一种应用,它提供将一种XML文档转换成另一文档转换成另一种种XML文档的机制。文档的机制。XSL-FO是另一种是另一种XML应用,它精确的描述页面的布局,简应用,它精确的描述页面的布局,简单的说,即如何按单的说,即如何按XSL-FO的约定在页面上显示的约定在页面上显示XML文档。文档。电子商务技术电子商务技术(6)XInclude。为了支持模块化和重用,。为了支持模块化和重用,XInclude方便方便了在了在XML文档中包含别的文档
9、中包含别的XML文档。目前很多文档。目前很多XInclude处理器支持整篇文档的包含,但不支持基处理器支持整篇文档的包含,但不支持基于于XPointer的包含。的包含。(7)XQuery。(8)SAX、DOM、JDOM。电子商务技术电子商务技术XML基本语法基本语法 Bill Davenport 108 Street Chengdu Sichuan一个简单的例子一个简单的例子电子商务技术电子商务技术以上例子中,其标签都被赋予了实际的意思,显然以上例子中,其标签都被赋予了实际的意思,显然这样便于人和机器的理解。这段这样便于人和机器的理解。这段XML具有如上图树具有如上图树型结构,图中每个分支叫一
10、个型结构,图中每个分支叫一个“节点(节点(node)”。电子商务技术电子商务技术XML文档的基本内容文档的基本内容主要包括元素主要包括元素,标签标签,字符数据和属性,以及字符数据和属性,以及XML声明、处理指令、注释、实体引用、声明、处理指令、注释、实体引用、CDATA部分部分 1.元素,标签,字符数据和属性元素,标签,字符数据和属性 (1)标签(标签(Tags)是尖括弧是尖括弧“”之间的文字。之间的文字。标签在标签在XML中成对出现中成对出现,分为,分为起始标签起始标签和和结结束标签束标签 。如上述例子中的。如上述例子中的和和。在在XML中,中,标签是分大小写的。标签是分大小写的。电子商务技
11、术电子商务技术 (2)元素(元素(Elements)是由是由起始标签、结束标签起始标签、结束标签和任何位于起始标签和结束标和任何位于起始标签和结束标签之间的签之间的内容内容构成,按其结构位置,分为构成,按其结构位置,分为根元素根元素、父父(parents)元素)元素、子(子(children)元素)元素、兄弟兄弟(siblings)元元素素。注意:注意:1)W3C规定,一个父元素可以有规定,一个父元素可以有多个子元素多个子元素,但一个子元素,但一个子元素只可以有一个父元素只可以有一个父元素。2)根元素唯一性,根元素没有父元素。)根元素唯一性,根元素没有父元素。3)空元素即不含任何子元素或字符数
12、据的元素,在)空元素即不含任何子元素或字符数据的元素,在XML文档文档中可写为:中可写为:或者或者 电子商务技术电子商务技术(3)字符数据(字符数据(Character Data)包含于元素中的文字内容;位于元素中包含于元素中的文字内容;位于元素中的任何空白文字的任何空白文字;属性值也是字符数据;属性值也是字符数据(4)属性(属性(Attributes)元素可以有元素可以有一个或多个一个或多个属性。属性是由属性。属性是由“名字名字-值值”组成,包含在元素的组成,包含在元素的起始标签中起始标签中。属性名和值由属性名和值由等号等号“=”和和可选的空白可选的空白相相连。属性值必须包含在连。属性值必须
13、包含在双引号或单引号双引号或单引号中,中,电子商务技术电子商务技术2.XML名字(名字(XML Name)XML名字主要用来规范名字主要用来规范XML元素名和属性名的命元素名和属性名的命名。名。命名规则命名规则:1)XML名字可以包含名字可以包含26个大写和小写英文字母,个大写和小写英文字母,0-9十个数字,也可包含非英文字母和数字,如十个数字,也可包含非英文字母和数字,如、,以及汉字。同时还可包含三种英文符号:,以及汉字。同时还可包含三种英文符号:“-”、“_”和和“.”。2)不能使用如)不能使用如“”、“”、“$”、“”、“%”、“,”等符号,冒号等符号,冒号“:”可以使用,但被保可以使用
14、,但被保留作为名字空间专用。留作为名字空间专用。电子商务技术电子商务技术 3)严格意义上,)严格意义上,XML名字也不能包括任何名字也不能包括任何空白字符,如空格、空行等。空白字符,如空格、空行等。4)XML名字只能以字母、字符和英文下划名字只能以字母、字符和英文下划线(线(underscore)“_”开头,但长度不限。开头,但长度不限。电子商务技术电子商务技术例:例:下面是合法的下面是合法的XML名字:名字:Davenport105 River Road 9/8/2004 report6001 0086 28 87748559 电子商务技术电子商务技术下面是非法的下面是非法的XML名字:名字
15、:DavenportDavenport105 River Road7/23/2001 report6001电子商务技术电子商务技术3.XML声明(声明(declaration)XML文档应该文档应该(但不是必须但不是必须)以声明开始以声明开始。XML声声明包括明包括version,standalone和和encoding 三个属性,三个属性,其中其中version是必须的是必须的,standalone和和encoding是可是可选的选的。例:。例:E-Commerce Technology 电子商务技术电子商务技术(1)encoding。encoding属性指明了属性指明了XML文档编码标准文
16、档编码标准。XML文档的默认编码标准是文档的默认编码标准是UTF-8,但但XML文档支文档支持多种编码标准,如持多种编码标准,如ASCII、ISO-8859-1、Unicode、GB2312 等。等。(2)standalone。standalone属性指明了属性指明了XML文档是否和文档是否和一个独立的一个独立的DTD文件配套处理。文件配套处理。属性为属性为“no”时时,表示使用外部的(即非本,表示使用外部的(即非本XML文文档内的)档内的)DTD文件文件。属性为属性为“yes”时时,表示不使用外部的(即非本,表示不使用外部的(即非本XML文档内的)文档内的)DTD文件文件。或没有外部。或没有
17、外部DTD文件文件 电子商务技术电子商务技术4处理指令(处理指令(Processing instructions)处理指令给阅读处理指令给阅读XML文档的应用程序,如文档的应用程序,如XML解析器(解析器(parsers),提供信息。处理指),提供信息。处理指令由令由“”结束。紧接结束。紧接?是是XML名字,称作名字,称作“目标(目标(target)”。电子商务技术电子商务技术5.注释(注释(Comments)XML注释是文档中作解释的字符数据,它的语法注释是文档中作解释的字符数据,它的语法类似于类似于HTML,以,以“”结束,如:结束,如:1)注释不是)注释不是XML元素,它们可出现在文档中
18、元素,它们可出现在文档中字符字符数据的任何位置数据的任何位置,也可出现在,也可出现在根元素的前面或后面根元素的前面或后面 2)因为程序常忽略注释中的内容,我们可用注释)因为程序常忽略注释中的内容,我们可用注释包围和隐藏标记。包围和隐藏标记。电子商务技术电子商务技术例:例:Bill Davenport !-108 Street Chengdu Sichuan-电子商务技术电子商务技术上例使用注释后,注释中的信息被隐藏,原文档上例使用注释后,注释中的信息被隐藏,原文档上例使用注释后,注释中的信息被隐藏,原文档上例使用注释后,注释中的信息被隐藏,原文档等同于:等同于:等同于:等同于:address
19、Bill Davenport 电子商务技术电子商务技术注意:注意:1)注释不能出现注释不能出现在标签之中在标签之中(只能出现在字符数据的任何位(只能出现在字符数据的任何位置),以下的例子是非法的:置),以下的例子是非法的:last-name Davenport 2)在一个注释中,在一个注释中,“-”不能出现在除开始和结束符号以外不能出现在除开始和结束符号以外的任何地方的任何地方,以下的例子是非法的:,以下的例子是非法的:3)注释不能嵌套使用注释不能嵌套使用。电子商务技术电子商务技术6.XML文档的其它内容文档的其它内容(1)实体引用(实体引用(Entity References)符号符号“”被
20、被XML解析器理解为标签的开始解析器理解为标签的开始,当我们的字符,当我们的字符数据中包含这类对数据中包含这类对XML解析器有特殊意义符号时,如果不解析器有特殊意义符号时,如果不采用适当的方法去规避这些字符,将导致错误。如:采用适当的方法去规避这些字符,将导致错误。如:Installing Cocoon Locate the Cocoon.properties file in the/bin directory.电子商务技术电子商务技术 解析器解读上面解析器解读上面XML片段时将报告错误,因为解析器认为片段时将报告错误,因为解析器认为代表开始标签,却找不到结束标签代表开始标签,却找不到结束标签
21、。解决这类问题的方法是使用解决这类问题的方法是使用“实体引用实体引用”。如用。如用“<”代替代替“”,用,用“&”代替代替“&”。符号符号实体实体(大于号)(大于号)>&(并列号)(并列号)&”(双引号(双引号)"(单引号(单引号)'XML事先定义的五个实体事先定义的五个实体电子商务技术电子商务技术(2)CDATA 部分当成段的文档片段包含大量的特殊字符时,这种替换工作是非常大的,例如我们需要在XML文档中包含XML的示例文档。可用CDATA部分。CDATA部分告诉解析器不把标明的CDATA部分作为标记语言片段(markup)处理,而只是作为纯数
22、据字符(raw character data)来处理。CDATA部分以“”结束,电子商务技术电子商务技术注意:注意:CDATA部分几乎可以包含任何内容,但不能包部分几乎可以包含任何内容,但不能包含含CDATA部分,即类似于部分,即类似于XML注释,注释,CDATA部分部分不能嵌套使用。不能嵌套使用。电子商务技术电子商务技术7.XML结构良好(结构良好(Well-Formed)的基本要求)的基本要求XML文档必须是结构良好的,也就是说必须符合一系列规则,文档必须是结构良好的,也就是说必须符合一系列规则,如下:如下:(1)每一个起始标签必须有一个结束标签与之对应。每一个起始标签必须有一个结束标签与
23、之对应。(2)元素名和属性名必须符合元素名和属性名必须符合XML名字规则。名字规则。(3)元素是可以嵌套(元素是可以嵌套(nest),但不能重叠),但不能重叠(overlap)。(4)只有一个根元素。只有一个根元素。(5)属性必须使用单引号或双引号。属性必须使用单引号或双引号。(6)一个元素不能有两个同名的属性。一个元素不能有两个同名的属性。(7)注释和处理指令不能出现在标签内。注释和处理指令不能出现在标签内。(8)“”和和“&”不能直接出现在元素或属性的字符数据中。不能直接出现在元素或属性的字符数据中。电子商务技术电子商务技术其中其中“元素是可以嵌套元素是可以嵌套”不仅可以指一个元素包含别不
24、仅可以指一个元素包含别的元素,也可以是一个元素以一定方式包含自己,如:的元素,也可以是一个元素以一定方式包含自己,如:OpenMath Symbol OpenMath Symbol 电子商务技术电子商务技术注意注意:1)以以上规则包括了上规则包括了XML良好结构的基本良好结构的基本要求也是较容易出错的地方,但并不是所有要求也是较容易出错的地方,但并不是所有的要求。全面的要求可另行参考的要求。全面的要求可另行参考W3C的相关的相关技术报告。技术报告。2)做良好结构检查最简单的方法是用网)做良好结构检查最简单的方法是用网页浏览器,如页浏览器,如IE5.X或或Mozilla;另外一种方法;另外一种方
25、法是用通用的是用通用的XML解析器。解析器。电子商务技术电子商务技术XML名字空间(名字空间(Namespaces)电子商务技术电子商务技术 Mrs.Mary McGoon 108 Street Chengdu 为什么引入名字空间为什么引入名字空间 automobile BMW S500 400,000 This car was made in China in July 2004,without any serious damage.电子商务技术电子商务技术上面的文档中有两个上面的文档中有两个title元素,一个指人的称号,元素,一个指人的称号,另一个指财产的类别,它们的语义是不同的;文档另
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 电子商务 xmlnew
限制150内