OGC、WMS、WFS、WCS

OGC: 开放地理空间信息联盟 (Open Geospatial Consortium-OGC) ,致力于提供地理信息行业软件和数据及服务的标准化工作。

OGC在1994年到2004年期间机构名为Open GIS Consortium, 后因业务需要更名。

OGC是一个非盈利的志愿的国际标准化组织,引领着空间地理信息标准及定位基本服务的发展。在空间数据互操作领域,基于公共接口访问模式的互操作方法是一种基本的操作方法。通过国际标准化组织(ISO/TC211)或技术联盟(如OGC)制定空间数据互操作的接口规范,GIS软件商开发遵循这一接口规范的空间数据的读写函数,可以实现异构空间数据库的互操作。

OGC定义了三种地理参考信息模型: - Web Map Server(WMS) - Web Feature Server(WFS) - Web Coverage Server(WCS)

自由及开源软件、开放规范与开放数据

当前商业GIS软件的使用和维护费用越来越高,例如包含客户端与服务器端一整套的ESRI ArcGIS软件售价约为70万元人民币。而且其销售策略是,若购买了服务器端软件则必须购买客户端软件,其理由是用户既然使用了其服务器端软件来发布服务,那必然就需要使用其客户端软件来处理数据。这对一些比较小的WebGIS应用来说,远远超出了其可承受的范围。并且众多商业软件GIS的数据和操作并非完全能够转换和共享,造成一些信息孤岛。

不过在商业GIS软件的对面活跃着开源GIS。OGC成立于1994年,致力于研究和建立开放地理数据交互操作标准,使用户和开发者能进行互操作。国际地理空间开发基金会(Open Source Geospatial Foundation)成立于2006年2月,其使命是支持开源地理信息软件和遥感软件的开发及推动其更广泛的应用,并对其支持的项目提供组织、法律和财政上的帮助,促进OSGeo基金会基于地理信息开发标准软件及其互操作技术的开发、推广和普及。OSGeo中国中心于2006年9月成立, 帮助中国地区的用户和开发者更好地使用OSGeo基金会提供的源代码、产品和服务。  

WMS 服务

Web 地图服务(WMS)能够根据用户的请求返回相应的地图(包括PNG,GIF,JPEG等栅格形式或者是SVG和WEB CGM等矢量形式)。

WMS支持网络协议HTTP,所支持的操作是由URL定义的。

有三个重要操作 GetCapabilitiesGetMapGetFeatureinfo

  • GetCapabilities 返回服务级元数据。
  • GetMap 返回一个地图影像。
  • GetFeatureinfo 返回显示在地图上的某些特殊要素的信息。  还有一些其它操作如 DescribeLayerGetLegendGraphicGetStylesSetSytles 。  事实上用传统的观点来解释,GetMap 获得的就是在桌面程序中画在控件上的里的结果,是数据的表现。

GetFeatureInfo 更容易理解,它和几乎所有的桌面程序上都用的Info按钮功能相同,都是用来获得屏幕坐标某处的信息,GetFeatureInfo 中的参数是屏幕坐标、当前视图范围等,在一定程度上也方便了客户端的编写。

GetFeatureInfo 可以同时返回多个图层中的要素信息,这一点和ArcGIS Desktop等也都是相同的。WMS还包括一些 GetLegend 之类的返回图例信息的请求,也是完全按照桌面既有的标准定义的。

WFS 服务

Web 要素服务(WFS)支持对地理要素的插入,更新,删除,检索和发现服务。该服务根据HTTP客户请求返回GML数据。

其基础接口是:GetCapabilities,DescribeFeatureType,GetFeature  GetCapabilities同上。  DescribeFeatureType返回要素结构,以便客户端进行查询和其他操作。   GetFeature可根据查询要求返回一个符合GML规范的数据文档。GetFeature是最重要的接口。   其它接口如Transaction 它不仅能提供要素读取,同时支持要素在线编辑和事务处理。

WFS对应于常见桌面程序中的条件查询功能,WFS通过OGC Filter构造查询条件,支持基于空间几何关系的查询,基于属性域的查询,当然还包括基于空间关系和属性域的共同查询。

在Web上,WFS的请求不是以SQL实现的,而是通过Filter XML来实现,可扩展性更强。WFS所返回的是查询的结果集,从某种程度上说,区别于WMS的“数据的表现”,

WFS的结果集是由完整的Schema定义和约束的结果集,以GML为载体。这个结果集,类似于桌面程序查询结果的数据表。

WCS 服务

Web地理覆盖服务(WCS):提供的是包含了地理位置信息或属性的空间栅格图层,而不是静态地图的访问。

根据HTTP客户端要求发送相应数据,包括影像,多光谱影像和其它科学数据. 有二个重要操作GetCapabilities,GetCoverage GetCapabilities返回一个描述服务和XML文档,从中可获取覆盖的数据集合。

GetCoverage是在GetCapabilities确定查询方案和需要获取的数据之后执行,返回覆盖数据。

还有可选操作DescribeCoverageType。

WCS对应基于栅格数据的功能,与WMS基于矢量数据的特点相对应。

另:Web Processing Server(WPS)是新近推出的标准,它的功能其实我们已经耳熟能详了。Processing即ArcView中的GeoProcessing,诸如Union,Intersect等方 法。WPS要做的就是暴露基于URL接口来实现客户端通过WebService对此类方法的调用、并返回数据。

这些规范基本在各大主流GIS平台和开源GIS软件中得到支持。

Intergraph早就推出了WFS服务器和互操作开发包。

ESRI在ArcIms 中开发了支持WMS,WFS等规范的相关部件。  MapInfo8.5也已经增加了能访问WMS和WFS服务,也有读取GML数据的借口功能。  GeoServer,MapServer地图服务器扮演向网络中的客户端提供地图服务的角色。这类地图服务器可以接收统一规范的WMS和WFS请求(request),返回多种格式的数据。这个过程有WMS/WFS规范的严格规定,所以,对客户端来说其地图服务器的实现究竟是什么并不会造成太大影响。这样的规范,为公共的、联合的地图服务创造了可能。

OpenLayers/MapBuilder,uDig,QGIS这些客户端软件分为浏览器和桌面客户端程序两种。以OpenLayers为代表的B/S系统客户端现在已经非常强大,它可以封装WMS请求,在浏览器上实现地图的切片载入功能。另外拖动、缩放都功能也非常完善,可以实现跨浏览器操作。最近的OpenLayers版本还支持了矢量编辑功能,可以通过WFS-t提交。而传统的桌面客户端程序功能则更加强大,支持多种包括WMS和WFS在内的数据源,另外编辑功能、操作性也要比浏览器中的强大。

相关标准化组织机构介绍

OGC(开放地理空间信息联盟):是一个专门从事地理空间信息技术标准化际标准的国际组织。它成立于1994年,目前有400多个成员,包括来自不同国家和地区的公司、科研院所、髙校和政府机构等。OGC的重要工作之一就是 OWS(OGC网络服务)研究计划,其目的是建立一个标准的框架,让地理信息能够无缝地应用在各种Web、无线、基于位置的服务和主流的信息技术应用之中。本节将介绍OGC的WMS、WMTS、WFS、WCS、CSW、WPS等Web服务规范和相关的KML和GeoRSS规范。

IS0/TC 211(国际标准化组织地理信息技术委员会211): IS0/TC211是国际化组织于1994年设立的一个专门制定地理空间信息标准的技术委员会。TC 211制定的标准编号从19101开始。一般来说,ISO的标准更抽象,而OGC 的标准相对更具体。近年来,IS0/TC 211与OGC 紧密合作,例如,OGC 的WMS标准同时也是ISO标准。

W3C(万维网联盟):W3C是一个从事万维网信息技术标准化的组织。它于1994年在麻省理工学院计算机科学实验室成立,创建者是万维网之父TimBemers-Lee。万维网联盟制定了一系列规范,其中发布的 HTML、CSS、XML Schema、RDF 和 SVG 等影响广泛。W3C 制定的 Basic GeoRSS规范尽管略显过时,但仍在被使用。