Published on

  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide


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