Orginal Article

Research on Geographic Grid Interoperation Model by Coupling WCPS and Web Protocols

  • YU Jinsongdi , 1 ,
  • CHENG Dayu 2 ,
  • WU Sheng , 1, *
Expand
  • 1. Spatial Information Research Center of Fujian Province, Fuzhou University, Fuzhou 350003, China
  • 2. SINOPEC Research Institute of Petroleum Engineering, Beijing 100101, China
*Corresponding author: WU Sheng, E-mail:

Received date: 2014-04-03

  Request revised date: 2014-07-11

  Online published: 2015-02-10

Copyright

《地球信息科学学报》编辑部 所有

Abstract

The explosion of available Geographic Grid resources in a wide range of Earth Science System application domains is shifting the paradigm of Earth Data Science. To exploit and acquire further insights and knowledge based on archived Geographic Grid resources, the existing infrastructures and techniques need to be scaled up and scaled out. However, adding more nodes does not provide a real analytics capability improvement if it is implemented without a corresponding analytics service interfaces among these nodes. The development of standard-based online analytics services is considered as one of the potential solutions and is becoming indispensable to strengthen mutual integration between Geographic Grid information systems and other information systems. In this study, standard-based Geographic Grid models and analytics operations are reviewed and discussed by considering different web communication protocols, making it possible to explore different modular coupling and application profiling. Based on the probe of OGC Web Coverage Processing Language (WCPS) specifications and relevant Web Coverage Service (WCS) 2.0 core and extension specifications, a web interoperability study is carried out to prototype an interoperable Geographical Grid analytics service. Accordingly, the research concludes the coupling patterns, principle issues and application directions for future explorations on Geographical Grid Analytics web applications. The result shows that the coupling of WCPS and OGC WCS 2.0 can effectively improve the interoperability of Geographical Information Application Infrastructure in terms of Earth Science System monitoring and forecasting, so as to provide an effective support to National Digital Information Infrastructure Initiatives.

Cite this article

YU Jinsongdi , CHENG Dayu , WU Sheng . Research on Geographic Grid Interoperation Model by Coupling WCPS and Web Protocols[J]. Journal of Geo-information Science, 2015 , 17(2) : 191 -196 . DOI: 10.3724/SP.J.1047.2015.00191

1 引言

地理格网互操作增强了地理格网信息资源的融合能力,促进了地理格网信息资源的充分合理利用[1-4]。虽然Open Geospatial Consortium(OGC,http://www.opengeospatial.org) Web Processing Service (WPS)标准[5]可以封装任何类型的空间数据处理类型,并通过Web提供GIS空间分析服务[6-7],但是,该服务接口是通用的,缺乏一致性的地理格网数据模型定义和操作语义。OGC Web Coverage Processing Service (WCPS)标准[8]定义了与网络服务规范标准相互独立的地理格网描述和格网分析语言。该语言可应用于地理格网分析功能,既可以是简单的地理格网的叠加分析,亦可以是复杂至如全球气候的预测模型。WCPS是与SQL相类似的查询语言,尚缺乏规范化Web接口以调用WCPS的地理格网分析功能。因此,需结合通用Web协议与标准化地理格网互操作规范,研究面向Web互操作的耦合模型。按照制定OGC标准的技术流程,建立快速原型,展开语言规范升级到网络服务规范的研究,为随后相关标准的制订提供科学依据。

2 WCPS标准的互操作函数模型

不同领域主题的地理格网互操作,需以一致的格网及操作模型为基础。以严格离散数学模型定义的互操作语言标准,可使互操作具有机器可理解的一致性语义。WCPS[8]遵循ISO 19123的规定,以函数的方式定义地理格网,其将地理格网定义为索引域到值域的映射f: DV。其中,D是地理格网索引域,索引域的轴是抽象的,不具有地理意义,需要在坐标系中分别定义轴的维类型,比如xyzt,轴的上下限通过(low, high)描述。
因此,地理格网C的索引域D可用集合描述为:
D=domain(C)={〈t,c,lo,hi〉|t∈{x,y,z,time}, c∈crsSet(C), lohi}
其中,t是轴,c是轴的坐标系,crsSet(C)是格网C的坐标系集合,lohi分别是轴的索引上下限。轴某一点的位置可描述为:<t,c,p>,其中,t是轴,c是轴的坐标系,p是索引值。
格网单元所对应的值(即属性)所组成的集合是值域V
相应的操作是函数,输入可以是格网、常数或格网与常数,输出为格网或常数,根据输入与输出的不同,格网操作可分为2种,见表1
Tab. 1 Geographic grid operation functions with different I/O

表1 不同I/O的地理格网操作函数

函数 输入 输出 说明
g: <f1, f2, …fm,C1,C2,…Cn>→fr fi : DiVi (i≥0),
cj(j≥0),
i+j≥1
fr : DrVr 输入为格网和/或常数,输出为格网
g: <f1, f2, …fm,C1,C2,…Cn>→C fi : DiVi (i≥0),
cj(j≥0),
i+j≥1
C 输入为格网和/或常数,输出为常数
fi : DiVi为原格网,Cj为输入常数,g为操作函数,输出常数为C,输出格网为fr : DrVr
每一格网操作的结果或为格网或为常数,可以作为另一格网操作的输入。因此,基于此定义的格网互操作是可嵌套并且可进行服务组合的。据此,WCPS定义了一系列语义一致的格网互操作,包括代数计算、逻辑运算、几何运算、聚合运算等,并按照扩展巴科斯范式(EBNF)语法[9]定义类SQL处理语言,使得地理格网操作可以结构化查询语言的方式表达。通过解析树检查语法、命名规范,分析检查互操作语句结构,优化查询表达,绑定地理格网变量,执行查询语句,让机器可自动理解WCPS的分析互操作。地理格网的专题统计、属性分类、叠加分析、滤波等常用分析操作都可通过WCPS互操作语言实现。
WCPS的Web应用开发,需要根据不同Web传输协议设计互操作接口。Web传输协议规定了浏览器和Web服务器之间相互通信的规则,允许通讯载体传输任意类型的数据对象。但是,通用Web协议并没有定义地理格网操作,以及所需传输的参数和返回结果,设计的多样性往往导致接口语法不一致,阻碍了WCPS应用之间的通讯。

3 基于WCPS的地理格网互操作的Web协议耦合模型

OGC的WCS 2.0核心标准[10]定义了地理格网的核心操作及具体返回结果所遵循的地理格网模型[11],具体地理格网模型及传输规范则以扩展模块的形式存在,为其他规范的制定提供模块支持。其中,OGC的WCS KVP[12]、POST[13]、SOAP[14] Web传输扩展模块定义了地理格网核心操作的主要传输参数和请求语法,可为地理格网相关操作提供Web协议支持[15]。WCS RequestBase(图1)是WCS 2.0的一个抽象的服务操作,可实例化为ProcessCoverages操作(图2),作为相应WCPS处理信息的载体,以实现WCS2.0的Processing扩展,达到WCS2.0与WCPS的有效耦合。因此,WCPS的地理格网操作的Web应用可依赖于WCS 2.0服务规范及相关Web协议,即调用OGC WCS 2.0的GetCapabilities操作获得服务的基本信息;调用DescribeCoverage操作获得详细的地理格网描述信息,将所获得信息用于构造WCPS语言,以WCPS语言为WCS Processing操作参数;基于KVP、POST和SOAP扩展协议封装,实现WCPS与Web传输协议的地理格网互操作耦合。
Fig. 1 ProcessCoverages service framework

图1 ProcessCoverages服务框架

Fig. 2 ProcessCoverages service based on WCS 2.0

图2 基于WCS2.0的ProcessCoverages服务

其中,ProcessCoverages请求作为WCPS语言的载体需通过Web传输,以及WCS 2.0的KVP、POST和SOAP扩展协议封装。KVP协议扩展的语法如下:
http://myserver.com/wcs?
SERVICE=WCS&VERSION=2.0&REQUEST=ProcessCoverages&
query=WCPS语言
KVP服务请求包含服务的URL入口、OGC服务类型、服务版本、服务操作及WCPS语言。POST/SOAP服务请求具有与KVP服务请求一致的语义,但是,语法不一致,POST语法如下:
<proc:ProcessCoverages>
<proc:query>WCPS语言</proc:query>
</proc:ProcessCoverages>
SOAP服务请求则将POST服务请求封装为SOAP消息,如下:
<soap:Envelope
xmlns:soap="http://www.w3.org/2001/12/soap-envelope"
soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding">
<soap:Body xmlns:m="http://www.example.org/stock">
<proc:ProcessCoverages>
<proc:query>WCPS语言</proc:query>
</proc:ProcessCoverages>
</soap:Body>
</soap:Envelope>
为清楚表达WCPS与Web传输协议的模块之间的相互作用,设计了相应的UML时序图:首先,调用OGC WCS 2.0的GetCapabilities操作获得服务的基本信息,然后,通过DescribeCoverage操作获得详细的地理格网描述信息,最后,调用WCS Processing操作将WCPS语言描述的格网分析操作,作为输入参数发送给WCS服务器,由服务器调用相应处理算法返回结果,时序图如图3所示。
Fig. 3 Coupling model of geographic grid interoperation based on WCPS and WCS 2.0

图3 基于WCPS与WCS 2.0 的地理格网互操作耦合模型

4 基于WCPS的Web互操作快速原型

本文以全球降水气候学中心(Global Precipitation Climatology Centre,GPCC)的降水数据[16-17]为基础,进行WCPS地理格网Web快速原型实现。通过定制已有开源平台Rasdaman(http://www.rasdaman.org/)[18-19],构架WCS 2.0服务,设计实现了承载WCPS结构化查询语言的XML结构树(见案例)及相关Document Object Model(DOM)解析模块,实现WCPS的KVP、POST和SOAP Web通讯接口。
Rasdaman系统是目前唯一的OGC WCS 2.0的参考开发,实现了WCS 2.0的核心操作、KVP、POST、SOAP扩展及WCPS处理功能(表2)。需增加ProcessCoverages解析响应模块,DOM解析模块从不同通讯协议的ProcessCoverages请求中获得WCPS处理语句。快速原型基于Rasdaman开发部署,利用Rasdaman已有的栅格数据服务器及数据库支持作为数据服务支撑,利用Rasdaman已有WCS 2.0及KVP、POST、SOAP支持,以获得客户端发送的ProcessCoverages请求,基于DOM解析模块开发ProcessCoverages响应模块,从其语法树解析获得WCPS处理语句,通过Rasdaman的WCPS处理引擎处理WCPS语句,原型系统如图4所示。
Tab. 2 WCS 2.0 Implementations

表2 WCS 2.0实现对比

软件 公司/组织 是否开源 WCS2.0 KVP POST SOAP WCPS
Rasdaman 9.0 Rasdaman 完全一致
MapServer 6.0 OSGeo - MapServer Project 部分一致
MapServer 6.2 OSGeo - MapServer Project 部分一致
EOXServer 0.2 EOX IT Services GmbH 部分一致
EOXServer 0.3 Rasdaman GmbH 部分一致
OPS GIS 2.1.0 RSI SOFTECH INDIA PVT LTD 部分一致

注:以上比较数据(截止至2014年7月10日)来自http://www.opengeospatial.org/resource/products/byspec

Fig.4 Fast Web service prototype based on Rasdaman

图4 基于Rasdaman的Web服务快速原型系统图

5 应用案例分析

实验对1951-2010的月降水数据进行建模,针对数据特点,采用4维时空格网模型,4个轴分别为经度、纬度、年和月,采用GML Coverage[11]作为数据编码,将数据以Rasdaman的WCS 2.0服务发布,原型部署于Earthlook(http://www.earthlook.org/)进行展示,案例如下:
(1)获得某年某月的全球降水数据。
<proc:ProcessCoverages>
<proc:query> for c in (gpcc)
return encode( c[year(1998),month(7)],"tiff(①本文中的TIFF图像在ArcMap中完成可视化)" )
</proc:query></proc:ProcessCoverages>
其中,c是格网变量,year(1998)表示获取1998年的数据,month(7)表示获取7月份的数据,二者是并的关系。c[year(1998),month(7)]表示获取1998年7月份数据,通过WCPS对四维格网按年和月的轴分别进行切片操作(切片操作根据给定切片点,获得维度-1的格网),切片点分别取年轴的1998年和月轴的7月,降水量分布(国界数据来源:http://www.datatang.com/data/45782,下载时间2014年7月18日)如图5所示。
Fig. 5 Global precipitation map in July 1998

图5 全球1998年7月降水量分布图

(2)对某一地区不同年份同一月份降水进行比较,获得两者降水的差异。图6是全球1998年7月与1997年7月降水量差异分布图。
Fig. 6 Global precipitation differences between July 1997 and July 1998

图6 全球1998年7月与1997年7月降水量差异分布图

<proc:ProcessCoverages>
<proc:query> for c in (gpcc)
return encode(c[year(1998),month(7)] - c[year(1997),month(7)]),"tiff" )
</proc:query></proc:ProcessCoverages>
其中,c[year(1998),month(7)]表示1998年7月份获取的数据,c[year(1997),month(7)]表示1997年7月份获取的数据,通过WCPS叠加分析,获得降水的差异。
地理格网分析Web互操作是一个复杂的系统工程,依赖于WCS 2.0相关标准成果,且需针对具体数据设计实现。充分利用已有OGC WCS 2.0开源参考开发Rasdaman(http://www.opengeospatial.org/ resource/products/byspec),在一定程度上可降低实现的难度和复杂度(表2),并在一定程度上简化领域应用系统的设计实现。实验表明,基于WCPS的地理格网分析Web互操作可应用于格网数据在线分析,业界亦可定制形式化语义一致的WCPS描述,将地理格网分析以类似SQL语言的方式在Web上实行互操作,便于与已有OGC Web Service (OWS)框架服务(如OGC WMS、OGC WFS等)集成。

6 结语

本文设计了基于WCPS的地理格网操作的Web协议耦合模型。研究以WCPS地理格网模型为基础,针对实践中常用地理格网分析设计WCPS实现,最后基于相关的模块化WCS2.0规范设计WCPS Web实现快速原型,解决了地理格网互操作分析中通用Web协议的地理格网数据模型定义和操作语义一致性问题,使业界可基于统一的OGC OWS框架开发Web地理格网分析工具,通过规范化Web接口[20]以调用WCPS的地理格网分析功能,有效降低了格网互操作应用开发的复杂性,且可与已有WCS、WMS、WFS、WPS等服务交互,提高互操作性。在此基础上结合地球科学理论并开发适用于不同领域应用的地理格网分析信息系统,可望实现环境影响的动态评价、环境资源的优化开发,为区域可持续协调发展服务,把国家电子政务建设和数字区域建设[21-23]推向一个新的发展阶段[24-26]

The authors have declared that no competing interests exist.

[1]
周成虎,欧阳,马廷,等.地理格网模型研究进展[J].地理科学进展,2009,28(5):657-662.

[2]
兀伟,李朋德,董旭明,等.基于地理格网的空间数据转换与应用[J].测绘通报,2013,(4):75-77.

[3]
Goodchild M F, Guo H, Annoni A, et al.Next-generation digital earth[J]. Proceedings of the National Academy of Sciences of the United States of America, 2012,109(28):11088-11094.

[4]
Domenico B, Caron J, Davis E, et al.GALEON: Standards-based Web Services for Interoperability among Earth Sciences Data Systems[C]. 2006 IEEE International Geoscience and Remote Sensing Symposium (IGARSS 2006), 2006,1:313-316.

[5]
OGC. 05-007r7 OpenGIS® Web Processing Service (WPS)[S]. OGC, 2007.

[6]
邓红帅,李国庆,于文洋,等.基于WPS的空间计算网格技术研究[J].计算机工程与设计,2012,33(11):4041-4047.

[7]
吴楠,何洪林,张黎,等.基于OGC WPS的碳循环模型服务平台的设计与实现[J].地球信息科学学报,2012,14(3):320-326.

[8]
Baumann P.The OGC web coverage processing service (WCPS) standard[J]. Geoinformatica, 2010,14(4):447-479.

[9]
ISO/IEC. 14977 Information technology-Syntactic metalanguage-Extended BNF[S]. ISO, 2001.

[10]
OGC. 09-110r4 OGC® WCS 2.0 Interface Standard-Core: Corrigendum[S]. OGC, 2012.

[11]
OGC. 19146r2 OGC® GML Application Schema-Coverages[S]. OGC, 2012.

[12]
OGC. 09-147r3 OGC® Web Coverage Service 2.0 Interface Standard - KVP Protocol Binding Extension-Corrigendum[S]. OGC, 2010.

[13]
OGC. 09-148r1 OGC® Web Coverage Service 2.0 Interface Standard-XML/POST Protocol Binding Extension[S]. OGC, 2010.

[14]
OGC. 09-149r1 OGC® Web Coverage Service 2.0 Interface Standard-XML/SOAP Protocol Binding Extension[S]. OGC, 2010.

[15]
Baumann P.Beyond Rasters: Introducing the New OGC Web Coverage Service 2.0[C]. 18th ACM SIGSPATIAL International Conference on Advances in Geographic Information Systems 2010,2010:320-329.

[16]
Rudolf B, Becker A, Schneider U, et al.GPCC Status Report December 2010[R]. Offenbach: GPCC, 2010:1-7.

[17]
Rudolf B, Schneider U.Calculation of Gridded Precipitation Data for the Global Land-surface using in-situ Gauge Observations[C]. Proceedings of the 2nd Workshop of the International Precipitation Working Group IPWG, 2004:231-247.

[18]
Baumann P.On the management of multi-dimensional discrete data[J]. VLDB Journal, Special Issue on Spatial Database Systems, 1994,4(3):401-444.

[19]
Baumann P.A database array algebra for spatio-temporal data and beyond[C]. Proceedings 4th International Workshop on Next Generation Information Technologies and Systems (NGITS ’99), 1999,1649:76-93.

[20]
OGC.08-059r4 OpenGIS® Web Coverage Service (WCS)-Processing Extension (WCPS)[S]. OGC, 2013.

[21]
王钦敏,吴升,涂平,等.数字区域信息应用基础设施[M].北京:科学出版社,2009:1-3,20.

[22]
李朋德. "数字区域"地理空间基础框架建设内容与关键技术[C].GIS与数字测绘技术应用研讨交流会论文集,2002:137-147.

[23]
吴升. 数字区域信息应用基础设施研究[D].北京:中国科学院地理科学与资源研究所,2008.

[24]
李德仁,眭海刚,单杰,等.论地理国情监测的技术支撑[J].武汉大学学报:信息科学版,2012,37(5):505-512.

[25]
中国地球科学发展战略研究组.中国地球科学发展战略的若干问题——从地学大国走向地学强国[J].地球科学进展,1999,14(2):105-109.

[26]
徐冠华. 利用市场机制加快战略性新兴产业发展[J].创新科技,2012(6):5-5.

Outlines

/