了解OGC标准

什么是标准?

在OGC上下文中,标准是关于如何实现软件接口和数据编码的规则和指南的约定规范。地理空间软件供应商、开发人员和用户在OGC的共识过程中进行协作,以制定和商定使信息系统能够交换地理空间信息和地理处理说明的标准。OGC标准是开放标准。

开放标准

像OGC、IETF、万维网联盟(W3C)和其他组织这样的组织都是开放的组织,因为任何个人或组织都可以参与,辩论的主题基本上是公开的,决策是民主的(通常是协商一致的),规范是免费的和容易获得的。要达到一个“开放”的标准,一个“开放”的过程是必要的。OGC促进的开放性是这一总体进步的一部分。

术语“开放标准”和“开放源码”经常被混淆或错误地理解为相同的意思。OGC标准是在开放过程中开发的规范。开放源码是指在许可下免费提供的软件,该软件允许程序为任何目的运行、研究程序如何工作、对其进行改编以及重新分发副本(包括修改)。作为一个政策问题,OGC董事会和工作人员既不支持专有软件,也不支持开放源码软件。从OGC的角度来看,任何在软件或在线服务中实现OGC标准的开发人员都是在做正确的事情。OGC关心互操作性--共享地理空间信息的能力。

开放标准--定义

OGC将开放标准定义为以下标准:

  1. 免费和公开-它们是免费的,不受专利和其他知识产权的限制。

  2. 非歧视性——任何人、任何组织、任何时间、任何地点都可以使用这些工具,没有任何限制。

  3. 无许可证费用-在任何时候都不收取使用费。

  4. 供应商中立-就其内容和实现概念而言,他们是供应商中立的,不偏袒任何供应商。

  5. 数据中立-标准独立于任何数据存储模型或格式。

  6. 基于协商一致意见-它们由正式的、成员驱动的共识过程定义、记录和批准。共识小组仍然负责变更,没有一个实体控制标准。

“开放标准”与“开源”不同“开放源码”是指“自由和开放源码软件”,它是根据自由软件许可证提供的,它有权出于任何目的运行程序、研究程序如何工作、调整它并重新分发副本,包括修改。这些自由使开源软件开发成为可能,这是一种促进早期发布和频繁发布的公共协作模式。大多数开源软件产品实现开放标准,例如OGC标准。有些也是OGC的参考实现。参考实现是标准正确实现的一个例子,供开发人员免费使用,并可通过web服务或下载进行测试。

标准中的规则示例

例如,下图提供了ogcwebmap服务接口标准(wms1.3)的一个片段。

../../_images/standard-wms.jpg

该表指定要在GetMap请求中执行的参数。例如,请求必须携带 VERSION 其值必须为 1.3.0 ,这是强制性的。上面讨论的这些参数将转换为httpget请求中的键值对。

以下请求是对巴斯克省Gipuzkoa地图的httpget请求:

http://b5m.gipuzkoa.net/ogc/wms/gipuzkoa_wms?service=wms&
version=1.3.0&
request=getmap&
layers=udal_barrutiak_limites_municipales
&styles=
&crs=epsg:23030&
bbox=530000,4740000,610000,4820000
&width=600&
height=600&
format=image/png

标准类型

编码标准 提供确定如何组织信息的规则,通常由服务提供商发送或由应用程序生成。编码标准可以指定如何组织编码的信息,例如文本文件、二进制文件或XML。编码标准通常基于概念模型,概念模型可以用不同的编码实现。OGC抽象规范是一组概念模型。概念模型通常使用统一建模语言(UML)可视化。

接口标准 提供确定服务提供者和服务请求者之间的操作的规则。例如,向地图服务提供者请求地图的接口。

编码和服务可以根据用途分类如下。

目的

编码标准

接口标准

数据的查找和定位

元数据

目录服务

可视化

形象

地图服务

数据存取

数据模型和编码

数据服务