WMS标准的翻译.doc_第1页
WMS标准的翻译.doc_第2页
WMS标准的翻译.doc_第3页
WMS标准的翻译.doc_第4页
WMS标准的翻译.doc_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

OGC Web Map Service标准的规范说明前言 在WMS规范中将地图定义为地理数据可视的表现,WMS返回的不是地图数据,而是地图图象,WMS规范定义了三个操作: GetCapabilities操作返回服务级元数据,它是对服务信息内容和请求参数的一种描述,元数据使用XML形式文件表示; GetMap操作根据客户端发出的请求参数在服务端进行检索,服务器返回一个地图图象,其地理空间参数和大小是已经明确定义的,返回的地图图象可以是GIF,JPEG,PNG或SVG格式的; GetFeatureInfo操作根据用户请求的X,Y坐标或感兴趣的图层,返回这些特殊要素的信息,信息以HTML,GML或者ASCII格式表示。一 WMS 之坐标系统1.Map CS(Map Coordinate System) 该坐标系统有两个方向轴:i轴和j轴,其中,i和j的取值都只能为非负值.通常,i代表lay CRS的西-东方向,而j代表 Lay CRS的北-南方向. 在GetMap和 GetFeatureInfo请求中的WIDTH和HEIGHT参数与i 和 j对应的关系如下: WIDTH:对应i 轴方向的像素值,也就是说,WIDTH-1为i 的最大值 HEIGHT:对应 j轴方向的map大小,同样,HEIGHT-1 为j 的最大值 2.Layer CRS(Layer Coordinate Reference System) Layer CRS是一种水平坐标参考系统。每一个WMS,在下面几个实体中都会对应有一个CRS: 在service元数据中的元素 GetMap request中的CRS参数 在GetFeatureInfo request 的map request部分中的CRS 参数 一个WMS必须支持至少一种CRS,只有当从不同的server中获取的 maps都存在至少一个共同的CRS时,这些maps才能够进行overlay叠置分析。 Layer CRS有两个坐标轴(有顺序):x轴(第一坐标轴)和y轴(第二坐标轴)。x轴并非一定指定为东西方向,而y轴也并非指定为南北方向,这完全取决于该坐标系统的定义。将一个Layer CRS 映射到Map CS时,WMS映射将需要考虑该Layer CRS的坐标顺序,原点以及方向。3.Bounding Boxes 顾名思义,它表示地图的范围,它的第一对数字表示Lay CRS中的最小坐标,而第二对值则为最大坐标.在大多数的Lay CRS中,坐标轴的正向为向东和向北,因此,这样两对数值就分部代表层的左下角和右上角坐标.但是当使用一个地理坐标系统来描述一个包括极点的区域时, 或者Layer CRS的正向为非东、北向的时候,就得视CRS的具体情况了。总而言之,bounding box的x值对应与CRS 中的第一坐标,而y 则对应于第二坐标。 Bounding Box值会在WMS的以下几个地方出现: service元数据中的元素中; GetMap request的BBOX参数中 GetFeatureInfo的map request部分中的BBOX参数 在CRS:84 坐标参考系统中描述整个地球的元素书写如下: 二、请求参数规则 request parameter rules 1.参数顺序和大小写 参数名称不应该为大小写敏感的,而是参数值则应该是.在该文档标准中,为了排班上的清晰,参数名称通常为大写形式,但这个不是必须的. 请求中的参数可以以任意顺序排列. 当请求的参数多次出现并相互冲突时,服务器可能响应未知值. WMS应该能处理在该文档中没有定义的请求参数.用该标准的话来说,就是,这个参数对WMS为多余的. 2.参数列表 参数由一个列表组成(比如,BBOX,LAYERS,STYLES),该列表应该使用逗号(“,”)作为表项的分隔符,而期间不应该有多余的空格符.如果在一个列表中存在空格符或者逗号,按照URL编码规则,它们将被忽略. 有时候,一个列表项的内容可能为空,所以应该用一个空的字符串表示,(如”).这样,两个连续的逗号就表示一个空项,该空项由一个逗号引领并且由一个逗号结尾.一个空项可能被翻译为一个不包含任何表项的列表,也可能是作为一个单独的空项目,这取决于其内容.三、常用的请求参数 VERSION 该参数描述协议版本 REQUEST 该参数指示激活哪个服务操作.其值应该为服务器提供的操作的名称之一 FORMAT 指示一个操作的响应 WMS可能只提供被某一类型的操作知晓的一个格式集合的子集,因此,服务器应该在自己的服务元数据中告知其支持的那些格式,并且应该接受请求其中任何一种格式的请求.服务器也可以选择地提供一种此前其他实例没有的新的格式,该格式并不要求客户端能接受和进行处理.如果一个请求包含未被服务器提供的请求格式,则服务器为该已定义操作返回其默认格式,或者如果没有定义默认操作,则抛出一个服务异常(编码为”InvalidFormat”). 客户端可能也只能接受被一种操作知晓的格式集合的一个子集.如果客户端和服务器没有可以相互认同的操作格式.那么客户端可能按照子集的判断终止同服务器的联系,或者搜索提供该格式的中介服务来进行格式转换,或者允许用户挑选其他部署方法(也就是说,在本地存储或者传递给一个帮助应用程序). 在服务元数据和操作请求中,格式均使用MIME类型.每一个操作都有其特有的支持格式列表.有些格式可能被多个操作提供,因此,需要时可以在列表间进行复制.四、WMS 操作 WMS定义了 3个操作:GetCapabilities,GetMap,GetFeatureInfo.其中GetFeatureInfo为可选的.下面的条款规定了如何在Http 和DCP中执行和使用WMS 操作. GetCapabilities(必须的) 1. 概述 该操作的目的在于获取服务元数据.元数据是对服务器信息内容和可接受的请求参数值的一种机器可读性(并且可以人读)描述. 在对一个WMS server构造GetCapabilities请求时当然这个server 也可以提供其他类型的服务特别地,客户会有必要查找关于WMS的信息.这样,该请求的SERVICE参数就应该包含”WMS”,如下表所示.2. 请求参数 FORMAT该可选参数规定服务元数据的格式要求.WMS服务器上GetCapabilities请求支持的值由服务元数据中的一个或多个元素列出.每个服务器应该支持默认的text/xml 格式(该格式在原标准书的服务A上有详细定义).支持其他格式是可选的,在中整个MIME类型字符串被认为是FORMAT参数的值.在HTTP环境下,MIME类型应该被设置成使用HTTP内容类型实体头(HTTP Content-type entity header)的返回实体.如果请求描述的格式不被服务器支持,服务器应该返回默认的text/xml 格式.下面说明: VERSION(略) SERVICE该强制性参数指示哪个可用的服务类型将被激活.在WMS上当激活一个GetCapabilities时,值”WMS”就应该被使用. REQUEST要激活GetCapabilities操作,值”GetCapabilities”就应该被用到. UPDATESEQUENCE该可选参数是为维持缓冲区一致而设置的,它的值可以为一个代表一个符合ISO 8601:2004 格式(原文附录D)的时间标签(timestamp)的integer,string或者其他string.服务器可能包含一个UpdateSequence值于服务元数据中,如果这样,当Capablities被改变(e.g. 当新的maps添加到给服务中)的时候,这个值应该被增加.客户端可能在其GetCapabilities请求中包含该参数.服务器端基于客户请求和服务器元数据中UpdateSequence存在和相关值的响应应该依据下表的规范.3. GetCapabilities响应当激活一个WMS时,它对GetCapabilities的响应应该为一个包含根据XML Schema文件格式化过的服务元数据XML文档.模式文件描述了服务元数据内容是可选的或是必须的,以及服务内容的格式.XML文件应该包含一个在/wms 名字空间中命名为WMS_Capabilities的Root元素,该元素应该包含一个XML模式实例schemalLocation属性来绑定/wms 名字空间到该模式. GetMap(必须的) 1.概述 GetMap操作返回一幅地图(map),接收到 GetMap请求后,WMS要么满足请求要么发送一个异常. 2.GetMap请求综述 下表列出了GetMap请求的参数. 表格 3 The Parameters of a GetMap request Request parameterMandatory/optional DescriptionVERSION=1.3.0MRequest version.REQUEST=GetMapMRequest name. LAYERS=layer_list MComma-separated list of one or more map layers.STYLES=style_listMComma-separated list of one rendering style per requested layer.CRS=namespace:identifierMCoordinate reference system. BBOX=minx,miny,maxx,maxy MBounding box corners (lower left, upper right) in CRS units.WIDTH=output_widthMWidth in pixels of map picture.HEIGHT=output_heightMHeight in pixels of map picture.FORMAT=output_formatMOutput format of map. TRANSPARENT=TRUE|FALSE OBackground transparency of map(default=FALSE).BGCOLOR=color_valueOHexadecimal red-green-blue colourvalue for the background color (default=0xFFFFFF).EXCEPTIONS=exception_formatOThe format in which exceptions are to be reported by the WMS (default=XML).TIME=timeOTime value of layer desired.ELEVATION=elevationOElevation of layer desired. Other sample dimension(s) OValue of other dimensions as appropriate. 3.请求参数详细说明 1) LAYERS 该参数值是一个逗号分隔的列表,列表元素为有效图层名称,这些名字应该在服务元数据中的 元素中已经定义过的字符内容.WMS在绘制map的时候,应该将该列表最左边的层放到层栈的最底部,下一个放在前一个的上面,依此类推. 其中可选的元素在服务元数据中为一个正数,表明了客户端在一次GetMap请求中允许请求的最大图层数.如果忽略了该元素,则服务器没有该限制. 2) STYLES 以逗号分隔的列表形式表示的请求的每一图层的STYLE,STYLE值应该有效.并且STYLE值与LAYERS参数值总是一一对应的.所以,每个map都是按照LAYERS的STYLE绘制各个layer,而各个Layer的名称必须在中有所定义,这要么为直接包含,要么继承自相应的元素的服务元数据.(换句话说,客户端不能以只为别的layer中定义的Style来请求一个layer),如果一个未知的style被请求了,服务器应该发送一个服务异常(code=StyleNotDefined).客户端可以通过给STYLE赋空值(“STYLE=”)来取得默认的style,如果客户端请求的style是一种既有命名的也有默认的混合形式,则在STYLE参数中应该用逗号来分隔一个空值(如”STYLE=style1,style2,”).如果所有的层都使用默认style,则下面两种形式都是有效的:”STYLE=”或”STYLE=,” 如果服务器为一个layer发布多个Style,而客户端发送了一个默认style的请求,选择哪个style作为默认值就是服务器的标准了,元数据中styles的顺序并不能表明哪个为默认的值. 3) CRS CRS参数声明了应用到BBOX请求参数的层CRS.该参数的值必须为所请求的服务器元数据中已经定义过或从请求层中继承过的. WMS不必支持所有的CRS,但是,对于其已经在服务元数据发布的CRS 应该支持.如果客户请求其不支持的CRS,服务器应该返回一个异常(code=”InvalidCRS”) 如果WMS服务已经声明了一个层的CRS=CRS:1,如前所述,表示该层没有定义好一个坐标参考系统,因此不能与其他层联合显示.客户端应该在GetMap中指定CRS=CRS:1,否则,服务器可能发送一个服务异常.当CRS 在请求中使用时,BBOX参数的单位应该为像素. 4) BBOX 该参数允许客户请求一个特定的Bounding Box.该参数的值为逗号分隔的一串实数列表,形如:”minx, miny, maxx, maxy”, 它们分部代表请求图层CRS 下的区域坐标:最小 x,最小y,最大x,最大y.其x,y轴的单位、方向、增量都在层CRS 中定义.BoundingBox和map 像素矩阵之间的关系是BoundingBox包围在像素矩阵的外边,而不是通过地图周边像素的中心,在该内容中,单个像素描述地面的一个区域. 5) FORMAT 该强制参数声明了地图的要求格式. WMS服务器支持的GetMap请求格式值在服务元数据中以形式列出.的整个MIME 字符串值被用来表示FORMAT参数的值,而这个值没有默认值.在HTTP环境下,MIME类型应该使用内容类型实体头文件设置为返回对象.如果请求指定了一个服务器不支持的格式,服务器应该发送一个服务异常( code= ”InvalidFormat” ). 6) WIDTH,HEIGHT 该强制参数指定产生的地图整数值大小,单位为像素.Map CS适用于map,WIDTH-1指定了Map CS中x轴方向的最大值,而HEIGHT-1则为y 轴方向的最大值. 如果请求的格式为picture,则返回的图片将不考虑MIME类型,准确地为指定的width和height像素值.在这种情况下,如果BBOX的比率和width/height的比率不一致时,WMS将会拉伸返回的地图以使得最终像素能够在BBOX比率下自动生成.换句话说,就是使得在一个输出像素不是方形的,或者拉伸图像区域到不同比率的设备上也能够使用该定义去请求一幅地图. 如果WIDTH/HEIGHT比率与X,Y以及像素尺寸的比率不一致,那么就会发生图像扭曲.客户端开发人员应该最大限度地减少用户不注意地请求或无意识地获得扭曲地地图. 如果请求一个图形元素没有显式的width和height,客户端应该在请求中包含这个WIDTH和HEIGHT值,而服务器可能使用它们作为帮助信息来构造地图输出. 服务元数据中可选和元素都是整型值指明在GetMap请求中客户允许地最大宽度和高度值.如果二者有缺失,则服务器对于相应值没有限制. 如果WMS服务器已经声明层地width和 height固定,则客户端应该在GetMap请求中指定准确的WIDTH和HEIGHT值,否则服务器将返回服务异常. 7) TRANSPARENT 该可选参数定义地图背景是否透明,可取值:”TRUE”和FALSE”,默认和参数缺省时取值:FALSE. 绘制透明像素地能力使得不同的地图请求可以被叠置生成一个复合地区.强烈推荐每个WMS提供一种可以提供透明图层的格式以使得图层可以与其他图层叠置. 注意:image/gif格式具有透明性并且可以让通常客户完全显式.image/png格式提供一个范围内的透明选项,但是对于应用程序浏览时的支持不那么常用.image/jpeg格式完全不能为透明. 当TRANSPARENT参数值为 TRUE,并且FORMAT参数包含一幅图像格式(如image/gif)时,WMS应该返回(当请求格式允许时)一个每个非空间要素绘制的像素都被设置为透明的图层结果.例如,一个”road”层应该为透明的,不管有没有道路被显式.如果图像格式不支持透明,那么服务器应该响应一个不透明的图像(换句话说,客户端常常会忽视图像格式以透明方式请求一幅图像,这不应该成为一个错误).当TRANSPARENT被设置为FALSE时,没有数据的像素点就应该设成BGCOLOR 值. 当层已经声明为不透明”opaque”的时候,地图上有意义的点,或实体将不能设成透明的,而客户端可能仍然请求TRANSPARENT=TRUE 当FORMAT参数包含一个图形元素格式时,TRANSPARENT参数可能在请求中出现,但其设置值将会被WMS忽略. 8) BGCOLOR 该可选参数为一个字符串,用来指定地图将要使用的背景色(无数据区).BGCOLOR通常的格式为一个RGB值的十六进制编码,其中对于每个颜色值red、green和blue使用两个十六进制字符,所以该值的范围为00 到FF(十进制的0 和255).其格式为oxRRGGBB;RRGGBB大小写都是允许的.而”0x”必须为小写的”x”,如果该参数在请求中缺失,则默认的值为oxFFFFFF(对应的值为白色). 当FORMAT值为图像格式时,服务器应该设置背景像素值为BGCOLOR 值 当FORMAT的值为图形元素格式(它们没有显式的背景),或者图像格式时,WMS应该避免为前景元素使用BGCOLOR值,因为这样在该背景颜色下,它们将不可见. 当图层已经什么了为不透明”opaque”时,地图上的重要点,实体将不显式任何背景. 9) EXCEPTIONS 该可选参数在前面已有定义,当请求中缺失该参数时,其默认值为”XML”. WMS应该在元素内以分隔的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论