公共请求参数 |
版本号参数(VERSION)指定了协议版本号、版本号格式和版本协议。请参见 版本号与协商。
请求参数(REQUEST)指出调用哪个服务操作。这些操作名称的值必须是网络服务实例提供的。
格式参数(FORMAT)指出了对一个操作响应的输出格式。
OGC 网络服务只提供操作类型相应的格式的子集。服务器会在它的能力 XML 文档中声明支持的格式。对所声明的格式的请求,服务器都会接受。
服务实例会选择性的提供一种新的格式。这种格式是之前其它的实例不能提供的,而且客户端不要求接受或者处理的一种未知的格式。如果请求中包含了一种不是由某一服务器提供的格式,则服务器会抛出服务异常。(代码为“InvalidFormat”)
客户端只接受操作类型相应的格式的子集。如果客户端和服务器不支持任何一种相互一致的格式,客户端进行判断,或者中断与服务器的通信,或者寻找可以进行格式转换的其它服务提供者,或者允许用户选择其它的部署方法。
格式在能力 XML 文档和使用 MIME 类型的操作请求中表述。每种操作都有一个独有的支持格式列表。一些格式可以被好几个操作提供,并且需要时会在列表中进行复制。
一般来说,OGC 网络服务 MIME 类型来自互联网上广泛使用的类型。然而,其它一些 OGC 特定类型被用来区分不同类型的 XML 格式内容(见表1)。比如通用 XML mime 类型是 text/xml 和 application/xml。
MIME 类型 | 文档内容 |
application/vnd.ogc.wms_xml | WMS 能力 XML。 |
application/vnd.ogc.gml | 地理标记语言 XML。 |
application/vnd.ogc.se_xml | 服务异常 XML。 |
application/vnd.ogc.se_inimage | 用异常信息覆盖图像。 |
application/vnd.ogc.se_blank | 空图像,因为有异常发生。 |
异常参数(EXCEPTIONS)报告错误的格式。参见 服务异常 部分。
空间参考系统(SRS)参数是一个文本参数,命名了一个一个水平坐标参考系统的代码。这个名称中包含了名字空间的前缀,冒号,一个数值型的标识符,可能还有逗号后面的其他参数。OGC WMS 规范定义了两个名字空间,EPSG 和 AUTO。
OGC 网络服务不要求支持所有的 SRS。在能力 XML 中声明提供的 SRS,服务器都会接受投影请求。如果请求里面包含了一个服务器没有提供的 SRS,那么服务器会抛出一个服务异常。(code=”InvalidSRS”)
不要求客户端支持所有的 SRS。如果一个客户端和服务器不支持任何一个相互一致的 SRS,客户端经过判断后,或者中止与该服务器的通信,或者寻找其他可以完成坐标转换的服务提供者,或者允许用户选择其它的部署方法。
EPSG 名字空间借用了欧洲石油测绘组的表格中定义的 CRS 代码。一个 SRS 名称值包含前缀和标识符,没有其它的参数。服务请求中的 SRS 参数和 Capabilities XML 文档中的 <SRS> 元素的值都采用了这种格式,
EPSG:4326 是一种通用的地理投影,它的 X 轴代表了经度坐标,Y 轴代表纬度坐标。采用此种坐标系统的 BBOX 请求参数值必须按照最小经度,最小纬度,最大经度,最大纬度的顺序指定边界,而且必须使用此坐标参考系统的单位。
对空间参考系统的支持情况参见iServer OGC 服务支持发布的坐标参考系。
这部分内容请参考 OGC 相关标准。
边界框参数(BBOX)由四个英文逗号分隔开的小数,科学符号或证书组成。这些值指出了最小 X(Xmin),最小 Y(Ymin),最大 X(Xmax)和最大 Y(Ymax)。
如下图所示:
边界框面积不能为0。
如果请求中包含了一个无效的边界框(例如,最小 X 大于或等于对大 X,或最小 Y 大于等于最大 Y),则服务器返回一个异常。
如果一个请求包含的边界框与能力 XML 文档中的声明的边界框不相交,服务器将返回一个空内容(比如,空要素集合)。任何部分或者完全包含在边界框中的元素应该以一个适当的格式返回。
如果边界框的值没有在给定的 SRS 中定义(例如, 在 EPSG:4326中纬度大于90度),服务器应该返回在的 SRS 有效区域外的空内容。
在经度特殊的情况下,以下方法用于子午线在经度180度的情况下。存在地图横跨本初子午线(例如,地图中心在太平洋)的情况,这种情况是合法的。如果最小 X 是最西经度并且最大 X 是最东经度,那么可以采用如下约束:
-180 <= Xmin < Xmax < 540
例如,Xmin,Xmax 值和相应的边界框范围:
-180, 180 = 地球中心在格林威治
0, 360 = 格林威治左边界
120, 250 = 太平洋
一些地理空间信息可能是多时相的(比如,小时天气地图)。OGC 网络服务在其 Canpabilities XML 文档中声明时间维参数可用,并且其它一些操作包括请求一个特定时间的参数。时间字符串可以是单一值,数值列表,或者时间间隔。在提供时间信息时,服务器必须在 Canpabilities XML 文档中声明一个默认值,除非有其它强制性原因而不得不采取其它方法。如果已经声明了一个默认值,或者客户端的请求中不包含任何时间值,则服务器必须用默认值响应。
一些地理空间信息可能支持多种高程(比如,臭氧层集中分布在大气层中的不同高度)。OGC 的网络服务在它的 Capabiltities XML 文档中声明高程参数是可用的,而且其它操作中也会包含对某一特定高程进行操作的请求。高程值可以是单一数值,数值列表,或者数字间隔。在提供高程信息时,服务器必须在 Capbilitities XML 文档中声明一个默认值,除非有其它强制性原因而不得不采取其他方法。如果已经声明了一个默认值,或者客户端的请求中不包含任何高程值,则服务器必须用默认值响应。
一些地理空间信息可能会用到其它维度(例如,卫星影像的不同波段)。不同于时空维的四维,这种维度被认为是样本维。OGC 的网络服务在它的 Capabiltities XML 文档中声明样本维参数是可用的,而且其它操作中也会包含一种机制,这种机制包括了维度参数。每一个样本维有一个名称和一个或者多个有效值。
大部分服务请求要求附加参数来明确声明可以构建一个什么样的结果。每个 OGC 网络服务规范都定义了它的操作中必须和可选的参数。
请求允许使用可选的服务提供者特定参数(vendor-specific parameters,VSPs),这些参数可以增强请求的响应结果。特别可以使用它们来完成非标准功能的测试,进而可能成为标准。一般用户不要求使用这些 VSPs。
当出现以下情况,OGC WFS 服务必须生成一个合法的结果:
OGC 网络服务可以选择不声明它的部分或者全部的 VSPs。如果 Capabilities XML 文档中包含了 VSPs 参数,那么这些参数应该在这个 XML 文档的内部 DTD (Document Type Defination,文档类型定义)部分定义。如果没有这些参数,内部 DTD 也不会存在。
服务提供者应该慎重选择 VSP,以避免与标准参数冲突。