3.4. 互操作和地理空间Web服务标准

发布日期 : 2025-10-12 13:01:49 UTC      

访问量: 993 次浏览

在大型项目或国家级信息平台中经常涉及互操作。 互操作就是让不同厂家的软件和数据能一起工作,而实现互操作的主要途径就是制定标准。 Web服务的标准实质上就是规定请求和响应的具体格式, 例如,请求中包含哪几个参数,每个参数是什么类型,响应的返回信息中包含什么结果等。 本节介绍Web服务的标准, 包括WMS、WMTS 、WFS、WCS、WPS、CSW以及与Web服务相关的标准, 包括KML和GeoRSS。

3.4.1. 基于Web服务的互操作 #

互操作就是让不同厂家软件和数据能一起工作,通俗点说就是我能调用你的数据和功能,你能调用我的数据和功能。 GIS互操作的实现技术已经走过了多个阶段(图3.11)。

实行GIS互操作的技术主要经历了文件格式转换、直接读取的插件和Web服务标准等阶段

Fig. 3.10 实行GIS互操作的技术主要经历了文件格式转换、直接读取的插件和Web服务标准等阶段 #

早期的互操作往往涉及数据的转换,例如,把一种软件产品的数据转换成另外一种软件产品的数据格式, 或者定义一种标准的文件格式,不同的软件产品都需要能输人和输出这种格式。 后来,互操作采用了插件接口的技术,即在一种软件中安装一个插件, 利用这个插件可以在一种软件中对其他软件格式的数据能进行直接读写,避免了数据的转出和转入。 近些年来,互操作技术逐渐转向到Web服务标准这个层次上来,这种方法既避免了数据格式的转出和转入, 又避免了在本地安装插件工具的麻烦。

不同的厂家可以根据行业的Web服务标准独立开发自己的产品, 只要他们产品的Web服务接口符合一定的业界标准,他们软件的数据和功能就通过Web服务来相互调用, 实现互操作( Fig. 3.11 )。

互操作依赖于标准

Fig. 3.11 互操作依赖于标准。以OGC 的 WMS 标准为例,ArcGIS forServer发布的一个 WMS 在线地图服务, 不仅可以被Esri的产品使用,也可以被GoogleEarth、NASA WorldWind、 OpenLayers 以及Gaia等支持 WMS 标准的客户端使用。 每一个客户都知道在请求中应该发送什么参数,并能预期服务器的响应结果中有什么格式的结果。 (致谢:美国国家公园管理局) #

关于地理空间Web服务的标准化组织主要有如下几个。

  • 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的标准更抽象,而0GC的标准相对更具体。 近年来,IS0/TC 211与0GC紧密合作,例 如,0GC的 WMS 标准同时也是ISO标准。

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

3.4.2. Web服务的标准 #

本节主要介绍 0GC 的 WMS 、WMTS 、WFS、WCS、CSW、WPS 以及 OpenLS标准。 读者可以访问 OGC官方网站(http ://www. opengeospatial.org)查阅这些 规范的详细文档, 查看哪些WebGIS软件经过了0GC认证和支持哪些标准。

Web 地图服务( WMS —Web Map Service) #

WMS 是0GC制定的一种在互联网上制作地图的Web服务规范, WMS 生产的地图一般以图像格式呈现, 如PNG、GIF或JPEG。 任何一个声称符合 WMS 规范的Web服务都必须支持下面两个必要的请求:

  • GetCapabitities:能向客户端返回该Web服务的描述信息。返回结果的格式是XML, 它描述该服务的名称、简介、关键词、覆盖范围、包含那些数据层、每层是什么坐标体系、 具有哪些属性以及是否能被查询。这个元数据还包括该服务所能产生的地图图片文件格式、 能支持的操作每个操作的URL等。例如,利用下面的URL请求, 可以得到N0AA发布的大地海洋气象 WMS 服务的描述信息。 http://howcoast.noaa.gov/Wms/com.esri.wms.Esrimap/obs ? service = wms&version =1.1 .l&request = GetCapabilities

  • GetMap:能根据客户端的GetMap请求参数来制作一个地图。 GetMap请求中需要的参数包括显示哪些图层、地图的长宽像素数和空间坐标体系等。 有的 WMS 还支持风格化图层定义(styled layer descriptor,SLD), 允许用户在URL请求中动态地指定各个数据层的显示符号。 返回结果一般是PNG、GIF和JPEG等栅格格式的图片。 例如,下面的GetMap请求可以让上述N0AA气象 WMS 服务生成一幅PNG格式的地图。 http://howcoast.noaa.gov/Wms/com.esri.wms.Esrimap/obs ? SERVICE = WMS &REQUEST = GetMap&FORMAT = image/fc>ng&TRANS PARENT = TRUE&STYLES = AVERSION = 1 .1 .l&LAYERS = RAS_G〇ES_I4 ,RAS_G〇ES,RAS_RIDGE_NEXRAD,〇BS _MAR_SWHFT,〇BS_MAR_SSTF,〇BS_MET_VIS,〇BS_MET_PRES,〇BS_MET_WIND,〇BS一 MET_DP,OBS_MET_TEMP&WIDTH = 1354&HEIGHT =968&SRS = EPSG:102100&BBOX = -10958012 .374959987,3324093 .486064869, -7646148 .81342075,5691806 .8742258595

WMS 规范还制定了几个可选请求,例如

  • GetFeaturelnfb :查询地图上某一位置的信息,其典型的应用情况是用户在地图上点击一个点, 服务器返回位于该点的地理要素的坐标信息和属性信息。

  • GetLegendGraphic :能根据客户端指定的图层,制作和返回该图层的图例, 返回格式一般是PNG、GIF和JPEG等图片。

WMS 规范的应用较广,被许多机构采用。例如, 美国地质调查局 (USGS)就提供了一系列 WMS 服务,包括国家大地图 WMS 服务(图3. 13)、国家地图集运输 WMS 服务、国家水文数据集 WMS 服务以及美国实时火灾(主要是指山林野火) WMS 服务。 美国国家航空航天局(NASA)对地观测系统(NEO, http://neo.sci.gsfc.nasa.gov/Search.html )WMS ( http ://neowms. sci. gsfc.nasa.gov/wms/wms)等方式, 动态提供多时间序列的、主要关于全球气候和环境变化的影像, 包括海面温度、陆地表面温度、植被指数、降水量、一氧化碳浓度、地表覆被类型以及地表接受的太阳辐射量等。

在ArcGISOnline地图浏览器中显示NOAA发布的大地海洋气象 WMS 服务。(致谢:美国国家海洋与大气管理局)

Fig. 3.12 在ArcGISOnline地图浏览器中显示NOAA发布的大地海洋气象 WMS 服务。(致谢:美国国家海洋与大气管理局) #

Web 地图瓦块服务(WMTS —Web Map Tile Service) #

WMTS 是OGC 制定的一种发布瓦块地图的Web服务规范。WMTS 不同于 WMS ,两种相互补充。 WMS 主要属于动态地图服务,即地图是服务器在每次接到客户请求时立刻生成的,特别适用于数据在不断被更新的地图服务。 WMTS 的地图是服务器预先制作好的瓦块,这种方法可以提高Web服务的性能和伸缩性,特别适合于数据相对静态、不再更新或更新频率很低的数据(周旭和查祝华,2010)。

WMTS 规范定义了两个必要操作和一个可选操作。

  • GetCapabilities:获取服务的元数据。

  • GetTile:获取瓦块。

  • GetFeaturelnfo:可选,获取点选的要素信息。

Web 要素服务(WFS—Web Feature Service) #

WFS 是0GC制定的一种在互联网上对矢量地理要素及数据进行操作,包括检索、插入、更新和删除等Web服务规范(0GC,2005)。WFS定义了以下主要操作。

  • GetCapabilities:获取服务的兀数据。

  • DescribeFeatureType:获取WFS支持的要素类型的结构。

  • GetFeature:获取与一个查询条件相匹配的地理要素及其属性。

  • LockFeature:请求服务器在一项事务期间锁定一个或多个地理要素。

  • Transaction:请求服务器创建、更新或删除地理要素。

以上操作有必选的,也有可选的。 根据所支持的操作,WFS主要可以分为以下两类。

  • 基本型 WFS(Basic WFS): 只支持 GetCapabilities、DescribeFeatureType 和GetFeature操作, 只能进行要素的查询和读取,所以又称为只读型WFS。

  • 事务型WTFS(Transaction WFS或WFS-T):除了基本WFS所支持的操作外, 还支持transaction操作。它不仅能支持地理要素的读取,还支持地理要素的在线编辑和处理, 也被称为读写型WFS。

在WFS请求和响应中,地理要素的信息传输主要是采用GML格式。 2006年,OGC 通过了 GML简单要素专用标准(GML Simple Features Profile),以加快WFS请求和响应的速度,简化WFS的实施难度。 WFS不仅可以用于制图和查询,而且可以用于地理数据的切割、投影转换和在线下载。 例如, 美国国家气象局气象研究实验室提供一个国家数字天气预报数据库(NDFD) WFS服务(图3.14)。 这个服务允许公众、政府机构和企事业单位获取气温、露点、风、降水概率和降水量等数据。

  1. Web 覆盖服务(WCS_Web Coverage Service)

WCS 是0GC制定的一种发布栅格地理数据的Web服务规范,它所返回的

在ArcMap中显示美国国家气象局气象研究实验室提供的国家数字天气预报数据库WFS服务。(致谢:美国国家气象局)

Fig. 3.13 在ArcMap中显示美国国家气象局气象研究实验室提供的国家数字天气预报数据库WFS服务。(致谢:美国国家气象局) #

栅格数据是原始数据(mw data),如数字高程中地面的高程值和卫星影像中的光谱值等^ WCS与 WMS 不同, 因为 WMS 所返回的是经过视觉化处理的、已经失去原始值的图片。 WCS 与WFS的不同还在于WFS是针对矢量数据的,而WCS是针对栅格数据的。 WCS 规范规定了以下操作(OGC ,2006b):

  • GetCapabilities:返回该服务的元数据。

  • DescribeCoverage:返回该服务中栅格数据层的详细描述信息, 如时间信息、覆盖范围、坐标体系和所支持的输出格式等。

  • GetCoverage:服务器根据允许客户端所指定的数据层、时空范围、坐标体系、输出格式、 内插方式以及对数据进行切割转换等操作,返回GeoTIFF、HDF-EOS或NIT等格式的数据。

美国国家冰雪数据中心(NSIDC)提供极地冰冻圈的WCS服务,用户可以获取有关结冰区域的数据, 包括每月海洋结冰和集中区、积雪覆盖范围及雪水等深线等信息, 以支持有关极地冰冠融化和气候变化的研究(Maurer,2007)。

  1. Web 处理服务(WPS—Web Processing Service)

WPS是OGC 为在互联网上进行地理分析而提供的一种Web服务规范 (OGC ,2007c)。 它制定了地理分析服务的输人和输出(即请求和响应)格式,还制定了客户端如何请求地理分析的执行。 WPS所需要的地理数据可以通过互联网传输过去,也可以是服务器上已有的数据。 WPS定义的主要操作有GetCapabilities、DescribeProcess 和 Execute 。

(6)其他Web服务标准

  • Web目录服务(CSW—Catalog Service for Web):目录服务是一项共享地理空间信息的重要技术。 CSW支持搜索和发布地理空间元数据,它可以让使用者查询元数据, 来发现他们所需要的地理数据和服务,也可以让提供者发布和更新元数据。 CSW有两种类型:只读型CSW和事务型CSW。 只读型 CSW支持 GetCapabilities、DescribeRecord、GetRecords、GetRecordByld以及GetDomain等操作, 仅支持元数据的查询和阅读。事务型CSW支持元数据的读和写, 允许用户通过transaction和harvest操作,来发布、编辑和删除元数据(OGC , 2007b )。 ArcGIS Geoportal Server 等产品就提供了CSW接口。

  • 开放位置服务(OpenLS—Open Location Service): 这是0GC为基于位置的服务(LBS;见第5章)所提供的一系列的Web服务规范, 包括黄页搜索、追踪手机用户的位置和导航服务等(0GC,2004)。

  • 传感器网络整合框架(SWE—Sensor Web Enablement) : SWE框架包括一系列Web服务标准: 传感器观测服务(SOS )、传感器规划服务(SPS)以及传感器报警服务(SAS)。 这些标准能够使用户发现和获取传感器网络的传 感器数据。

3.4.3. Web服务的相关标准 #

本节主要介绍KML规范和GeoRSS规范,KML是一种地理数据和地图描述的混合格式, GeoRSS可以认为是一种地理数据格式。 虽然它们本身并不是Web服务规范,但是在实际应用中,它们经常被作为一些Web服务返回结果的格式。 例如,ArcGIS Server发布的地图服务就能返回KML格式的结果, 从而能够让那些支持KML的客户端如Google Earth来使用。

KML( Keyhole Markup Language;钥匙孔标记语言) #

KML 是谷歌公司和0GC的一个基于XML的描述地理要素及其可视化的文件格式。 KML 最初由Keyhole公司创建,是其EarthViewer 3D所采用的文件格式。 Keyhole公司于2004年被谷歌公司收购,其EarthViewer 3D被改名为 GoogleEarth。 谷歌公司向0GC申请把KML作为一个标准。 经过0GC成员的论证、修改和批准,KML 于2008年正式成为0GC的一个官方标准。

一个KML文件可以描述一些地理要素,如点、线、多边形、图像和3D模型等, 并可以定义它们的显示符号、相机位置(即观察者所在的地点和高度、视线的方向、俯视或仰视的角度)。 KMZ文件是压缩过的KML文件,这样一方面可以减小文件的大小,另一方面可以包含其他类型的文件如KML中符号和链接所需要的图片。 下面是一个简单的KML的例子。 它首先定义了一个带有特定图标的样式,然后定义了一个地名注记,并用这个图标来显示。




 Placemark .kml < /hame >


 New York < /hame >

 -73 .98695099776447 
40 .75578596910464 
0 < /altitude >
crange>1838 .244767541828 <々ange>
64 .84948240920286 
 -0 .00395616889357744 

 #sh_ylw-pushpin 

 -73 .98695099776447, 40 .75578596910464, 0 




KML 经常被用于公共信息发布。例如, 美国地质调查局 用KML发布接近实时的地震信息,美国国家海洋与大气管理局利用KML发布天气预报,包括恶劣天气警报、雷达影像和传感器观测数据等。 图3. 15显示的是用Google Earth显示KML格式的飓风行进路线。

GoogleEarth显示2008年古斯塔夫飓风路径的KML。 (致谢:谷歌公司,LeadDogConsulting,Tele Atlas North America, Inc.,Scripps Institution ofOceanography,美国国家海洋与大气管理局,美国海军, 美国地理空间情报局,General Bathymetric Chart of the Oceans 和 Europa Technologies)

Fig. 3.14 GoogleEarth显示2008年古斯塔夫飓风路径的KML。 (致谢:谷歌公司,LeadDogConsulting,Tele Atlas North America, Inc.,Scripps Institution ofOceanography,美国国家海洋与大气管理局,美国海军, 美国地理空间情报局,General Bathymetric Chart of the Oceans 和 Europa Technologies) #

GeoRSS #

RSS是简易资讯聚合(Really Simple Syndication)的简称,也被称为丰富站点摘要(Rich Site Summary)或 RDF 站点摘要(Resource DescriptionFramework SiteSummary)。 它是互联网上发布信息,特别是具有实效性的信息(如新闻和火灾简讯等)的一种主要格式。 RSS家族包括RSS和ATOM格式,前者出现于1999年,后者出现于2003年。 它们都是简单的XML格式,只有几个为数不多的标签,来描述每一条信息的名称、摘要、全文链接和发布时间等, 非常容易理解和使用,得到了广泛应用。 订阅者可以将自己感兴趣的多个RSS “聚合”到RSS阅读器软件中,为自己提供方便的“一站式”服务, 而不必分别到各个网站上一遍一遍地查看它们是否更新了。

RSS被很多新闻媒体、社交网站以及政府官方网站作为一种发布新消息的方法。 例如,CNN(美国有线新闻网)、纽约时报、路透社、《科学》杂志、Twitter(推特, 美国一个微博客网站)、Y〇uTube(著名视频网站)均采用这种技术及时发布信息。 世界卫生组织(WHO)以RSS格式发布最新的流行病和传染病( http://twitter_com/statuses/user —timeline/14499829.rss ); 美国政府在其 电子政务 门户网站( http://USA.gov )上发布有上千个RSS(图3. 16); 利用RSS,联邦紧急管理署发布与突发性事件相关的新闻和图片; 美国人口普查局发布如当前人口统计相关的新闻; 疾病控制和预防中心发布最新的疾病发病率和死亡率报道。

RSS是一种发布实时信息的方式。美国电了政府门户网站USA.gov上提供数以千计的RSS链接。 这些RSS由商业、经济、健康H生、公安、科技、 环境、能源、农业、住房以及天气等部门提供。(致谢:USA.gov)

Fig. 3.15 RSS是一种发布实时信息的方式。美国电了政府门户网站USA.gov上提供数以千计的RSS链接。 这些RSS由商业、经济、健康H生、公安、科技、 环境、能源、农业、住房以及天气等部门提供。(致谢:USA.gov) #

随着RSS的流行,人们希望不仅能看到发生了什么,而且希望能看到事件是在哪里发生的。 GeoRSS是一个在RSS和其他XML中添加位置信息的标准(OGC ,2006c)。 GeoRSS 有三种格式:W3C Geo、OGC GeoRSS-Simple 和 GeoRSS-GML。

  • W3C Geo:只能描述点状要素,采用WGS 84经纬度坐标。这一标准虽然还被使用着, 但它已经是一种过时的标准,不推荐使用。

  • OGC GeoRSS-Simple:能够描述基本的几何形状(包括点、线、矩形和多边形)及其属性

    (包括要素类型、要素名称、关系标签、高程以及半径)。名副其实,GeoRSS-Simple的设计简洁明了, 其坐标参考系通常是WGS 84经 纬度。

  • OGC GeoRSS-GML:比GeoRSS-Simple支持更多的地理要素。

    如果不标明坐标参考系,其坐标缺省是WGS 84经纬度,但此规范允许定义和采用其他的坐标体系。

GeoRSS通过对RSS的扩展,成为在Web上请求、共享和集成地理信息的一种简洁格式。 ArcGIS Explorer、ArcGIS Viewer for Flex、GoogleMaps、 Microsoft Bing Maps 和 OpenLayers 等均支持 GeoRSS。 GeoRSS也普遍用在 Mashup 应用 软件中。下面是一些GeoRSS应用的例子。

  • Twitter提供接近实时的“谁说了什么,发生在哪里”的GeoRSS信息, 允许用户在地图上显示这些微博客内容。

  • Flickr在线相册提供了一个REST接口,以GeoRSS的格式返回一个给定区域的照片信息。 例如, http://api.flickr.com/services/feeds/geo/United+States/Califomia/Hollywoocl 这个URL可以返回美国好莱玛地区的照片信息。

  • 全球灾难警报和协调系统( http://www.gdacs.org )提供一个接近实时的GeoRSS源, 及时报告全球正在发生的自然灾难,如地震、热带飓风和洪水。

  • USGS 用 GeoRSS 格式播报地震信息 (11杜0://63111^1^6.1^3.§〇¥/631111-quakes/catalogs/eqs7day-M5. xml)。 其中,加利福尼亚州的地震数据几分钟更新一次,全球其他地方每半小时更新一次。

  • GloballncidentMap.com网站提供一系列实时的GeoRSS, 内容包括儿童遭绑架的警报、危险品状况、恐怖主义以及其他威胁(图3.17)。

GloballncidentMap.com以GeoRSS的格式提供一系列有关公共安全和恐怖威胁的事件, 本例利用ArcGISViewer for Flex来显示这些事件及其位置。 (注:情报源较多,不便-取得许可,本图为模仿图;致谢:TmnsitSecurityReport.com和美国国家公园管理局)

Fig. 3.16 GloballncidentMap.com以GeoRSS的格式提供一系列有关公共安全和恐怖威胁的事件, 本例利用ArcGISViewer for Flex来显示这些事件及其位置。 (注:情报源较多,不便-取得许可,本图为模仿图;致谢:TmnsitSecurityReport.com和美国国家公园管理局) #

3.4.4. 标准化机构面临的挑战 #

GIS产品和应用开发人员希望标准简单易用,但是标准化机构往往需要考虑多种情况, 这样制定出来的标准具有较好的包容性,但也往往导致标准太复杂而不易被采用。 OGC 的Sam Bacharach (2006)曾用如下比喻解释简化GML(地理标记语言)标准的必要性:

“你注意过孩子们是如何利用64色蜡笔的吗?一些孩子仅将红、蓝、绿、黄、黑等几种颜色检出就可以作画了。 这几种颜色简单易用,尽管不多,但已经提供了一个可以解决问题的方案, 足以描绘一个在后园游泳池里玩耍的小狗的图画。”

这个比喻不仅解释了简化GML的重要性,也解释了标准化机构所面临的一个挑战, 即如何把握简单、易用与完整、全面之间的平衡。

另外,业界希望标准化机构能早日制定标准,以供业界采用。 而标准化机构有其谨慎的工作流程,从制定方向、邀请提案、项目组或成员递交草案到成员审阅、修改和表决等, 需要一定的时间才能制定一个标准。 这样往往导致标准的出现滞后。 等标准发布时,不同的厂商已经开发出了自己的方案,与标准并不兼容,这些厂商还需要再额外投人, 对产品做些修改或编写一些转接程序,以实现对标准的支持。

标准的重要性不容置疑,尤其是政府项目招标工程中,往往要求投标产品对国际标准的支持, 以实现系统的开放性和可扩展性。 OGC 网站上列出了通过其认证的产品厂家、软件名称、所支持的OGC 标准的名称和版本(见 http://www.opengeospatial.org/resource/products/compliant ) 。

《地理信息系统原理、技术与方法》  97

最近几年来,地理信息系统无论是在理论上还是应用上都处在一个飞速发展的阶段。 GIS被应用于多个领域的建模和决策支持,如城市管理、区划、环境整治等等,地理信息成为信息时代重要的组成部分之一; “数字地球”概念的提出,更进一步推动了作为其技术支撑的GIS的发展。 与此同时,一些学者致力于相关的理论研究,如空间感知、空间数据误差、空间关系的形式化等等。 这恰好说明了地理信息系统作为应用技术和学科的两个方面,并且这两个方面构成了相互促进的发展过程。