收藏 分销(赏)

WebGIS系统的研究与实现论文.doc

上传人:仙人****88 文档编号:9200029 上传时间:2025-03-16 格式:DOC 页数:40 大小:663.50KB 下载积分:10 金币
下载 相关 举报
WebGIS系统的研究与实现论文.doc_第1页
第1页 / 共40页
WebGIS系统的研究与实现论文.doc_第2页
第2页 / 共40页


点击查看更多>>
资源描述
目 录 摘 要 4 ABSTRACT 4 第一章 关于WebGIS的概述 5 1.1 GIS介绍 5 1.2 WebGIS的基本知识 5 1.2.1 WebGIS的基本特征 5 1.2.2 GIS客户机服务器模型 7 1.3目前WebGIS的实现技术 8 1.3.1 基于服务器端的Web地图发布技术 8 1.3.2 基于客户端的Web地图发布技术 9 第二章 XML在WebGIS方面的应用 12 2.1 基于HTML的WebGIS的弊端 12 2.2 XML概述与特点 13 2.2.1 XML概述 13 2.2.2 XML的特点 13 2.3 GML――地理标记语言 14 2.4 XML在WebGIS中的应用 15 2.4.1 XML与空间数据库 15 2.4.2 XML与空间信息Web服务器 15 2.4.3 XML与客户端的地图浏览 16 2.5 SVG技术 16 第三章 Web Service 18 3.1 Web Service的概念 18 3.2 Web Service的技术支持 18 3.2.1 XML和XSD 18 3.2.2 SOAP 19 3.2.3 WSDL 19 3.2.4 UDDI 19 3.2.5远程过程调用RPC与消息传递 20 3.3 Web Service软件的支持 20 第四章 基于XML的WebGIS模型 21 4.1空间数据处理的分步模型服务步骤 21 4.2将XML运用于WebGIS 21 4.2.1用GML对空间数据进行编码 21 4.2.2空间数据的转换 22 4.2.3 SVG在WebGIS模型中的应用 23 4.2.4使用XLink和Xpoint来实现不同空间数据库中相关数据的动态和多重链接 25 4.2.5用XML来定义Internet调用接口 25 4.3基于XML的WebGIS的体系结构 27 4.4 需要解决的几个问题 28 4.4.1 客户端的SVG地图的浏览和交互 28 4.4.2 空间数据与XML文档的转化 28 4.4.3 GML文档的解析 28 第五章 基于SVG的地图浏览和交互的实现 29 5.1 SVG的特点 29 5.2地图的交互及控制 31 5.3地图属性的定义 31 5.4 在SVG格式的地图中显示鼠标坐标 31 5.5 SVG地图的生成 34 5.5.1支持SVG的编辑工具 34 5.5.2 SVGMapMarker的简介 35 5.5.3生成实例 35 第六章 结论 39 致谢 40 参考文献 41 摘 要 Internet的迅猛发展给传统的GIS(地理信息系统)带来了广阔的发展空间,同时也给GIS带来了挑战。WebGIS已经成为了GIS发展的必然趋势。 本文对当前的各种主要WebGIS系统的原理、基本特征、实现方案和各自的优缺点做出了深入的剖析。在此基础上,针对它们的缺陷,结合Web Service技术提出了基于XML的WebGIS模型。同时,提出了实现该模型为实用系统还需要解决的关键技术。最后,本文还对其中一项关键技术——客户端的SVG地图浏览和交互提出了自己的实现方案。 关键词: GIS,WebGIS,SVG,XML ABSTRACT The fast development of Internet bring wide development space and great challenge for traditional GIS.WebGIS is becoming the surfer in the trend of future GIS. First,this paper presents the basics of WebGIS.It includes the principle of WebGIS,the working pattem of WebGIS,and its strongpoints,lowpoint.Second, WebGIS model base on XML with Web Servers is introduced.Finally,we present our own scheme in representations of SVG maps. Key words:GIS,WebGIS,SVG,XML 第一章 关于WebGIS的概述 1.1 GIS介绍 地理信息系统GIS(Geographic Information System)是近20年来发展起来的一门综合应用系统,它能把各种信息同地理位置和有关的视图结合起来,并把地理学、几何学、计算机科学及各种应用对象、Internet、多媒体技术及虚拟实现技术等融为一体,利用计算机图形与数据来采集、存储、编辑、显示、转换、分析和输出地理图形及其属性数据。随着信息技术尤其是计算机技术的快速发展、数字地球的提出与实施,GIS应用程度的不断深入和应用范围的逐渐扩大,GIS正处于急剧变化与发展之中。 1.2 WebGIS的基本知识 WebGIS是Internet和WWW技术应用于GIS开发的产物,是实现GIS互操作的一条最佳解决途径。从Internet的任意节点,用户都可以浏览WebGIS站点中的空间数据、制作专题图、进行各种空间信息检索和空间分析。 因此,WebGIS不但具有大部分乃至全部传统GIS软件具有的功能,而且还具有利用Internet优势的特有功能,即用户不必在自己的本地计算机上安装GIS软件就可以在Internet上访问远程的GIS数据和应用程序,进行GIS分析,在Internet上提供交互的地图和数据。  1.2.1 WebGIS的基本特征 1.WebGIS是集成的全球化的客户/服务器网络系统 WebGIS应用客户/服务器概念来执行GIS的分析任务。它把任务分为服务器端和客户端两部分,客户可以从服务器请求数据、分析工具或模块,服务器或者执行客户的请求并把结果通过网络送回给客户,或者把数据和分析工具发送给客户供客户端使用。 2.WebGIS是交互系统 WebGIS可使用户在Internet上操作GIS地图和数据,用Web浏览器(IE、Netscape等)执行部分基本的GIS功能:如zoom(缩放)、Pan(拖动)、Query(查询)和Label(标注),甚至可以执行空间查询:如“离你最近的旅馆或饭店在哪儿”,或者更先进的空间分析:比如缓冲分析和网络分析等。在Web上使用WebGIS就和在本地计算机上使用桌面GIS软件一样。 3.WebGIS是分布式系统 GIS数据和分析工具是独立的组件和模块,WebGIS利用Internet的这种分布式系统把GIS数据和分析工具部署在网络不同的计算机上,用户可以从网络的任何地方访问这些数据和应用程序,即不需要在本地计算机上安装GIS数据和应用程序,只要把请求发送到服务器,服务器就会把数据和分析工具模块传送给用户,达到Just—in—time的性能。Internet的一个特点就是它可以访问分布式数据库和执行分布式处理,即信息和应用可以部署在跨越整个Internet的不同计算机上。 4.WebGIS是动态系统 由于WebGIS是分布式系统,数据库和应用程序部署在网络的不同计算机上,随时可被管理员更新,对于Internet上的每个用户来说都将得到最新可用的数据和应用,即只要数据源发生变化,WebGIS将得到更新。和数据源的动态链接将保持数据和软件的现势性。 5.WebGIS是跨平台系统 WebGIS对任何计算机和操作系统都没有限制。只要能访问Internet,用户就可以访问和使用WebGIS而不必关心用户运行的操作系统是什么。随着Java的发展,未来的WebGIS可以做到“一次编写,到处运行”,使WebGIS的跨平台特性走向更高层次。 6.WebGIS能访问Internet异构环境下的多种GIS数据和功能 此特性是未来WebGIS的发展方向。异构环境下在GIS用户组间访问和共享GIS数据、功能和应用程序,需要很高的互操作性。OGC提出的开放式地理数据互操作规范(Open Geodata Interoperablity Specificaton)为GIS互操作性提出了基本的规则。其中有很多问题需要解决,例如数据格式的标准、数据交换和访问的标准、OIS分析组件的标准规范等。随着Internet技术和标准的飞速发展,完全互操作的WebGIS将会成为现实。 7.WebGIS是图形化的超媒体信息系统 使用Web上超媒体系统技术,WebGIS通过超媒体热链接可以链接不同的地图页面。例如,用户可以在浏览全国地图时,通过单击地图上的热链接,而进入相应的省地图进行浏览。 另外,WWW为WebGIS提供了集成多媒体信息的能力,把视频、音频、地图、文本等集中到相同的Web页面,极大地丰富了GIS的内容和表现能力。 1.2.2 GIS客户机服务器模型 共分6个部分:数据库、GIS服务器、WEB服务器、GIS服务代理、本地GIS应用软件和远程用户GIS应用软件。 1.地理数据库内容比较复杂,主要包括以下5类数据:Web网页数据、地理空间数据和属性数据、数据目录数据、地理分析模型数据等。网页数据是HTML格式,供Internet浏览器阅读。 2.GIS服务器是指能够为网络客户提供各种地理服务的软件系统和硬件系统的总称。服务包括数据存取、地图显示、空间分析、模型管理、目录检索等。 3.本地地理应用软件,指在本地LAN/Internet环境中运行的系列软件。其内容非常丰富,它为本地区提供地图服务、空间信息管理、地理问题分析等服务;这些应用软件部分是GIS,其他可以是用VB、C/C++、Java等开发工具编写的相关软件。 4.远程用户地理应用软件,是通过Internet协议,为远程用户提供空间信息服务的软件。它要求信息通信量尽可能少,地理分析工作尽可能在服务器端 WebGIS的基本框架如下图(图1-1)所示。 图1-1 WebGIS的基本框架 1.3目前WebGIS的实现技术 n层结构的客户机/服务器(C/S)是当前网络应用程序的主要开发模型,这种方案将网络应用系统划分为客户机,应用服务器和数据服务器。C/S结构通过平衡客户机/服务器间的数据通讯,利用服务器的高性能处理复杂的关键性的应用,降低网络数据流量,并简化了客户端的应用运行环境,降低了软件的维护费用。 Internet上的WWW服务器就是一个典型的C/S多层结构。因此,无论在概念设计,逻辑设计还是在物理设计WebGIS时,都要从客户机,应用服务器和数据库服务器三个方面加以考虑。具体的开发技术分为基于服务器端和基于客户端的技术。 1.3.1 基于服务器端的Web地图发布技术 目前已经有多种不同的技术方法被应用于研制实现WebGIS,基于服务器端的Web地图发布技术主要有:CGI(Common Gateway Interface,通用网关接口),服务器应用程序接口(Server API)等。 CGI是通过网关接口(Common Gateway Interface)的简称,是连接外部应用程序和Web服务器的标准技术,CGI提供了在一个浏览器和服务器之间,以及服务器和服务器上其他的软件之间的一个连接接口。通过CGI,用户可以发送一个请求到服务器上,服务器再把这个请求传送到后端的应用软件上,这个特定的应用软件就按照给定的要求产生结果并交给服务器,服务器再把这一结果送给远程的用户。在这一过程中,CGI就像一个联络官,起着沟通用户与服务器上软件的桥梁作用。 基于CGI的互联网地理信息系统的体系结构如下图(图1-2)所示。服务器端有两个服务进程Web Server和GIS Server,这两者是通过TCP/IP协议进行通信的,所以既可以运行在一台主机上也可以分别在两台计算机上运行。 图1-2 基于CGI的体系结构 1.3.2 基于客户端的Web地图发布技术 基于客户端技术的WebGIS允许GIS分析和GIS数据处理在客户机端执行。这些GIS分析工具和GIS数据最初驻留在服务器上。用户通过浏览器向服务器发出需要GIS数据和GIS处理工具的请求,服务器将所需的GIS数据和GIS处理工具传送给客户机端,客户机端接受所需的数据和处理工具,按照用户的操作,进行数据处理和分析;此时无需服务器的参与。由于所需的数据和工具已经到达客户机端,因而具有操作灵活、方便、速度快等优势。它包括GIS Plug-in,GIS ActiveX和GIS Java Applets等技术方法。 1.Java Applet技术 Java语言是一种面向对象的语言,具有跨平台性,简单,动态性强,运行稳定,分布式,安全,容易移植等特点,因而是Internet上重要的编程语言。Java程序有两种,一种可以像其他程序语言编写的程序一样独立运行;另一种被称为Java Applet,只能嵌入到HTML文件中,在网络浏览器下载HTML文件时,Java程序的执行源代码也被同时下载到用户端的机器上,由浏览器解释执行。 基于Java的WebGIS的平台独立性得益于Java虚拟机对异构环境下操作系统的屏蔽作用。Applet的运行基于嵌入浏览器中的Java虚拟机,虚拟机把Applet的操作转换成具体操作系统的子例程,并把结果反馈给Applet。 GIS Java Applet是用Java语言开发的小应用程序,是从服务器下载到客户机端支持Java的互联网浏览器上运行的可执行代码。GIS Java Applet与Web浏览器紧密结合,以扩展Web浏览器的功能,完成GIS数据操作和GIS数据操作和GIS处理。GIS Java Applet最初为驻留在Web服务器端的可执行代码。在通常情况下,GIS Java Applet包容在HTML代码中,并通过<APPLET>参考标签来获取和引发。在网络浏览器下载该HTML文件时,Java程序的执行代码也被下载到客户端的机器上,由浏览器解释执行。 2.插件(Plug-In)技术 GIS Plug-in是在嵌入浏览器上的可执行的GIS软件。GIS Plug-in的主要作用是使Web浏览器支持处理特定格式的GIS数据,并为Web浏览器与GIS服务器程序之间的通讯提供条件。GIS Plug-in直接处理来自服务器的GIS数据。同时,GIS Plug-in可以生成自己的数据,以供Web浏览器或其它Plug-In显示使用。 CGI 系统仅提供给用户端(client)有限的功能,传给用户的信息都是静态的而且用户的GIS操作都需要由服务器来处理。解决这个问题的方法之一是把一部分服务器上的功能移到用户端上,这样不仅加快了用户操作的反应速度,而且也减少了交互网上的流量。 3.GIS ActiveX技术 ActiveX是Microsoft为适应互联网而发展的标准。ActiveX是建立在OLE(Object Linking and Embedding)标准之上,为扩展Microsoft Web浏览器Internet Explorer功能而提供的公共框架。ActiveX控件是用于完成具体任务和信息通讯的软件模块。GIS ActiveX控件用于处理GIS数据和完成GIS分析。ActiveX控件和Plug-in非常相似,是为了扩展Web浏览器的动态模块。所不同的是,ActiveX能被支持OLE标准的任何程序语言或应用系统所使用。相反,Plug-in只能在某一具体的浏览器中使用。基于GIS ActiveX控件的互联网地理信息系统是依赖GIS ActiveX来完成GIS数据的处理和显示。 图1-3 WEBGIS系统构造模式优缺点对比图 第二章 XML在WebGIS方面的应用 2.1 基于HTML的WebGIS的弊端 由于HTML是一种文本显示语言,它不利于表现地理空间信息。随着WebGIS 的发展,这种弊端逐渐暴露出来: (1)HTML页面主要擅长数据的表现,不能准确地描述数据的内部结构和联系。这对于结构非常复杂的空间地理信息数据的查询和整合是不利的,造成网上自动搜索或交互数据库困难。 (2)在传统的GIS 数据库中存储着来自不同组织、不同结构的地理信息数据,要想真正做到资源和信息共享、数据的物理分散而逻辑集中,基于HTML的Web GIS 则很难做到。 (3)在实际应用中,一个地理信息系统需要一定层次上的互操作,但 HTML仅擅于表达静态的信息,其页面一旦生成,信息便处于静态,不能根据用户的实际要求进行动态变化和表达。 (4)HTML仅给出了所处理对象的显示信息,而没有给出描述对象其他属性的信息,大量可在本地完成的处理工作不得不交由服务器处理,这大大增加了网络流量,影响了网络效率。 (5)WebGIS需要向用户提供多样化的、直观易懂的图形用户界面,预测客户的请求,动态地、客户化地表现数据。而HTML元素类型数量固定,无法扩展,仅擅于文档的显示。 1998年可扩展标记语言XML的出现,弥补了HTML的缺陷[2] 2.2 XML概述与特点 2.2.1 XML概述 XML是可扩展标记语言(Extensible Markup Language)的简称,它定义了结构化表达数据的标准格式。XML是W3C(World Wide Web Consortium)为适应 Internet的发展而推出的新型Web语言,是ISO(国际标准化组织)所制订的SGML(Standard Generalized Markup Language,通用语言标识标准)的一个子集。它并不是类似于HTML的预定义的标识语言,而是用于定义其他标识语言的一种元语言。与HTML中有固定数量的标识不同,XML用于描述信息的各种标识都可以由设计者自行建立,以强化特定专业数据的结构和关联[4]。 一个完整的 XML 主要包括四个要元素:XML文档、文档类型定义DTD级连样式单CSS或可扩展的样式语言XSL可扩展链接语言XLink或XML指针语言XPointer。DTD/Schema规定了XML文件的逻辑结构,定义了XML文件中的元素、元素的属性以及元素与元素属性之间的关系;CSS/XSL是用于规定XML文档具体样式的语言;XLink/ Xpointer将进一步扩展目前 Web 上已有的简单链接。 XML文档是存储数据的核心,它由实体组成。实体包括解析数据 (Parsed data)和非解析数据(Unparsed data)非解析数据包括图形、图像、音频、PDF和其他设为非XML的元素。解析数据是由字符组成的,某些字符为原始数据内容;某些字符形成了XML标志(markup)。标志说明了文档的版面、结构和与此结构相连的任意属性的描述;某些标志形成了对XML存储形式和逻辑结构施加约束的控制信息。逻辑上,文档由声明(Declaration)元素(Element)、注释(Comment)、字符引用(Character reference)和处理指令(Processing instruction)组成。 2.2.2 XML的特点 XML与WebGIS相关的特点可以概括为以下几点: (1)XML是结构化的文档,它分离了数据的内容与表现数据的形式,可以让信息提供者根据需要,自行定义标记及属性,结构化地描述信息内容,从而使XML文件可以描述任意复杂的内容,具有相当的灵活性。 (2)由于数据可以被XML唯一标记,因此可以进行更有意义的搜索,而且可以提高网上查询和搜索速度,减少服务器和客户机之间的频繁交互。 (3)XML可以和HTML、脚本、COM(组件对象模型)等一起为灵活的三层Web应用软件的开发提供了所需的技术。 (4)由于XML的自定义性及可扩展性,它足以表达各种类型的数据,因此XML可容易地将不同来源的结构化数据结合在一起,客户收到数据后可以进行处理,也可以在不同数据库间进行传递。 (5)XML把处理数据的主动权交给了客户,计算不需回到服务器,将大量运算负荷分布于客户端。而且XML的自解释性使客户端在收到数据的同时也理解数据的逻辑结构与含义,从而使广泛、通用的分布式计算成为可能。 (6)数据的多样显示。由于数据显示与内容分开,XML定义的数据允许有不同的显示方式,可以将同一数据以不同的面貌展现给不同的用户,CSS和XSL以及XSLT为数据的显示提供公布机制;通过XML以组件组织数据和文档,可实现粒状更新。 2.3 GML――地理标记语言 GML(Geographic Markup Language)是OGC对XML做的一种扩展,专门对地理信息的传输和存储进行编码,以解决全球地理参考信息(GRI)的互操作问题。GML继承XML的特性,对现实世界中地理特征对象的几何数据和属性数据进行编码,编码时不管数据的最终表现方式,实现地理信息内容和表现的分离。地理数据的表现可以任意选择。图形输出,如地图,是最常用的GML数据表现形式。可以通过多种方法来实现,如采用Java Applet直接绘图表现;或采用XML图形技术实现,如SVG或X3D。不过GML并不依赖于任何特定的XML图形规范。GML也是XML的一个应用,它能支持各种数据格式,包括矢量栅格图形、文本、声音等[5]。 2.4 XML在WebGIS中的应用 XML是针对数据内容和结构的分析和描述,所以XML原则上可以被应用于WebGIS的解决方案。GML作为XML的子集,因此继承了XML的所有特点,并有了新的扩展。在目前流行WebGIS基于B/S结构三层体系结构中,XML在客户端、服务器端、数据库端都有广泛的应用前景。 2.4.1 XML与空间数据库 对于目前所广泛使用的WebGIS软件,基础数据库即WebGIS的数据源通常采用关系数据库、面向对象的数据库或文件系统来存储图形数据和矢量数据等原始的大量非XML的GIS数据。这些数据通常以二进制的形式来存储。对于客户端数据的请求也是以二进制数据的形式来返回。所有这些空间数据库系统都是为某一种特定格式的GIS数据源及其应用而设计的,如果用户想在使用一个WebGIS系统浏览一个空间信息系统中的数据时,需要查看其它空间数据库中的数据,甚至想把这些数据整合起来,都是非常困难的,甚至于无法从异构系统中取得相关的空间数据,并把它们融合为一个完整的万维网空间数据应用系统。 而支持XML的数据库系统,不仅仅提供一种在数据库管理系统同Web应用间的转换接口。而且使得异构数据的存取变得十分容易,这些数据可以是简单得文本,也可以是声音、图像、视频等多媒体数据。数据得来源将不受限制,不论数据是来自原始得XML资料库,还是从现有得文档甚至各种数据库系统来源取得的。 2.4.2 XML与空间信息Web服务器 目前,常用的Web服务器包括Microsoft的IIS(NT环境下)、Netscape的Enterprise Server、Apache(Unix环境)、IBM的Websphere等。Web服务器用于相应客户端的请求,并与应用服务器相连接。应用服务器的主要作用包括: (1) XML/GML数据的识别和转换工作 (2)提供空间数据存在与哪些数据服务器上 (3)处理客户请求的负载平衡 (4)将客户端请求传递给数据库服务器 当底层数据库中获得空间和属性数据并以XML文档的形式返回应用服务器后,应用服务器将根据客户端的要求对所获取得文档进行重新格式化。对于矢量图形则可以直接返回客户端,由客户端进行数据得解析和显示。对于属性数据,则可以赋予其一式样表单(XSL文档),以确定其在客户端得显示方式。 2.4.3 XML与客户端的地图浏览 WebGIS客户端主要负责地图的浏览、显示以及用户的交互。客户端对返回的XML数据进行个性化和多样化的展示。显示XML数据的主要工作由XML解析器完成。IE和Navigator都内嵌了XML解析器。随着XML技术的发展,浏览器对XML技术的全面支持是必然的。 一些基于XML的描述矢量图形元素的规范已经制定出来了,如SVG、X3D、VML。他们与GML相似,但更侧重图形的表现。第五章将详细叙述这一部分内容。 对于属性数据的显示,则可以根据用户的需求灵活的配置,这里将会充分体现出XSL的强大功能。使用XSL、XSLT及CSS可以在客户端对属性数据进行多样性的显示。 2.5 SVG技术 SVG规范SVG是一种基于XML的用来描述二维矢量图形和矢量/点阵混合图形的标识语言,其全称是可扩展矢量图形规范(Scalable Vector Graphics)。其中,“可扩展”(Scalable)一词在图形图像技术上指的是它不局限于一个固定的分辨率和大小,从全局或者细节的角度,可以在不同分辨率的屏幕上以相同的大小显示,也可以在同一个网页中以不同的大小;而在网络技术上,则指的是这一规范能够与其它规范相融合,从而能满足更广泛的用户需求,并适合于更广泛的应用方式。“矢量”(Vector)是指规范中描述了直线、曲线、形状等几何图形,而无需像PNG,JPEG等图像格式那样逐像素进行描述。“图形”(Graphics)是指它提供了对矢量和矢量/栅格混合图形的描述,因而它填补了大多数基于XML的标识语言规范对复杂图形描述的空白。在理论上,这些SVG对象的组合可以构筑任意复杂的图形/图像。 SVG规范定义了SVG的特征、语法和显示效果,其中包括模块化的XML命名空间和SVGDOM。SVG的绘图可以通过动态和交互式方式进行,在实际操作中,则是以嵌入方式或脚本(Script)方式来实现的。SVG不仅使用XLink和XPointer来提供超链接功能,还定义了丰富的事件,这些事件可以应用于所有的图形对象。由于SVG支持脚本语言,因此高级网页制作者仅需进行简单的Script编程来访问SVG文件对象模型(DOM)的元素和属性,即可响应特定的事件,从而提高了SVG的动态和交互性能。 SVG提供了两种不同的形式,即样式化SVG和交换型SVG,而且它们各自有不同的DTD及MIME类型。由于样式化SVG允许对图形对象进行样式添加,即它可以通过采用外部样式文件,在文件头中预先进行样式声明和通过属性为元素定义样式等三种方式来使用样式单,因此是SVG用于网络环境的推荐存储格式;而交换型SVG取消了对样式单的支持,完全使用元素属性来描述各个图形对象的显示效果,另外,由于所有显示信息都封装到XML的属性中,因此交换型SVG还可以作为XSLT(可扩展的样式语言变换)转换后所得到的结果文件格式,广泛应用于XML文档显示效果的描述中。 SVG除了支持HTML中常用的标记,如文本、图像、链接、交互性、CSS的使用、脚本外,还提供了大量针对图形、图像、动画的特定标记。SVG除了单独使用外,还可以在XML文件中作为命名空间引入,或者用作HTML文件中的特殊对象。同样,SVG作为一种基于XML的语言规范,也具有XML的可扩展性。 第三章 Web Service 3.1 Web Service的概念 什么是Web Service呢?从表面上看,Web Service就是一个应用程序,它向外界暴露出一个能够通过Web进行调用的API。这就是说,你能够用编程的方法通过Web调用来实现某个功能的应用程序。例如,创建一个Web Service,它的作用是查询某公司某员工的基本信息。它接受该员工的编号作为查询字符串返回该员工的具体信息。你可以在浏览器的地址栏中直接输入HTTP GET请求来调用罗列该员工基本信息的ASP页面,这就可以算作是体验Web Service了。 从深层次上看,Web Service是一种新的Web应用程序分支,它们是自包含、自描述、模块化的应用,可以在网络中被描述、发布、查找以及通过Web来调用。 Web Service便是基于网络的、分布式的模块化组件,它执行特定的任务,遵守具体的技术规范,这些规范使得Web Service能与其他兼容的组件进行互操作。它可以使用标准的互联网协议,像超文本传输协议HTTP和XML,将功能体现在互联网和企业内部网上。Web Service平台是一套标准,它定义了应用程序如何在Web上实现互操作性。你可以用你喜欢的任何语言,在你喜欢的任何平台上写Web Service。 3.2 Web Service的技术支持 Web Service平台需要一套协议来实现分布式应用程序的创建。任何平台都有它的数据表示方法和类型系统。要实现互操作性,Web Service平台必须提供一套标准的类型系统,用于沟通不同平台、编程语言和组件模型中的不同类型系统。 3.2.1 XML和XSD    XML是Web Service平台中表示数据的基本格式。除了易于建立和易于分析外,XML主要的优点在于它既与平台无关,又与厂商无关。W3C制定的XMLSchemaXSD定义了一套标准的数据类型,并给出了一种语言来扩展。 Web Service平台是用XSD来作为数据类型系统的。当你用某种语言如VB.NET或C#来构造一个Web Service时,为了符合Web Service标准,所有你使用的数据类型都必须被转换为XSD类型。如想让它使用在不同平台和不同软件的不同组织间传递,还需要用某种东西将它包装起来。这种东西就是一种协议,如SOAP。 3.2.2 SOAP SOAP即简单对象访问协议(Simple Object Access Protocol),它是用于交换XML编码信息的轻量级协议。它有三个主要方面:XML-envelope为描述信息内容和如何处理内容定义了框架,将程序对象编码成为XML对象的规则,执行远程过程调用(RPC)的约定。SOAP可以运行在任何其他传输协议上。例如,你可以使用 SMTP,即因特网电子邮件协议来传递SOAP消息,这可是很有诱惑力的。在传输层之间的头是不同的,但XML有效负载保持相同。 Web Service 希望实现不同的系统之间能够用“软件-软件对话”的方式相互调用,打破了软件应用、网站和各种设备之间的格格不入的状态,实现“基于Web无缝集成”的目标。 3.2.3 WSDL   Web Service描述语言WSDL就是用机器能阅读的方式提供的一个正式描述文档而基于XML的语言,用于描述Web Service及其函数、参数和返回值。因为是基于XML的,所以WSDL既是机器可阅读的,又是人可阅读的。 3.2.4 UDDI UDDI的目的是为电子商务建立标准;UDDI是一套基于Web的、分布式的、为Web Service提供的、信息注册中心的实现标准规范,同时也包含一组使企业能将自身提供Web Service注册,以使别的企业能够发现的访问协议的实现标准。 3.2.5远程过程调用RPC与消息传递   Web Service本身其实是在实现应用程序间的通信。我们现在有两种应用程序通信的方法:RPC远程过程调用和消息传递。使用RPC的时候,客户端的概念是调用服务器上的远程过程,通常方式为实例化一个远程对象并调用其方法和属性。RPC系统试图达到一种位置上的透明性:服务器暴露出远程对象的接口,而客户端就好像在本地使用的这些对象的接口一样,这样就隐藏了底层的信息,客户端也就根本不需要知道对象是在哪台机器上。 3.3 Web Service软件的支持 微软的.NET技术应该算是时下最为流行的Web Service 开发技术。首先因为其公司在以前相应的产品就占有相当大的市场份额,以至使新推出的.NET得以有比较稳定的用户群;其次也是更重要的是 .NET平台不仅延续了微软一贯的编程风格,而且还增加了许多支持Web 服务的关键性技术,使得.NET在操作的简单性和执行的稳定性,高效性上达到了一个非常好的结合。 微软的Visual Studio.NET便是一个便于 Web 服务的开发工具。微软的目标是,将其新编程语言——C#作为Web Service的首选语言。虽然C#看起来与Java类似,但是还有一些Java中没有的独特的功能。.NET技术中用于Web Service 开发的主要工具是ASP.NET从技术上说,ASP+提供了一些超出ASP以前版本的优点(例如:代码和HTML的分离,与脚本语言相比较,对“真正”的编程语言如 C# 的支持)。 第四章 基于XML的WebGIS模型 4.1空间数据处理的分步模型服务步骤 将空间数据转化为客户最终需要的形式大致有四个处理过程: (1)从空间数据源中选择出要显示的地理实体的数据。 (2)把选择出来的地理实体数据组合生成一个显示元素的序列。 (3)将显示元素系列生成最终要显示的地图。 (4)将准备好的地图送往显示设备进行最终显示。 4.2将XML运用于WebGIS 4.2.1用GML对空间数据进行编码 GML文档的优点之一就是文档本身包含了对地理实体的描述信息。下面是一个描述学校操场的GML文档的一段: <feature fid="1"typename="District"> <name> 操场 </name> <description> 位于宿舍区 </description> <geometricProPerty> <Polygon srsName="Polygon"> <Polygon srsName="EPSG:4326"> <outerBoundaryIs> <coordinates> 2439556,3943 2439556,55353 882454,55353 882454,43943 </coordinates> </Linearring> </outerBoundaryIs> </Polygon> </geometricProperty> </featuer> 这样,客户端就可以自动地提取其中的数据并按照要求处理。从而简化了处理地复杂性。同时,若所有地使用了GML地WebGIS系统来说,相互间的数据交换是轻而易举地事。并且,由于有了相同标准地GML编码,对于实现不同系统之间地互操作性来说,也打下了良好地基础。 4.2.2空间数据的转换 由于GML编码地空间数据文件是一个XML文件,因此,XML文件所具有地一起优点和便利之处,编码后GML文件也同样具有。XML中可以用XSL来进行数据转换和显示。XSL地全称eXtensible Stylesheet Language,它的主要功能就是将XML文件进行转换。XSL的基本意思就是:通过定义转换模板,将XML源文档转换为带样式信息的可浏览文档或是其它形式的文件。 在基于XML的WebGIS系统中,XSL至关重要。主要有两个用处: (1)用XSL将编码好的GML格式的文件转换为其他形式的XML文件。在不同的WebGIS系统中存储地理数据的数据库是不同的,甚至在同一个WebGIS系统中会有着不同的数据库和数据格式。XSL可以根据需求将同一个GML文件转换为不同的其它数据,以便数据的存储。 (2)用XSL可以将同一个GML文件经过转换后,变为不同的样式显示出来。这样,对于不同的客户的不同显示需求,提供不同的XSL文件就可以了,不需改变数据。 至于具体的转换过程,既可以在服务器端进行,也可以在客户端进行。两者分别对应
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 学术论文 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服