In this primer we will demonstrate how to obtain a graps of a small set of data from a large datasets with the OGC Web Mapping Service (WMS) protocol. We will show that ordering images through WMS is just as easy as buying an ice cream.
- Find a data web source that hosts a WMS server (go to an ice cream vendor). We will use the Shuttle Radar Topography Mission datasets hosted at the Woods Hole Institute THREDDS OPeNDAP server as example in this primer. THREDDS OPeNDAP server can be configured to serve WMS for orthogonal datasets with proper geographic information.
- Ask for what the server has to offer (see which flavours he has and which kind of cups). Ypu need to add the following mandatory <keyword,value> pairs to the base server url, separated by an &, e.g.:
?service=WMS&request=GetCapabilities
.This procedure works for all subsequent <keyword,value> pairs in this primer:keyword
value
source
service
WMS
Mandatory WMS standard value
request
GetCapabilities
Mandatory WMS standard value
This url will return an xml file that contains an inventory of the available datasets. (You can also request availabe datasets for one WMS version only by appending the optionalhttp://geoport.whoi.edu/thredds/wms/bathy/srtm30plus_v6?service=WMS&request=GetCapabilities
version
keyword.) - Look at what versions of WMS the server has to offer (check whether the ice cream is fresh). For each version there is a
tagWCS_Capabilities
with attribute version, e,.g.For each version a number of datasets is hosted. Select one dataset (ice cream flavour) from the list through the<WMS_Capabilities version="1.3.0" ... > ... </WMS_Capabilities>
Layer
tag. The name of the dataest is thename
tag, in this case there is onlytopo
.From the above xml extract we will can distill all values necesarry to request an image.<Layer> <Title>WHCMSC Sediment Transport Group</Title> <CRS>EPSG:4326</CRS> <CRS>CRS:84</CRS> <CRS>EPSG:41001</CRS> <CRS>EPSG:3857</CRS> <CRS>EPSG:27700</CRS> <CRS>EPSG:3408</CRS> <CRS>EPSG:3409</CRS> <CRS>EPSG:32661</CRS> <CRS>EPSG:32761</CRS> ... <Layer> <Title>UCSD SRTM30_v6 Global DEM (30 sec)</Title> <Layer queryable="1"> <Name>topo</Name> <Title>Topography</Title> ... <Style><Name>boxfill/redblue </Name>... <Style><Name>boxfill/redblue </Name>... <Style><Name>boxfill/alg </Name>... <Style><Name>boxfill/ncview </Name>... <Style><Name>boxfill/greyscale </Name>... <Style><Name>boxfill/alg2 </Name>... <Style><Name>boxfill/occam </Name>... <Style><Name>boxfill/rainbow </Name>... <Style><Name>boxfill/sst_36 </Name>... <Style><Name>boxfill/ferret </Name>... <Style><Name>boxfill/occam_pastel-30</Name> ... </Layer> </Layer> </Layer>
- Now we can actually get a subset from the dataset want by using
request=GetMap
instead of therequest=GetCapabilities
we used above to obtain the meta-data (order ice cream). The following <keyword,value> pairs are mandatory.keyword
value
source
service
WMS
Mandatory WMS standard value
request
GetMap
Mandatory WMS standard value
version
1.3.0
One of the mandatory WMS standard values returned by returned by the
request=GetCapabilities
BBOX
0,50,10,55
min(longitude),min(latitude),max(longitude),max(latitude)
layers
topo
WMS counterpart of WCS
coverage
format
image/png
One of the mandatory WMS standard values by returned by the
request=GetCapabilities
tag<Capability><Request><GetCapabilities><Format>
CRS
EPSG%3A4326
One of the server-defined values by returned by the
request=GetCapabilities
tag<Layer><Layer><Layer queryable="1"><CRS>
. In the example above there are 9 geographic projections available . Note that the colon in EPSG:4326 has been replaced by by %3A because colons are not allowed in urls. For more info on the projections see spatialreference.orgwidth
800
width of the image in number of pixels. The xml file show a max
MaxWidth
andMaxHeight
allowd by the server.height
600
height of the image in number of pixels
styles
boxfill/redblue
One of the server-defined values by returned by the
request=GetCapabilities
tag<Layer><Layer><Layer queryable="1"><Name>topo</Name><Style><Name>
. In the example above there are 10 styles, for screenshots click the gallery below.
Summary: correct WMS request for an available formats is given below. You can copy it into your browser to obtain the image. We chose the same bounding boxes as in the OPeNDAP primer that access these same datasets via netCDF libraries in Matlab, python or R. We discussed the pros and cons of WCS vs OPeNDAP in a FOSS4G paper.
http://geoport.whoi.edu/thredds/wms/bathy/smith_sandwell_v11?service=WMS &version=1.3.0 &request=GetMap &bbox=0,50,10,55 &layers=topo &format=image/png &crs=EPSG%3A4326 &width=800 &height=600 &styles=boxfill/redblue
There are no images attached to this page. |