2008 MidAmerica
GIS Symposium
Service Oriented Architecture:
Web GIS Services
Lisa Hallberg, Web Developer
Kansas Data Access & Support Center (DASC)
2008 MidAmerica
GIS Symposium
Service Oriented Architecture
•
What is “Service Oriented Architecture”?
–
SOA is a development and architectural model that
has grown out of the need to share data across
many different applications and operating systems.
–
In the business world, legacy software applications
were often stand-alone, and not intrinsically capable
of sharing data with other applications.
–
The SOA model enforces the idea of building
“services” that are independent of platform,
operating system, database or application.
–
Such services expose data and functionality through
2008 MidAmerica
GIS Symposium
SOA Standards
•
Examples
–
TCP/IP – standard protocols, including HTTP and HTTPS
• TCP/IP protocols include requests and responses (success orfailure), but do not require a persistent connection (“stateless”)
–
XML – data format standard
• XML = “Extensible Markup Language”
–
JSON – data format standard used with Ajax in Web pages
• JSON = “JavaScript Simple Object Notation”• Ajax = “Asynchronous JavaScript”
–
SOAP – data transfer standard using XML
• From the W3C spec: “SOAP is fundamentally a stateless, one- way message exchange paradigm”
–
REST – URL-based data transfer standard
• REST = “Representational State Transfer”–
Other application programming interfaces (APIs)
• APIs are methods for interfacing with published services.
Examples include SOAP and REST. APIs can also be built for JavaScript libraries for use with Web clients.
2008 MidAmerica
GIS Symposium
Some (mostly GIS) Examples
•
JavaScript API examples:
–
Google Maps
http://code.google.com/apis/maps/
–
OpenLayers
http://trac.openlayers.org/wiki/Documentation
•
SOAP example:
–
http://www.arcwebservices.com/services/v2006_1/
AddressFinder?wsdl
–
Note that SOAP is self-documenting
•
REST example:
2008 MidAmerica
GIS Symposium
SOA in a GIS Context
•
Serve GIS layers in a stateless, platform-
independent interface.
•
Provide clear documentation for how to access
and use the services.
•
Provide a variety of service options.
•
Leverage the service-oriented model as a
means to collect statewide data:
–
Online digitizing tools: web-interface and REST
–
SOAP-based batch processing
2008 MidAmerica
GIS Symposium
Overhauling KANSASGIS.ORG
•
DASC’s Web site –
www.kansasgis.org
– has
been developed over the past three years as a
geoportal for sharing DASC’s GIS data.
•
Services include:
–
Catalog of GIS data
•
Data for download
•
ArcSDE services
•
Entries categorized
–
ArcIMS web applications
•
“Build your own map” application
•
Custom web sites for various agencies
–
Data sharing services
2008 MidAmerica
GIS Symposium
2. URL request received by the web server (Apache). 3. Server-side code (ColdFusion) interprets the request, sending it to an ArcIMS service to create the map image on the fly.
The Web GIS Context: The Old Way
The Internet
The Internet 1. Use the browser to request
GIS map data. 4. The server sends the custom web page and map image back to the requestor.
5. The web browser receives the content and interprets the content for display. Every change to the map (pan, zoom, change layers) requires all 5 steps to be repeated. User interface is not intuitive.
Example: