WGBUILDER: a Visual Environment for Building Web-GIS Applications Luca Paolino, Monica Sebillo, Genny Tortora, Giuliana Vitiello Dept. Matematica e Informatica, University of Salerno, Italy email {lpaolino, msebillo, gvitiello, tortora}@unisa.it
Abstract Web-GIS development often forces application domain experts to learn the programming languages and the complex frameworks adopted, thus reducing their productivity As a solution to this issue, we present a visual environment, named WGBuilder, which supports unskilled users in the construction of Web-GIS applications. By performing a set of predefined actions, they specify the customization requirements and the resulting application can be downloaded either for local use or for use on a different web server. Thus, users are only required to have knowledge about the data featuring the application under construction.
Keywords Visual environments, geographic data, GIS applications, geographic metadata.
INTRODUCTION The impact of the Internet on GIS (Geographical Information Systems) is notably affecting users’ activities. Application domain experts are evolving towards a wider and demanding community, whose interests are mostly directed to the information dissemination and to advanced processing tools. Experts require GIS functions able to conduct spatial analysis and derive new information in specific domains, without having to afford expensive investments [5, 6]. In recent years, an increasing attention has been devoted to the development of components for both conducting online GIS analysis and disseminating the derived results. Manuscript received L. Paolino is with the Dipartimento di Matematica e Informatica, University of Salerno, Italy (phone: +39089963324; fax: +39089963303; e-mail:
[email protected]). M. Sebillo is with the Dipartimento di Matematica e Informatica at the University of Salerno, Italy (
[email protected]) G. Tortora is with the Dipartimento di Matematica e Informatica at the University of Salerno, Italy (e-mail:
[email protected]). G. Vitiello is with the Dipartimento di Matematica e Informatica at the University of Salerno, Italy (
[email protected])
The aim of this research consists of allowing users to build and integrate simple customized applications in agreement with their needs, by accessing providers distributed on the web. This is achieved thanks to an advanced software framework, able to generate customized Web-GIS applications, where users’ data and spatial features can be handled and queried through the conventional mapping tools. Such a requirement arises from the need to disseminate and share geographic information through applications whose contents may be subject to frequent updates, upon user’s manipulation and gained results. For that reason, an application which only visualizes the geographic content is not sufficient. It is necessary to develop an efficient and effective tool which enables users to visualize, query, analyse and process geographic data. However, one problem with the use of GIS technology is that, in spite of the high potentiality offered, users are often faced with the implicit complexity of data and are forced to become familiar with the related concepts. The development of Web-GIS applications is no exception, since final users are supposed to be either domain experts, who have usually low familiarity with GIS technology, or ordinary people interested in browsing data of interest. The project presented in this paper represents a solution. It consists of a visual environment, named WGBuilder (WebGIS Builder), which allows unskilled users to build a self contained customized Web-GIS, starting from a given geographic dataset. Performing a predefined set of actions, users can select and visualize map layers, can choose attributes on which queries may be posed, and can set additional details about the graphical interface. The resulting application composed by a Java applet, HTML and Jscript codes represents a GIS component, which can be either put on the Internet in order to share and disseminate its geographic content, or integrated with other components to assemble a more complex one. The rest of this paper is organized as follows. Section 2 gives an overview of different approaches in the same research field. Both commercial products and models for customization design are discussed. Section 3 describes the underlying architecture of WGBuilder, as well as some details about the implementation. In Section 4 an example
of a Web-GIS generation is depicted for expert users in the environmental domain. Final remarks conclude the paper.
STATE OF THE-ART In the field of information systems, many factors have highly influenced the development of GIS as means to easily access, process and disseminate geographic information and spatial knowledge. The increasing popularity of the Internet, the strong progress of Information Technology (IT) and the merge of geographic information science and technology have determined a growing interest in investing in the area of Web-GIS [8]. The traditional approach to Web-GIS application development has been to implement ad hoc software solutions using both programming languages and Application Programming Interface (API) that manage spatial data. Available APIs were used to build platform-independent customized applications. APIs allowed to design several kinds of applications, such as simple viewers and tools to query both spatial and alphanumeric data. Moreover, they could be used within standard development environments, such as JBuilder, Visual Basic .NET, etc. Examples of this approach to GIS application development are the ORACLE Spatial API, the FME object by Safe Software and the ESRI MapObject, which allow users to develop Java and COM applications. More recently, major GIS software companies have developed specialized software for web application development. As a matter of fact, ArcIMS by ESRI [13], MapGuide by AUTODESK [12], and WebMap by INTERGRAPH [14], can be used to build web applications which allow users to query and manipulate spatial information through browsers, such as Internet Explorer and Firefox. They can work in two different modalities, namely raster and vector modes. In the former, spatial data are sent to the client as images which are automatically managed and visualized by the browser. As for the latter, vector data are transmitted which should be parsed by special plug-ins able to interpret them in the right way. In order to develop web applications they work in three steps. In the first one, the web application configuration is performed, that is map files are built or chosen together with a coordinate system, colours, size and other parameters. Then, such a configuration file is used to create a service running on the map server. Finally, the web interface is made up by choosing both data types, i.e. image or vector format, and actions to perform on the map. Once all steps are computed a web client composed by HTML and Jscript code is generated. A customization of the web client might be further done by expert users by manipulating the code. Customizability of web development environments is recognized to be a valuable aid in the construction of effective
web applications. The My Yahoo approach is a typical example of a user-specified customization methodology, which allows users to select preferred modules from hundreds of available ones [7]. WUML proposes a generic customization model allowing the adaptation of web applications toward the context implied by the ubiquity. It provides a context model that facilitates the specification of detailed information about a web application and its environment, and a rule model to enable the actual customization [3, 4]. WebML is another interesting approach which considers personalization issues within the design phase of web applications [1, 2]. It exploits user profiles, delivery specifications and a series of business rules to enable the so-called one-to-one web delivery. The delivery specifications are added to the web application model as annotation. The business rules are specified to compute and store userspecific information. Finally, the OntoWeaver [9] methodology is an ontology-based approach to design and manage customized data-intensive web sites. The key concept behind OntoWeaver is that it employs a set of ontologies to abstract all aspects of the target web applications, including domain data structures, navigational structures, user interfaces, presentations, end users, and customization rules. In particular, it proposes a site view ontology that models navigational structures and user interfaces.
THE WGBUILDER VISUAL ENVIRONMENT In the present section we describe the architecture of WGBuilder and the tasks required to generate a Web-GIS application. WGBuilder is based on a client/server architecture and is made up of 3 components, handled by the WGBuilder developers, as shown in Figure 1. Besides the basic components, such as the application server and the web server, the server side contains also the cartographic database. Each map is organized as a shapefile (.shp) and is then associated with a .dbf file, representing the descriptive part of the geographic layer. WGBuilder outputs a WebGIS application in terms of a Java applet, the construction of which starts when the user connects to the environment. In particular, as a first step, user’s requirements are acquired through a set of pages, based on the JSP technology. Filling some forms, the user communicates with the server and sends it the project name, as well as some interface customization details in terms of feature colours and background. The user is also required to select the attribute set on which Web-GIS users may pose queries. The attribute list is visualized through a HTML and Jscript page. Finally, based on all those parameters, the servlet builds the customized Web-GIS application.
ple, map date and author are important in order to share data related to the landscape, because they indicate the content reliability. Differently, format and abstract may also be derived by analysing either file names or keywords. Finally, users who provide the cartographic database with new maps, may decide whether to physically share them with other users. If so, their files appear among the available maps and can be used in different Web-GIS constructions, otherwise only a preview is available together with the information about the owner.
Figure 1. WGBuilder architecture
Once the application is generated, it can be either downloaded for local use, or put on a different web server to disseminate and share the geographic information it contains. The user may also choose to download (for local use or for sharing) simple maps as shapefiles rather than the whole project as a Java applet together with the presentation pages as .html files. Figure 2 shows such a task.
Figure 2. Sharing the Web-GIS application
Users may interact with the underlying database according to two approaches. Basically, they can select some of the available maps and build the Web-GIS application on them. On the contrary, if the database doesn’t contain the required maps, users can add them to the database and then invoke the construction of the application. The provision of a map has to follow some predefined steps and the map itself has to be organized in agreement with a predefined format in terms of attributes and features. Typically, either a vector file or a raster file may be provided, together with a set of metadata which contribute to specify the quality of the map characterizing the Web-GIS under construction. Table 1 reports the set of metadata with which .shp files and tiff/jpeg/bmp files are associated. They refer to the International Standard ISO/FDIS 19115 [15] and are distinguished in mandatory and optional metadata, based on their relevance when a quality value is calculated. As an exam-
Attribute
Description
Domain
ID *
Cartographic identifier
Free text
Title *
Name by which the cited resource is known.
Free text
Language
Language used within the dataset
Set of predefined values (ISO 6392)
Date*
Reference date for the cited resource
(ISO 8601)
Coverage
The extent or scope of the content of the resource
Set of predefined values
Keyword*
A topic of the resource content
Free text
Author*
An entity primarily responsible for making the content of the resource
Free text
Abstract
Brief narrative summary of the content of the resource
Free text
Format and version*
Description of the format of the data to be distributed
Set of predefined values
Resource location
Location where the resource can be looked up
Free text
Contributor
An entity responsible for making contributions to the resource content
Free text
Copyright
Information about rights held in and over the resource.
Free text
Responsable party
Identification of, and means of communication with, person(s) and organization(s) associated with the resource
Free text
Geographic location of dataset
Extended information including the bounding box, bounding polygon, vertical, and temporal extent of the dataset
Free text
Reference system*
Name of the reference system
Free text
YYYY/MM/DD
Scale
Factor which provides a general understanding of the density of spatial data in the dataset.
Free text
On-line resource
Information about (online) sources from which the resource can be obtained
Free text
Character set
Full name of the character coding standard used for the dataset
Set of predefined values
Spatial representation type
Method used to spatially represent geographic information
Set of predefined values
Table 1. Metadata for map description – an asterisk indicates a mandatory metadata
WGBuilder and its resulting applications involve and interact with different typologies of users. As depicted in Figure 1, clients involved in the generation of Web-GIS are mostly domain experts, who wish to share the information contents. They usually need to implement Web-GIS applications in order to disseminate their cultural heritage through the Internet. Notwithstanding their low familiarity with computer technology, they are able to build a stable and performing application, thanks to the support of the underlying toolkit. Differently, in Figure 2 also generic clients are depicted, who interact with GIS applications put on the Web. They may be either end users interested in the information browsing or expert users who exploit shared components and data for further processing.
Figure 3. WGBuilder environment
Once the vector file containing the boundaries and the typology of reserved areas have been selected, the project name PAPriCa can be provided and the attributes that will compose the Search frame can be selected. Also, more details about the colour of both layer and background can be set, as shown in Figure 4.
THE GENERATION OF THE WEB-GIS PAPriCa In the present section we show the effectiveness of the proposed visual environment in generating customized WebGIS applications starting from geographic databases. In particular, the present example shows the construction of a Web-GIS containing data about reserved areas and natural parks in the Campania Italian region. The resulting application, which is named PAPriCa, (Progetto Aree Protette in Campania – Project of Reserved Areas in Campania), allows users to acquire information about all the Campania zones, where environmental constraints have been set and the life quality is monitored. Figure 3 shows the environment as it appears when WGBuilder is invoked. Users are provided with a preview of available maps, each one associated with the corresponding descriptive component. Thanks to the use of a GUI, they can intuitively manipulate both spatial and thematic components of geographic data, in a uniform way.
Figure 4. Building the Web-GIS application
At this point, the generation of the expected Web-GIS may start. Figure 5 illustrates the resulting application as it appears to the user. It consists of three frames, namely the Search area, the Map viewer and the Details area. In particular, the Search area provides users with the set of selected attributes on which textual queries based on conditions can be posed. Features satisfying the conditions are highlighted on the map.
Figure 5. The resulting Web-GIS
The Map viewer contains a set of buttons which allow users to handle conventional mapping tools, as well as to perform spatial selections based on graphic tools. The Details area may contain links to different multimedia files associated with features selected by queries. On demand, such files can be opened to visualize videos, images and textual descriptions. Figure 6 shows an example of a detailed description associated with a feature belonging to the result set of a spatial selection.
Figure 6. A detailed description associated with the geodata
Finally, through the Download function the user can choose whether to get the whole project (applet and .html files) or to acquire only geodata as .shp files. Figure 7 shows the interface to accomplish such tasks.
Figure 7. The download functionality
FINAL REMARKS ON WGBUILDER In the first twenty years GIS were exclusively used by programmers who mainly interacted with the systems using command lines and macro languages. Recently, high potentialities of such systems were discovered by new users working in any life sectors. Consequently, new interaction necessities arose and dealing with usability problems is today considered a crucial activity in the development of GIS software, with notable impact on the overall costs. WGBuilder has been conceived with the aim of reducing usability design costs. A user who wishes to build his/her own Web-GIS learns quickly the steps he/she is supposed to perform in order to accomplish the generation task. He/she navigates through a sequence of intuitive graphical interfaces where he/she may retrieve the maps he/she is interested in, and then specify the parameters needed to customize the Web-GIS application. He/she focuses on the geographic data which the WebGIS application should manipulate and on the functionality required, based on the established usage goals. On the contrary, he/she may disregard usability issues, which are a priori overcome by WGBuilder. As a matter of fact, it automatically assigns a graphical layout to each of the generated Web-GIS interfaces, and such layouts have been designed taking carefully into account standard usability heuristics and guidelines [10, 11]. Other features contribute to make WGBuilder an effectively usable toolkit. It is distributed, and searchable, that is to say, it is available on the network and can be invoked on demand. Due to the interoperability of Java, WGBuilder is also open and can be integrated with other components. Finally, a Web-GIS built through WGBuilder represents a self-managing component. Users should have knowledge only about data contents and possibly about the modality to put an application on a web server.
Future efforts will be devoted to the management of data sets with different structures. Metadata and interchange formats seem to be the means for the achievement of a solution independent of the platform, data formats and the development language.
REFERENCES [1] Ceri S., Fraternali P., Paraboschi S., Data-Driven OneTo-One Web Site Generation for Data-Intensive Applications. Proceedings of the 25th VLDB Conference, Edinburgh, Scotland, 1999, pp. 615-626. [2] Ceri S., Fraternali P., Bongio A., Web Modelling Language (WebML): a modelling language for designing Web sites. WWW9 Conference on Computer network. My 2000. pp.137-157. [3] Kappel G., Pröll B., Retschitzegger W., Schwinger W., Modeling Ubiquitous Web Applications - The WUML Approach, International Workshop on Data Semantics in Web Information Systems (DASWIS-2001), Yokohama, Japan, November 27-30, 2001. [4] Kappel G., Retschitzegger W., Kimmerstorfer E., Proll B., Schwinger W., and Hofer TH., Towards a Generic Customization Model for Ubiquitous Web Applications. Proceedings of the 2nd International Workshop on Web Oriented Software Technology, 2002, pp. 79104. [5] Longley PA, Goodchild MF, Maguire DJ, Rhind DW. Geographical Information System Principles - Second Edition 2001. Wiley.
[6] Longley PA, Goodchild MF, Maguire DJ, Rhind DW. Geographical Information Systems and Science 2001. Wiley. [7] Manber U., Patel A., and Robison J., Experience withPersonalization on Yahoo! in Communications of the ACM, August 2000, pp. 35-39. [8] Peng ZR, Tsou MH. Internet GIS – Distributed GIServices for the Internet and wireless networks, 2003 Wiley. [9] Yuangui L., Motta E., Domingue J., Design of Customized Web Application with OntoWeaver. Proceedings of the International Conference on Knowledge Capture, October 2003. [10] Nielsen J., Designing Web Usability: the Practice of Simplicity, New Riders Publishing, Indianapolis, IN, 2000. [11] Dix, A., Finlay, J., Abowd, G.D., Beale, R., HumanComputer interaction, 3rd edition., Pearson Education Limited, 2004. [12] AUTODESK. MapGuide, usa.autodesk.com/adsk/servlet/index [13] ESRI. ArcIms www.esri.com/software/arcgis/arcims/index.html [14] Intergraph. WebMap, imgs.intergraph.com/gmwm/ [15] ISO/FDIS 19115, http://www.ncits.org/refdocs/FDIS_19115.pdf