WMS
WMS stands for Web Map Service. It's an OGC standard for serving up map images over HTTP. See Web Map Service on Wikipedia
Client Setup
Using WMS in JOSM
- The JOSM editor can load images and maps from WMS servers as background. See JOSM Imagery help for details.
Using WMS in Merkaartor
- The Merkaartor editor can load WMS data as background. Use Tools -> WMS Servers Editor..., then right click on a layer -> WMS adapter
Using WMS in iD
Even iD is meanwhile capable of loading images and maps from WMS as background. To set it up, at the right side of the screen go to "background settings / custom / ..." ("edit custom background") and enter an appropriate URL.
Example
TIGER provides WMS tiles of different geo-registered map services, see https://tigerweb.geo.census.gov/tigerwebmain/TIGERweb_wms.html . (A specification of the used WMS interface is available here: https://portal.ogc.org/files/?artifact_id=66915 .)
- For physical features, TIGERweb provides the following URL:
https://tigerweb.geo.census.gov/arcgis/services/TIGERweb/tigerWMS_PhysicalFeatures/MapServer/WMSServer
. - To access the WMS tiles, the appropriate parameters need to be added to the URL. You can use a browser to query the capabilities of the WMS server. In this example, the response is available here: https://tigerweb.geo.census.gov/arcgis/services/TIGERweb/tigerWMS_PhysicalFeatures/MapServer/WMSServer?VERSION=1.3.0&SERVICE=WMS&REQUEST=GetCapabilities . The response is given in XML format. Look for the tag
<Layer queryable="1">
followed by the tag<name>
. In this example, we want to see all railroads with their labels, so the relevant layer names are "Railroads_Labels19237" and "Railroads". (Note: The parameterqueryable=1
of the tag<Layer>
is not relevant. Other servers might not use it or use it with a different value.) - Next, you need to use these layer names as values for the parameter LAYERS. Other parameters are set to the variables provided by iD. Here's a URL that you can use for the custom background setting in iD (for this railroad example):
https://tigerweb.geo.census.gov/arcgis/services/TIGERweb/tigerWMS_PhysicalFeatures/MapServer/WMSServer?VERSION=1.3.0&SERVICE=WMS&REQUEST=GetMap&LAYERS=Railroads_Labels19237,Railroads&STYLES=&CRS={proj}&BBOX={bbox}&WIDTH={width}&HEIGHT={height}&FORMAT=image/png
(Of course, to see the background map with railroad features in iD you will have to move and zoom to a region that is covered by TIGERweb data, e.g. https://www.openstreetmap.org/edit#map=15/41.3014/-72.3730 )
Public WMS Servers
Aerial Imagery
See the Aerial imagery page for a list of aerial imagery WMS sources.
SRTM contours
- Hochschule für Technik Stuttgart
- See the SRTM and Contours pages for details.
TIGER
See TIGER 2011.
OSM WMS Servers
The OpenStreetMap license requires you to credit us when publishing our maps |
Name | Free | Updated | Coverage | Style | Layers (roads, buildings, etc) | Native support for local projections |
---|---|---|---|---|---|---|
WebsiteHai.com | yes | Weekly | Pakistan | Default Styles | yes | yes |
Geofabrik | no | minutely | World | Mapnik default custom styles |
yes | |
HistOSM | yes | weekly | only historic objects | |||
IT-Consult Halle | noncommercial only | daily | DE, CH, AT | custom style | yes | yes |
magOSM | yes | daily | FR | custom style | yes | yes |
CH-OSM | yes | daily | CH | custom style | yes | yes |
mundialis | yes | weekly | World | custom style | ||
Omniscale | No, free trials | minutely | World | custom style | yes | yes |
terrestris | yes | weekly | World | custom style | ||
MapTiler Cloud | noncommercial only | weekly | World | custom style | yes | |
WhereGroup | only basic edition | Europe | custom style |
Server software
- GeoServer is an open source software server written in Java that allows users to share and edit geospatial data. Implements WMS, WFS, WCS, TMS, WTMS, includes embedded GeoWebcache for caching. Supports [PostGIS] databases as a data source so osm2pgsql can be used to setup a database with OSM data.
- MapProxy (mapproxy.org) can be used as a proxy/cache for the open streetmap tiles, and serve that data using the WMS, WMTS, TMS, and KML ogc standards. See Mappproxy setup for OSM specific instructions.
- Mapnik includes a component called ogcserver which is a Python-based WMS server.
- mod_mapnik_wms is an apache module for building a Mapnik based WMS server.
- MapTiler Server supports by default WMTS server.
- You can also throw an osm2pgsql generated database at a standard open source WMS server like the UMN MapServer or the GeoServer. The map display on the UMN MapServer page is actually made from OSM data. Instructions for rendering OSM data with MapServer: https://trac.osgeo.org/mapserver/wiki/RenderingOsmData
- There is a WMS server implementation based on PHP and Osmarender in our SVN: https://svn.openstreetmap.org/applications/rendering/wms
- There is a WMS implementation based on tiles (i.e. that stitches existing tiles together and scales them to achieve the desired result). (TWMS by user:Komяpa https://code.google.com/p/twms/)
- You can also use Map Warper as a tool to create WMS layers for use in JOSM
Tiles vs. WMS
There are good reasons for using tiles (mainly speed) and good reasons for using WMS (mainly flexibility).
Some software to help you move between those worlds:
- Tirex has a WMS backend, so accesses to tiles can be converted into accesses to WMS
- https://thinkwhere.wordpress.com/2010/07/15/whoots-a-small-wms-to-tile-proxy-wms-in-potlatch/
See also
- TMS
- List of OSM based Services
- Imagery Offset Database - free database, functional API and JOSM plugin of correction offsets