XML程序设计课件CHAP1_第1页
XML程序设计课件CHAP1_第2页
XML程序设计课件CHAP1_第3页
XML程序设计课件CHAP1_第4页
XML程序设计课件CHAP1_第5页
已阅读5页,还剩46页未读 继续免费阅读

下载本文档

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

文档简介

XML技术应用徐兵第一章XML概述目标:了解标记语言的开展和现状,掌握XML的特点,理解XML的应用前景,掌握XML文档的数据结构和根本语法,了解常用的XML开发工具。本章结构内容:XML简介XML的应用概述XML的相关技术本章小节1.1XML简介XML(eXtensibleMarkupLanguage)可扩展的标记语言标记语言使用某种“记号”来表示某种特殊信息的语言。如HTML<html><head><title>这是一个欢送的例子</title></head><body>你好!欢送你!<br><fontsize=6color=#ff0011>对文字颜色和大小的设置</font></body></html>两个概念相关概念标记

为了处理的目的,在数据中加入附加信息,这种附加信息称为标记。标记语言运用标记的方法描述的形式语言,这里要求所定义的标记不能有二义性。标记的作用标记可以给数据增加语义标记可以区分数据标记可以定义数据的作用标记可以定义包含关系标记可以定义关系格式化标记<B>HelloWorld</B>结构化标记<H1>HelloWorld</H1>语义标记<STRONG>HelloWorld</STRONG>标记种类HTML标记显示<html><head><title>Myfirstexample</title></head><body><ul>第一个职工

<li>张晓迪</li><li>女</li><li>销售部</li></ul></body></html>第一个职工张晓迪女销售部MyfirstexampleHTML缺乏语法检查HTML缺乏结构HTML对内容不敏感HTML不是面向对象的HTML缺乏健壮的链接机制HTML是不可重用的HTML是不可扩展的HTML局限性XML的起源SGMLXMLHTMLSGML实际上是一种通用的文档结构描述符号化语言,主要用来定义文献模型的逻辑和物理类结构。

子集实例SGML的优点优点它支持用户定义的、用来满足文件特殊要求的标记和体系结构。因为它自1986年后被确定为ISO的标准,所以具有长期的适用性。它是人类共有的、独立于操作平台的,其寿命将超过现有的大局部应用软件。SGML的缺乏与HTML相比,SGML的工具相当昂贵。它的安装耗资不菲,而且需要很特殊的技术。用SGML创立文档类型定义的本钱很高,特别是用人工来做。缺乏SGML学起来比较困难。XML与HTML的比较两者同根——SGML,均基于文本HTML仅定义数据的外观—它是一种纯粹的显示语言。HTML文档主要包含显示格式、主要是为了浏览,而不是为计算机所使用是显示格式描述语言HTML包含预定义的标记〔Tag)集,易学易于访问,但难以数据重用,可扩展性差XML以数据可重用为切入点,可定义自己的标记集,且能让其它人或程序知道和理解这些标记集,可扩展性强XML比HTML易于扩展,XML标记表示了数据的逻辑结构,可为不同应用以不同方式加以分析,同时进行严格的语法和语义检查XML文档将数据与显示格式别离,是数据格式描述语言,为信息开放、共享和交互提供根底XMLHTML关系要点XML不是要替换HTML;实际上XML可以视作对HTML的补充。XML和HTML的目标不同:HTML的设计目标是显示数据并集中于数据外观,而XML的设计目标是描述数据并集中于数据的内容。与HTML相似,XML不进行任何操作。虽然XML标记可用于描述订单之类的项的结构,但它不包含可用于发送或处理该订单以及确保按该订单交货的任何代码。其他人必须编写代码来实际对XML格式的数据执行这些操作。与HTML不同,XML标记由架构或文档的作者定义,并且是无限制的。HTML标记那么是预定义的;HTML作者只能使用当前HTML标准所支持的标记。比较内容HTMLXML可扩展性不具有扩展性是元标识语言,可用于定义新的标识语言侧重点侧重于如何表现信息侧重于如何结构化地描述信息语法要求不要求标记的嵌套,配对等,不要求标识之间具有一定的顺序严格要求嵌套,配对,并遵循DTD的树形结构可读性及可维护性难于阅读,维护结构清晰,便于阅读,维护数据和显示的关系内容描述与显示方式整合为一体内容描述与显示方式相分离保值性不具有保值性具有保值性编辑及浏览工具已有大量的编辑,浏览工具编辑,浏览工具尚不成熟结构描述不支持深层的结构描述文件结构嵌套可以复杂到任何程度与数据库的关系没有直接联系与关系型和层状数据库均可对应和转换超级链接单文件、书签链接可以定义双向链接、多目标链接、扩展联结大小写敏感性大小写不区分大小写区分XML与SGML、HTML的关系

应用简化HTMLXMLSGML16/51XML的诞生GML(1969)SGML(1985)XML(1998)HTML(1993)XHTML(1999)XML各项技术

XML和HTML都属于SGML的子集XML是一种元符号化语言,即可以像SGML那样作为元语言来定义其它文件系统XML文档结构树<?xmlversion="1.0"?><职工列表> <职工> <姓名>张晓迪</姓名> <性别>女</性别> <部门>销售部</部门> </职工> <……><职工列表>职工列表职工……姓名性别部门XML文档<?xmlversion="1.0"encoding="GB2312"?><!--Writenbyyangling--><?xml-stylesheettype="text/xsl"href="employee.xsl"?><职工列表><职工><姓名>张晓迪</姓名><性别>女</性别><部门>销售部</部门></职工></职工列表>声明注释处理指令XML序文<?xmlversion="1.0"encoding="GB2312"?><?xml-stylesheettype="text/xsl"href="employee.xsl"?><!--Writenbyyangling-->开始结束处理指令名XML版本使用的字符集开始结束处理指令名样式单类型样式单地址开始结束注释内容XML格式的特点XML格式是基于文本的,这使得它们更容易读、更便于记录,有时也更便于调试。XML文档可使用已为HTML建立的很多根底结构,包括HTTP协议和某些浏览器。HTTP允许穿过防火墙传输XML。XML分析已有完善的定义,且已广泛应用,使得在各种环境中从XML文档检索信息成为可能。应用程序可依赖XML分析器进行某些结构验证以及数据类型检查〔当使用架构时〕。XML建立在Unicode根底上,使得创立国际化文档更容易。不过,XML分析可能比分析高度优化的二进制格式慢,并且可能需要更多内存。然而,精心的应用程序设计能够防止一些问题。什么是XML?XML—可扩展标记语言eXtensibleMarkupLanguageXML不是语言,该把XML理解为元语言或元标记语言。元语言是用来描述其他语言的语言。XML是一种使用标记描述其他标记语言的语法。XML描述的是结构和语义,而不是格式化。W3C发布的XML1.0推荐标准没有定义任何一种标识符集或语言关键字。XML1.0推荐标准仅仅定义了一种语法和句法。XML的特性XML的核心是数据〔数据和表示别离〕XML数据的自我描述性〔可扩展性〕XML可以实现异构数据之间的数据转换XML支持Unicode字符集XML良好特性XML易于理解和阅读XML可通用于当今的各种开放标准XML是与平台、工具、数据库、协议、编程语言无关的XML允许开发人员创立自己的数据定义和表示模型支持国际化1.2XML处理过程编辑器根本的文本编辑器如Notepad〔记事本〕、UltraEditXMLSpy语法分析和处理程序读取XML文档,并且检查文档的结构完整性,同时它还要检测文档是否正确,一旦文档通过了程序的语法分析,就由处理程序转化为元素的树状结构,并传送给用户端的应用程序用户端应用程序接收到语法分析和处理程序传送过来的元素树状结构后,对其进行相应的处理,如果应用程序是浏览器如IE的话,那么就将数据显示给用户。25/51XML元素的树结构poemtitleauthorcontentlinelinelinelineXML文档的数据结构是树状结构,相当于原来的层次型数据库系统XML解析器什么是XML解析器?XML处理程序通常也称为XML解析器,因为它们对XML文档进行解析。XML解析器是读取XML文档并提供对文档内容的访问的软件模块。XML解析器处理XML文件需要XML解析器〔XMLparser〕,或称为XML处理器〔XMLprocessor〕的程序。解析器负责检查XML文件的语法,并使XML文件包含的数据能被应用程序使用。类型:无验证的解释器和验证的解释器常用的解析器有,微软的MSXML、Apache软件基金会的Xerces和IBM的XML4J,以及OracleXMLParser。1.3XML的应用概述数据交换内容管理电子商务配置文件大数据---云计算—物联网XML技术应用背景“可扩展标记语言”(XML)提供一种描述结构化数据的方法。与主要用于控制数据的显示和外观的HTML标记不同,XML标记用于定义数据本身的结构和数据类型。XML使用一组标记来描绘数据元素。每个元素封装可能十分简单也可能十分复杂的数据。您可以定义一组无限制的XML标记。例如,可以定义一些XML标记来声明订单中的数据,如价格、税收、发货地址、帐单地址等等由于XML标记在整个单位中以及跨单位采用,因此来自各种不同数据存储区的数据将更容易交换和操作。XML是一种简单、与平台无关并被广泛采用的标准。XML相对于HTML的优点是它将用户界面与结构化数据分隔开来。这种数据与显示的别离使得集成来自不同源的数据成为可能。客户信息、订单、研究结果、帐单付款、病历、目录数据及其他信息都可以转换为XML。1.4XML的相关技术文档类型定义DTD文档对象模型DOM级联样式表CSS可扩展的样式语言XSL可扩展的链接语言XLL文档类型定义〔DTD〕XML是元标记语言,任何人都可以自由地创立自己的标记集,如果每个人都试图用自己定义的标记发布XML文档,结果是谁也无法有效的获得信息。所以需要使用DTD来定义文档的格式规那么,明确文档的格式。文档对象模型〔DOM〕XML文档与其它应用程序之间存在着通信和交互,在一些Web应用程序的结构中,应用程序必须处理XML文档以及文档的各个局部。开发人员可以通过DOMAPI对XML文档进行读取、搜索、修改、添加和删除等操作。级联样式表〔CSS〕对于XML而言,由于允许在文档中使用任意的标记,所以对于浏览器来说,没有方法事先识别如何显示各个元素。因此当XML文档送给用户的时候,必须给用户发送样式单,通过样式单来告诉浏览器如何按照指定的格式显示文档的每个元素,这样的一种样式单就是CSS〔CascadingStyleSheet级联样式表〕。可扩展的样式语言〔XSL〕XSL中的重点是XSLT(XSLTransformatinXSL转换〕,它将一个没有形式表现的XML文档作为源树,将其转换成一个有样式信息的结果树。例如:可以将一个XML文档转换成另一个逻辑机构的XML文档,或者HTML文档。可扩展的链接语言〔XLL〕XML引入了专门的XLL来进行文档的链接和定位,分为XLink、XPointer。XLink使得XML文档中的任意元素成为链接,而不仅仅是A元素。进一步来说,XLink的链接可以使双向的、多向的或者是指向多个镜像的站点,选择这些站点中最近的一个。XPointer能使链接不仅指向特定位置处的特定文档,而且还可以指向特定文档的特定局部,如某个元素。XPointer提供了文档之间连接非常强大的功能。XML开展前景XML需要强大的新工具用于在文档中显示丰富复杂的数据XML会改革终端用户在网上的行为,这有助于许多商业应用的实现XML作为一个数据标准,会开创互联网上众多新用途。XML商务应用举例XML商务应用举例数据库交换数据库交换技术是XML的重要应用当今计算机世界存在许多操作系统平台及数据库系统;常常需要在不同的平台和系统之间传输信息;XML可以被不同的平台和系统采用作为交流的媒介。数据交换应用举例美国家庭健康医疗机构信息跟踪系统政府文档司法出版保险机构中介组织信息交换分布式处理即将大局部负载,从Web效劳器转到Web客户端的应用如远程教育的应用;公司和企业为不同的客户创立和分发大量有价值的文档信息;设计应用上述基于Web的新兴领域应用使用HTML难于实现信息发布采用XML描述的数据,可以以不同的方式显示在不同用户的浏览器中;也就是说,效劳器只需发出一份XML文件,客户可根据需要选择不同的程序来处理数据。这对于提高企业的竞争能力非常重要。智能化的Web应用程序和数据集成Web应用将出现呈现出智能化XML能准确表达信息的真实内容,其严格的语法降低了应用程序负担,使智能工具的开发更为便捷来自不同应用程序的数据能转化到XML这个统一框架中,进行交互、转化和进一步加工XML与电子商务电子商务的定义:利用电子化方式开展的商务活动电子商务开展经历了几个阶段:早期的EDI阶段伴随Internet开展而基于Web的电子商务以XML为根底和核心的集成电子商务〔B2Bi〕XML加速电子商务的开展XML的有利于数据交换和传递的特性,为电子商务,尤其是B2B带来革命性的冲击XML可在电子商务的两个重要方面起重要作用:内容定义:

温馨提示

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

评论

0/150

提交评论