GIS and the Internet
Shared by: HC12091820118
-
Stats
- views:
- 3
- posted:
- 9/18/2012
- language:
- English
- pages:
- 28
Document Sample


GIS and the Internet
Web Mapping Services &
Interoperability
Interoperability: the ability of two or more
systems or components to exchange information
and to use the information that has been
exchanged. - IEEE
Standards-based GIS
• Until recently everyone is developing in
their own little world (metadata => data => applications)
• From functionality to interoperability
• Internet is driving these changes: no net,
then little reason to interoperate
• Being “open” is a strong selling point
OpenGIS Consortium
OGC is a collection of vendors, universities and government
agencies interested bringing GIS to the mainstream through
the development of open, interoperable systems.
• No actual power, can only make recommendations
• API specifications: GML, WMS, web context, WFS, WCS
• Conformance testing and certification
• University of Minnesota is a member
Consider the Scenario...
• major hurricane bearing down on U.S. cost
• as GIS coordinator for a rural county you
are required to put together a web site for
citizens with things like NOAA GOES
imagery, NWS NEXRAD mosaics and
FEMA flood zones
• you don’t have those data, what do you do?
…Consider the Scenario
• tell your boss, “Sorry, can’t do that”
• get on the phone/Internet and try to
download the data
• make use of NWS/NOAA/FEMA services
to integrate their data into your application
• enter the OGC Web Mapping Service
specification
Traditional Architecture
Resource 1 Application 1
Resource 2 Application 2
Resource 3 Application 3
Service-based Architecture
Resource 1 Application 1
Service 1
Resource 2 Service 2 Application 2
Resource 3 Service 3 Application 3
A Case for Services
• abstraction of implementation
• common access method (e.g. SOAP)
• centralized security management
• consistency of integration
A quick word about XML
<contact>
• <name> based format
text
<first_name>Steve</first_name>
• “tags” are
Steve Lime used to markup unstructured
<last_name>Lime</last_name>
content
</name>
Application Development Manager
<title>Application Development Manager</title>
• <address>500 Lafayette “rules” are
document structure
500 Lafayette Road Road</address> defined
using schema or
<city>St. Paul</city> document type definitions
St. Paul, MN 55155
<state>MN</state>
(DTDs)
651-259-5439, steve.lime@dnr.state.mn.us
<zipcode>55155</zipcode>
<phone_number>651-259-5439</phone_number>
<email>steve.lime@dnr.state.mn.us</email>
</contact>
Web Map Service (WMS)
• enables simple map creation and feature
retrieval
• getCapabilties, getMap, getFeatureInfo
• cascading map servers
• equivalent to MapServer mode=map or
mode=query
• current specification version is 1.3
WMS - getCapabilties
• allows the server to advertise what it can do:
– available layers
– supported output projections
– supported output formats
– scale hints
– extent of data
• XML format (example)
DNR Photo Server (getMap)
WMS - getMap
• allows the retrieval of a map from a web
server
• user supplies bounding box, image size,
format, styling, error handling, etc…
• server responds with an “image”, typically
a web-ready format like GIF, PNG or
KML
WMS – getFeatureInfo
• allows the retrieval of simple feature
attributes
• user supplies an x,y coordinate pair and a
layer of interest
• server responds with attribute information
in HTML, GML or arbitrary ASCII format
WMS Limitations
• all you get is a picture, not the data
• somewhat limited control over how the data is
“styled” (see OGC SLD and Filter specs)
• particularly limiting with regards to labeling
• supports only a small (but ever increasing) portion
of functionality typically supported by a vendor
that said…
MapServer as WMS Server
• must compile software with Proj.4
• define METADATA block with the WEB
object and any LAYERs
Map File Block
WEB
…
METADATA
"wms_title" "MN DNR Orthorectified Fall CIR Photography"
"wms_onlineresource" "http://maps.dnr.state.mn.us/cgi-bin/mapserv?map=DELI_WMS"
"wms_srs" "EPSG:26915"
END
END
LAYER
NAME "cir“
…
METADATA
"wms_title" "MN DNR Orthorectified Fall CIR Photography"
"wms_srs" "EPSG:26915"
END
END
MapServer as WMS Client
• compile with PROJ.4, GDAL and libcurl
• define METADATA block within LAYER
• set LAYER CONNECTIONTYPE and
CONNECTION properties
Map File Block
LAYER
NAME "prov_bound"
TYPE RASTER
STATUS ON
CONNECTION "http://www2.dmsolutions.ca/cgi-bin/mswms_gmap?"
CONNECTIONTYPE WMS
METADATA
"wms_srs" "EPSG:42304 EPSG:42101 EPSG:4269 EPSG:4326 EPSG:42304"
"wms_name" "prov_bound"
"wms_server_version" "1.1.0"
"wms_format" "image/gif"
END
END
Example WMS Browser
Applications
Web Feature Service (WFS)
• share vector data
• data returned as GML
• supports advanced query using OGC Filter
specification
• enables transactional (insert, update, delete) access to
data resources
• MapServer supports:
– WFS server 1.0, GML2 & GML3
– simple WFS client (via LAYERs)
– read-only access (non-transactional WFS)
• Current specification version is 1.1
WFS - getCapabilities
• allows the server to advertise what it can
do:
– available layers or types
– supported output projections
– supported output formats
– extent of data
– supported query operators
• XML format (example)
WFS - describeFeatureType
• returns detailed information about a layer or
group of layers
– data elements
– types and value domains
– support for complex structures (e.g. address)
• format is an XML Schema (example)
WFS - getFeature
• allows spatial queries, attribute queries or both
against a layer
• response is typically a GML instance document
that conforms to the describeFeatureType
response of the server
• queries conform to the GML filter encoding
standard
– spatial, logical, and comparison operators
• equates logically to the various MapServer query
modes
WFS - Example Filters
<ogc:Filter>
<ogc:PropertyIsGreaterThan>
<ogc:PropertyName>AREA</ogc:PropertyName>
<ogc:Literal>1000.00</ogc:Literal>
</ogc:PropertyIsGreaterThan>
</ogc:Filter>
<ogc:Filter>
<ogc:BBOX>
<ogc:PropertyName>the_geom</ogc:PropertyName>
<gml:Box
srsName="http://www.opengis.net/gml/srs/epsg.xml#4326">
<gml:coordinates>
-90,40
10.5,60
</gml:coordinates>
</gml:Box>
</ogc:BBOX>
</ogc:Filter>
Transactional WFS
• WFS-T, what WFS was really created for
• additional modes to lock features
(getFeatureWithLock & lockFeature)
• supports INSERT, UPDATE and DELETE
operations via transaction request
• relatively few commercial or open source
solutions (MapServer is NOT one of them, see
GeoServer instead)
Web Coverage Service (WCS)
• Share raster data
• Data returned using common formats such as
GeoTIFF
• MapServer Supports:
– WCS server 1.0
– Ad-hoc access to tiled data by any attribute (e.g. cloud
cover, date/time)
– Raster re-projection and re-sampling
• Current specification version is 1.1
Suggested Readings
• W3C - Intro to XML
• OGC Specification Documents:
– Geographic Markup Language (GML)
– Web Map Service (WMS)
– Web Feature Service (WFS)
• Styled Layer Descriptor (SLD)
• Filters
– Web Coverage Service (WCS)
Get documents about "