An Approach for Integrating Geospatial Processing Services into Three-Dimensional GIS Yingjie Hu, Jianping Wu, Haidong Zhong, Zhenhua Lv, and Bailang Yu*
1
Key Laboratory of Geographic Information Science, Ministry of Education East China Normal University, Shanghai 200062, China
[email protected],
[email protected],
[email protected],
[email protected],
[email protected]
Abstract. Three-dimensional (3D) GIS is gaining more and more acceptance among both scientists and the general public. Though powerful in data visualization, 3D GIS is comparatively weak in geospatial analysis. In order to enhance 3D GIS’s analysis capability, we present an approach for integrating geospatial processing services into 3D GIS. The architecture of our approach contains four layers which are the Presentation layer, the Application layer, the Service layer and the Data layer. Two different workflows are designed for this architecture to deal with geospatial tasks of different complexities. We also implement this approach in a 3D GIS project named Digital Chongming Island (DCI), Shanghai, China. By successfully integrating a variety of geospatial processing services into DCI, we have demonstrated that our approach is feasible and effective. Keywords: 3D GIS; geospatial processing services; service and application integration.
1 Introduction Three-dimensional (3D) GIS is gaining more and more acceptance among both scientists and the general public [1]. By visualizing spatial data in a manner that people naturally comprehend, 3D GIS makes full use of human’s highly developed recognition skills, and lowers the barrier to entry for many users [2][3]. 3D GIS also represents some scientific findings in a more attractive way, thereby helping draw more attentions to these discoveries [4]. Despite the numerous conveniences, 3D GIS is still in its infancy [1]. Popular 3D GIS products, such as Google Earth, World Wind and Skyline Globe, are focusing on displaying virtual environment vividly and smoothly, and have offered few geospatial analysis functions [5][6][7]. Compared with conventional 2D GIS software such as ESRI’s ArcGIS Desktop, current 3D GIS products are almost incapable to accomplish the complex tasks which require advanced geospatial analysis functions. As a result, users still have to recourse the tools of 2D GIS to complete their tasks rather than get the whole work done directly on a 3D GIS platform, and their working efficiency is consequently decreased. *
Corresponding author.
F.L. Wang et al. (Eds.): WISM 2010, LNCS 6318, pp. 154–161, 2010. © Springer-Verlag Berlin Heidelberg 2010
An Approach for Integrating Geospatial Processing Services into 3D GIS
155
The emergence of web service has provided a possible way to enhance 3D GIS’s geospatial analysis capability. Web service is a standard-based computing unit which is published on the Internet and helps share valuable data and programs among a large number of users [8][9]. Geospatial processing services encapsulate spatial analysis tools, and make such powerful functions accessible to a wide range of client applications including many 3D GIS platforms. By integrating geospatial processing services into 3D GIS, we can easily extend 3D GIS’s analysis functions. This paper addresses the issue of combining geospatial processing services and 3D GIS. The goal of our research is to design an architecture which enables users to perform advanced geospatial analysis in 3D environment. Our work not only focuses on integrating single service into 3D GIS, but also moves on to service chaining, the process of combining several elementary services into a service chain that can execute complex functions [10]. We also apply our approach to a 3D GIS project named Digital Chongming Island (DCI), Shanghai, China, and demonstrated that the method can effectively integrate geospatial processing services (including simple services and chained services) into 3D GIS. The rest of the paper is organized as follows. Section 2 outlines some relevant concepts and reviews related work. Section 3 presents the detailed description of the architecture of our approach and elaborates on the key components. The implementation and application of the approach in DCI are described in section 4. Finally, we summarize this research and draw some conclusions in section 5.
2 Related Work 2.1 Geospatial Services Geospatial services are specialized web services, and have inherited all properties of general services. What make geospatial services different from other services are the inherent spatial characteristics of the data which geospatial services have to deal with [11]. Geospatial services can be grouped into three categories: data services, processing services and registry services [10]. Since registry services are responsible for searching, maintaining and accessing other services, we only discuss the other two types of services which directly operate on geospatial data. Data services make it possible to share geospatial data, which are often huge, complex and heterogeneous, on the Internet [12]. Typically, data services have standardized interfaces that allow users to access a customized portion of a specific dataset stored in a particular repository. Web Map Service (WMS) and Web Feature Service (WFS) are the most widely used data services which are proposed by Open Geospatial Consortium (OGC). While WMS uses maps, which are produced in a pictorial format such as PNG, GIF or JPEG, to portray geographic information, WFS allows client to retrieve geospatial data encoded in Geographic Markup language (GML). Processing services encapsulate geospatial algorithms and provide access to sets of operations through standardized interfaces [13]. They receive requests from users, execute geospatial processing functions (e.g. projection conversion), and send the results back to users. The datasets manipulated by processing services can be either
156
Y. Hu et al.
user’s local data or those deposited on remote servers. Users can invoke a particular geospatial processing service without understanding its internal mechanism. Thus, processing services effectively increase the reusability of geospatial analysis functions, and made such functions accessible to a larger number of users. 2.2 Integrating Geospatial Services into Applications In order to better share geographic data and tools, many researches have been conducted on integrating geospatial services into client applications [14][15][16]. Service-Oriented Architecture (SOA) has been adopted in most of these researches. In SOA, geospatial services, as the basic units, are collected by developers to build larger and more complex applications. Paul and Ghosh (2008), focusing on geospatial data services, present a service-oriented approach for integrating heterogeneous spatial data sources [15]. Carlos and Laura (2010) move on to geospatial processing services and have developed a service-oriented application allowing hydrologists to access both data and processing services [16]. However, all of these researches are centered on integrating geospatial services into 2D GIS applications rather than 3D GIS platforms. The combination of 3D GIS and geospatial services has also gained attention among scientists and researchers. Dunne and Sutton (2006) have proposed ways to integrate marine data, which are published as WMS, into NASA’s World Wind [17]. Craglia and Goodchild (2008) pointed out that virtual globe may become the next platform for service integration and data visualization [18]. Not only researchers and scientists, several 3D GIS software companies also improve their virtual globes to support standard geospatial services. For example, both Google Earth and Skyline Globe have provided additional modules to integrate WMS and WFS into their 3D environments [5][6]. However, most of these researches focus on integrating data services rather than processing services into 3D GIS.
3 Architecture We present a layered architecture (Figure 1) to integrate geospatial processing services into 3D GIS. This architecture contains four layers: the Presentation layer, the Application layer, the Service layer and the Data layer. 3.1 The Presentation Layer As Figure 1 illustrates, the Presentation layer contains two modules: the User Interface and the 3D Viewer. The User Interface is responsible for interacting with end user. It captures the parameters input by user, and utilizes its AJAX Engine to send these parameters to the Task Manager component in the Application layer. The User Interface also receives the results of the geospatial processing services from the Task Manager, and redirects such results to the 3D Viewer. The 3D Viewer can be an ActiveX control, like Google Earth Plug-in or Skyline Globe 3D window, which is employed to retrieve the geospatial data (e.g. DEM, images, and 3D models) from the Data layer, and to render such data as 3D scene. The 3D Viewer also visualizes the results of the geospatial processing services, and integrates the data services (e.g. WMS and WFS) into the 3D environment.
An Approach for Integrating Geospatial Processing Services into 3D GIS
Data layer
Service layer
Server side
Data sets
Geospatial processing service
Application layer
3D model Vector Image DEM
Metadata
Geospatial processing service
157
…
Geospatial data services WMS, WFS
Task Manager
Client side
Presentation layer
AJAX Engine User Interface
3D Viewer
Fig. 1. The architecture and key components
3.2 The Application Layer The Application layer addresses issues about service integration and chaining. As shown in Figure 1, the central component of this layer is the Task Manager which is a web application that can be built up by a general programming language (e.g. Java). The Task Manager has the capabilities of a general web application: it can handle the requests from the Presentation layer and send the processing results back to the client. What makes Task Manager different from other web applications is that it can organize several processing services into a workflow (a sequence of operations [19]) that can fulfill user’s specific requirements. 3.3 The Service Layer and the Data Layer The Service layer consists of distributed geospatial data services and processing services. The data services, such as WMS and WFS, provide the Task Manager and the 3D Viewer with standard interfaces to access the geospatial data deposited in the Data layer. The processing services deal with business logic, and can manipulate the datasets from either the data repositories or the geospatial data services. A processing service is also able to interact with other processing services in order to accomplish complex geospatial tasks. The Data layer provides the architecture with geospatial data which include 3d models, DEM, vector data, metadata, and other datasets. 3.4 Workflows of the Architecture Two different workflows (shown in Figure 2) are designed in our architecture to respectively deal with tasks of different complexities.
158
Y. Hu et al.
Buffering service Reprojection service
④
③
④
③
Clipping service
③
④
Reprojection service
⑤
User Interface
⑥ Task Manager
②
⑥
①
3D Viewer
⑦ (a)
Clipping service
③
Task Manager
②
⑤
Buffering service
④
User Interface
⑦ ⑧
3D Viewer
⑨
① (b)
Fig. 2. The workflows of the architecture: (a) invoking a single service; (b) invoking a service chain
The workflow in Figure 2a is implemented when user’s task can be easily handled by a single geospatial processing service (e.g. buffering service). User first inputs the request parameters to the User Interface which then sends user’s request to the Task Manager. The Task Manager analyzes user’s request and redirects such request to a corresponding processing service. The processing service executes its function and sends the results back to the Task Manager. The results are then passed to the User interface and the 3D Viewer in turn. Finally, the 3D Viewer visualizes the processing results in the virtual environment. The workflow in Figure 2b is implemented, when user’s task can only be accomplished by the cooperation of several processing services. In this workflow, when the Task Manager intercepts a new request, it does not immediately redirect this request to a particular service. Instead, it analyzes the request, identifies the services needed to accomplish this task, and organizes these services in a sequence. The Task Manager then sends the request to the first service which then passes its processing results to the next services. When the last processing service finishes its own work, it transmits the final results to the Task Manager. Finally, the 3D Viewer obtains the processing results and displays these results to end user.
4 Implementation Our approach has been implemented in a 3D GIS project named Digital Chongming Island, Shanghai, China. DCI is a virtual globe-based web GIS and its 3D GIS platform is Skyline Globe. Our goal is to integrate geospatial processing services into DCI by using the approach proposed in this paper.
An Approach for Integrating Geospatial Processing Services into 3D GIS
159
4.1 Preparing Geospatial Processing Service The geospatial analysis functions must first be published as web services. While some of these functions (e.g. buffering) can be directly published by utilizing ArcGIS Server, other functions (e.g. the function of regional pollution evaluation which is based on an algorithm designed by the local government department) need to be developed and then published as services by Apache Axis. We also employ ArcGIS Server to publish the geospatial data of DCI as standard services (WMS and WFS) in order to make these heterogeneous data accessible to the processing services. 4.2 Integrating Geospatial Processing Services By adopting our method, we have successfully integrated a variety of geospatial processing services into DCI. Since similar ways are used to combine the services and the system, we only describe the integration process of two services: the Routing service which is a simple service, and the SO2 Concentration Distribution service which is a service chain. 4.2.1 The Routing Service The Routing service can calculate the shortest path between two locations. This service relies on Chongming’s road data which is published as WFS. To invoke this service, user first selects the start point and end point in the 3D environment. Then the coordinates of the two points along with a tag, which identifies the specific service requested by end user, are sent to the Task Manager. The Task Manager checks this tag and redirects these coordinates to the Routing service. In the next step, the Routing service works out the shortest path by referring to the road data and returns the vertexes of the path to the Task Manger. These vertexes are then passed to the 3D Viewer (the ActiveX control of Skyline Globe), and the Application Programming Interfaces (APIs) of Skyline Globe are employed to draw a route in the 3D environment according to these vertexes, and we also create a vehicle to vividly show the path to end user (Figure 3a). 4.2.2 The SO2 Concentration Distribution Service The SO2 Concentration Distribution service shows the current distribution of the SO2 concentration in Chongming’s local atmosphere. This service is a service chain which consists of three simple services: the SO2 Monitoring service, the Point Layer Creating service, and the Spatial Interpolation service. The SO2 Monitoring service retrieves the current monitoring data of SO2 from the 102 air monitoring stations distributed on Chongming Island. The Point Layer Creating service can create a point layer based on the coordinates of points, and the Spatial Interpolation service is able to produce a surface image from a point layer. To invoke the SO2 Concentration Distribution service, user first send a request to the Task Manager, which then analyzes this request, organizes the three simple services and redirects the request to the SO2 Monitoring service. In the next step, the SO2 Monitoring service obtains the current monitoring data, and transmits them to the Point Layer Creating service, which creates a point layer from these data and passes this layer to the Spatial Interpolation service. The Spatial Interpolation service then
160
Y. Hu et al.
Fig. 3. Results of invoking geospatial processing services in DCI: (a) the Routing service; (b) the SO2 Concentration Distribution service
produces an image from this point layer and sends the URL of this image to the Task Manger. Finally, the 3D Viewer receives the URL of the image, and displays this image into the 3D environment (Figure 3b).
5 Conclusions 3D GIS excels in data visualization, but it is comparatively weak in geospatial analysis. This paper presents an approach for integrating geospatial processing services into 3D GIS in order to enhance its geospatial analysis capability. The architecture of our approach contains four layers which are the Presentation layer, the Application layer, the Service layer and the Data layer. We have also designed two different workflows to deal with tasks that have different complexities. While the first workflow involves only one simple geospatial processing service, the second workflow chains two or more services together. Our approach has been implemented in a 3D GIS project named Digital Chongming Island, Shanghai, China. We publish geospatial analysis functions as web services, and then integrate these services into DCI by using the approach proposed in this paper. In particular, we have described the details of invoking two geospatial processing services in DCI. The results of the implementation have demonstrated that our approach can effectively combine 3D GIS and geospatial processing services. Acknowledgments. The authors would like to thank the DCI partners for their valuable contributions to this research. DCI is a virtual globe-based decision supporting system which is sponsored by the Science and Technology Commission of Shanghai Municipality (Grant No. 07DZ12037).
References 1. Tuttle, B.T., Anderson, S., Huff, R.: Virtual globes: an overview of their history, uses, and future challenges. Geography Compass 2(5), 1478–1505 (2008) 2. Nature: Think global. Nature, vol. 439 (7078), p. 763 (2006)
An Approach for Integrating Geospatial Processing Services into 3D GIS
161
3. James, D.M., Phillip, A.G.: A GIS-based borehole data management and 3D visualization system. Computers & Geosciences 32, 1699–1708 (2006) 4. Kreuseler, M.: Visualization of geographically related multidimensional data in virtual 3D scenes. Computers & Geosciences 26, 101–108 (2000) 5. Skyline Software System Inc.: SkylineGlobe Technology Overview, pp. 1–17 (2009) 6. Google Inc.: Google Earth User Guide, pp. 1–131 (2007) 7. World Wind Web Manual, http://worldwind.arc.nasa.gov/manual.html 8. Alonso, G., Casati, F., Harumi, K., Machiraju, V.: Web Services. Concepts, Architectures and Applications. Springer, Heidelberg (2004) 9. Foster, I.: Service-oriented science. Science 308(5723), 814–817 (2005) 10. Alameh, N.: Chaining geographic information web services. IEEE Internet Computing 7(5), 22–29 (2003) 11. Granell, C., Diaz, L., Gould, M.: Managing earth observation data with distributed geoprocessing services. In: IEEE International Geoscience and Remote Sensing Symposium (IGARSS 2007), pp. 4777–4780. IEEE CS, Los Alamitos (2007) 12. OGC: OpenGIS Service Architecture. OpenGIS Abstract Specification, 2–112 (2002) 13. Alameh, N.: Scalable and Extensible Infrastructures for Distributing Interoperable Geographic Information Services on the Internet. doctoral dissertation. MIT Libraries, Cambridge (2001) 14. Paul, M., Ghosh, S.K., Acharya, P.S.: Enterprise geographic information system (E-GIS): A service-based architecture for geo-spatial data interoperability. In: IEEE International Geoscience and Remote Sensing Symposium (IGARSS), IEEE GRSS Press, Denver (2006) 15. Paul, M., Ghosh, S.K.: A service-oriented approach for integrating heterogeneous spatial data sources realization of a virtual geo-data repository. International Journal of Cooperative Information Systems 17(1), 111–153 (2008) 16. Granell, C., Diaz, L., Gould, M.: Service-oriented applications for environmental models: Reusable geospatial services. Environmental Modelling & Software 25, 182–198 (2010) 17. Dunne, D., Sutton, G.: 3D Web mapping: integrating marine data into NASA World Wind. Hydro International 10(9), 7–9 (2006) 18. Craglia, M., Goodchild, M.F., Annoni, A., Camara, G., Gould, M., Kuhn, W., Mark, D., Masser, I., Maguire, D., Liang, S., Parsons, E.: Next-Generation Digital Earth. A position paper from the Vespucci initiative for the advancement of geographic information science. International Journal of Spatial Data Infrastructures Research 3, 146–167 (2008) 19. Aalst, W., Hee, K.: Workflow Management: Models, Methods, and Systems. MIT Press, Cambridge (2002)