WMS学习笔记:2.WMS解析

 WMS 定义了三个操作,分别是:GetCapabilities,GetMap和GetFeatureInfo。其中,GetFeatureInfo是可选的。本条款规定了在超文本传输协议(HTTP)分布式计算平台(DCP)上,这些WMS操作的执行和使用。

1.必选操作GetCapabilities的目的是为了获得服务元数据,服务元数据是一些可以机读(或者人读)的关于服务器信息内容以及可接收的请求参数值的描述。

WMS服务元数据示例:

  <?xml version="1.0" encoding="UTF-8" ?> 
- <!--  Generated by CubeSERV WMS on 2013-10-08 00:50:46 
  --> 
- <!--  This CubeSERV WMS is a component of CubeWerx Suite 6.8.4 
  --> 
- <WMS_Capabilities version="1.3.2" xmlns="http://www.opengis.net/wms" xmlns:ows="http://www.opengis.net/ows/1.1" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.opengis.net/wms http://schemas.cubewerx.com/schemas/wms/1.3.2/capabilities_1_3_2.xsd http://www.opengis.net/ows/1.1 http://schemas.cubewerx.com/schemas/ows/1.1.0/owsAll.xsd">
- <Service>
  <Name>WMS</Name> 
- <Description>
  <ows:Title>CubeSERV Demo WMS</ows:Title> 
  <ows:Abstract xml:lang="en">OGC-compliant cascading web map server (WMS) by CubeWerx Inc.</ows:Abstract> 
  </Description>
  <OnlineResource xlink:type="simple" xlink:href="http://www.cubewerx.com/" /> 
- <ContactInformation>
- <ContactPersonPrimary>
  <ContactPerson>Mike Galluchon</ContactPerson> 
  <ContactOrganization>CubeWerx Inc.</ContactOrganization> 
  </ContactPersonPrimary>
  <ContactPosition>Technical Support</ContactPosition> 
- <ContactAddress>
  <AddressType>postal</AddressType> 
  <Address>15 rue Gamelin, suite 506</Address> 
  <City>Gatineau</City> 
  <StateOrProvince>Québec</StateOrProvince> 
  <PostCode>J8Y 6N5</PostCode> 
  <Country>Canada</Country> 
  </ContactAddress>
  <ContactVoiceTelephone>(819) 771-8303</ContactVoiceTelephone> 
  <ContactFacsimileTelephone>(819) 771-8388</ContactFacsimileTelephone> 
  <ContactElectronicMailAddress>support@cubewerx.com</ContactElectronicMailAddress> 
  </ContactInformation>
  <MaxWidth>4000</MaxWidth> 
  <MaxHeight>3000</MaxHeight> 
  </Service>
- <Capability>
- <Request>
- <Operation name="GetCapabilities">
  <Format>text/xml</Format> 
  <Format>application/x-bxml</Format> 
- <DCPType>
- <HTTP>
- <Get>
  <OnlineResource xlink:type="simple" xlink:href="http://demo.cubewerx.com/demo/cubeserv/simple?" /> 
  </Get>
  </HTTP>
  </DCPType>
  </Operation>
- <Operation name="GetMap">
  <Format>image/png</Format> 
  <Format>image/png; PhotometricInterpretation="PaletteColor"</Format> 
  <Format>image/png; PhotometricInterpretation="RGB"</Format> 
  <Format>image/png; PhotometricInterpretation="BlackIsZero"</Format> 
  <Format>image/tiff</Format> 
  <Format>image/tiff; PhotometricInterpretation="PaletteColor"</Format> 
  <Format>image/tiff; PhotometricInterpretation="RGB"</Format> 
  <Format>image/tiff; PhotometricInterpretation="BlackIsZero"</Format> 
  <Format>image/gif</Format> 
  <Format>image/jpeg</Format> 
  <Format>image/x-jpegorpng</Format> 
  <Format>image/x-portable-anymap</Format> 
  <Format>image/x-portable-pixmap</Format> 
  <Format>image/x-portable-graymap</Format> 
  <Format>application/x-cubewerx-wkb; version="3"</Format> 
  <Format>application/x-cubewerx-wkb; version="3"; PhotometricInterpretation="PaletteColor"</Format> 
  <Format>application/x-cubewerx-wkb; version="3"; PhotometricInterpretation="RGB"</Format> 
  <Format>application/x-cubewerx-wkb; version="3"; PhotometricInterpretation="BlackIsZero"</Format> 
  <Format>application/vnd.google-earth.kml+xml</Format> 
  <Format>application/vnd.google-earth.kml+bxml; bxmlVersion="0.0.8"</Format> 
- <DCPType>
- <HTTP>
- <Get>
  <OnlineResource xlink:type="simple" xlink:href="http://demo.cubewerx.com/demo/cubeserv/simple?" /> 
  </Get>
- <Post>
  <OnlineResource xlink:type="simple" xlink:href="http://demo.cubewerx.com/demo/cubeserv/simple" /> 
  </Post>
  </HTTP>
  </DCPType>
  </Operation>
- <Operation name="GetFeatureInfo">
  <Format>text/html</Format> 
  <Format>application/x-bxfs+xml; version="0.0.2"</Format> 
  <Format>application/x-bxfs+x-bxml; version="0.0.2"</Format> 
  <Format>text/xml; subtype="bxfs/0.0.2"</Format> 
  <Format>application/x-bxml; subtype="bxfs/0.0.2"</Format> 
- <DCPType>
- <HTTP>
- <Get>
  <OnlineResource xlink:type="simple" xlink:href="http://demo.cubewerx.com/demo/cubeserv/simple?" /> 
  </Get>
- <Post>
  <OnlineResource xlink:type="simple" xlink:href="http://demo.cubewerx.com/demo/cubeserv/simple" /> 
  </Post>
  </HTTP>
  </DCPType>
  </Operation>
- <Operation name="DescribeLayer">
  <Format>text/xml</Format> 
- <DCPType>
- <HTTP>
- <Get>
  <OnlineResource xlink:type="simple" xlink:href="http://demo.cubewerx.com/demo/cubeserv/simple?" /> 
  </Get>
  </HTTP>
  </DCPType>
  </Operation>
- <Operation name="GetLegendGraphic">
  <Format>image/png</Format> 
  <Format>image/png; PhotometricInterpretation="PaletteColor"</Format> 
  <Format>image/png; PhotometricInterpretation="RGB"</Format> 
  <Format>image/png; PhotometricInterpretation="BlackIsZero"</Format> 
  <Format>image/tiff</Format> 
  <Format>image/tiff; PhotometricInterpretation="PaletteColor"</Format> 
  <Format>image/tiff; PhotometricInterpretation="RGB"</Format> 
  <Format>image/tiff; PhotometricInterpretation="BlackIsZero"</Format> 
  <Format>image/gif</Format> 
  <Format>image/jpeg</Format> 
  <Format>image/x-jpegorpng</Format> 
  <Format>image/x-portable-anymap</Format> 
  <Format>image/x-portable-pixmap</Format> 
  <Format>image/x-portable-graymap</Format> 
  <Format>application/x-cubewerx-wkb; version="3"</Format> 
  <Format>application/x-cubewerx-wkb; version="3"; PhotometricInterpretation="PaletteColor"</Format> 
  <Format>application/x-cubewerx-wkb; version="3"; PhotometricInterpretation="RGB"</Format> 
  <Format>application/x-cubewerx-wkb; version="3"; PhotometricInterpretation="BlackIsZero"</Format> 
- <DCPType>
- <HTTP>
- <Get>
  <OnlineResource xlink:type="simple" xlink:href="http://demo.cubewerx.com/demo/cubeserv/simple?" /> 
  </Get>
  </HTTP>
  </DCPType>
  </Operation>
- <Operation name="GetLegend">
  <Format>image/png</Format> 
  <Format>image/png; PhotometricInterpretation="PaletteColor"</Format> 
  <Format>image/png; PhotometricInterpretation="RGB"</Format> 
  <Format>image/png; PhotometricInterpretation="BlackIsZero"</Format> 
  <Format>image/tiff</Format> 
  <Format>image/tiff; PhotometricInterpretation="PaletteColor"</Format> 
  <Format>image/tiff; PhotometricInterpretation="RGB"</Format> 
  <Format>image/tiff; PhotometricInterpretation="BlackIsZero"</Format> 
  <Format>image/gif</Format> 
  <Format>image/jpeg</Format> 
  <Format>image/x-jpegorpng</Format> 
  <Format>image/x-portable-anymap</Format> 
  <Format>image/x-portable-pixmap</Format> 
  <Format>image/x-portable-graymap</Format> 
  <Format>application/x-cubewerx-wkb; version="3"</Format> 
  <Format>application/x-cubewerx-wkb; version="3"; PhotometricInterpretation="PaletteColor"</Format> 
  <Format>application/x-cubewerx-wkb; version="3"; PhotometricInterpretation="RGB"</Format> 
  <Format>application/x-cubewerx-wkb; version="3"; PhotometricInterpretation="BlackIsZero"</Format> 
- <DCPType>
- <HTTP>
- <Get>
  <OnlineResource xlink:type="simple" xlink:href="http://demo.cubewerx.com/demo/cubeserv/simple?" /> 
  </Get>
  </HTTP>
  </DCPType>
  </Operation>
- <Operation name="GetStyles">
  <Format>application/vnd.ogc.sld+xml</Format> 
  <Format>application/vnd.ogc.sld+x-bxml</Format> 
  <Format>text/xml</Format> 
  <Format>application/x-bxml</Format> 
- <DCPType>
- <HTTP>
- <Get>
  <OnlineResource xlink:type="simple" xlink:href="http://demo.cubewerx.com/demo/cubeserv/simple?" /> 
  </Get>
  </HTTP>
  </DCPType>
  </Operation>
- <Operation name="GetAccessibility">
  <Format>text/xml</Format> 
  <Format>application/x-bxml</Format> 
- <DCPType>
- <HTTP>
- <Get>
  <OnlineResource xlink:type="simple" xlink:href="http://demo.cubewerx.com/demo/cubeserv/simple?" /> 
  </Get>
  </HTTP>
  </DCPType>
  </Operation>
- <Operation name="GetAssociations">
  <Format>text/xml</Format> 
  <Format>application/x-bxml</Format> 
- <DCPType>
- <HTTP>
- <Get>
  <OnlineResource xlink:type="simple" xlink:href="http://demo.cubewerx.com/demo/cubeserv/simple?" /> 
  </Get>
  </HTTP>
  </DCPType>
  </Operation>
  </Request>
- <Exception>
  <Format>XML</Format> 
  <Format>INIMAGE</Format> 
  <Format>BLANK</Format> 
  <Format>HTML</Format> 
  <Format>TEXT</Format> 
  </Exception>
- <Layer queryable="false">
- <Description>
  <ows:Title>CubeSERV WMS layers</ows:Title> 
  </Description>
  <CRS>EPSG:4326</CRS> 
  <CRS>CRS:84</CRS> 
  <CRS>EPSG:3857</CRS> 
  <CRS>AUTO:42001</CRS> 
  <CRS>AUTO:42002</CRS> 
  <CRS>AUTO:42003</CRS> 
  <CRS>AUTO:42004</CRS> 
  <CRS>EPSG:4267</CRS> 
  <CRS>CRS:27</CRS> 
  <CRS>EPSG:4269</CRS> 
  <CRS>CRS:83</CRS> 
  <CRS>EPSG:26703</CRS> 
  <CRS>EPSG:26704</CRS> 
  <CRS>EPSG:26705</CRS> 
  <CRS>EPSG:26706</CRS> 
  <CRS>EPSG:26707</CRS> 
  <CRS>EPSG:26708</CRS> 
  <CRS>EPSG:26709</CRS> 
  <CRS>EPSG:26710</CRS> 
  <CRS>EPSG:26711</CRS> 
  <CRS>EPSG:26712</CRS> 
  <CRS>EPSG:26713</CRS> 
  <CRS>EPSG:26714</CRS> 
  <CRS>EPSG:26715</CRS> 
  <CRS>EPSG:26716</CRS> 
  <CRS>EPSG:26717</CRS> 
  <CRS>EPSG:26718</CRS> 
  <CRS>EPSG:26719</CRS> 
  <CRS>EPSG:26720</CRS> 
  <CRS>EPSG:26721</CRS> 
  <CRS>EPSG:26722</CRS> 
  <CRS>EPSG:26903</CRS> 
  <CRS>EPSG:26904</CRS> 
  <CRS>EPSG:26905</CRS> 
  <CRS>EPSG:26906</CRS> 
  <CRS>EPSG:26907</CRS> 
  <CRS>EPSG:26908</CRS> 
  <CRS>EPSG:26909</CRS> 
  <CRS>EPSG:26910</CRS> 
  <CRS>EPSG:26911</CRS> 
  <CRS>EPSG:26912</CRS> 
  <CRS>EPSG:26913</CRS> 
  <CRS>EPSG:26914</CRS> 
  <CRS>EPSG:26915</CRS> 
  <CRS>EPSG:26916</CRS> 
  <CRS>EPSG:26917</CRS> 
  <CRS>EPSG:26918</CRS> 
  <CRS>EPSG:26919</CRS> 
  <CRS>EPSG:26920</CRS> 
  <CRS>EPSG:26921</CRS> 
  <CRS>EPSG:26922</CRS> 
  <CRS>EPSG:26923</CRS> 
  <CRS>EPSG:32601</CRS> 
  <CRS>EPSG:32602</CRS> 
  <CRS>EPSG:32603</CRS> 
  <CRS>EPSG:32604</CRS> 
  <CRS>EPSG:32605</CRS> 
  <CRS>EPSG:32606</CRS> 
  <CRS>EPSG:32607</CRS> 
  <CRS>EPSG:32608</CRS> 
  <CRS>EPSG:32609</CRS> 
  <CRS>EPSG:32610</CRS> 
  <CRS>EPSG:32611</CRS> 
  <CRS>EPSG:32612</CRS> 
  <CRS>EPSG:32613</CRS> 
  <CRS>EPSG:32614</CRS> 
  <CRS>EPSG:32615</CRS> 
  <CRS>EPSG:32616</CRS> 
  <CRS>EPSG:32617</CRS> 
  <CRS>EPSG:32618</CRS> 
  <CRS>EPSG:32619</CRS> 
  <CRS>EPSG:32620</CRS> 
  <CRS>EPSG:32621</CRS> 
  <CRS>EPSG:32622</CRS> 
  <CRS>EPSG:32623</CRS> 
  <CRS>EPSG:32624</CRS> 
  <CRS>EPSG:32625</CRS> 
  <CRS>EPSG:32626</CRS> 
  <CRS>EPSG:32627</CRS> 
  <CRS>EPSG:32628</CRS> 
  <CRS>EPSG:32629</CRS> 
  <CRS>EPSG:32630</CRS> 
  <CRS>EPSG:32631</CRS> 
  <CRS>EPSG:32632</CRS> 
  <CRS>EPSG:32633</CRS> 
  <CRS>EPSG:32634</CRS> 
  <CRS>EPSG:32635</CRS> 
  <CRS>EPSG:32636</CRS> 
  <CRS>EPSG:32637</CRS> 
  <CRS>EPSG:32638</CRS> 
  <CRS>EPSG:32639</CRS> 
  <CRS>EPSG:32640</CRS> 
  <CRS>EPSG:32641</CRS> 
  <CRS>EPSG:32642</CRS> 
  <CRS>EPSG:32643</CRS> 
  <CRS>EPSG:32644</CRS> 
  <CRS>EPSG:32645</CRS> 
  <CRS>EPSG:32646</CRS> 
  <CRS>EPSG:32647</CRS> 
  <CRS>EPSG:32648</CRS> 
  <CRS>EPSG:32649</CRS> 
  <CRS>EPSG:32650</CRS> 
  <CRS>EPSG:32651</CRS> 
  <CRS>EPSG:32652</CRS> 
  <CRS>EPSG:32653</CRS> 
  <CRS>EPSG:32654</CRS> 
  <CRS>EPSG:32655</CRS> 
  <CRS>EPSG:32656</CRS> 
  <CRS>EPSG:32657</CRS> 
  <CRS>EPSG:32658</CRS> 
  <CRS>EPSG:32659</CRS> 
  <CRS>EPSG:32660</CRS> 
  <CRS>EPSG:32701</CRS> 
  <CRS>EPSG:32702</CRS> 
  <CRS>EPSG:32703</CRS> 
  <CRS>EPSG:32704</CRS> 
  <CRS>EPSG:32705</CRS> 
  <CRS>EPSG:32706</CRS> 
  <CRS>EPSG:32707</CRS> 
  <CRS>EPSG:32708</CRS> 
  <CRS>EPSG:32709</CRS> 
  <CRS>EPSG:32710</CRS> 
  <CRS>EPSG:32711</CRS> 
  <CRS>EPSG:32712</CRS> 
  <CRS>EPSG:32713</CRS> 
  <CRS>EPSG:32714</CRS> 
  <CRS>EPSG:32715</CRS> 
  <CRS>EPSG:32716</CRS> 
  <CRS>EPSG:32717</CRS> 
  <CRS>EPSG:32718</CRS> 
  <CRS>EPSG:32719</CRS> 
  <CRS>EPSG:32720</CRS> 
  <CRS>EPSG:32721</CRS> 
  <CRS>EPSG:32722</CRS> 
  <CRS>EPSG:32723</CRS> 
  <CRS>EPSG:32724</CRS> 
  <CRS>EPSG:32725</CRS> 
  <CRS>EPSG:32726</CRS> 
  <CRS>EPSG:32727</CRS> 
  <CRS>EPSG:32728</CRS> 
  <CRS>EPSG:32729</CRS> 
  <CRS>EPSG:32730</CRS> 
  <CRS>EPSG:32731</CRS> 
  <CRS>EPSG:32732</CRS> 
  <CRS>EPSG:32733</CRS> 
  <CRS>EPSG:32734</CRS> 
  <CRS>EPSG:32735</CRS> 
  <CRS>EPSG:32736</CRS> 
  <CRS>EPSG:32737</CRS> 
  <CRS>EPSG:32738</CRS> 
  <CRS>EPSG:32739</CRS> 
  <CRS>EPSG:32740</CRS> 
  <CRS>EPSG:32741</CRS> 
  <CRS>EPSG:32742</CRS> 
  <CRS>EPSG:32743</CRS> 
  <CRS>EPSG:32744</CRS> 
  <CRS>EPSG:32745</CRS> 
  <CRS>EPSG:32746</CRS> 
  <CRS>EPSG:32747</CRS> 
  <CRS>EPSG:32748</CRS> 
  <CRS>EPSG:32749</CRS> 
  <CRS>EPSG:32750</CRS> 
  <CRS>EPSG:32751</CRS> 
  <CRS>EPSG:32752</CRS> 
  <CRS>EPSG:32753</CRS> 
  <CRS>EPSG:32754</CRS> 
  <CRS>EPSG:32755</CRS> 
  <CRS>EPSG:32756</CRS> 
  <CRS>EPSG:32757</CRS> 
  <CRS>EPSG:32758</CRS> 
  <CRS>EPSG:32759</CRS> 
  <CRS>EPSG:32760</CRS> 
  <CRS>EPSG:41001</CRS> 
  <CRS>EPSG:42101</CRS> 
  <CRS>EPSG:42103</CRS> 
  <CRS>EPSG:42105</CRS> 
  <CRS>EPSG:102002</CRS> 
- <EX_GeographicBoundingBox>
  <westBoundLongitude>-180</westBoundLongitude> 
  <eastBoundLongitude>180</eastBoundLongitude> 
  <southBoundLatitude>-90</southBoundLatitude> 
  <northBoundLatitude>89.9999</northBoundLatitude> 
  </EX_GeographicBoundingBox>
  <BoundingBox CRS="EPSG:4326" minx="-90" miny="-180" maxx="89.9999" maxy="180" /> 
- <Attribution>
  <ows:Title>CubeWerx Inc.</ows:Title> 
  <OnlineResource xlink:type="simple" xlink:href="http://www.cubewerx.com/" /> 
- <LogoURL width="86" height="97">
  <Format>http://www.cubewerx.com/cubewerx.png</Format> 
  <OnlineResource xlink:type="simple" xlink:href="http://www.cubewerx.com/cubewerx.png" /> 
  </LogoURL>
  </Attribution>
- <Layer queryable="false">
- <Description>
  <ows:Title>Foundation</ows:Title> 
  </Description>
- <EX_GeographicBoundingBox>
  <westBoundLongitude>-180</westBoundLongitude> 
  <eastBoundLongitude>180</eastBoundLongitude> 
  <southBoundLatitude>-90</southBoundLatitude> 
  <northBoundLatitude>89.9999</northBoundLatitude> 
  </EX_GeographicBoundingBox>
- <Layer queryable="false">
- <Description>
  <ows:Title xml:lang="en">Boundaries</ows:Title> 
  </Description>
- <EX_GeographicBoundingBox>
  <westBoundLongitude>-179.9999</westBoundLongitude> 
  <eastBoundLongitude>179.999969482422</eastBoundLongitude> 
  <southBoundLatitude>-89.9999</southBoundLatitude> 
  <northBoundLatitude>89.9999</northBoundLatitude> 
  </EX_GeographicBoundingBox>
- <Layer queryable="true">
  <Name>Foundation.coastl_1m</Name> 
- <Description>
  <ows:Title>Coastlines</ows:Title> 
  <ows:Abstract xml:lang="en">VRF Narrative Table for "Coastlines": <P>Coastline/shorelines (BA010) have been portrayed for coastal islands but not inland islands.</ows:Abstract> 
  </Description>
- <EX_GeographicBoundingBox>
  <westBoundLongitude>-179.999420166016</westBoundLongitude> 
  <eastBoundLongitude>179.9999</eastBoundLongitude> 
  <southBoundLatitude>-85.582763671875</southBoundLatitude> 
  <northBoundLatitude>83.62741851806639</northBoundLatitude> 
  </EX_GeographicBoundingBox>
- <Style>
  <Name>cubewerx</Name> 
- <Description>
  <ows:Title>CubeWerx</ows:Title> 
  </Description>
- <LegendURL>
  <Format>image/png</Format> 
  <OnlineResource xlink:type="simple" xlink:href="http://demo.cubewerx.com/demo/cubeserv/simple?SERVICE=WMS&VERSION=1.3.2&LANGUAGE=zh-CN,zh,en&REQUEST=GetLegendGraphic&LAYER=Foundation.coastl_1m&STYLE=cubewerx&FORMAT=image%2Fpng&TRANSPARENT=TRUE" /> 
  </LegendURL>
  </Style>
  </Layer>
- <Layer queryable="true">
  <Name>Foundation.depthl_1m</Name> 
- <Description>
  <ows:Title>Depth Contours</ows:Title> 
  <ows:Abstract xml:lang="en">VRF Narrative Table for "Depth Contours": <P>Depth contours (BE015) were derived from digital bathymetric data provided by Defense Mapping Agency. Depths are expressed in the following intervals: 200, 600, 1000. 2000, 4000, 6000, and 8000 meters.</ows:Abstract> 
  </Description>
- <EX_GeographicBoundingBox>
  <westBoundLongitude>-179.9999</westBoundLongitude> 
  <eastBoundLongitude>179.999969482422</eastBoundLongitude> 
  <southBoundLatitude>-78.1118240356445</southBoundLatitude> 
  <northBoundLatitude>89.9186553955078</northBoundLatitude> 
  </EX_GeographicBoundingBox>
- <Style>
  <Name>cubewerx</Name> 
- <Description>
  <ows:Title>CubeWerx</ows:Title> 
  </Description>
- <LegendURL>
  <Format>image/png</Format> 
  <OnlineResource xlink:type="simple" xlink:href="http://demo.cubewerx.com/demo/cubeserv/simple?SERVICE=WMS&VERSION=1.3.2&LANGUAGE=zh-CN,zh,en&REQUEST=GetLegendGraphic&LAYER=Foundation.depthl_1m&STYLE=cubewerx&FORMAT=image%2Fpng&TRANSPARENT=TRUE" /> 
  </LegendURL>
  </Style>
  </Layer>
- <Layer queryable="true">
  <Name>Foundation.oceansea_1m</Name> 
- <Description>
  <ows:Title>Oceans/Seas</ows:Title> 
  <ows:Abstract xml:lang="en">VRF Narrative Table for "Oceans/Seas": <P>In coastal area, points of change from ocean/sea areas (BA040) to inland water areas (BH000) were taken from Digital Chart of the World, edition 1, July 1992.</ows:Abstract> 
  </Description>
- <EX_GeographicBoundingBox>
  <westBoundLongitude>-179.9999</westBoundLongitude> 
  <eastBoundLongitude>179.999969482422</eastBoundLongitude> 
  <southBoundLatitude>-85.582763671875</southBoundLatitude> 
  <northBoundLatitude>89.9999</northBoundLatitude> 
  </EX_GeographicBoundingBox>
- <Style>
  <Name>cubewerx</Name> 
- <Description>
  <ows:Title>CubeWerx</ows:Title> 
  </Description>
- <LegendURL>
  <Format>image/png</Format> 
  <OnlineResource xlink:type="simple" xlink:href="http://demo.cubewerx.com/demo/cubeserv/simple?SERVICE=WMS&VERSION=1.3.2&LANGUAGE=zh-CN,zh,en&REQUEST=GetLegendGraphic&LAYER=Foundation.oceansea_1m&STYLE=cubewerx&FORMAT=image%2Fpng&TRANSPARENT=TRUE" /> 
  </LegendURL>
  </Style>
  </Layer>
- <Layer queryable="true">
  <Name>Foundation.polbndl_1m</Name> 
- <Description>
  <ows:Title>Political Boundaries</ows:Title> 
  </Description>
- <EX_GeographicBoundingBox>
  <westBoundLongitude>-179.9999</westBoundLongitude> 
  <eastBoundLongitude>179.9999</eastBoundLongitude> 
  <southBoundLatitude>-89.9999</southBoundLatitude> 
  <northBoundLatitude>89.997917175293</northBoundLatitude> 
  </EX_GeographicBoundingBox>
- <Style>
  <Name>cubewerx</Name> 
- <Description>
  <ows:Title>CubeWerx</ows:Title> 
  </Description>
- <LegendURL>
  <Format>image/png</Format> 
  <OnlineResource xlink:type="simple" xlink:href="http://demo.cubewerx.com/demo/cubeserv/simple?SERVICE=WMS&VERSION=1.3.2&LANGUAGE=zh-CN,zh,en&REQUEST=GetLegendGraphic&LAYER=Foundation.polbndl_1m&STYLE=cubewerx&FORMAT=image%2Fpng&TRANSPARENT=TRUE" /> 
  </LegendURL>
  </Style>
  </Layer>
  </Layer>
- <Layer queryable="false">
- <Description>
  <ows:Title xml:lang="en">Digital Terrain</ows:Title> 
  </Description>
- <EX_GeographicBoundingBox>
  <westBoundLongitude>-180</westBoundLongitude> 
  <eastBoundLongitude>180</eastBoundLongitude> 
  <southBoundLatitude>-90</southBoundLatitude> 
  <northBoundLatitude>84.66666666666669</northBoundLatitude> 
  </EX_GeographicBoundingBox>
- <Layer queryable="true" opaque="true">
  <Name>Foundation.gtopo30</Name> 
- <Description>
  <ows:Title>Global 30 Second Elevations</ows:Title> 
  <ows:Abstract>GTOPO30 is a global digital elevation model (DEM) resulting from a collaborative effort led by the staff at the U.S. Geological Survey's EROS Data Center in Sioux Falls, South Dakota. Elevations in GTOPO30 are regularly spaced at 30-arc seconds (approximately 1 kilometer). GTOPO30 was developed to meet the needs of the geospatial data user community for regional and continental scale topographic data.</ows:Abstract> 
  </Description>
- <EX_GeographicBoundingBox>
  <westBoundLongitude>-180</westBoundLongitude> 
  <eastBoundLongitude>180</eastBoundLongitude> 
  <southBoundLatitude>-90</southBoundLatitude> 
  <northBoundLatitude>84.66666666666669</northBoundLatitude> 
  </EX_GeographicBoundingBox>
- <Style>
  <Name>classicShaded</Name> 
- <Description>
  <ows:Title>Classic Shaded</ows:Title> 
  </Description>
- <LegendURL>
  <Format>image/png</Format> 
  <OnlineResource xlink:type="simple" xlink:href="http://demo.cubewerx.com/demo/cubeserv/simple?SERVICE=WMS&VERSION=1.3.2&LANGUAGE=zh-CN,zh,en&REQUEST=GetLegendGraphic&LAYER=Foundation.gtopo30&STYLE=classicShaded&FORMAT=image%2Fpng&TRANSPARENT=TRUE" /> 
  </LegendURL>
  </Style>
- <Style>
  <Name>classic</Name> 
- <Description>
  <ows:Title>Classic</ows:Title> 
  </Description>
- <LegendURL>
  <Format>image/png</Format> 
  <OnlineResource xlink:type="simple" xlink:href="http://demo.cubewerx.com/demo/cubeserv/simple?SERVICE=WMS&VERSION=1.3.2&LANGUAGE=zh-CN,zh,en&REQUEST=GetLegendGraphic&LAYER=Foundation.gtopo30&STYLE=classic&FORMAT=image%2Fpng&TRANSPARENT=TRUE" /> 
  </LegendURL>
  </Style>
- <Style>
  <Name>color</Name> 
- <Description>
  <ows:Title>Color</ows:Title> 
  </Description>
- <LegendURL>
  <Format>image/png</Format> 
  <OnlineResource xlink:type="simple" xlink:href="http://demo.cubewerx.com/demo/cubeserv/simple?SERVICE=WMS&VERSION=1.3.2&LANGUAGE=zh-CN,zh,en&REQUEST=GetLegendGraphic&LAYER=Foundation.gtopo30&STYLE=color&FORMAT=image%2Fpng&TRANSPARENT=TRUE" /> 
  </LegendURL>
  </Style>
- <Style>
  <Name>colorShaded</Name> 
- <Description>
  <ows:Title>Color Shaded</ows:Title> 
  </Description>
- <LegendURL>
  <Format>image/png</Format> 
  <OnlineResource xlink:type="simple" xlink:href="http://demo.cubewerx.com/demo/cubeserv/simple?SERVICE=WMS&VERSION=1.3.2&LANGUAGE=zh-CN,zh,en&REQUEST=GetLegendGraphic&LAYER=Foundation.gtopo30&STYLE=colorShaded&FORMAT=image%2Fpng&TRANSPARENT=TRUE" /> 
  </LegendURL>
  </Style>
- <Style>
  <Name>desaturated</Name> 
- <Description>
  <ows:Title>Desaturated</ows:Title> 
  </Description>
- <LegendURL>
  <Format>image/png</Format> 
  <OnlineResource xlink:type="simple" xlink:href="http://demo.cubewerx.com/demo/cubeserv/simple?SERVICE=WMS&VERSION=1.3.2&LANGUAGE=zh-CN,zh,en&REQUEST=GetLegendGraphic&LAYER=Foundation.gtopo30&STYLE=desaturated&FORMAT=image%2Fpng&TRANSPARENT=TRUE" /> 
  </LegendURL>
  </Style>
- <Style>
  <Name>desaturatedShaded</Name> 
- <Description>
  <ows:Title>Desaturated Shaded</ows:Title> 
  </Description>
- <LegendURL>
  <Format>image/png</Format> 
  <OnlineResource xlink:type="simple" xlink:href="http://demo.cubewerx.com/demo/cubeserv/simple?SERVICE=WMS&VERSION=1.3.2&LANGUAGE=zh-CN,zh,en&REQUEST=GetLegendGraphic&LAYER=Foundation.gtopo30&STYLE=desaturatedShaded&FORMAT=image%2Fpng&TRANSPARENT=TRUE" /> 
  </LegendURL>
  </Style>
  </Layer>
  </Layer>
- <Layer queryable="false">
- <Description>
  <ows:Title xml:lang="en">Hydrography</ows:Title> 
  </Description>
- <EX_GeographicBoundingBox>
  <westBoundLongitude>-179.999420166016</westBoundLongitude> 
  <eastBoundLongitude>179.9999</eastBoundLongitude> 
  <southBoundLatitude>-73.98460388183589</southBoundLatitude> 
  <northBoundLatitude>83.67336273193359</northBoundLatitude> 
  </EX_GeographicBoundingBox>
- <Layer queryable="true">
  <Name>Foundation.inwatera_1m</Name> 
- <Description>
  <ows:Title>Inland Water Areas</ows:Title> 
  <ows:Abstract xml:lang="en">VRF Narrative Table for "Inland Water Areas": <P>In coastal area, points of change from ocean/sea areas (BA040) to inland water areas (BH000) were taken from Digital Chart of the World, edition 1, July 1992 except when it was determined that the point of change was implemented too far inland. In these cases, cartographic judgment was used to establish the point of change.</ows:Abstract> 
  </Description>
- <EX_GeographicBoundingBox>
  <westBoundLongitude>-179.999420166016</westBoundLongitude> 
  <eastBoundLongitude>179.9999</eastBoundLongitude> 
  <southBoundLatitude>-70.91725158691409</southBoundLatitude> 
  <northBoundLatitude>83.57595062255859</northBoundLatitude> 
  </EX_GeographicBoundingBox>
- <Style>
  <Name>cubewerx</Name> 
- <Description>
  <ows:Title>CubeWerx</ows:Title> 
  </Description>
- <LegendURL>
  <Format>image/png</Format> 
  <OnlineResource xlink:type="simple" xlink:href="http://demo.cubewerx.com/demo/cubeserv/simple?SERVICE=WMS&VERSION=1.3.2&LANGUAGE=zh-CN,zh,en&REQUEST=GetLegendGraphic&LAYER=Foundation.inwatera_1m&STYLE=cubewerx&FORMAT=image%2Fpng&TRANSPARENT=TRUE" /> 
  </LegendURL>
  </Style>
  </Layer>
- <Layer queryable="true">
  <Name>Foundation.watrcrsl_1m</Name> 
- <Description>
  <ows:Title>Water Courses</ows:Title> 
  </Description>
- <EX_GeographicBoundingBox>
  <westBoundLongitude>-179.999420166016</westBoundLongitude> 
  <eastBoundLongitude>179.9999</eastBoundLongitude> 
  <southBoundLatitude>-55</southBoundLatitude> 
  <northBoundLatitude>83.623046875</northBoundLatitude> 
  </EX_GeographicBoundingBox>
- <Style>
  <Name>cubewerx</Name> 
- <Description>
  <ows:Title>CubeWerx</ows:Title> 
  </Description>
- <LegendURL>
  <Format>image/png</Format> 
  <OnlineResource xlink:type="simple" xlink:href="http://demo.cubewerx.com/demo/cubeserv/simple?SERVICE=WMS&VERSION=1.3.2&LANGUAGE=zh-CN,zh,en&REQUEST=GetLegendGraphic&LAYER=Foundation.watrcrsl_1m&STYLE=cubewerx&FORMAT=image%2Fpng&TRANSPARENT=TRUE" /> 
  </LegendURL>
  </Style>
  </Layer>
  </Layer>
- <Layer queryable="false">
- <Description>
  <ows:Title xml:lang="en">Population</ows:Title> 
  </Description>
- <EX_GeographicBoundingBox>
  <westBoundLongitude>-179.989318847656</westBoundLongitude> 
  <eastBoundLongitude>179.996978759766</eastBoundLongitude> 
  <southBoundLatitude>-86.48520660400389</southBoundLatitude> 
  <northBoundLatitude>81.82305908203131</northBoundLatitude> 
  </EX_GeographicBoundingBox>
- <Layer queryable="true">
  <Name>Foundation.builtupa_1m</Name> 
- <Description>
  <ows:Title>Built-Up Areas</ows:Title> 
  </Description>
- <EX_GeographicBoundingBox>
  <westBoundLongitude>-179.129608154297</westBoundLongitude> 
  <eastBoundLongitude>178.443252563477</eastBoundLongitude> 
  <southBoundLatitude>-53.167423248291</southBoundLatitude> 
  <northBoundLatitude>70.9927215576172</northBoundLatitude> 
  </EX_GeographicBoundingBox>
- <Style>
  <Name>cubewerx</Name> 
- <Description>
  <ows:Title>CubeWerx</ows:Title> 
  </Description>
- <LegendURL>
  <Format>image/png</Format> 
  <OnlineResource xlink:type="simple" xlink:href="http://demo.cubewerx.com/demo/cubeserv/simple?SERVICE=WMS&VERSION=1.3.2&LANGUAGE=zh-CN,zh,en&REQUEST=GetLegendGraphic&LAYER=Foundation.builtupa_1m&STYLE=cubewerx&FORMAT=image%2Fpng&TRANSPARENT=TRUE" /> 
  </LegendURL>
  </Style>
  </Layer>
  </Layer>
- <Layer queryable="false">
- <Description>
  <ows:Title xml:lang="en">Transportation</ows:Title> 
  </Description>
- <EX_GeographicBoundingBox>
  <westBoundLongitude>-179.999420166016</westBoundLongitude> 
  <eastBoundLongitude>179.9999</eastBoundLongitude> 
  <southBoundLatitude>-54.9311103820801</southBoundLatitude> 
  <northBoundLatitude>79.52944183349609</northBoundLatitude> 
  </EX_GeographicBoundingBox>
- <Layer queryable="true">
  <Name>Foundation.aerofacp_1m</Name> 
- <Description>
  <ows:Title>Airport Facilities Points</ows:Title> 
  <ows:Abstract xml:lang="en">VPF Narrative Table for "Airport Facilities Points": Information on airports/airfields (GB005) was derived from the DAFIF (Digital Aeronautical Flight Information File) and TINT (Target Intelligence) in areas where such data was available. Each airfield's DAFIF reference number was placed in the 'na3' (classification name) attribute field. Only airfields which had at least one hard surface runway longer that 3,000 feet (910 meters) were collected.</ows:Abstract> 
  </Description>
- <EX_GeographicBoundingBox>
  <westBoundLongitude>-179.878326416016</westBoundLongitude> 
  <eastBoundLongitude>179.339859008789</eastBoundLongitude> 
  <southBoundLatitude>-54.9311103820801</southBoundLatitude> 
  <northBoundLatitude>79.52944183349609</northBoundLatitude> 
  </EX_GeographicBoundingBox>
- <Style>
  <Name>cubewerx</Name> 
- <Description>
  <ows:Title>CubeWerx</ows:Title> 
  </Description>
- <LegendURL>
  <Format>image/png</Format> 
  <OnlineResource xlink:type="simple" xlink:href="http://demo.cubewerx.com/demo/cubeserv/simple?SERVICE=WMS&VERSION=1.3.2&LANGUAGE=zh-CN,zh,en&REQUEST=GetLegendGraphic&LAYER=Foundation.aerofacp_1m&STYLE=cubewerx&FORMAT=image%2Fpng&TRANSPARENT=TRUE" /> 
  </LegendURL>
  </Style>
  </Layer>
- <Layer queryable="true">
  <Name>Foundation.railrdl_1m</Name> 
- <Description>
  <ows:Title>Railroads</ows:Title> 
  </Description>
- <EX_GeographicBoundingBox>
  <westBoundLongitude>-165.244674682617</westBoundLongitude> 
  <eastBoundLongitude>179.609893798828</eastBoundLongitude> 
  <southBoundLatitude>-53.138427734375</southBoundLatitude> 
  <northBoundLatitude>78.16796875</northBoundLatitude> 
  </EX_GeographicBoundingBox>
- <Style>
  <Name>cubewerx</Name> 
- <Description>
  <ows:Title>CubeWerx</ows:Title> 
  </Description>
- <LegendURL>
  <Format>image/png</Format> 
  <OnlineResource xlink:type="simple" xlink:href="http://demo.cubewerx.com/demo/cubeserv/simple?SERVICE=WMS&VERSION=1.3.2&LANGUAGE=zh-CN,zh,en&REQUEST=GetLegendGraphic&LAYER=Foundation.railrdl_1m&STYLE=cubewerx&FORMAT=image%2Fpng&TRANSPARENT=TRUE" /> 
  </LegendURL>
  </Style>
  </Layer>
- <Layer queryable="true">
  <Name>Foundation.roadl_1m</Name> 
- <Description>
  <ows:Title>Roads</ows:Title> 
  <ows:Abstract xml:lang="en">VRF Narrative Table for "Roads": <P>The majority of data contained within the road line feature class was derived from the roads layer of Digital Chart of the World, edition 1, July 1992. All schematic road connectors added in urbanized areas for network connectivity were given an 'exs' (Existence Category attribute) value of '55' (Unexamined/ Unsurveyed). Where possible, road features were designated as primary or secondary routes by comparison with Operational Navigation Charts (ONC) map sources.</ows:Abstract> 
  </Description>
- <EX_GeographicBoundingBox>
  <westBoundLongitude>-179.999420166016</westBoundLongitude> 
  <eastBoundLongitude>179.9999</eastBoundLongitude> 
  <southBoundLatitude>-54.88802337646479</southBoundLatitude> 
  <northBoundLatitude>74.740592956543</northBoundLatitude> 
  </EX_GeographicBoundingBox>
- <Style>
  <Name>cubewerx</Name> 
- <Description>
  <ows:Title>CubeWerx</ows:Title> 
  </Description>
- <LegendURL>
  <Format>image/png</Format> 
  <OnlineResource xlink:type="simple" xlink:href="http://demo.cubewerx.com/demo/cubeserv/simple?SERVICE=WMS&VERSION=1.3.2&LANGUAGE=zh-CN,zh,en&REQUEST=GetLegendGraphic&LAYER=Foundation.roadl_1m&STYLE=cubewerx&FORMAT=image%2Fpng&TRANSPARENT=TRUE" /> 
  </LegendURL>
  </Style>
  </Layer>
  </Layer>
- <Layer queryable="false">
- <Description>
  <ows:Title xml:lang="en">Vegetation</ows:Title> 
  </Description>
- <EX_GeographicBoundingBox>
  <westBoundLongitude>-168.095977783203</westBoundLongitude> 
  <eastBoundLongitude>-14.0277805328369</eastBoundLongitude> 
  <southBoundLatitude>-27.6065120697021</southBoundLatitude> 
  <northBoundLatitude>75.00726318359379</northBoundLatitude> 
  </EX_GeographicBoundingBox>
- <Layer queryable="true">
  <Name>Foundation.treesa_1m</Name> 
- <Description>
  <ows:Title>Trees</ows:Title> 
  <ows:Abstract xml:lang="en">VRF Narrative Table for "Trees": <P>This feature class includes all area forest/trees (EC030). Wooded areas are attributed as to predominant tree type (deciduous, evergreen, mixed or other) where possible. All features carrying the veg=999 (Other) attribute are "transitional" forests.</ows:Abstract> 
  </Description>
- <EX_GeographicBoundingBox>
  <westBoundLongitude>-139.997573852539</westBoundLongitude> 
  <eastBoundLongitude>-52.66172027587889</eastBoundLongitude> 
  <southBoundLatitude>25.281270980835</southBoundLatitude> 
  <northBoundLatitude>66.71876525878909</northBoundLatitude> 
  </EX_GeographicBoundingBox>
- <Style>
  <Name>cubewerx</Name> 
- <Description>
  <ows:Title>CubeWerx</ows:Title> 
  </Description>
- <LegendURL>
  <Format>image/png</Format> 
  <OnlineResource xlink:type="simple" xlink:href="http://demo.cubewerx.com/demo/cubeserv/simple?SERVICE=WMS&VERSION=1.3.2&LANGUAGE=zh-CN,zh,en&REQUEST=GetLegendGraphic&LAYER=Foundation.treesa_1m&STYLE=cubewerx&FORMAT=image%2Fpng&TRANSPARENT=TRUE" /> 
  </LegendURL>
  </Style>
  </Layer>
  </Layer>
  </Layer>
  </Layer>
  </Capability>
  </WMS_Capabilities>
View Code

2.GetMap操作返回一幅地图。当接收到一个GetMap请求时,WMS应当满足请求或产生服务异常。

3.GetFeatureInfo是一个可选的操作。它仅仅支持那些定义或继承了属性queryable=“1”(真)的那些图层。对于其他图层,客户不能发送GetFeatureInfo请求。如果一个WMS接到一个它不支持的GetFeatureInfo请求,则应该以一个适当格式化的服务异常(XML)响应(code =OperationNotSupported)。

GetFeatureInfo操作用于向WMS的客户提供关于此前地图请求返回的地图图像中要素的更多信息。对于GetFeatureInfo来说,规范的应用情形是用户看到了地图请求的响应,然后用户选择该地图上的一点(I, J),并据其查询更多的信息。基本操作可以使客户确定所要查询的像元、查询的是哪个(些)图层以及返回信息需要何种格式。由于WMS协议是无状态的(stateless),通过包含原来的GetMap请求中几乎全部参数(除VERSION和REQUEST外),GetFeatureInfo请求向WMS指明用户正在浏览的地图。根据GetMap请求中的空间的前后关系信息(BBOX, SRS, WIDTH, HEIGHT)以及用户选择的I,J位置,WMS就可以(能)返回关于该位置更多的信息。

参考文献:

 地理信息-地图:网络服务接口

 http://www.opengeospatial.org/

http://www.cnblogs.com/sillyemperor/archive/2009/09/27/1575170.html

posted @ 2013-10-08 12:53  太一吾鱼水  阅读(769)  评论(0编辑  收藏  举报