收藏 分销(赏)

基于C#和XML语言的WebGIS研究论文.doc

上传人:仙人****88 文档编号:8744420 上传时间:2025-02-28 格式:DOC 页数:40 大小:419KB
下载 相关 举报
基于C#和XML语言的WebGIS研究论文.doc_第1页
第1页 / 共40页
基于C#和XML语言的WebGIS研究论文.doc_第2页
第2页 / 共40页
点击查看更多>>
资源描述
目录 第一章:WEBGIS概述 5 1.1.WebGIS的概念 5 1.2 WebGIS的特点及其与传统GIS的比较 5 1.3 传统GIS系统的主要弊端 6 第二章·WebGIS数据管理技术及开发研究 8 WebGIS信息发布体系的发展 8 1.静态HTML式的WebGIS信息发布体系 8 2.基于动态HTML的GIS信息发布体系 8 第三章WEBGIS系统实现技术 9 3.1 CGI通用网关接口 9 3.2插件/控件法 9 3.3基于JAVA技术的方法 10 第四章XML及其在地理信息领域的应用 11 4.1传统Web语言的缺陷 11 4.2可扩展的标记语言XML 11 4.2.l可扩展标记语言的特点 11 4.2.2 XML标准体系 13 4.2.3 XML在GIS中的应用 15 XSL的重要作用 16 4.3基于 XML的 GIS元数据应用 17 4.4 XML在 WebGIS三层体系结构中的应用 18 4.4。IXML与空间数据库 18 4.4.1 XML与空间信息Web服务器 19 4.4.2XML与客户端的地图浏览 21 C#创建XML文档 21 第五章:SVG与XML 23 5.1 SVG简介 23 5.1.2 SVG的图形对象: 24 5.1.3SVG中的符号: 25 5.1.4 SVG的展现效果: 25 5.1.5 SVG动画: 25 5.2用SVG技术实现基于Web的GIS 25 5.2.1SVG与地理信息系统的Web应用 28 5.2.2简单、便携、表现丰富的矢量图像 29 5.2.3图标管理 32 SVG的生成 34 SVG生成实例 35 第六章 结论 40 致谢 41 参考文献 42 摘要 进入21世纪后,随着计算机技术和网络技术的突飞猛进,各种基于internet的应用开始在全球得到飞速发展,在过去的基础上采用web技术的webgis技术得到了越来越多的应用,本文就是在XML和C#的基础上讨论了有关webgis的开发,模型以及实现方法和未来的发展等,并且着重介绍了xml语言的分支-SVG语言实现webgis的方法, 关键字:互连网,C#,XML,地理信息系统,SVG ABSTRACT Today, we enter the new year2k,as the fast the technology of computer and web fast developing , many kinds applications based of internet have achieved a large development quickly ,at the same time ,the new webgis which developed from the old gis have been used more and more with the web technology, this document discussed the exploitations of webgis under the xml and c#, as well the models and realization means, also the development in the future, etc , besides emphasize introducing the language svg of xml which carry out webgis Key words: INTERNET , C# ,XML, GIS ,SVG 、 第一章:WEBGIS概述 地理信息系统(Geopphic Informaton system,以下简称GIS)是二十世纪60年代发展起来的对空间信息进行分析与研究的技术,是测绘学、地图学、地理学、遥感与卫星定位技术、现代通讯技术、专家系统技术等多学科、多技术集成的综合信息管理系统与空间地理信息相关的研究数据采集、存贮、管理、分析和表达的应用技术。从实质上来讲,GIS是一个数据库管理系统。GIS是以生间数据库为基础,采用空间模型分析方法,提供多种空间信息和与生间信息相关的非空问信息,目前已广泛应用于农业区域规划、上地管理、自然资源综合开发、发展规划、环境保护、灾害预防、投资环境评价和决策分析等领域。 进入二十世纪90年代后期,随着计算机技术和网络技术的突飞猛进,各种基于Internet的应用开始在全球得到飞速的发展,在信息管理方面,许多政府部门和企业开始采用Web技术和GIS相结合即所谓的WebGIS技术,为信息的获取、发布和共享开拓了新的空间。 1.1.WebGIS的概念 简单地说,所谓WebGIS是一个基于Internet网络环境的一种分布式计算机信息系统,它能够通过网络进行地理信息的动态发布、共享、交互分析和查询,Web分布式交互操作是WebGIS的重心。地理信息是描述地球表面的空间位置和空间关系的信息,空间数据包括带有空间位置特征的图像、图形数据和与此相关的文本数据。WebGIS的基本思想就是在互联网上提供地理信息,让位于不同地点的用户能够通过网络浏览器交互式地浏览和获取地理信息系统中的数据和功能服务。并能加以分析与应用。 1.2 WebGIS的特点及其与传统GIS的比较 WebGIS可以看作是由多主机、多数据库和多台终端通过Internet组成的分布式系统,是一个基于网络的客户/服务器(C/S)系统。相比传统 GIS技术WebGIS可以充分利用网络资源,实现数据信息的多用户共享,减少客户端的投资,并能维护服务器端数据库的安全,是一种理想的全局优化模式。 WebGIS在组成结构和应用技术等方面己与传统的GIS技术有很大的不同,传统的GIS是将数据的属性信息与地理信息相结合,以数字化地图为平台直观形象地表达对应的自然和社会经济等各种信息。而WebGIS则是以蕴含分类信息的电子地图为载体,通过网络实现数据和应用的共享,实现基于地图的浏览、查询、分析应用等功能,从而能够构建智能化、个性化、交互式的信息管理和服务平台。 1.3 传统GIS系统的主要弊端 传统GIS系统最早为基于单机的结构,应用与管理在同一机器上进行,资源共享性在局域网应用时,也只是以文件共享的低级形式实现分布式结构,地理数据和属性数据集中存放于服务器硬盘中,由空间数据库系统进行统一管理,在客户端采用GIS桌面系。这种传统系统存在的主要问题是服务器只是管理数据,而实际应用的处理能力完全依赖客户端,效率低下。客户端的任何操作都要将服务器文件远程复制到本地进行,多用户并发操作时,网上存在多个备份,数据完整性难以控制;大量数据频繁传输,还会造成网络瓶颈,降低系统性能。成本高昂,大多数企业用户的GIS应用仅限于一般性功能,因此每个客户端都配备昂贵的专业GIS软件无疑是巨大浪费。令GIS桌面系统操作复杂,需要专业基础和长期培训,不适合企业级应用及推广。与传统GIS系统相比较,WebGIS系统主要具有以下特点与优势: 降低了客户端应用成本WebGIS客户端无需配备昂贵的GIS专业软件,只需使用Web浏览器(有时需要安装插件),其软件成本与全套专业GIS相比明显要节省很多。 更广泛的客户访问范围: 网络客户可以同时访问多个位于不同地点的服务器上的最新数据,而这一Internet/Intlanet所特有的优势极大地扩展了GIS的数据管理能力,增强了对生间数据管理的时效性,使分布式的多数据源的数据管理和合成更易于实现。 客户端平台独立性 : 无论客户机采用何种操作系统,无论WebGIS服务器端使用何种GIS软件,只要支持通用的Web 浏览器,用户就可以透明地访问WebGIS数据,在本地机器或某个服务器上进行分布式部件的动态组合和空间数据的协同处理和分析,实现远程异构数据的共享。 更简单的操作 要推广GIS,使GIS系统为广大的普通用户所接受,而不仅仅局限于少数受过专业培训的专业用户,就要降低对系统的操作难度。通用的Web浏览器无疑是降低操作复杂度的最好选择之一。平衡高效的网络计算负载传统的GIS大都使用文件服务器结构的处理方式,其处理能力完全依赖于客户端,效率较低。而WebGIS能充分利用网络资源,将复杂的处理交由服务器执行,而对简单的操作则由客户端直接完成。这种分布式计算模式能灵活高效地在服务器端和客户端之间合理分配网络流量与荷载,从而大大优化了网络数据传输与处理的效率。 第二章·WebGIS数据管理技术及开发研究 WebGIS信息发布体系的发展 信息发布系统是指在Internet上进行信息发布的信息系统,其特征是利用Internet的技术传输和处理信息。信息发布系统有狭义和广义之分,狭义的信息发布系统也称Web信息发布系统,主要指利用 Web提供的通信手段在internet网络上进行信息的发布。而广义的信息发布系统是包括采用internet技术从信息的采集、信息的管理到信息的发布与交互的全过程的信息系。广义的信息发布过程存在于组织内部、组织与组织之间以及组织与整个世界之间 当前的信息发布系统已经不仅仅停留在简单的信息发布,而是正向电子商务阶段发展 也就是说 狭义的信息发布系统正在向广义的信息发布系统发展。 1.静态HTML式的WebGIS信息发布体系 最初,基干Web 的空间地理信息发布和其他的Web信息发布一样,只是纯静态HTML式的发布,其形式是静态文字和地理图象组成的HTML网页,明显不能满足用户需耍。因为在纯静态网页上,用户不能主动交互地提出查询请求,只能被动地接受信息,这只能被称为网上地图,而不是严格意义上的WebGIS系统。 2.基于动态HTML的GIS信息发布体系 纯静态HTML式的GIS信息发布的不足是由于受HTML主页本身特性和技术发展水平的限制。通用网关接口技术(CGI)和各种Web服务器的编程接口能实时、动态地生成HTML网页代码,使用户能看到服务器即时生成的动态信息。其基本过程是:Web服务器调用CGI,CGI分析用户请求 并进行相应的GIS系统服务程序处理,再将结果返回浏览器用户。基于动态HTML的GIS信息发布体系也有一个从简单到完善的过程。最初是由服务器返回实时生成的栅格图象格式,如JPEG、GIF等。这样的图象也能动态响应用户需求;但它返回前端浏览器的数据是图象,只能浏览而不能进一步分析,因而是非智能化的。 第三章WEBGIS系统实现技术 3.1 CGI通用网关接口 通用网关接口(CommonGmewayInterface,CGl)是一个WWW服务器主机对外服务的标准接口,是最早用于增强Web动态性和交互性的一种方法。远程客户可以通过浏览器和向服务器发出数据或操作的请求,服务器理解客户的请求后,调用后端的CGI程序,完成相应的数据操作后把结果回传给远程用户. 用这种方法实现WebGIS的缺点在于这是一种单一外部程序对应单一功能模块的模式,不便于系统功能模块的管理:由于CGl程序对艇台服务器来说都是公剧的,执行程序的安全性不易得到保障:CGI的“单步”特征决定了在一个以流程为特征的系统中,CGI应用程序的管理与调用将是频繁而无序的,服务器的每次请求都要产生一个CGI进程,影响了系统响应速度,增加了系统的资源开销。微软的ISAPI利Netscape的NSAPI克服了CGI的上述缺点,它们也是WebServer功能扩展方法,由于这些动态连接库运行中并不拥有独立的数据段和堆栈段,直接凋用系统进程(也就是父进程)的资源,因此容易因堆栈溢出而导致系统崩溃,这要求有较高的系统安全性和健壮性。 3.2插件/控件法 插件(Plug-in)和控件(ActiveXContr01)是扩充浏览器功能使之能够解释自定义格式的GIS数据文件的方法。这种功能模块对Netsacpe就叫做插件,而对于IE就叫做控件. 以插件为例,这种方法的工作原理是浏览器在启动时门动装载特定目录下的Plug-in动态连接库。当访问的页面中嵌入了特定格式的元素或对象时,浏览器自动在已经启动的Plug-in中寻找与该文件名后缀匹配的Plug-in并调用,从而解释并显示相应的嵌入元素。这种WebGIS实现方法的优点在于由于采用了本地代码,所以执行速度快:由于扩展了浏览器的处理功能,所以可以处理矢量地图数据:由于实现了客户端逻辑,所以在一定程度上平衡了客户和服务器两端的负载,减少了网络带宽要求。但是,需要特别指出的是,这种浏览器的嵌入功能模块需要安装在本地机器上,对客户而言,这是不方便不安全的。同时,传统软 件编程方法中不同版本之间的兼容性及版本管理问题不能解决,一旦制定了新的格式,对应的浏览器中的嵌入模块就必须重新安装。 基于object web规范的WebGIS Object web技术是一种新兴技术,是分布式对象技术,Internet技术结合的产物。ObjectWeb应用给用户的突出感受是操纵的实体不再局限于含有”超链”的文档,作刚于实体的操作行为不再局限于下载一类的文件传输行为,用户甚至能控制Internet上的对象。 分布式组件技术是Object Web的技术基础,其中,组件是基于二进制标准的软件,它一旦生成则随处可用,可以跨平台、网络、应用程序而运行。组件之间跨进程、跨网络的方法调用需要依赖分布式组件标准通讯协议, 目前两种领先的协议标准是微软的DCOM和object ManagementGroup推出的CORBA。对Object Web来说,位于浏览器端的对象能够通过组件标准通讯协议直接调用服务器端组件上的方法,这样就可以避免Web服务器的瓶颈。分布式对象平台提供了一种可以伸缩的由服务器到服务器的体系结构,服务器对象可以运行在多服务器上从而动态平衡客户端请求的负载。 3.3基于JAVA技术的方法 目前利用Java编程语言开发WebGIS系统的方法可分为两种:一种是仅客户端部分基于Java的WebGIS系统,这是目前绝大多数系统采用的方法。即仅用Java语言开发客户端的GIS功能,而服务器端在现有的系统代码的基础上,通过制定GIS空间数据传输协议以及和Java程序交互的功能模块就可以。这种方法的特点足系统开发简单易行,可以大大缩短系统的开发周期,同时又能保证开发的系统具有较强的绘图和地理空间分析能力,也能在一定程度上实现跨平台应用。如ESRI公司的IntemetMapObieclServer,GeosystemsGlobalCorp的MapQuest等。第二种方法是客户端和服务器端都基于Java的WebGIS。也就是我们常说的纯Java系统的WebGIS。这种开发方式可以最大限度地发挥Java技术的优势,但是考虑到已经有的大量的基于C/C++的GIS系统,这个方法实质上要求推出相应的JAVA版本,因此采用这种方法的缺点有系统开发的难度大、工作量多、周期长的 第四章XML及其在地理信息领域的应用 4.1传统Web语言的缺陷 二十一世纪最大的特征是信息时代的到来,更确切的说是网络时代的到来。 Internet不仅是;一个网络的网络;,更是一个信息网络实体;。Internet将整个世 界紧密联系在一起,并在其基础上创造了无比崭新的人类文明。超文本链按标记 语言(HTML)是目前Web上通用的标记语言,它的出现使Internet跨越简单的 文本,进人图文并茂的阶段。但是,HTML并不完美。首先,HTML只是一种数据表现的技术,它无法揭示HTML标记中所揭示的含义。其次,标准的HTML规定了固定数据的标签集合,不允许用户定义自己的扩展标签。这也就同时导致了HTML语言在几个重要方面如可扩展性、结构性和有效性等方面的严重不足。 据估计,80%的信息是与空间位置有关系的。空间数据具有多源性、多语义 性、多时空性、多尺度和获取数据手段的复杂性等特点,这就决定了空间数据表 达的复杂性。尤其是在网络环境下如何对空间数据采用规范化的编码使得分布在 网络下的所有用户都可以无缝地获取、访问、浏览空间数据还存在着很大的问题。 HTML语言对复杂的空间数据的描述也仅仅局限于文本,对于图形数据就无能为 力了。HTML的优点在于简单,HTML的缺点也在于简单。 4.2可扩展的标记语言XML 4.2.l可扩展标记语言的特点 为解决上述问题,1998年2月10日,W3C正式批准公布了第M代的Web 语言;可扩展标记语言;(eXtensible Markup Languape)XML。之所以称之为可 扩展,是因为它不像HTML那样只有固定的形式。XML并不是一个独立的,预 定义的标记语言。它是一种无语言,它是用来描述其他语言的语言。XML语言 可以让信息提供者根据需要,自行定义标记及属性名,也可以包含描述法,从而 使XML文件的结构可以复杂到任意程度。良好的数据描述方法、可扩展性、半 结构化、跨平台是XML主要的特点。这是因为XML是用SGML(通用标记 语言)所书写的。XML给基于Web的应用软件赋予了强大的功能和灵活性,从 而给)开发者和用户带来了许多好处。 1.不同来源数据的集成: XML能够使不同来源的结构化、非结构化的数据很容易的集成在一起。软件代理商可以在中问层的服务器上对从后端数据库和其他应用服务器传来的数据进行集成。然后,数据就能被发送到客户或其他服务器做进一步的集成、处理和分发。 2.多种应用得到的数据: XML的扩展性和灵活性允许它描述不同种类应用软件中的数据,从描述搜集的Web页到数据记录。同时,由于基于XML的数据是自我描述的,数据不需要有内部地还就能被交换和处理。 3.本地计算和处理: XML格式的数据发送给客户后,客户可以用应用软件解析数据并对数据进行编辑和处理。使用者可以用不同的方法处理数据,而不仅仅是显示它。XML文档对象模型(DOM)允许用脚或其他编程语言处理数据。数据计算不需要返回到服务器就能进行。XML使数据的内容和表现分离开来,使用简单灵活开放的格式,可以给Web创建功能强大的应用软件,而这些软件原来只能建立在高端数据库上。 4.数据的多样显示: 数据发到桌面后,能够用多种方式显示。通过以简单扩展的方式描述结果化的数据,XML补充了HTML,被广泛的用来传递数据。HTML描述数据的外观,而XML描述数据本身。由于数据显示与内容分开,XML定义的数据允许指定不同的显示方式,使数据更合理地表现出来。本地的数据能够以客户配置、使用者选择或其他标准决定的方式动态地表现出来。CSS和XSL以及XSLT为数据的显示提供了开放的机制。便于数据的Web发布:由于XML是一个开放的基于文本的格式,它可以和HTML一样使用现有的网络通讯协议进行传送,不需要对现有的网络通讯决议进行变化。 5.可扩展性: 由于XML把数据和显示分开,处理者能够在结构化的数据中嵌套程序化的描述以表明如何显示数据。这是令人难以置信的强大机制,能尽可能的减少客户计算机同使用者的交互,同时减少了服务器和浏览器进行数据交换的响应时间。 XML的上述特点决定了通过XML可以对复杂的地学信息加以规范化定义和描述,并且在互联网上进行数据的传输及有效的访问。 4.2.2 XML标准体系 虽然XML标准本身简单,但与XML相关的标准却种类繁多,W3C制定的 相关标准就有二十多个,采用XML制定的重要的电子商务标准就有十多个。这 一方面说明XML确实是一种非常实用的结构化语言,并且已经得到广泛应用; 另一方面,这又为学习了解这些标准带来一定的困难,除了标准种类繁多外,标 准之间通常还互相引用,特别是应用标准,它们的制定不仅仅使用的是XML标 准本身,还常常用到了其他很多标准。对某一特定的应用领域哪些标准是重要的 ,哪些标准是基础的,被其他标准广泛引用呢?这些标准之间的相二关系如何 呢?XML标准的体系又是怎样的呢? XML标准体系 XML相关标准也可分为无语言标准、基础标准、应用标准三个层次如 图1-1所示。 图1-1 XML的相关层次结构 无语言标准(meta-Language): 描述的是用来描述标准的无语言。在XML标准体系中就是XML标准,是整个体系的核心,其他XML相关标准都是用它制定的或为其服务的。 基础标准(Foundation Standards): 这一层次的标准是为 XML的进一步实用化制定的标准,规定了采用XML制定标准时的一些公用特征、方法或规则。如:XML Schema描述了更加严格地定义 XML文档的方法,以便可以更自动化的处理 XML文档;XML Namespace用于保证 XML DTD中名字的一致性,以便不同的DTD中的名字在需要时可以合并到一个文档中。 应用标准(Application Standards): XML已开始被广泛接受,大量的应用标准,特别是针对INTERNET的应用标准,纷纷采用XML进行制定。有人甚至认为,XML标准是Internet时代的ASCll标准。在这Internet时代,几乎所有的行业领域都与Internet有关。而这些行业一旦与Internet发生关系,必然要有其行业标准。而这些标准往往采用XML来制定。当前较为重要的应用标准主要包括:用于 XML显示的标准:XHTML(采用 XML对 HTML的重新定义)。SVG(有关矢量图形的)、(SMIL 有关多媒体PJJ显示的)MathML(有关数学公式符号的);用于电子商务领域的标准:MicroPayments(W3C制定的)、BizTalk(Microsoft发起的电子商务的 schema库)、ebXML(联合国 UN/CEFACT小组和 OASIS共同发起的)、PIP(由诸多 IT业的巨子组成的一个标准化组织RosettaNet的应用网络标准。)等及其他领域的。 4.2.3 XML在GIS中的应用 基于 XML的 GIS程索引文件应用 在桌面GIS中,GIS数据通常是以图层的形式组织在工程文件中进行管理的, 工程文件可以将一系列的图形、图像数据有机的组织在一起进行有效的管理,对 于基于文件系统管理的 GIS通常都需要工程文件。例如 ArcView中的 apr文件等,这些工程文件都是基于文本的描述文件。由于,工程文件中图形文件与工程文件的关系是一种树状结构的关系,而这种关系与XML文件本身的结构是类似的,因此使用XML来创建工程文件就是一种必然的选择。 目前,国内外的一些GIS厂商都使用了XML作为工程文件的文件格式。我 们以地网GeoBeans为例,其中,使用了基于XML的工程文件。 <?xml version=;1.0;encoding=;gb2312;?> <GeoBeansProject prjdDes=;中国地图;> <Map> <MapLayer Name=;行政区划 Type=Polygon;Path=.\map\data\chinar.gbd;/> <MapLayer Name=;省界;type=;Line Path=;.\Map\Data\chinap.gbd/> <MapLnyer Name=;省会;Type=;Point;Path=;.\Map\Data\chinap.gbd;/> <Map> <Database> <Type>MS Access</Type> <Path>.\test.mdb</path> </Database> </GeoBeansProject> 上面的文件说明了一个工程文件是由地图和属性数据库所组成的,地图标签 中描述了包含地图的图层信息,名称,地图类型,文件的保存路径等信息。属性 数据标签中说明了数据库的类型,数据库的路径等信息。由于GML编码地空间数据文件是一个XML文件,因此,XML文件所具有地一起优点和便利之处,编码后GML文件也同样具有。XML中可以用XSL来进行数据转换和显示。XSL地全称eXtensible Stylesheet Language,它的主要功能就是将XML文件进行转换。XSL的基本意思就是:通过定义转换模板,将XML源文档转换为带样式信息的可浏览文档或是其它形式的文件。 XSL的重要作用 在基于XML的WebGIS系统中,XSL至关重要。主要有两个用处: (1)用XSL将编码好的GML格式的文件转换为其他形式的XML文件。在不同的WebGIS系统中存储地理数据的数据库是不同的,甚至在同一个WebGIS系统中会有着不同的数据库和数据格式。XSL可以根据需求将同一个GML文件转换为不同的其它数据,以便数据的存储。 (2)用XSL可以将同一个GML文件经过转换后,变为不同的样式显示出来。这样,对于不同的客户的不同显示需求,提供不同的XSL文件就可以了,不需改变数据。至于具体的转换过程,既可以在服务器端进行,也可以在客户端进行。两者分别对应着不同的转换模式: 1.服务器端转换模式。在这种模式下,XML文件下载到浏览器前先转换成HTML或SVG,然后再将HTML或SVG文件送往客户端进行浏览 a.动态方式,即当服务器接到转换请求再进行实时转换。 b.批量方式,实现将XML用XSL转换好一批HTML和SVG文件,接到请求后调用转换好的HTML即可。 2.客户端转换模式。这种方式是将XML和XSL文件都传送到客户端,由浏览器实时转换。前提是浏览器必须支持XML+XSL。至于为什么,第五章将有详细的论述。可以看出,使用XML描述工程文件,具有结构清晰、易于阅读、可扩展性好等特点。 4.3基于 XML的 GIS元数据应用 元数据(Metadata)是关于数据集的数据,是数据集的说明或描述。在地理信息系统中用于描述地理数据集的内容,质量等数据的一些特征。它可以帮助人们查找和理解数据。参照FGDC用户手册】的定义,我们认为元数据主要有如下作用; ·组织和维护对数据的投资 ·为数据的发现和获取提供信息 ·为数据的使用提供信息 由此可见,元数据是使数据充分发挥作用的重要条件之一。它可以用于许多 方面,包括数据文档建立、数据发布、数据浏览、数据转换及数据使用等。元数 据对于促进数据的管理、使用和共享均有重要的作用。 目前,人们对于地理信息元数据的研究已广泛开展,并形成了多个标准,其 中主要有美国联邦数据委员会(Federal Geographical Data Committee,FGDC) 的元数据标准和国际标准化组织ISO/TCO11 的元数据标准。这两个标准都从不同侧面对地理信息数据进行了比较详细的描述。我国的地理信息元数据标准的制定工作也正在积极展开,目前已有;中国可持续发展信息共享元数据标准;NREDIS信息共享元数据内容标准草案等。XML语言不仅可以用于数据的精确表达,而且可以为异构信息系统之间的数据交流提供有效的方法。除了XML本身的诸多优点,考虑到目前的元数据标准可以很自然地用XML来表示和传输(因为目前的元数据系统有不少是使用SGML来表示和传输元数据的,而XML是SGML的一个子集)可以方便转换,查询以及业界对XML的支持。 可以说,XML对元数据地描述是XML在地理信息领域最早的应用,很多 的GIS厂商都采用XML描述地理元数据。ESRI是其中最早的一个,在2000年 Arcinfo80版本推出时就采用了基于XML的地理元数据。 在地网GeoBeans平台软件中,也使用了XML来描述地理元数据。元数据 的格式主要采用FGDC的标准,作为该标准的一个于集。在元数据中主要描述 了下列几方面的数据信息:标识信息,数据质量信息,空间数据表示信息,空间参照信息,实体和属性信息,发行信息,元数据参考信息。 4.4 XML在 WebGIS三层体系结构中的应用 XML是针对于数据内容和结构的分析和描述,所以XML原则上可以被应 用于任何WebGIS的解决方案。GML作为XML的子集,因此继承了XML的 所有特点,并有了新的扩展、在目前流行的WebGIS基于B/S结构三层体系结构中。XML在客户端、服务器端、数据库端的都具有广泛的应用前景。未来,采用XML技术构建的WebGIS的体系结构如图1-2所示: 图 1-2 基于XML的WEBGIS体系结构 4.4。IXML与空间数据库 对于目前所广泛使用的WebGIS软件,基础数据库即WebGIS的数据源通常 采用关系数据库、面向对象的数据库、或者文件系统来存储图形数据和矢量数据 等原始的大量非XML的份 数据。这些数据通常以M进制的形式来存储。对于 客户端数据的请求也是以二进制数据的形式来返回、所有这些空间数据库系统都 是为某一种特定格式的GIS数据源及其应用而设计的,如果用户想在使用一个 WebGIS系统浏览一个空间信息系统中的数据时,需要查看其它空间数据库中的 数据,甚至想把这些数据整合起来,都是非常困难的。正是由于WebGIS系统对 宇间数据库中数据处理技术的封闭性决定了它们的封闭性,使它们彼此无法共享 数据和处理过程。这种缺乏开放性的WebGIS空间数据管理带来的直接后果就是 用户非常困难,甚至于无法从异构系统中取得相关的空间数据,并把它们融合为 一个完整的万维网空间数据应用系统。 而支持XML的数据库系统,不仅仅提供一种在数据库管理系统同Web应用 间的转换接口。而且使得异构数据的存取变得更加容易,这些数据可以是简单的 文本,也可以是声音、图像、视频等多媒体数据。数据的来源将不受限制,不论 数据是来自于原始的XML资料库,还是从现有的文档甚至各种数据库系统来源读取到的。 4.4.1 XML与空间信息Web服务器 目前,常用的Web服务器包括Microsoft的IIS(NT环境下)、Netscape的 Enterprise Server、Apache(Unix环境)、IBM的 Websphere等。Web服务器用于响应客户端的请求,并与应用服务器相连接。应用服务器的主要作用包括; 1.XML/GML数据的识别和转换工作: 2.提供空间数据存在于哪些数据库服务器上; 3.处理客户请求的负载平衡; 4..将客户端请求传递给数据库服务器; 当底层数据库中获得空间和属性数据并以XML文档的形式返回应用服务 器后,应用服务器将根据客户端的要求对所获取的文档进行重新的格式化。对 于矢量图形数据则可以直接返回客户端,由客户端进行数据的解析和显示。对 于属性数据,则可以赋予其一式样表单(XSL 文档),以确定其在客户端的显示。 调用接口的定义 将XML应用于定义Internet的远程调用接口,就产生了Internet接口定义语言(简称WIDL);并用XML来传递服务器消息,产生了适合Internet的远程过程调用和消息传递机制。 <WIDL NAME="cn.ac.ncg.OrderGeobeans"VERSION="3.0"> <RECORD NAME="BeansOrder"> <VALUE NAME="accountID"TYPE="i4"/> <VALUE NAME="unit"TYPE="string"/> </RECORD> <RECORD NAME="BeansReceipt"> <VALUE NAME="orderNumber"TYPE="i4"/> <VALUE NAME="forture"TYPE="string"/> <VALUE NAME="BeansBalance"TYPE="r4"> </RECORD> <METHOD NAME="OrderGeoBeans"INPUT="GeoBeans" OUTPUT="BeansReceipt"RETURN="orderNum"/> </WIDL> 下面的例子是用XML表示的服务调用(RPC)消息 <RPC TYPE="REQUEST"> <VALUE NAME="accountID"TYPE="i4">2001</NUMBER> <VALUE NAME="unit"TYPE="string">nsii</VALUE> </RPC> <RPC TYPE="REPLY"> <VALUE NAME="forture"TYPE="string"> ... </VALUE> <VALUE NAME="accountBalance"TYPE="string">9000</NUMBER> </RPC>[2]。 4.4.2XML与客户端的地图浏览 WebGIS客户端主要负责地图的例览、显示以及与用户的交互。客户端对返 回的XML数据进行个性化和多样化的展示。显示XML。数据的主要工作由XML 解析器完成,Microsoft的 IE5.x。Netscape的 Navigator 6.0等浏览器已经内嵌了XML解析器。随着XML技术的发展,浏览器对XML技术全面的支持将是必然的趋势。 一些基于XML的描述矢量图形元素的规范已经制定出来,包括SVG(可 伸缩的矢量图形)、VML(矢量标记语言)、X3D(扩展的 3D建模语言,具有 XML的语法和VRML的行为),这些规范在很多地方与GML相似,但是它们有 着不同的目标。每一种都有自己不同的几何描述的方法。它们侧重于图形的表现。 从GML数据中生成一幅地图需要将GML转化为一种矢量图形格式,如:SVG、 VML或者VRML。这就意味着将某一种图形样式与GML的每一种特征或者特 征实例联系起来。目前,IE5.x已经内嵌了VML解析器。可以直接浏览VML 格式的文件,对SVG格式进行转换的插件 plug-in)和Activex 控件也有一些 公司开发出来免费使用。这些在下一章中将重点介绍。 对于属性数据的显示,则可以根据用户的需求灵活的配置,这里将会充分 体现出XSL的强大功能、使用XSL、XSLT、以及CSS可以在客户端对属性数 据进行多样性的显示。 C#创建XML文档: 在本文中我们来介绍一下用C#创建XML文档的二种方法,这二种方法各有千秋,第一种创建起来更灵活,第二种创建起来更方便。 (1)C#创建XML文档的第一种方法: 这一种方法是按照按照XML的结构一步一步的构建XML文档。C#构建XML文档通过.Net FrameWork SDK中的命名空间;System.Xml;中封装的各种类来实现的。下面就按照一个XML典型文档结构来介绍一下。 1.首先要创建一个空的XML文档: 在命名空间;System.Xml;中有一个类;XmlDocument;,C#通过这个类来描述XML文档。下面是用C#创建一个XML文档。 xmldoc = new Syst
展开阅读全文

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


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 教育专区 > 小学其他

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

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

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

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

gongan.png浙公网安备33021202000488号   

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

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

客服