Service Composition for GIS Sai Ma, Minruo Li, Weichang Du Faculty of Computer Science, University of New Brunswick, Canada 2008 IEEE Congress on Services Part I 郭建國
Outline Introduction Geographical Information System(GIS) Background OpenGIS WMS & WMC Solution SOA Framework for GIS Map Services Composition via BPEL Implementation & Demonstration Perspective & Conclusion
What is GIS? Geographical Information System Provide a method to visualize, analyze and manipulate geospatial data. Geographical maps via Services Consider the process of visualizing, analyzing and manipulating geospatial data as services. An issue within the GIS community Various geospatial data are stored in different data formats suitable for different systems.
OpenGIS WMS & WMC Web Map Service (WMS) Be used to publish a map service Based on XML Schema Web Map Context (WMC) Describes an instant map view information
Web Map Service Operations GetCapabilities GetMap GetFeatureInfo
Web Map Service GetCapabilities request URL
Web Map Service The parameters of a GetMap request
Web Map Service The parameters of a GetFeatureInfo request
Web Map Context In contrast to WMS, WMC describes an instant map view from the perspective of the map creator, which contains the WMS layer components, the bounding box and map title.
Map Services Composition via BPEL We use ActiveBPEL as the tool to handle all BPEL related work in our application system. Configure Database Gathers as many existing maps services and parses them into database
Solution with SOA and BPEL
Generate Business Process
Map Services Composition via BPEL Generate Business Process NewMapViewRequest AssignRequest WMFSFlow InvokeWMS1 & InvokeWMS2 CompeseLayers InvokeMapCreationService AssignResponse NewMapViewResponse
Map Services Composition via BPEL NewMapViewRequest Get URL, layer name, bounding box, format, height, and width information from WMS1 and WMS2. AssignRequest Initializes parameters “wms1Url”, “wms1LayerName”, “bbox”, “format”, “height”, and “width” Assigns these parameters to each “InvokeWMS” activity in the “WMSFlow”. In the mean time, create “wms1Result” and “wms2Result” to hold each URLs resulting from previous WMS.
Map Services Composition via BPEL Combine the two map layers, add an opening tag “ ” in front of “wms1Result” and a closing tag “ ” at the end of it, do the same change to “wms2Result”. “ ” and “ ” are added to group all “ ” element toghther.
Map Services Composition via BPEL
WMFSFlow Get information from AssignRequest Invokes WMS1 and WMS2 in parallel InvokeWMS1 & InvokeWMS2 CompeseLayers Concatenate the two URLs into one single string and pass it to “InvokeMapCreationService” InvokeMapCreationService Create a new image by calling external JAVA libraries to read each map layer pixel by pixel
Map Services Composition via BPEL AssignResponse Assigns the resulting URL to “NewMapViewResponse” NewMapViewResponse Responds to the map creator by delivering this URL to map creator.
Map Services Composition via BPEL Two additional activities will be added “ApplyTemplate” and “AssignLayers” To apply some predefined templates to add site-specific information to the new map during the map creation process Such as company logo or name.
Map Services Composition via BPEL ApplyTemplate Applies some predesigned map templates before creating the new map AssignLayers Adds the “layers” variable to the template response and passes it to the “InvokeMapCreationService”.
Interface
Publish WMC
Export the.bpel file
WMS Map Protal ID:SOC2008 PASSWORD:SOC-2008