开源GIS实验田

OpenSource GIS Space

  • 内容导航

  • 最新评论

    • Gao Ang: 这将是一次开源GIS百科全书式的大会 ...
    • SHG: 恭喜恭喜 希望到时有更多国外的专...
    • Gao Ang: 这个示例可以搜索指定位置500m范围内...
    • suan: 你好,我想請問你GOOGLE MAPS API的問題 ...
    • Gao Ang: 静态地图现在支持用户自定义图标,...
  • 热门主题

  • 随机阅读

    • 2012 年二月
      « 十二    
       12345
      6789101112
      13141516171819
      20212223242526
      272829  
    • Gao Ang

      GaoMiao's Portrait
      有了理想
      就不要寻找放弃的理由

      站点搜索

    • 只言片语

      对于人类,要尽人道与仁善的义务。 ——孟德斯鸠

    诞生中的WPS规范

    3rd 二月 2007

    作者: Gao Ang 可以转载,请以超链接标明原始出处和作者信息及版权声明
    网址: http://www.gaoang.com/archives/34

    在地理空间信息领域中,以统一的标准和规范来实现各种GIS功能间的互操作,是分布式计算环境下进行共享与服务化的关键问题。开放地理信息系统协会(OGC)一直在推进相关应用互操作规范和协议的制定,目前处于RFC阶段的OGC最新成果是Web Processing Service (WPS)协议,WPS致力于实现GIS功能的服务化调用,在获得广泛认可后将会作为新的标准发布。

    在进行介绍之前,需要先搞清楚服务的准确定义是什么?可以这样解释,服务就是由客户端调用而由服务器端执行的一系列处理任务。(Service refers to a processing task that is invoked by a client and executed by a server.)而Web服务,简言之就是建立在Internet或Intranet上提供给客户端调用的并在服务端执行的各种业务逻辑。

    WPS有别与已有用于实现Web地图访问和查询的WMS和WFS规范,其最大的创新之处在于可以通过网络为客户端提供一系列GIS操作的服务调用接口,可以实现从简单的空间分析操作到复杂的全球气候变化模型计算的几乎所有功能。WPS是基于XML的传输协议,通过Web为客户端提供空间数据处理相关的GIS函数功能,函数调用过程所必需的三种描述为:GetCapabilities:请求得到可用数据处理过程的元数据描述信息;DescribeProcess:得到执行处理过程需要的输入输出类型和参数描述信息;Execute:提供输入数据和必要参数调用执行处理过程。WPS的调用流程首先要得到所需参数的标识符和输入项,然后为输入项载入处理过程和计算数据。数据可以通过网络传送,也可以直接利用服务器上已有的数据,而WPS规范提供了空间参考数据的识别机制,并规范统一的输入参数和计算输出结果。

    目前已有的WPS实例,包括Python语言实现的PyWPS项目及其Demo实现,主要是调用Grass自带的栅格或矢量功能来进行地理信息操作,并且Demo还展示了通过WPS调用实现的最短路径查询操作。在国内的技术跟踪方面,已由GUCAS的宋现锋老师实现通过PyWPS项目调用的R统计语言的功能展示。希望等有时间,编写基于Java的Web Service来实现WPS规范,用以服务化Grass GIS已提供的数百个空间操作API函数。

    4 Responses to “诞生中的WPS规范”

    1. pengch Says:

      您好,请问WPS是不是已经支持工业标准的Web协议SOAP,UDDI了呢?
      另外,WPS的三个接口就可以封装所有的功能操作了吗?有点不解。

    2. Gao Ang Says:

      WPS的三个接口是对封装功能的操作进行调用,而非在接口中就实现功能的执行。WPS 1.0的三个接口中已经加入了对于SOAP的支持。

    3. hmfly Says:

      请问WPS怎么翻译好?

    4. Gao Ang Says:

      一般称作”网络处理服务”

    Leave a Reply

    XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>