OpenGIS简介

OpenGIS

求助编辑百科名片

OpenGIS(Open Geodata Interoperation Specification,OGIS-开放的地理数据互操作规范)由美国OGC(OpenGIS协会,OpenGIS Consortium)提出。OGC是一个非赢利性组织,目的是促进采用新的技术和商业方式来提高地理信息处理的互操作性(Interoperability),它致力于消除地理信息应用(如地理信息系统,遥感,土地信息系统,自动制图/设施管理(AM/FM)系统)之间以及地理应用与其它信息技术应用之间的藩篱,建立一个无“边界”的、分布的、基于构件的地理数据互操作环境,。

目录

OpenGIS基本概念
特点
开放的GIS
相关定义
软件、类库
框架作用
优势
开放无止境?

编辑本段OpenGIS基本概念

  开放式地理信息系统(Open GIS)是指在计算机和通信环境下,根据行业标准和接口所建立起来的地理信息系统。它不仅使数据能在应用系统内流动,还能在系统间流动。Open GIS是为了使不同的地理信息系统软件之间具有良好的互操作性,以及在异构分布数据库中实现信息共享的途径。Open GIS规范是由开放地理信息系统协会(Open GIS Consortium,简称OGC)制定的一系列开放标准和接口。
  OGC 由商业部门、政府机构、用户以及数据提供商等多个领域的成员组成,以获取地理信息处理市场最大的互操作。OGC的目的是通过信息基础设施,把地理空间数据资源集成到主流的计算技术中.促进可互操作的商业地理信息处理软件的广泛应用。Open GIS规范提供了地理信息及处理标准,按照该规范开发的各个系统之间可以自由地交换地理信息和处理功能。
  OGC会员主要包括GIS相关的计算机硬件和软件制造商(包括ESRI, Intergraph,MapInfo等知名GIS软件开发商),数据生产商以及一些高等院校,政府部门等,其技术委员会负责具体标准的制定工作。
  OpenGIS的目标是,制定一个规范,使得应用系统开发者可以在单一的环境和单一的工作流中,使用分布于网上的任何地理数据和地理处理。它致力建立一个无“边界”的、分布的、基于构件的地理数据互操作环境,与传统的地理信息处理技术相比,基于该规范的GIS软件将具有很好的可扩展性、可升级性、可移植性、开放性、互操作性和易用性。

编辑本段特点

  具有下列特点:
  (1)互操作性:不同地理信息系统软件之间连接、信息交换没有障碍。
  (2)可扩展性:硬件方面可在不同软件、不同档次的计算机上运行,软件方面增加新的地学空间数据和地学数据处理功能。
  (3)技术公开性:开放思想主要是对用户公开.公开源代码及规范说明是重要的途径之一。
  (4)可移植性:独立于软件、硬件及网络环境,不需修改便可在不同的计算机上运行。
  除此之外,还有诸如兼容性、可实现性、协同性等特点。
  OGC促进了GIS的互操作。它通过规范,改变了地理数据及其服务的处理方式,通过互操作的开放式系统将它们集成,从而在Intranet/Internet环境下,通过分布式平台从异构信息中直接获取信息。OGC促进了地理数据提供者、厂商和服务商之间的联合.推动了全球范围内的标准化进程,拓宽了地理数据服务市场。Open GIS技术将使GIS始终处于一种有组织、开放式的状态,真正成为服务于整个社会的产业以及实现地理信息的全球范围内的共享与互操作,是未来网络环境下GIS技术发展的必然趋势。

编辑本段开放的GIS

  开放GIS就是网络环境中对不同种类地理数据和地理处理方法的透明访问。开放GIS的目的是提供一套具有开放界面规范的通用组件,开发者根据这些规范开发出交互式组件,这些组件可以实现不同种类地理数据和地理处理方法间的透明访问。
  从小型产业到全球空间数据基础机构开放GIS协会的OGIS工程技术委员会已经完成了一系列文献的第一部分,包括OGIS。第一本叫《开放GIS交互性指南》,它全面而深入地阐述了OGIS,接下来出版的OGIS文献将包括高级技术语言,这种语言是一种完全意义上的执行语言,不需要解译。它的说明书将在1996年初由GIS世界有限公司出版。这是个好消息,但OGIS并非OGC的最终对象,《开放GIS交互性指南》的出版不是OGC的第一个重要里程碑。OGC的真正功能是在地理信息领域制定一个规范来统一我们的行业,并把这种规范融入到更宽的技术领域和更大的市场中,使它成为全球信息基础机构不可分离的一部分,全球信息基础机构主要是组织世界性活动和解决重要环境和基础设施问题的机构。类似的工作在其它行业已经取得了成功。
  国际竞争不是OGC所要解决的问题,OGC所要解决的是把本行业从信息技术这个大行业中分离出来。长时间以来,GIS只不过是一个“家庭手工业”,它的很多方面与机械行业在工业革命前的受限情况相似,不过现在这种情况已经得到了改变。
  目前,GIS软件开发正朝着组件式GIS方向上发展,因为在上两个世纪,组件式这一基本原则已经加强了技术上的优势:例如,通过先把一个复杂繁琐的大问题划分为一个个更易解决的小问题,从而成功地进行了工程分析。充分利用现有的零件和材料就可以进行组装制造。一套可行性标准的出台、商品和物质的丰富更使组件式成为了现实。
  过去,工程原则趋向于从技术和工艺向既定的程序和方法发展。虽然革新者和发明家用直觉和强制力量得出了新产品和成果,但这种进步是偶然的,材料的运用效率很低,商品化的进程很慢。一般情况下,初始阶段后紧接着的是学习技能阶段,在这个阶段中每个人都模仿革新者而成为熟练的从业者。但象工匠一样,他们的行业受到缺乏标准、专门化和基础设施的限制。科学和工程学把规范和理论框架提到了日程上,发展变得更有预见性,人们倾向于他们的专业领域,数量,质量和应用激增,是标准和其它基础设施支持了这种发展,整个市场价值和规模扩大。
  《开放GIS交互性指南》中的一个新概念“信息通讯”对GIS的普及起着重要的作用。OGIS的第一版将规范空间属性和几乎所有信息行业所需要的支持。然后,OGIS将提供一个标准方法,通过这种标准信息行业(整个工业的“技术授权者”)可以为在他们学科或行业中使用的空间数据编纂符号,开发方法和使用权限,也就是说,因为学术评论委员会和专业组织协会提供了符号定义,“基础OGIS”将会被扩充,学术评论委员会和专业组织协会的职责就是为他们的用户建立符号和编译规则的,这些符号和编译规则将确定“基础OGIS” 和其它学科空间符号的信息行业界面。

编辑本段相关定义

  OpenGIS定义了一组基于数据的服务,而数据的基础是要素(Feature)。所谓要素简单地说就是一个独立的对象,在地图中可能表现为一个多边形建筑物,在数据库中即一个独立的条目。要素具有两个必要的组成部分,几何信息和属性信息。OpenGIS将几何信息分为点、边缘、面和几何集合四种:其中我们熟悉的线(Linestring)属于边缘的一个子类,而多边形(Polygon)是面的一个子类。也就是说OpenGIS定义的几何类型并不仅仅是我们常见的点、线、多边形三种,它提供了更复杂更详细的定义,增强了未来的可扩展性。另外,几何类型的设计中采用了组合模式(Composite),将几何集合(GeometryCollection)也 定义为一种几何类型,类似地,要素集合(FeatureCollection)也是一种要素。属性信息没有做太大的限制,可以在实际应用中结合具体的实现进行设置。 相同的几何类型、属性类型的组合成为要素类型(FeatureType),要素类型相同的要素可以被存放在一个数据源中。而一个数据源只能拥有一个要素类型。因此,可以用要素类型来描述一组属性相似的要素。在面向对象的模型中,完全可以把要素类型理解为一个类,而要素则是类的实例。 通过GIS中间件可以从数据源中取出数据,供WMS服务器和WFS服务器使用。WMS服务器接收请求,根据请求内容的不同,可以返回不同格式的最终数据。例如,WMS可以返回常用图片格式的地图片段供最终用户阅读(类似Google Maps),其中地图是根据一个样式文件(SLD)生成的,它描述了地图的线划粗细,色彩等;WMS也可以返回GeoRSS和KML用来和其它地图服务互通。WFS服务器也可以接收请求,但WFS将返回GML 格式的地理信息数据。GML是一种基于XML的数据格式,它可以完整的再现数据,也是 OpenGIS数据源的重要形式。也就是说,WFS返回的GML可以继续作为数据源。在WFS请求中,OpenGIS定义了一个Filter标准,用来实现对数据的筛选,使WFS更加灵活。另一方面,WFS还支持通过WFS-t提交客户端对数据的修改。通俗地说,WMS是“只读”的,而WFS则是可以读写的。 草草说完,发现自己的理解也十分有限,如有谬误,还望读者不吝指正。另外还有WCS方面不曾涉及,要获得更进一步的了解,请下载OpenGIS的标准进行阅读。

编辑本段软件、类库

   几何基础类库[1]
  代表: JTS(Java), GEOS(C++), Shapely(Python)
  这类几何基础类库主要实现的是OpenGIS的Simple Feature Access标准,简单地说他们就是对几何类型(Geometry)进行了一定程度的封装。以JTS为例,它按照OpenGIS对于Geometry的描述实现了基于Java的接口和继承关系,制作好了可以使用的类似Point、LineString这样的类。另外这些类库还普遍实现了OpenGIS的DE-9IM空间位置关系判断和一些常用的计算几何方法(如缓冲(buffer))。
  此类软件是所有GIS类库的基础,正如几何是GIS的基础之一一样。
   数据源实现
  代表:PostGIS(PostgreSQL),MySQL Spatial
  数据源的实现主要是开源数据库的空间扩展。数据库的空间扩展不仅仅在数据表中支持几何类型的存储,而且更提供了SQL级别的集合关系判断,例如,可以直接利用SQL查询在某个多边形内的点。
   中间件
  代表:GeoTools(Java)
  中间件在系统中扮演连接数据和服务的角色。GeoTools承担了从各种数据源(如PostGIS,GML,Shapefile,WFS)读取数据并将数据标准化的工作。Feature接口就定义在GeoTools中,不同数据源的数据读出后被统一成包含一个Geometry成员(定义在JTS中)的Feature接口的实现。这样,进一步的操作只需面向Feature即可,省去了高层软件对于不同数据源的解读过程。另外,GeoTools还是OpenGIS标准的全面实现,其中包括Filter、坐标转换、GML。
   WMS/WFS服务器
  代表: GeoServer(Java),MapServer(PHP)
  地图服务器扮演向网络中的客户端提供地图服务的角色。这类地图服务器可以接收统一规范的WMS和WFS请求(request),返回多种格式的数据。这个过程有WMS/WFS规范的严格规定,所以,对客户端来说其地图服务器的实现究竟是什么并不会造成太大影响。这样的规范,为公共的、联合的地图服务创造了可能。
   客户端
  代表:OpenLayers/MapBuilder(JavaScript),uDig(Java),QGIS(C++)
  客户端分为浏览器和桌面客户端程序两种。以OpenLayers为代表的B/S系统客户端现在已经非常强大,它可以封装WMS请求,在浏览器上实现地图的切片载入功能。另外拖动、缩放都功能也非常完善,可以实现跨浏览器操作。最近的OpenLayers版本还支持了矢量编辑功能,可以通过WFS-t提交。而传统的桌面客户端程序功能则更加强大,支持多种包括WMS和WFS在内的数据源,另外编辑功能、操作性也要比浏览器中的强大。
   Shapefile
  ESRI的Shapefile格式是GIS矢量文件格式的事实标准,通常由.shp, .shx, .prj, .dbf等文件组成。OpenGIS的实现软件普遍支持Shapefile的读写。Shapefile在GeoServer中可以直接作为数据源,但是这种方式并不被推荐,原因很简单,基于文件的数据源可能造成性能不佳和数据丢失。
   GML
  GML是OpenGIS的标准规范之一,它基于xml描述地理数据。于Shapefile相比,xml更容易读写,易于在网络中以各种形式传播。同时,xml还具有可读性,人可以理解和辨识。GeoTools实现了GMLDataStore,因此在GeoServer中GML也可以直接作为数据源(需要下载GML扩展)。同时,GML的数据源为数据源动态化提供了实现的思路和可能性。
   PostGIS
  PostGIS是加拿大Refractions公司支持的开源项目,它为开源数据库PostgreSQL提供了空间支持。PostGIS安装后,PostgreSQL中出现一个模版数据库,新建空间数据库时只需以PostGIS为模版即可。PostGIS在SQL级别上实现了基本的空间运算功能。另外绝大多数开源GIS软件(即使是不严格遵守OpenGIS标准的)都支持PostGIS数据表的直接载入,读写等功能。毋庸置疑,PostGIS是OpenGIS数据源最佳实现。
   MySQL Spatial
  MySQL是开源数据库的大鳄,从MySQL4.0开始加入了Spatial扩展功能,实现了OpenGIS规定的几何数据类型,在SQL中的简单空间运算。但是从4.0之后到现在,MySQL的Spatial部分一直没有继续的更新和增强。加上早先MySQL在SQL上对空间运算支持的不完善(只支持基于最小外接矩形的关系判断),所以MySQL是开源数据源中一个不太让人满意的选择。不过由于MySQL在小型项目上的广泛引用,在一些情况下也是可以以MySQL为数据源的。
   db4o?: 对象数据库作为数据源的可能性
  OpenGIS的系统架构完全是基于一个面向对象的模型的,而传统的关系数据库、Shapefile文件是现在应用的主流。在地理描述的过程中,关系数据库的特性并没有被完全发挥,而为此还需要有中间件做ORM的工作。试想直接将FeatureType和Features以对象形式存入对象数据库,整个系统至少在理论上可以减少一层。不过,以对象数据库作为数据源,还需要对象数据库的性能进一步提升。而之后的和已有软件的对接应该不成问题,因为db4o可以直接存储Feature对象和Geometry对象。
  但是因此产生的数据对实现的依赖性又是一个问题:数据和实现紧密耦合,数据中捆绑了代码,虽然db4o号称支持Java和.NET的的互操作,但是对于其它实现来说又成了问题。从这个角度来说,对象数据库作为数据源是一种倒退。
   为什么没有KML?
  KML作为一种新的标准(没有在意最后是否通过),它的作用主要是网络中地理信息的传输。KML是一种面向客户端设计的数据形式,这是它不能取代GML地位的原因,同时也是它在GoogleEarth和很多地图应用上远强于GML的原因。对照一下KML和GML的形式就很容易理解,GML将属性数据存储为Element,而KML则是以超文本的形式存储属性数据,前者便于数据读取,后者便于客户端表现。于KML很类似的就是GeoRSS,效果是相似的。

编辑本段框架作用

  开放GIS是做什么的?开发者用开放GIS规范的界面建立系统的过程中要开发一些过渡软件、组件软件和能处理所有类型地理数据和具有地理数据处理功能的应用软件。这些系统的用户可以共享一个巨型的网络数据空间,数据可以在不同的时间由无关的组织用不同的方法为不同的目的采集的,也可以处于早期的控制系统之下。
  具有开放GIS规范统一界面系统中的地理数据可以被其它所有具有开放GIS规范统一界面的软件访问。这些界面要使标准桌面PC机或运行低档开放GIS绘图应用软件的手提电脑的用户能够通过制图软件中简单图形选取功能在网上查询远程数据服务器,远程数据服务器贮存一些商用的地理数据、这些数据存贮在配置有开放GIS界面的通用关系数据库管理系统(RDBMS)中,一部分数据也许是几年前在Genasys、Intergraph MGE、或ESRIARC/INFO系统中采集的,也可能是一套共用的关系型数据库记录集,用户利用绘图应用软件进行查询时,记录集的街道地局限在满足用户查询条件的区域,由于客户绘图软件存在着不足,信息在传送过程中可能会丢失一部分,但服务器和绘图应用程序可以把信息的丢失的大概或详细情况通知用户。
  用户还能从远程服务器请求获得地理数据处理服务,一些价格较低的绘图应用软件就可以下载GIS功能的工具条,这些工具条可以控制高级的、功能强大的远程GIS服务器。在许多分布式地理数据处理应用软件方案中,为了得到一个答案,这些应用软件可以到多个服务器上进行查询。基于网络的过渡软件对这一功能的实现起着重要的作用。开放GIS规范为软件开发者提供了框架,根据这些框架开发的软件可以使它们的用户在一个开放信息技术的基础上通过一般的计算界面就可以访问和处理不同来源的地理数据。
  “软件开发者的框架”意味着开放GIS规范是一个全面的、通用的具有交互性的地理数据处理方案的详细软件规范。“访问和处理”在本文中意味着地理数据的用户可以远程查询数据库并控制处理源,可以利用其它分布式计算技术,如软件从一个远程环境传送到用户当前环境临时使用。也就是说基于组件式软件或复合文档环境的应用程序可以进行地理数据处理。“不同来源”意味着用户可以以不同方法访问数据,可以把数据贮存在不同的相关或不相关的数据库中。“通过一般的计算界面”意味着开放GIS界面为所有使用这种开放界面的软件间提供了可靠的通讯,也就是说,所有具有开放GIS界面的软件间可以进行互操作来发送和接收数据。“在开放信息技术环境中”意味着开放GIS规范使地理数据处理方法应用在所有网络版GIS环境、遥感、控制和限制数据库的AM/FM系统、用户界面、网络和数据处理中。权威的计算范例从封闭系统转向开放系统,从孤立转向实时互操作系统,从固定包装的独立应用软件转向配有为用户提供更灵活功能组件软件的应用软件环境。

编辑本段优势

  开放GIS规范是如何有利于开发者、管理者和用户的?
  全球信息社会正迅速地发展,Internet和其它计算机网络为数以亿计的用户提供刚刚起步的的数据源和服务器的访问。这一技术为大多数地理数据和地理处理源的用户带来了极大的方便。大型组织通过广域网集成地理数据和地理处理源,小型组织也一样。在桌面环境中,不同地理数据和地理处理源必须集成到有用的工作中。开放GIS规范方便了网络环境和桌面“复合文档”环境的集成。十年内,成千上万个全球定位系统(GPS)装置将被安装在汽车、移动电话、商务通、个人定位器、农业和推土设备、航运集装箱。基于开放GIS规范的专用设备将辅助GPS装置的利用。应用软件开发者、信息管理者和终端用户构成了全球计算革命----他们受益于开放GIS软件体现在以下几个方面:应用软件开发者进行二次开发变得更容易、更灵活:可以开发访问地理数据的软件;可以开发访问地理数据源的软件;可以集成空间和非空间数据为不同的用户定制不同应用程序,;可以选择自己熟悉的二次开发环境;应用软件可以在不同操作平台中运行;重新进行地理编码。
  信息管理者在以下方面有更大的灵活性:访问或分配地理数据;为用户提供地理数据处理能力;把地理数据和处理方法集成到可以交互使用的计算体系中;选择合适的操作平台----个人计算机类型、服务器类型、分布计算机平台类型(CORBA,OLE/COM,DCE等)为用户配置合适的地理处理工具;终端用户是最终受益者:可实时访问的地理信息比当前可访问的地理信息多得多;更多的应用软件(中间软件和复合文献)可以利用这些地理信息。具有使用同一应用软件环境中具有不同格式的地理数据的能力,与数据的类型和格式的细节无关,这些地理数据是一个连续不断的信息流关。

编辑本段开放无止境?

  开放GIS规范的范围是什么?开放GIS规范直接与三个从不同来源访问和使用地理数据问题的两个基本方面有关:取得连接:开放GIS规范并不是针对分布式计算平台这个领域而制定的,分布式计算平台可以使不同计算机上的应用软件间进行交互操作。DCPs是针对网络和不同用户的不同计算机系统间的通讯、安全系统、分布式数据库以及其它客户/服务器平台问题。开放GIS规范不重复这个领域中所做的工作,这些问题仍然由其它技术支持者来解决,开放GIS规范根据这些问题将不断地完善,开放GIS不只限于某个DCP。找到服务器:这是开放GIS规范的职能,使应用软件能与其它管理、发送和处理地理数据的软件交互操作。它将解决如何设置服务器;怎样访问服务器;怎样确定一个查询是对数据的直接查询还是对数据操作的查询,或者对二者的查询。它定义了一套基本数据类型和对这些数据类型的标准操作的规范,这样就为数据提供者和数据使用者之间建立了一个交互性的通用框架,开放GIS规范为在地理数据和空间处理方法上具有不同方法、领域和句法的用户提供了数据的共享。这些功能的实现依赖于对传送地理信息的通用数据模型以及对操作这些数据的行为方式的定义,为了保护对现有地理信息和地理信息系统的巨额投资,确保管理和处理地理信息新方法的引进,开放GIS规范修改了有关存贮数据和处理数据的概念的定义。
  理解结果:这是对数据感兴趣的个人或组织的职能。他们提供了解译这些数据的内在涵义,精度,可访问程度等等的框架,这些数据内容的定义并没有考虑开放GIS规范。然而,开放GIS规范可以提供一个框架,通过这个框架,那些数据可以被提供者和使用者共享。
参考资料
  • 1

    OpenGIS介绍  

    http://www.blogjava.net/sinoly/archive/2007/09/25/148002.html

扩展阅读:
  • 1

    http://www.gisforum.net/show.aspx?id=748&cid=18 OpenGIS规范

开放分类:
地理数据, 规范

转载于:https://www.cnblogs.com/sqlite3/archive/2012/05/17/2566697.html

你可能感兴趣的:(OpenGIS简介)