当前位置: 首页>数据库>正文

WebGIS征途——OGC标准与常用地图服务

1.什么是OGC

OGC全称Open Geospatial Consortium,自称是一个非盈利的、国际化的、自愿协商的标准化组织,它的主要目的就是制定与空间信息、基于位置服务相关的标准。这些标准就是OGC的“产品”,而这些标准的用处就在于使不同厂商、不同产品之间可以通过统一的接口进行互操作。

GIS领域,OGC已经是一个比较“官方”的标准化机构了,它不但包括了ESRI、Google、Oracle等业界强势企业作为其成员,同时还和W3C、ISO、IEEE等协会或组织结成合作伙伴关系。因此,OGC的标准虽然并不带有强制性,但是因为其背景和历史的原因,它所制定的标准天然地具有一定的权威性。

2.OGC标准

OGC的标准基本上就是OGC所有的成果,而所谓的标准就是一些接口或编码的技术文档。不同的厂商、各种GIS产品都可以对照这些文档来定义开放服务的接口、空间数据存储的编码、空间操作的方法等。

除了正式发布的标准(OpenGIS® Standards ),OGC的工作成果还包括一些其它类型的文档,比如讨论稿(Discussion Papers )、抽象规范(Abstract Specification )、最佳实践文档(Best Practices Documents )、OGC参考模型(OGC Reference Model (ORM) )、白皮书(White Papers )等。在OGC的工作中,标准的制定可能由待讨论的“讨论稿”开始,在形成一定的统一意见后形成“抽象规范”,进一步具体化到“标准”,在这个过程中同时也可能形成“最佳实践文档”供印证,而“OGC参考模型”则是描述“抽象规范”、“标准”、“最佳实践文档”之间的关系。

WebGIS征途——OGC标准与常用地图服务,WebGIS征途——OGC标准与常用地图服务_OGC,第1张

WebGIS征途——OGC标准与常用地图服务,WebGIS征途——OGC标准与常用地图服务_OGC_02,第2张

3.WMS服务

地图web服务WMS(OpenGIS® Web Map Service)当前版本是1.3.0。WMS标准定义了一些操作,这些操作允许用户在分布式的环境下通过HTTP对空间数据进行出图等操作。

比起WFS,WMS的操作要简单的多:

1. GetCapabilities(获取服务中的要素类及支持的操作)

2. GetMap(获取地图)

3. GetFeatureInfo(根据地图上的像素点获取更详细的要素信息,类似Identify功能)

同样,这些操作并不是必须全部实现,而是实现全部或部分。根据所支持的操作不同,WMS可以分为2类:

1. Basic WMS(就是最常被提及的WMS,必须支持GetCapabilities/ GetMap操作)

2. Queryable WFS(必须在Basic WMS基础上加上GetFeatureInfo操作)

4.WMTS服务

切片地图Web服务WMTS(OpenGIS® Web Map Tile Service)当前版本是1.0.0。WMTS标准定义了一些操作,这些操作允许用户访问切片地图。WMTS可能是OGC首个支持RESTful访问的服务标准。

在一个WMTS服务中包括以下3个操作:

1. GetCapabilities(获取服务的元信息)

2. GetTile(获取切片)

3. GetFeatureInfo(可选,获取点选的要素信息)

可以看到这些操作和WMS的操作非常的异曲同工。

5.WFS服务

要素Web服务WFS(OpenGIS® Web Feature Service)当前版本是1.1.0。WFS标准定义了一些操作,这些操作允许用户在分布式的环境下通过HTTP对空间数据进行查询、编辑等操作。

WFS服务要求服务的接口必须由XML描述,另外数据交互必须由GML进行,数据过滤采用CQL语言。

当一个客户端想要访问WFS服务时,一般会涉及到以下的流程:

1. 通过操作获取WFS服务支持的操作和要素类(Feature Type,可以理解为WFS中的数据集)。

2. (可能)通过操作获取WFS服务支持的要素类的定义。

3. 客户端发送某个操作的请求。

4. WFS服务处理请求。

5. WFS服务返回处理的结果和状态。

上面几个步骤中所提到的“操作”包括:

1. GetCapabilities(获取服务中的要素类及支持的操作)

2. DescribeFeatureType(描述要素类的信息)

3. GetFeature(获取要素)

4. GetGmlObject(通过XLink获取GML对象)

5. Transaction(创建、更新、删除数据的事务操作)

6. LockFeature(在事务过程中锁定要素)

但是,这些操作并不是必须全部实现,而是实现全部或部分。根据所支持的操作不同,WFS可以分为3类:

  1. Basic WFS(就是最常被提及的WFS,必须支持GetCapabilities/ DescribeFeatureType/ GetFeature操作,在功能上意味着提供一个只读的数据服务)
  2. XLink WFS(必须在Basic WFS基础上加上GetGmlObject操作)
  3. Transaction WFS(也有称为WFS-T,必须在Basic WFS基础上加上Transaction操作以支持编辑数据,另外也可以加上GetGmlObject/LockFeature操作)

————————————————————————

相关参考:

https://blog.csdn.net/warrenwyf/article/details/5711482

https://blog.csdn.net/wildboy2001/article/details/7743350


https://www.xamrdz.com/database/6hg1924642.html

相关文章: