WFS 和WMS的区别
WFS是基于地理要素级别的数据共享和数据操作,WFS规范定义了若干基于地理要素(Feature)级别的数据操作接口,并以 HTTP 作为分布式计算平台。通过 WFS服务,客户端可以得到矢量数据格式描述的单个地理要素的空间数据或要素集的空间数据,并可以对单个地理要素进行编辑、 删除、 添加等数据操作。WFS采用 GML描述地理要素特征, 根据用户请求的内容返回 GML描述的空间数据。
OpenGIS的WFS实施规范为下一步操作逻辑提供支持,提出了描述使用了分布式计算平台HTTP地理特征数据处理操作界面。数据处理操作包括以下能力:
- 创建一个新功能实例
- 删除功能实例
- 更新功能的实例
- 获取或查询功能,对空间和非空间的限制
WFS规范定义了 6 个基本操作:
- GetCapabilities操作 返回描述 WFS 服务元数据的XML文档, 服务元数据描述了该 WFS服务可以提供的地理要素类型以及针对每个要素类型的操作;
- DescribeFeatureType操作 返回WFS能够提供的地理要素类型的GML应用模式描述文档;
- GetFeature操作 根据用户查询条件,从WFS中获取地理要素,用户可以设定空间和非空间查询条件;
- Transaction 操作 为事务请求提供服务。用于描述地理数据变化的操作方法, 如创建、 修改和删除地理要素的操作;
- LockFeature操作 WFS可以在一个事务处理期间锁定一个地理要素类型中的一个或多个地理要素实例, 这使 WFS具有支持可序列化事务的能力;
- GetGmlObject 操作 一个 WFS 服务可能通过追踪Xlinks 来获取客户请求所需的构成地理要素的子要素实例。
WMS:Web Map Server就是添加地图服务:
Web 地图服务(WMS)能够根据用户的请求返回相应的地图(包括PNG,GIF,JPEG等栅格形式或者是SVG和WEB CGM等矢量形式)。WMS支持网络协议HTTP,所支持的操作是由URL定义的。
有三个重要操作GetCapabilities,GetMap,GetFeatureinfo。
WMS是OGC标准中比较简单也是比较重要的标准之一。它全称是“Web Map Service”(网络地图服务)。此标准主要定义了用于创建和显示地图图像的三大操作:GetCapabilities(获取服务能力), GetMap(获取地图)和GetFeatureInfo(获取对象信息)。其中GetMap为核心操作,此操作得到一幅地图图像。
2 GetMap请求
操作根据客户端发出的请求参数在服务端进行检索,服务器返回一个地图图象,其地理空间参数和大小是已经明确定义的,返回的地图图象可以是GIF,JPEG,PNG或SVG格式的;
GetMap请求类似于在Web上请求一幅图像,但它的请求参数更加复杂。下面是一个样例请求:
LAYERS:该参数值是一个逗号分隔的列表,列表元素为有效图层名称。这些名字应该是在服务元数据中 的<Layer><Name>元素中已经定义过的字符内容。WMS在绘制map的时候,应该将该列表最左边的层放到层栈的最底 部,下一个放在前一个的上面,依此类推。其中可选的<LayerLimit>元素在服务元数据中为一个正数。表明了客户端在一次GetMap 请求中允许请求的最大图层数。如果忽略了该元素,则服务器没有该限制。
STYLES:以逗号分隔的列表形式表示的请求的每一图层的STYLE。STYLE值应该有效,并且STYLE值与LAYERS参数值总是一一对应 的。所以,每个map都是按照LAYERS的STYLE绘制各个layer,而各个Layer的名称必须符合默认的混合形式,则在STYLE参数中应该用 逗号来分隔一个空值(如”STYLE=style1,style2”),如果服务器为一个layer发布多个Style,而客户端发送了一个默认 style的请求,选择哪个style作为默认值就是服务器的标准了。元数据中styles的顺序并不能表明哪个为默认的值。客户端开发人员应该最大限度 地减少用户不注意地请求或无意识地获得扭曲的地图。
CRS:CRS参数声明了应用到BBOX请求参数的层CRS。该参数的