WFS-简介

介绍

OGCWebFeatureService(WFS)接口标准定义了一组接口,用于在Internet上访问要素和要素属性级别的地理信息。特征是对现实世界现象的抽象,也就是说,它代表了世界上可以找到的任何事物。地理要素的属性或特征称为要素特性。WFS提供了检索或查询地理要素的方法,这种方法独立于它们发布的底层数据存储。如果WFS被授权这样做,该服务还可以更新或删除地理特征。WFS的实例还能够存储查询,以便使客户机应用程序能够在稍后的时间点检索或执行查询。

背景

历史

WFS于2002年5月发布了1.0.0版,2005年5月发布了1.1.0版,2010年11月发布了2.0.0版。版本2.0.0是ISO 19142的基础。OGC于2014年7月发布了WFS版本2.0.2。

版本

2.0.2是当前最新版本

测试套件
测试套件可用于:
启动位置

实现可以在OGC数据库中找到。这里<http://www.opengeospatial.org/resource/products/byspec>

使用

WFS标准通过高度可配置的界面提供地理要素数据。默认情况下,WFS返回的数据使用地理标记语言(GML),GML是作为可扩展标记语言(XML)编写的。不过,该标准的新版本也将支持JavaScript对象表示法(JSON)。政府机构、私人组织和学术机构使用本标准发布矢量地理空间数据集,以便于接收机构编制新地图或对所提供数据进行分析。

WFS为请求由地理要素及其属性组成的矢量地理空间数据提供了一个标准接口。这样做的好处是,WFS客户端可以从多个WFS服务器请求源数据,然后呈现数据以在客户端上显示,或者作为工作流的一部分进一步处理数据。该标准保证使用公共地理空间坐标参考系,可以将数据与其他数据一致地处理。使用常见数据类型(如文本字符串、日期和时间)编码的特性属性也可以得到一致的处理。

与其他OGC标准的关系

  • OGC网络地图块服务接口标准(WMS):WMS标准更适合于需要渲染地图而不是源向量数据的地方。

  • Web地图块服务接口标准(WMTS):WMTS标准更适合于发出许多并发请求的高度可伸缩系统需要静态呈现的地图。

  • OGC网络地图块服务接口标准(WCS):WCS标准更适合于需要源覆盖数据(如栅格图像)的情况。

  • OGC地理标记语言(GML):这个标准被WFS用作发布数据的默认编码格式。

WFS操作概述

WFS指定了许多不同的操作,所有服务器都需要支持这些操作:

GetCapabilities

返回一个文档,该文档描述由服务器提供的WFS服务提供的功能和资源。

DescribeFeatureType

返回WFS实例提供或接受的功能类型和功能属性的结构描述。

ListStoredQueries

返回存储在WFS实例中的查询列表。

DescribeStoredQueries

返回存储在WFS实例中的查询的说明。

GetFeature

从通过WFS发布的数据存储中返回要素实例的选择。

WFS服务器还可以提供以下可选操作:

GetPropertyValue

检索一组要素实例的要素特性值或复杂要素特性值的一部分

GetFeatureWithLock

提供与GetFeature请求类似的功能,但具有锁定特性的附加功能,可能是为了后续更新或更改。

LockFeature

锁定一组要素实例,以便在锁定到位时,其他操作都不能修改数据。

交易

允许插入、更新或删除要素实例及其特性。

CreateStoredQuery

创建并存储一个查询,客户机可以在稍后的时间点快速轻松地触发该查询。

DropStoredQuery

从服务器中删除以前存储的查询。

例子

这个 WFS Demo server 在考古、环境保护或其他保护目的的遗址上发表一些样本数据。

一个例子 GetFeature 可用于从服务中检索数据的请求如下所示。

http://cite.deegree.org/deegree-webservices-3.4-RC3/services/wfs200?
SERVICE=WFS&
VERSION=2.0.0&
REQUEST=GetFeature&
TYPENAMES=ps:ProtectedSite

Link to the GetFeature request

这个 GetFeature request使用一组描述要返回的地理特征的参数来查询服务器。可用地理要素数据集的名称和标识符从GetCapabilities响应返回的capabilities文档中获取。

GetFeature请求返回的数据可以由桌面地理信息系统(GIS)呈现,也可以转发到ogcwms进行渲染。或者,可以将其转发到ogcwps进行进一步处理。

客户端使用

客户机需要知道WFS服务的位置才能与服务器交互。该位置通常称为服务的“端点”。端点通常是GetCapabilities请求的URI,但是服务返回的capabilities文档可能为其他操作提供可选的URI端点。例如:

此链接的URL由以下参数和值组成:

http://cite.deegree.org/deegree-webservices-3.4-RC3/services/wfs200?
SERVICE=WFS&
REQUEST=GetCapabilities&
VERSION=2.0.0

Link to the GetCapabilities request