Web GIS – About and Need Arup Dasgupta Honorary Advisor GIS Development
GIS is becoming Ubiquitous User
Mobile user Mediator GIS Expert
Desktop User
Mainframe GIS Applications Software Developer
Service Provider
GIS Databases are Distributed Clients
User Applications Access to Service transformed data Chaining Metadata search and retrieval
Geoprocessing Middleware Services
Catalog Catalog Catalogs Metadata update
Direct data access
Servers
Content Repositories
Features
Coverages Other data
OGIS Model OGIS Consensus Process
Open Geodata Interoperability Specification • Open Geodata Model • OGIS Service Model • Information Communities Model
Vendors
Industry Integrators
GIS/RS
RDBMS
Applications Programs Products
Client-Server Technology Distributed Computing Platforms CORBA OLE/COM DCE JAVA Telecommunications Technology
DSS
Interface
Granularity and Coupling Coarse Grained
High-Level Interface (HLI) HTTP & XML
SQL
Tightly Coupled
SQL
CORBA COM
Low-Level Interface (LLI)
Fine Grained
Loosely Coupled
Loosely Coupled Architecture
Based on asynchronous communications Provides a lightweight and resilient foundation for applications that do not require tight coordination. Uses a well defined cross-component interface The technology at either end of the interface can be modified without changing any of the other components Allows totally independent teams to build compliant code that has zero impact for builds and source sharing across the teams. This allows massive scaling which is something the industry has had a difficult time with. Facilitates the isolation of architectural boundaries. This provides easier debugging abilities
Loosely Coupled Architecture
Platform B
Platform A Net
• “Datagrams” vs. interfaces • Tightly-coupled vs. looselycoupled • Fine-grain vs. coarse-grain • IT spec dependencies
Distributed Servers
“Service over the wire”
Disadvantages
Assumes anonymous participants and generally benign failure modes Integrity and survivability in hostile environments generally requires different assumptions. Can require more design time. There can be performance impacts
Hybrid Approach OGC Interfaces
OGC Interfaces
Summary
Early programming was tightly coupled Web Services programming is loosely coupled Both have advantages and their place Hybrids are possible Different systems exist to ‘model’ these architectures Simple systems can have an ad hoc design Complex systems need a proper architecture
Elements of a Web GIS
Services
Catalogue and Registry Service Web Map Services Web Feature Service Web Coverage Service
Specifications
Geographical Feature Encoding Feature Styling Specification Web Map Context Specification
Spatial data servers with metadata and OpenGIS Catalogue Server interfaces
Data Catalogue Registered geodata metadata Metadata Metadata Metadata Metadata Metadata Metadata Metadata Metadata Metadata Metadata Metadata Metadata Metadata Metadata ‌..
a URL
for for for for for for for for for for for for for for
a a a a a a a a a a a a a a
feature feature feature feature feature feature feature feature feature feature feature feature feature feature
collection, collection, collection, collection, collection, collection, collection, collection, collection, collection, collection, collection, collection, collection,
and a and a and a and a and a and a and a and a and a and a and a and a and a and a
URL URL URL URL URL URL URL URL URL URL URL URL URL URL
Where? When? How? What? Who? Why?
Extensions to Catalogue: Service Registries
Registry Services provide a common mechanism to classify, register, describe, search, maintain and access information about Web resources.
Service Registries contain metadata about the description of services, their location on the Web, and the means of accessing and using these services (i.e., interfaces and bindings). Service Registry Services provide access to these metadata and the means for clients and services to bind to the published resource.
Experiments using UDDI (Universal Description, Discovery and Integration), WSDL (Web Services Description Language), etc
Spatial services servers with metadata and OpenGIS interfaces
Service Catalogues Collection of service metadata Metadata for an online service, and a URL Metadata for an online service, and a URL Metadata for an online service, and a URL MetadataMetadata for an onlinefor service, and a URL an online service, Metadata for an online service, and a URL Metadata for an online service, Metadata for an online service, and a URL an online MetadataMetadata for an onlinefor service, and a service,
Collection of service metadata
Registry information model
Service information model
and a URL and a URL and a metadata URL Collection of service Metadata for an online service, and a URL Metadata for an online service, and a URL Metadata for an online service, and a URL Metadata for anservice, online and service, Metadata for an online a URLand a URL Metadata for anservice, online and service, Metadata for an online a URLand a URL Metadata for anservice, online and service, Metadata for an online a URLand a URL Metadata for anservice, online and service, Metadata for an online a URLand a URL Metadata for an online a URLand a URL Metadata for anservice, online and service,
Metadata Metadata Metadata Metadata Metadata Metadata
a URL
for for for for for for
an online an online an online an online an online an online
service, service, service, service, service, service,
and and and and and and
a URL a URL a URL a URL a URL a URL
Need a Processing Function!
OpenGIS® Web Map Service Specification
Provides a uniform access interface for Web clients to ask for and receive map “pictures” rendered by map servers on the Internet. Easy to implement
http://clearinghouse1.fgdc.gov/scripts/ogc/ms.pl?version=1.1.1& request=map&srs=EPSG:4326&bBox=-180,-90,180,90& width=400&height=200&format=JPEG&styles=BLACK& layers=boundary,coastline,elevation,lakes,rivers&
WMS request flow
Web Server
Request (HTTP CGI form) Response (JPEG file)
Web Browser
“getMap” WMS Request
WMS services Native services
GeoMedia AutoCAD
MapExtreme
Oracle
Minnesota mapserver
ArcIMS
ArcView
ArcGIS
Web Map Service (WMS) can get multiple maps
Elevation
cloud cover Borders
Cities
Multiple overlaid maps One GetMap request:
WMS can’t “give data away.”
Roma
WMS GetMap returns a server’s “dumb” JPEG, GIF or PNG representation of the data on the server. It does NOT return the actual data, only a bitmap of the data.
WMS can query by pointing. WMS GetFeatureInfo returns attribute data for a feature or coverage at a specified point. Lat/Long
elev. = 237 m.
OpenGIS® Web Feature Service 1.1
The WFS operations support INSERT, UPDATE, DELETE, QUERY and DISCOVERY operations on vector geographic features using HTTP as the distributed computing platform. QUERY and DISCOVERY are mandatory. The basic interface, like WMS, allows user/client to specify Bounding Box (AOI) and Coordinate Reference System The WFS FILTER specification defines how to use OGC Query Language to perform query operations (same as Catalog) Returns features as GML 3.0 encoding (default)
Web Feature Service (WFS) returns data. Web Feature Server
GetFeature request:
I87
5
I-295
I9
Feature & attribute data
Web Feature Service (WFS) gets operable feature data from multiple servers Each layer is data, not merely a view: Elevation
Cities
Country is: _ Name: Italy _ Population: 57,500,000 _ Area: 301,325 sq km ...
GetFeature request:
Borders
Multiple thematic data layers
Web Feature Server enables distributed, vendor-neutral data maintenance.
X Turn left ahead!
Web Coverage Service (WCS) 1.0
Scope: Retrieval of gridded, swath, TIN or other "coverage" data in binary or other formats (HDF, GeoTIFF, NITF, NetCDF, etc.)
Elevation, Orthoimagery
Operations:
GetCapabilities GetCoverage
Web Feature Server
Web Map Server
Web Coverage Server
OGC Specifications enable information fusion
OpenGIS® Geography Markup Language (GML)
GML supports encoding of digital feature data, for data communication
Facilitates interoperability of separately developed applications
GML is an application of the eXtensible Markup Language (XML)
XML is a structured text format for encoding data XML specified by World Wide Web Consortium (W3C) GML specifies XML Schemas for standardized XML encoding of geographic features, their geometry, and their attributes
OpenGIS® Style Layer Descriptor Version 1.0
Controls the presentation (style) of a map portrayal Allows fine grained control for symbolization on a layer by layer basis Rule-based Uses XML Allows rules for portrayal of points, line strings, polygons, text, and other commonly used geometries.
OpenGIS Styled Layer Descriptor One data file…
…many different maps!
… and non-graphic portrayals!
OpenGIS ÂŽ Web Map Context Specification ď‚Ą
Describes a standardized approach to enable the capture and maintenance of the context - or state information - of a Web Map Server (WMS) request so that this information can be reused easily in the future user session.
New Additions
Geographic Objects
The OpenGIS(r) Geographic Objects Implementation Specification
a set of core packages that support a small set of Geometries, a basic set of renderable Graphics that correspond to those Geometries, 2D device abstractions (displays, mouse, keyboard, etc.), supporting classes.
GML for JPEG 2000
This specification defines how GML is to be used within JPEG 2000 based geographic imagery.
specification of the uses of GML within JPEG 2000 data files packaging mechanisms for including GML within JPEG 2000 data files.
OWS-4 Demonstration
My contact details: A. R. Dasgupta Honorary Advisor, GIS Development and Distinguished Professor, Bhaskaracharya Institute for Space Applications and Geoinformatics, Gandhinagar 382007 Email: arup.dasgupta@gisdevelopment.net Fax: +91-(79)-23213091 Phone: +91 98253 29382