首先看一下W3C给出的URI,URL,URN的定义
URI,URL,URN的定义

URI

Uniform Resource Identifier,统一资源标识符,URL就是在互联网中用于标识资源的一个字符串。 为了能在网络中互相传递资源,这些字符串需要遵守一定的规则。网络中的资源,包含但不仅限于文档,文件夹,图片,网页等。一般常见的协议包含,http,ftp,mailto,telnet,file等,标准的URI协议有30多种。
URI格式

  • 登陆信息
    登录信息是可选项,里面包含用户名和密码,作为服务器端获取信息资源时的登录信息。
  • 服务器地址
    服务器地址是必须指定的,既可以是类似en.wikipedia.org这类DNS可解析的名称,或者是192.168.1.1这类IPV4地址名,或者IPV6地址名。
  • 服务器端口号
    指定服务器连接网络的端口号,可选。
  • 带层次的文件路径
    指服务器上的文件路径来指定特定的资源。与UNIX系统文件目录类似。
  • 查询字符串
    针对已指定文件路径内的资源,可以使用查询字符串传入任意参数。此项可选。

URN

Uniform Resource Name,统一资源名称,是URI的历史名字,使用urn:作为URI scheme。
1997年的RFC 2141定义了URN,期望为资源提供持久的、位置无关的标识方式,并允许简单地将多个命名空间映射到单个URN命名空间。这样一个URI的存在并不意味着被标识的资源一定是可用的,但它仍然需要保持全局唯一和持久,即使资源已经不存在了或变得不可用。例子如下,用来表示“The 1968 book The Last Unicorn, identified by its book number”:

1
urn:isbn:0451450523

URL

URL是一种特殊的URI,用于指定特定资源的网络位置。我们每天使用的URL就像http://mywebsite.com,当然也不是必须使用HTTP协议,也可以是ftp://mywebsite.com,或者smb://mywebsite.com。URI是标识了某个资源,而URL包含的是我们如何获取资源的信息。或者说,一个带有地址和具体资源名称的URL,可以称之为URI。
URI,URL和URN


WMS, WCS和WFS

为了方便地理相关信息的传输,开放地理空间联盟 (OGC) 发布了一系列规范包括WMS(Web Map Service), WCS(Web Coverage Service)和WFS(Web feature Service),分别用于发布和获取地图、栅格影像、几何要素等。
WMS的组织方式
拿WMS举例,客户端应用程序通过向服务的 URL 附加参数来使用 WMS 服务。主要支持以下几种操作:

  • 请求服务的元数据 (GetCapabilities)
  • 请求地图图像 (GetMap)
  • 请求关于地图要素的信息 (GetFeatureInfo [可选])
  • 请求用户自定义样式 (GetStyles)
  • 请求图例符号 (GetLegendGraphic)

请求元数据GetCapabilities

请求的格式:

http://sampleserver1.arcgisonline.com/ArcGIS/services/Specialty/ESRI_StatesCitiesRivers_USA/MapServer/WMSServer?service=WMS&request=GetCapabilities&version=1.3.0

参数含义如下:
GetCapability参数
返回的是一个描述元数据的xml文件,其中包含了Service和Capability两个参数。
GetCapability返回结果

请求地图GetMap

http://sampleserver1.arcgisonline.com/ArcGIS/services/Specialty/ESRI_StatesCitiesRivers_USA/MapServer/WMSServer?VERSION=1.3.0&REQUEST=GetMap&CRS=CRS:84&BBOX=-178.217598,18.924782,-66.969271,71.406235&WIDTH=765&HEIGHT=360&LAYERS=0,1,2&STYLES=&EXCEPTIONS=application/vnd.ogc.se_xml&FORMAT=image/png&BGCOLOR=0xFFFFFF&TRANSPARE

参数含义如下:
GetMap参数
返回结果:
GetMap返回结果

请求要素信息GetFeatureInfo

此项可选,主要返回描述所请求的地图的一些信息。比如可以查询某地图的宽高信息。该查询中包含GetCapability中的大部分参数,当然还有其他的信息。

http://sampleserver1.arcgisonline.com/arcgis/services/Specialty/ESRI_StatesCitiesRivers_USA/MapServer/WMSServer?REQUEST=GetFeatureInfo&SERVICE=WMS&VERSION=1.1.1&LAYERS=0&STYLES=default&FORMAT=image/png&BGCOLOR=0xFFFFFF&TRANSPARENT=TRUE&SRS=EPSG:4326&BBOX=-125.192865,11.2289864971264,-66.105824,62.5056715028736&WIDTH=1044&HEIGHT=906&QUERY_LAYERS=0&X=103&Y=462

参数含义如下:
GetFeatureInfo参数
返回结果:
GetFeatureInfo返回结果

另外WCS和WFS的使用方法同上,具体请参考官方文档。

Reference

[1] URL vs URI vs URN
[2] Uniform Resource Name wiki
[3] What is the difference between a URI, a URL and a URN?
[4] ArcGIS文档 WMS 服务