WebGIS是互联网技术应用于GIS开发的产物,是现代GIS技术的重要组成部分,其中的Web服务是现代WebGIS的核心技术和重要标志,它集GIS、程序组件和互联网的优点于一身,深刻改变了GIS开发和应用的方式,绕过了本地数据转换和本地软件安装的复杂环节,使得不同的计算机系统和不同的部门之间可以在Web服务层面进行集成,实现了系统间的松耦合连接和跨平台。
WebGIS使用了Web服务的这些优点来发布地理数据,同时它还具有地理数据发现、访问、表示、查询、分析和整合的框架。
web服务与GIS
1.Web服务介绍及优势
Web服务是一种运行于Web服务器上的程序。Web服务提供一个XML接口,是通过标准Web协议实现通信的,支持系统间的松耦合连接,适用于任何类型的Web环境,无论互联网、Intranet还是Extranet。Web服务是一种用来解决跨网络应用集成问题的开发模式,这种模式为实现"软件作为服务"提供了技术保障。
完整的Web服务体系包含三个部分(三种应用程序):
- 服务提供者(Service Provider),服务提供者通过向服务注册中心注册服务描述来发布(Publish)服务,并通过服务访问平台提供服务,根据其服务描述解析服务调用方式,并动态绑定(Bind)服务提供者,获取服务。
- 服务请求者(Service Requestor),服务请求者在服务注册中心搜索(Find)满足需求的服务
- 服务注册中心(Service Registry),服务注册中心用于管理和维护各个服务实例的注册信息
相对于传统的应用程序,Web服务主要有以下优点:
- 开放性
- 独立性
- 松耦合性
- 低成本性
2.Web服务对地理空间产业的影响
Web服务对于分布式GIS的实施具有实用价值和现实意义,解决了GIS的互操作、跨平台等问题,也有助于软件代码重用、降低成本,对地理空间产业产生了非常大的影响。
(1)以Web服务为中心,地理信息界发布了新的产品或新的功能,来实现地理资源的制作、服务的发布、服务的发现和绑定这一系列的工作流程。
(2)Web服务是GIS融入主流信息系统的基本组件。
(3)Web服务是实现互操作的一种新途径。
(4)Web服务是实现空间数据基础设施一个重要架构。
地理Web服务的功能
地理Web服务按照功能可以分为:
- 地图和要素服务:提供地图和数据服务
- 地图服务
- 地理要素服务
- 分析服务:提供地理分析功能
- 几何服务
- 地理处理服务
- 地理编码服务
- 网络分析服务
- 数据目录服务:提供服务查询功能
1.地图和要素服务
地图服务:矢量地图服务、栅格影像服务、三维地图服务
- 地图服务:允许客户端请求一定地理范围内的地图,它以JPG、PNG、GIF等图像格式将地图返回给客户的。
- 地图可以是动态制作(on the fly),或是预先制作好的瓦片(Tile)。
- 瓦片地图:提高系统效率,缩短响应时间,一般用于更新频率较低的基础底图
- 动态地图:从地理数据库中实时读取数据制作地图,用于更新频率较高的地图
- 网络影像地图服务已经成为人们获取影像地图数据的重要手段,如天地图、百度地图、高德地图等网络影像地图服务
- 地图服务可以是二维或者三维的
- 三维地图服务数据类型包括数字高程模型、建筑物白模、三维BIM模型、城市CIM模型、点云数据、倾斜摄影、三维实景影像、虚拟三维地图等
地理要素服务:地理要素是指存在于地球表面的各种自然和社会经济现象,以及它们的分布、联系和时间变化等。地理要素是地图的主体内容,包括空间位置特征、属性特征、时间特征。
- 地理要素服务(Featuring Service):允许客户端对服务器端的地理数据库中的矢量地理数据进行读写操作,对地理要素进行增、删、改。
- 编辑地理要素的属性数据,上载PDF、照片、视频等
- 允许设计者快速在数字地图上勾勒出设计草图,并分享方案,允许其它同事修改,支持协同式的地理设计(GeoDesign)。
- 便于公众在Web地图上进行标注,分享所见所闻。
- 地理要素搜索查询服务支持在客户端通过关键字等方式查询搜索用户所需的GIS资源,能够对GIS资源的内容进行索引,根据地理要素的单个或多个属性进行模糊匹配,通过地理要素的范围及空间关系进行查询
2.分析服务
分析服务是指提供地理要素的空间关系及运算服务,主要包括几何服务、地理处理服务、地理编码服务、网络分析服务。
几何服务:几何服务用于辅助应用程序执行各种几何计算。
- 如面积量算、距离量算、坐标投影变换、几何变换、缓冲区计算、质心计算、要素合并、要素分割、要素旋转、要素镜像、要素缩放等
地理处理服务:地理处理服务可以把用户创建的多种功能和分析模型发布成Web服务,地理处理服务的功能很广泛。
- 如缓冲区分析、叠加分析、裁剪分析、相交分析、融合分析、回归分析、影像分类、光照潜力计算、可视区计算、地形剖面计算
网络分析服务:
- 计算最佳路径
- 查找最近设施:LBS中应用较多,查找最近的银行等
- 查找服务范围:可达性(一定时间内可以到达的街区),选址服务。
地理编码服务:
- 正向地理编码服务(Geocoding):将街道地址转换成地理坐标的过程
- 反向地理编码(Reverse Geocoding):将地理坐标转换成相应地址的过程。
- 免费的地理编码服务:百度、ArcGIS online、Google等
3.数据目录服务
**元数据:**作为描述数据的数据,记录了关于数据的组织、数据域及其关系的信息。通过元数据,可以实现对资源的定位和管理,从而达到对该资源及相关数据的检索。
数据目录服务:构成类似数据库,具有标识资源、检索资源的功能,为用户提供统一的信息资源表单。
基于地理空间信息元数据的目录服务,是以地理空间信息元数据为基本的目录来描述地图、GIS数据集和遥感图像等各种地理空间信息的,并实现地理空间信息的发布、发现、获取、访问和管理等功能,揭示各类型地理信息的内容和其他特征,实现地理空间信息和服务的共享。
互操作和地理Web服务标准
在大型项目或国家级信息平台中经常涉及互操作。
互操作就是让不同厂家的软件和数据能一起工作,而实现互操作的主要途径就是制定标准。
Web服务的标准就是实现互操作的一种标准(基于Web服务的互操作),在实质上就是规定请求和响应的具体格式,如请求中包含哪几个参数、每个参数都是什么类型、响应的返回信息中包含什么结果等。
OGC定义的Web地图服务标准主要包括:
- WMS:网络地图服务(Web Map Service,WMS)
- WMTS:网络地图切片服务(Web Map Tile Service,WMTS)
- WFS:网络要素服务(Web Feature Service,WFS)
- WCS:网络覆盖服务(Web Coverage Service,WCS)
- WPS:网络处理服务(Web Processing Service,WPS)
- 其他服务标准:CSW、 OpenLS、KML、GeoRSS
WMS
WMS是利用具有地理空间位置信息的数据制作地图的,将地图定义为地理数据的可视化表现,能够根据用户的请求,返回相应的地图,包括PNG、GIF、JPEG等栅格形式,或者SVG或者Web CGM等矢量形式。WMS支持HTTP,所支持的操作是由URL决定的。
接 口 | 描 述 |
---|---|
GetCapabitities(必选) | 返回服务级元数据,服务级元数据是对服务信息内容和要求参数的一种描述 |
GetMap(必选) | 返回一个地图影像,地图影像的地理空间参考和大小参数是明确定义的 |
GetFeatureInfo(可选) | 返回可以显示在地图上的某些特殊要素的信息 |
GetLegendGraphic(可选) | 返回地图的图例信息 |
GetCapabilities接口:能向客户端返回该Web服务的描述信息,即服务级元数据。返回结果的格式是XML的,它描述:
- 服务的名称、简介、关键词、覆盖范围、包含哪些数据层、每层采用是什么坐标系、具有的属性及其是否能被查询。
- 服务级元数据还包括该服务所能产生的地图影像格式、能支持的操作、每个操作的URL等。
请求的参数有:
参 数 名 称 | 参 数 含 义 | 是否是必需的参数 | 示例 |
---|---|---|---|
version | 版本号 | 否 | 1.3.0 |
service | 服务名称 | 是 | wms |
request | 请求类型 | 是 | GetCapabilities |
format | 返回格式 | 否 | --- |
请求示例:
https://ows.terrestris.de/osm/service?
REQUEST=GetCapabilities&
SERVICE=WMS&
VERSION=1.3
GetMap接口 :能根据客户端的GetMap请求参数来制作一个地图。GetMap请求中需要的参数包括显示哪些图层、地图的长宽像素数和空间坐标系等。有的WMS还支持图层样式定义(Styled Layer Descriptor, SLD),允许用户在URL请求中动态地指定各个数据层的显示符号。该接口返回结果一般是PNG、GIF和JPEG等栅格格式的图片。
请求示例:
https://ows.terrestris.de/osm/service?
REQUEST=GetMap&
SERVICE=WMS&
VERSION=1.3.0&
LAYERS=OSM-WMS&
STYLES=&
CRS=EPSG:4326&
BBOX=51.49451,-0.11377,51.53267,-0.06971&
WIDTH=400&
HEIGHT=300&
FORMAT=image/png&
TRANSPARENT=TRUE
请求结果:
一些WMS服务:
- NOAA(美国国家海洋和大气管理局)提供的WMS:
http://www.nws.noaa.gov/gis/otherpage.html
- USGS(美国地质调查局)提供的WMS:http://mrdata.usgs.gov/wms.html
WMTS
WMTS提供了一种采用预定义图块的方法发布数字地图服务的标准化解决方案,它弥补了WMS不能提供分块地图的不足。
WMS是用于在Web上显示GIS数据的最广泛使用和最简单的标准,它具有多种优势,WMTS是OGC制定的一种发布切片地图的Web服务,WMTS的地图是服务器预先制作好的切片,这种方法可以提高Web服务的性能和伸缩性。建议在以下情况下选择使用WMTS:
- 为查看缓存的图像切片提供最佳速度;
- 在互联网上显示大量数据,但分析能力有限;
- 以最佳性能提供地图。
WMS与WMTS相互补充
- WMS生成动态地图:client连接到server时,服务器实时(on the fly)生成地图,适用于数据经常更新的地图服务
- WMTS:server预先制作好瓦块,提高web服务的性能和伸缩性,适用于数据相对静态,更新较少的数据
WMTS提供的接口:
接 口 | 描 述 |
---|---|
GetCapabilities | 返回服务级元数据,服务级元数据是对服务信息内容和要求参数的一种描述 |
GetTile | 返回切片信息 |
GetFeatureInfo | 返回可以显示在地图上的某些特殊要素的信息 |
举例:请求天地图API的服务级元数据
http://t0.tianditu.gov.cn/img_w/wmts?request=GetCapabilities&service=wmts
响应结果:
WFS
WFS支持用户在分布式的环境下通过HTTP对地理要素进行插入、更新、删除、检索和发现等操作,根据客户端的HTTP请求返回要素级的GML
数据,是对Web地图服务的进一步深入。WFS通过OGC Filter构造查询条件,支持基于空间几何关系的查询、基于属性域的查询,以及基于空间几何关系和属性域的共同查询。
还可用于地理数据的切割、投影转换和在线下载(如向公众提供全国各地气温、风、降水量等数据的下载)。
接 口 | 描 述 |
---|---|
GetCapabilities | 返回服务级元数据,服务级元数据是对服务信息内容和要求参数的一种描述 |
DescribeFeatureType | 返回WFS支持的要素类型的描述 |
GetFeature | 可根据查询要求返回一个符合GML规范的数据文档 |
LockFeature | 用户通过Transaction请求时,为了保证要素信息的一致性,当一个事务访问某个数据项时,其他事务不能修改该数据项 |
Transaction | 与要素实例的交互操作,支持要素读取、在线编辑和事务处理。Transaction操作是可选的,服务器根据数据性质选择是否支持该操作 |
WFS为希望创建具有各种功能(包括搜索功能、过滤、排序选项等)的交互式地图的企业和个人提供了基本工具,建议在以下情况下选择使用WFS:
- 创建、操作和删除要素;
- 执行高级查询以检索要素信息;
- 查看和编辑属性表记录。
WCS
WCS面向空间影像数据,将包含地理位置的地理空间数据作为"覆盖物"在网上相互交换,如卫星影像、数字高程数据等栅格数据。
接 口 | 描 述 |
---|---|
GetCapabilities | 返回服务级元数据,服务级元数据是对服务信息内容和要求参数的一种描述 |
GetCoverage | 可根据查询要求返回一个包含或者引用被请求的覆盖数据的响应文档 |
DescribeCoverage | 支持用户从特定WCS服务器获取一个或多个覆盖数据的详细描述文档 |
WCS类似于WFS,WCS处理的是任何类型的基于栅格的图像,适用于卫星图像、航空摄影、海拔山体阴影或温度网格。建议在以下情况下可选择使用WCS:
- 表示多维格式,如HDF或GRIB;
- 包含多年数据,如温度数据;
- 分析栅格数据。
WPS
WPS是OGC为在互联网上进行地理分析而提供的一种Web服务,WPS标准制定了地理分析服务的输入和输出(即请求和响应)格式,以及客户端如何请求地理分析的执行。WPS所需的地理数据可以通过互联网获取,也可以是服务器上已有的数据。
接 口 | 描 述 |
---|---|
GetCapabilities | 返回服务级元数据,服务级元数据是对服务信息内容和要求参数的一种描述 |
DescribeProcess | 此操作允许客户端请求并接收可在服务实例上运行的流程的详细信息,包括所需的输入、允许的格式和可生成的输出 |
Execute | 此操作允许客户端运行由WPS实现的指定进程,使用提供的输入参数值并返回可生成的输出 |
想要为跨网络访问提供和执行地理处理工具时,WPS定义了所有输入和输出格式,以执行GIS操作。例如,WPS可以包括任何与地理空间数据相关的标准化WPS XML模式的覆盖、邻近度和路由工具。建议在以下情况下选择使用WPS:
- 在没有适当软件的情况下执行地理空间分析;
- 接收一组标准的输入和输出;
- 将空间操作简化为Web地图中的小部件。
其他服务标准
Web目录服务(CSW-Catalog Servicefor Web)
- 目录服务用于共享空间信息
- 让提供者发布、更新元数据,让使用者查询元数据
- 类型1:只读型CSW,支持GetCapabilities、DescribeRecord、GetRecordById、GetDomain等操作,仅支持元数据查询
- 类型2:事务型CSW,支持元数据的读写,允许用户通过transaction、harvest操作来发布、编辑、删除元数据
- ArcGIS Geoportal Server产品提供了CSW服务
开放位置接口(OpenLS-Open Location Service)
- 为LBS(基于位置服务)提供的web服务标准
- 包含黄页搜索、追踪手机用户的位置和导航服务
传感器网络整合框架(SWE-Sensor Web Enablement)
- 包含一系列web服务标准:传感器观测服务(SOS)、传感器规划服务(SPS),传感器报警服务(SAS)等
- 可以发现和获取传感器网络的传感器数据
RSS与GeoRSS
- RSS是建议资讯聚合(Really Simple Syndication)的简称,或称为丰富站点摘要(Rich Site Summary),是web上发布具有时效性的信息(如新闻、火灾简讯等)的主要格式。
- RSS(1999)是简单的XML格式,用标签描述每条信息的名称、摘要、全文链接和发布时间等
- 订阅者可以将自己感兴趣的多个RSS"聚合"到RSS阅读器中,提供"一站式"服务(Google Reader)
- GeoRSS,给RSS增加"where",事件是在哪里发生的
- GeoRSS是在RSS和其它XML中添加位置信息的标准
参考资料:
Standards - Open Geospatial Consortium
Web Map Service (WMS) --- GeoServer 2.25.x User Manual
WMS-简介 --- OGC e-Learning 2.0.0 文档
Web地图平铺服务(WMTS) --- OGC e-Learning 2.0.0 文档
2.5. 对WMTS服务的初步认识和解读 --- Open Source WebGIS v 0.15 文档
WebGIS系统的设计与实现 - 马维峰 - 博客园《WebGIS原理及开发:基于开源框架的WebGIS技术》-张发勇