Printer Friendly

Interoperable internet mapping--an open source approach.


Internet GIS refers to GIS services that use the Internet as a primary means to access data, conduct spatial analysis, and provide services related to geographic information (Peng 1999; Peng and Tsou 2003). These services are typically GIS applications disseminated through the Internet for interactive use by web users. Thus we use the terms "services" and "applications" interchangeably in this manuscript. The past decade has witnessed passionate interests of researchers, practitioners, and vendors in exploiting various ways to promote the accessibility to geospatial data and services on the Web. This study concerns two important issues that are closely related to Internet mapping services. They are the issues of interoperability and Open source.

Motivated by an emphasis on the democratization of cartography, which aims to empower individuals with electronic tools to map and analyze spatially referenced data (Morrison 1994; Kumar 2000), we are particularly interested in Internet GIS solutions that rely on open source resources, as they are most likely to be developmentally feasible, both financially and technically. The second motivation of the study is the universally acclaimed goal of interoperability.

Generally speaking, interoperability is the ability of a system, or components of a system, to provide information portability and inter-application cooperative process control (Zhang et al. 2003). It boils down to the ability to share data and other resources among different systems. In the literature, the word "interoperability" may confer two types of meaning. The first refers to a data set or other system component being able to be used by different systems. The second refers to the ability of a system to utilize a range of data formats (Laurini 1998). Our study concerns the second type of interoperability. We present a standard-and-open-source-based framework for Internet mapping services that enable direct and interactive display of both vector and raster geographic data of a variety of formats.

Many GIS vendors have developed proprietary Internet GIS software. Examples include Environmental Research Systems Institute (ESRI)'s ArcIMS and ArcGIS Server, Autodesk's MapGuide, Intergraph's Geomedia WebMap Professional, MapInfo's MapXtreme, ER Mapper's Image Web Server, and GE SmallWorld Internet Application Server. However, developing an application with proprietary Internet GIS software packages may be problematic in some situations for any number of reasons. First, it tends to be costly. The associated software cost inhibits many potential Internet GIS services, especially those intended to benefit users in the general public freely. Secondly, proprietary programs use proprietary data formats. Such restriction on data formats, if not linked with standardization, could greatly hamper the interoperability of the Internet GIS service. Lastly, although some of these Internet GIS programs allow the developed Internet GIS service to have sophisticated functions, the geospatial data are either prepared as or converted into raster images when they are delivered to the client sites. Any request that causes a change in the spatial extent of the map calls for a new image to be created, transported via the network, and re-rendered. This actually often causes substantial redundancy in data processing and imposes a heavy traffic load on the Internet. More importantly, it impairs visualization quality due to slower responses and resolution-dependent viewing quality. This situation worsens when users give frequent interactive commands to the system.

In response to the concerns and limitations described above, we seek to investigate alternative approaches to building Internet GIS services. Our study focuses on Internet mapping services, while most discussions are generally applicable to Internet GIS applications. We provide a systematic review of Internet mapping techniques. With a discussion of the issue of interoperability, we also analyze the important role of international standards in developing interoperable Internet mapping services. Finally, we present a general framework of an interoperable Internet mapping service that can take vector and raster data of various formats and render them in their original logical model (i.e., vector or raster) of the geographic world.

This paper is organized as follows. The next section discuses the interoperability of Internet GIS services, focusing in particular on the contribution of standards-based approaches to interoperability. Then we present reviews and critiques of existing Internet GIS architectures and associated techniques. The general framework is introduced in the following section, which is followed by the demonstration of two preliminary, implemented prototypes. In the concluding section, we analyze the potential benefits of such a framework for Internet mapping services and highlight a few research questions for future study.

Interoperability and Standards

Thanks to modern geospatial technologies, huge volumes of geographic data created by a variety of institutions or individuals are increasingly available. It is often difficult to reuse these data or other system components in different GIS applications, however, due to the diversity of geographic data models and data encoding techniques, or due to heterogeneity in semantics and metadata, etc. (Devogele et al. 1998). Following the second commonly accepted general definition of interoperability stated earlier, this study focuses on the interoperability of Internet GIS in the context of the ability of such a system to manipulate, access, exchange, and share geospatial data from various resources for any kind of application over the Internet.

The underlying cause of interoperability in general is heterogeneity. Bishr (1998) identified three distinct facets of heterogeneity in a multi-GIS environment: syntactic, semantic, and schematic. The syntactic aspect puts significant emphasis on the paradigm of database management systems in use, as it is pertinent to the capability of one system to understand the meaning of data from another system. For instance, it is difficult to transfer data between a relational database and an object-oriented database because data are modeled and organized in different ways. Semantic heterogeneity happens when one geographic fact has more than one description in different databases or the same description in different databases has different real-world meanings. Thus, semantic interoperability deals with inconsistencies caused by variations in conceptualizations and interpretations of geographic worlds. Finally, schematic heterogeneity refers to incompatibility among systems concerning conceptual classification and hierarchical structure of the real world.

While all three aspects are important, this study focuses on syntactic interoperability in Internet GIS services as it is directly associated with the second type of meaning of interoperability which is the focus of our discussion. Good syntactic interoperability makes it easier to share and transfer data between different systems. Approaches to improving such interoperability often involve the establishment of standards to be followed by various organizations who issue geographical data. Standardized metadata and data formats, for instance, can facilitate the processing of geospatial data in various environments as it enhances the chance of mutual understanding.

By adopting techniques and specifications that conform to open geospatial standards, an Internet GIS service will be well positioned to achieve better syntactic interoperability. An open standard means the standard is developed in an open, international, participatory process. It includes free, public access to all interface specifications. The "openness" in the "Open Standards" is particularly important, as the goal is to promote the standards as widely as possible, not just among a few organizations, departments, and institutions.

The Open Geospatial Consortium (OGC) is leading the development of such open standards for geospatial data and technologies. The OGC, formerly known as OpenGIS Consortium, is an international industry consortium with hundreds of members, including companies, government agencies, and universities participating in a consensus process to develop publicly available interface standards (specifications). The OGC has initiated several Web mapping interoperability initiatives and implementation specifications including the Geography Markup Language (GML) specification, the Web Map Service (WMS) implementation specification, the Web Feature Service (WFS) implementation specification, and others (OGC 2007a). The focus of these specifications is to define interface standards that allow seamless and vendor neutral access to, and interchange of, GIS data.

Many companies in the GIS industry, such as ESRI, MapInfo, and Galdos Inc. are updating their products to conform to these open standards. For example, the data interoperability extension of ArcGIS, a leading commercial GIS program, is now supporting several OGC specifications, such as GML, WFS, and WMS. We argue that standard-based approaches are viable solutions for interoperable Internet GIS services.

Techniques for Developing Web-based Mapping Services

There are at least two distinct processes involved in providing Internet GIS services, particularly mapping services. The first is transmitting GIS data from the hosting site (server) to the user side (client) through the Internet. The second process is rendering the graphics of spatial data on the client side. Below are brief overviews of techniques involved in each process.

GIS Data Transfer via the Internet

The dominant architecture of Internet GIS is the Client/Server model on which the world wide web and most other Internet services are based. In the early days of Internet GIS, the solutions were implemented on either the client side (thick client architecture) or the server side (thin client architecture). More recently, hybrid approaches have been explored to balance the merits and demerits of these solutions. The techniques used in these architectures include Common Gateway Interface (CGI), Java Servlets, Java Applets, and GIS plug-ins.

As a link between the Web server and the client browser, CGI is one of the earliest server-side techniques in Internet GIS applications. Implemented on the server side, HTML web pages are static and thus they are not suitable for dynamic data. The CGI is used as an extension of HTML to generate dynamic information for the clients. This technique was employed in MapServer, a well known open source software program created by the University of Minnesota (Lime and Koormann 2007). Despite its enabling capability, CGI also has a performance bottleneck. It places considerable workload on the server if several CGI programs are operating at the same time for multiple clients. In addition, whenever a client makes any change to inputs (say, a modified parameter), the CGI program starts a new process thread, which consumes considerable computer resources. The CGI-based approach is thus not suitable for visualization and dynamic modeling, which are common in GIS mapping services.

An alternative method on the server side is using Java Servlet as the interactive interface (Lee et al. 1998). Because of its platform independence, Java is frequently employed in developing Internet applications. A Java Servlet is a Java program that runs on a web server. Because the Servlet stays resident in memory when running, it computes much faster than the CGI. In addition, the method allows resource sharing among multiple invocations of Servlets. As the Java Servlet method outperforms the CGI method, many researchers have adopted it to overcome the shortcomings of CGI in visualization and dynamic modeling because the latter require frequent and efficient client-server interactions (Huang and Worboys 2001; Gong et al. 2003).

Both CGI and Java Servlet are primarily used in thin client architecture, where programs are implemented on the server side. This architecture has received major criticisms due to limited user interfaces and generally slow responses (Babu 2003). Thick client architecture, where programs are primarily executed on the client side, was proposed in response to these criticisms. The third technique discussed here, the Java applet technique, is implemented on the client side.

A Java applet is a small program written in Java and run on the client side. Similar to the Java Servlet, platform independence is also an advantage of Java applets. Running on the client side, Java applets can provide friendly user interfaces and good interactive ability. However, the applets may overload the client side so that the clients are too "fat" to interact efficiently. If the applet programs and the data are too large, they may even paralyze the client machine. For example, in the case of dynamic modeling, the programs and raster images are so large that it is almost impossible to use the technique without balancing the load between the server and the client. As a result, hybrid architectures have been proposed. For instance, Huang and Lin (2002) implemented a combination of a client side technique (Java applet) and a server-side technique (CGI) to design a web-based GIS service.

Another commonly used client-side solution for Internet GIS is to install plug-ins on the client side, thus providing extra functions for the clients' web browsers. It should be noted that plug-ins are browser and platform dependent. They provide additional abilities for the browser to display and process spatial data so that the server's workload is eased; clients can interact with the server frequently and efficiently since the computation is done on the client side. The plug-in-based solution not only expedites the response speed for the users but also decreases the data volume transferred on the Internet.

Displaying GIS Data Online

The earliest web-based GIS data visualization technique was simply to display images of geographic maps on HyperText Markup Language (HTML) pages. Current solutions include visualizing map images and using web browser plug-ins, applets, or ActiveX controls. However, most solutions still can only display raster images or convert vector spatial data into raster images before display. The OGC's WMS, which is an open standard, is an example of such raster-only visualization solution.

The latest development aims to render vector data directly. In comparison with the raster-only solution, adding vector graphics has several advantages. First, the visualization quality of vector graphics can be maintained, regardless of map scale. Secondly, the volume of a vector dataset could be much smaller than that of a raster dataset for many types of geographic phenomena, such as land use and administrative boundaries. Furthermore, raster image displays require reloading different images with the change of display scale by zooming or panning, while vector displays do not. Therefore, if the original dataset is in vector format, vector-based maps are preferred as they may significantly reduce Internet traffic.

Scalable Vector Graphics (SVG) is currently the most promising format for vector graphics display on the Internet. This standard is at once a modeling language and a file format used to describe two-dimensional graphics and graphical applications. SVG is based on the open standard Extensible Markup Language (XML), and it has the advantage of providing rich graphical visualization features such as vector display, animation, interactivity, transparency, graphic filter effects, and special visualization effects including shadows, lighting effects, and easy editing.

The most important advantage of SVG lies, however, in the fact that it is an open standard. Recommended by the world wide web Consortium (W3C), SVG complies with other international standards such as Cascading Style Sheets (CSS), eXtensible Stylesheet Language Transformation (XSLT), XLink, and XPointer, which makes it easy for SVG to work effectively with these popular standards on web-based applications. The fact that SVG employs open specifications is particularly advantageous as open specifications and open source software can facilitate the implementation of interoperable web-based spatial information solutions (Anderson and Sanchez 2003; Neumann and Winter 2001). Consequently, SVG is a popular choice among researchers and practitioners working in the area of Internet GIS services (e.g., Carrara et al. 2003; Peng and Zhang 2004; Dunfey et al. 2006; Chang and Park 2006; Antoniou and Tsoulos 2006).

The focus on SVG by industry is rapidly growing as well. Tools (e.g., Batik, Adobe SVG viewer, etc.) have been developed to render or edit SVG documents. Although currently plug-ins must be installed for some web browsers to display SVG documents, most browsers either already have or are currently developing native support for SVG. Furthermore, SVG can be extended to any suitable device of any size (for instance PDAs or mobile phones) without loss of information. The Mobile SVG version 1.1 is such an extension of SVG for small wireless devices (Brinkhoff 2003). This opens up an enormous potential for SVG to be involved in wireless location-based services.

Recent applications of SVG techniques have proven its potential for high quality, interactive vector Web maps. K6bben (2003), for example, studied the scalability, interactivity, and animation of SVG, coupled with GML. Analyzing adaptive zooming in Web cartography, Cecconi and Galanda (2002) argued that the best data format to meet the interactive and dynamic requirements of Web mapping is the W3C standard SVG. More recent studies continue to appreciate the virtue of SVG in interactive and dynamic web mapping. Jenny and colleagues (2006), for instance, compared four available techniques for high-quality rendition of interactive maps online. They were Macromedia Flash, SVG, Java 2D, and VRML (Virtual Reality Modeling Language). The comparison favored SVG over the other three due to advantages related to required programming efforts, response time for interactive requests, and interoperability.

General framework for Interoperable Internet Mapping

In this section, we present a general framework for Internet GIS mapping services to be implemented with open source resources. We aim for an interoperable web-based mapping service that can handle spatial data of any type, including both raster and vector data. As discussed earlier, SVG has proven to be most suitable for rendering vector data. This framework uses SVG as the standard format for vector data visualization. Raster images can be rendered directly in all standard image files formats such as GIF, JPEG, and PNG.

However, while being eminently suitable for rendering graphics, SVG is not suitable for storing, managing, or delivering data over the network. Fortunately, there is another XML-based language, the Geography Markup Language (GML), a modeling language and open-soruce interchange format for geographic data, developed and recommended by OGC to serve that purpose. SVG and GML are complementary to each other and could work in synergy. GML, which is designed to encode geographical features for the storage, transport (over the Internet), and retrieval of geographic information (OGC 2004), takes care of the geometry of geographic features and their properties. The latest version, GML 3, has extended its ability even further. It can represent simple 2D and 3D features, as well as temporal properties, dynamic features, and coverages. Very importantly, GML can encode the spatial coordinate reference system, which is an essential component of spatial data.

The fundamental model schemes used by GML are drawn from international standard ISO 19,100 series and the OpenGIS Abstract Specification (OGC 2007b). It is also possible to extend from the basic model to create the so-called application schemata with application-specific constructions in GML. The transport of GML in a distributed system is efficient and effective because the GML-coded spatial data contain self-descriptive elements that are marked by feature tags. The receiving party will be able to interpret the information faithfully. The advent of GML provides a mechanism for creating and sharing application schemata and a common data model. The most important value of GML lies in the fact that it is an open standard, so it has the ability to integrate all forms of geographic information, which promotes interoperability among diverse data models and feature representations. Many recent studies have proven the advantage and potential of GML, or XML in general, in web-based GIS applications (Chang and Park 2006; Kim et al. 2005). For detailed technical review of advances in GML, readers are referred to Lu et al. (2007).

Based on the above discussion, GML and SVG play significant roles in the conceptual framework as shown in Figure 1.The fundamental objective of the framework is achieved through the employment of a GML-based interoperable database for the management, transport, and retrieval of vector and raster spatial data, and the employment of SVG for vector data rendering. The framework has four conceptual layers of functions. At the layer of Database Server, a GML-based spatial database is maintained. Vector or raster data of various formats can be converted (encoded) into GML. As data collection and georeferencing is beyond the scope of this paper, we assume that all GML-based datasets and raster datasets have already been georeferenced before entering the database layer. Because GML is a nonproprietary international standard, many GIS software vendors have already built, or are working on, import/export functions in their software so that their proprietary GIS data can be directly converted from or into GML data. For example, the latest release of ArcGIS 9.2 is already able to do so through its Data Interoperability Extension.


Because GML is a special type of XML, a text-based language, a wide range of alternative approaches can be used for the management of GML data. Lu et al. (2007) surveyed some of the most common ways to manage GML databases, including storing GML data in relational Database Management Systems (DBMS), Object Oriented DBMS, Object Relational DBMS, XML databases, or simply GML files. When employing a DBMS that supports conversion at the SQL level, the conversion between other formats and GML can be made very flexible and query-oriented. One open source example of such a database management system is the PostgreSQL with PostGIS extension.

Although a GML-based database takes both vector and raster data, most raster images can be directly rendered on web browsers. Indeed, as discussed in previous sections, the technology of map display on the Internet originated with, and is still most mature in, raster image display. Therefore, our framework leaves the option open for some or all raster data to be stored in their original formats in standalone databases. This option makes particular sense when the developed mapping service takes advantage of raster data located in other distributed databases. For example, the TerraServer-USA (terraserver-usa. com) hosts terabytes of aerial imagery and scanned topographic maps that are obtained from the U.S. Geological Survey (USGS). Although the data are openly available, it is not necessary to duplicate the huge quantity of data to other Internet services. Instead, the framework can treat the data as standalone raster database and access the data remotely through their open source server WMS. Figure 1 has such a raster database and a WMS server in a dotted box to indicate that it is an optional addition to the framework.

The web service server layer extracts necessary data from GML-based spatial databases through the WFS server (for the GML database) or through the WMS server (if a standalone raster database is used). The WFS and WMS servers both have nonproprietary, standard-based OGC implementation specifications and, therefore, can contribute to interoperability. The WFS is one of the most powerful data services of OGC web service. Based on the HTTP protocol, WFS allows a client to retrieve and manipulate GML encoded geospatial data. Using GML for data exchange, WFS provides interoperability between heterogeneous systems in the form of data operations, such as data query and update, and can function on data from different GIS systems in different data formats. WMS is especially useful for Internet GIS visualization of raster images. A WMS produces map-like images of geo-referenced data according to clients' requests. Generally, a WMS server produces maps rendered in raster (image) formats such as JPEG, GIF, or PNG; it rarely maps in vector formats. The simple WMS has a powerful visualization interface that is particularly suitable for spatial raster data, and it is appropriate for handling data from standalone raster database on either the hosting server or external servers. Our framework includes WMS as an optional addition if a standalone raster database is to be used.

The web application server layer mediates between users' requests and the WFS server's responses. As discussed before, vector data that are delivered to the client computer need to be in the SVG format for vector graphics rendering. The web application server includes data conversion components to transfer, for instance, the retrieved vector data in GML to an SVG document. The process of interpreting GML symbols, such as line style or area filling, is called map styling (Lu et al. 2007). Based on eXtensible Stylesheet Language Transformations (XSLT), the conversion from a GML to a SVG document can be done through an XSLT style sheet (Peng and Zhang 2004). The XSL is a specification developed by the W3C for transforming XML documents in a standard way. Several open source programs are available to develop Web application servers using XSLT utilize open source, and include, for instance, the Internet Information Services (IIS) and the open source Apache HTTP Server.

Figure 2 shows the flow of data in response to a user request if the Internet mapping service is developed according to the proposed framework. The diagram includes the optional external raster data by the WMS server. The numbers in the diagram indicate the sequence of steps in the process.

At Step 1, a user on the client side initiates a request for spatial search. All the remaining steps will take place on the server side. The request texts are converted to XML encoding, as per the OGC filter encoding specification (OGC 2005), so that the server can understand the search request. Step 2 interprets the request and identifies the needed data. The information is then sent to the corresponding web service server, which in turn responds to it by retrieving and providing the necessary data for Step 3. The WFS server distinguishes between base layers and query layers in Step 4 according to the specific request from the user query. The query layers contain the type of features that the client is searching for. For example, if a user wants to find roads with a specific name, the road layer is a query layer. Only qualified vector data can be query layers. The base layers provide other general spatial information such as boundaries or imagery data of the area of interest. Once loaded, each base layer is presented as a whole. A base layer can be in either a vector or raster format, but only vector data can serve as query layers. For the query layers, the server extracts features that meet search conditions as requested by the client (known as filtering process). The retrieved data will be either kept in its original GML documents (for the base layers) or reassembled into a new GML document after feature extraction (for the query layers). The base layer from the external raster database through WMS server will be in its original raster formats. For mapping purposes, all retrieved GML-based data are converted to SVG format at Step 5 and then transmitted to the client side for display at Step 6. As discussed before, the SVG map is specifically targeted for vector data rendering. Raster data visualization quality will remain unchanged with or without SVG.

Prototyping and Case Studies

To test the feasibility and functionalities of the proposed framework, we implemented two prototypes of Internet mapping applications. Albeit in a simple way, the prototypes are intended to showcase the capability of displaying raster and vector data seamlessly in one mapping application. The prototypes also show that data can be retrieved from the hosting or an external open source server. They also show a few advanced mapping possibilities such as animation and on-the-fly location-based query, in addition to other standard visualization functions. Although the prototypes use specific software, it is not our intention to promote or evaluate one software package. There are many open source software programs that could achieve the same goal.


The two prototypes are openly accessible at They are designed for PC computers with average technical specifications and a fast Internet connection. The server runs on a PC with Windows XP as the operating system. Open source programs are installed at all layers of the conceptual framework depicted in Figure 1 .They are the Apache HTTP server installed for the web application server; MapServer, which is used as the WFS server for the web service server; and PostgreSQL for the Database server. We also demonstrated the optional addition to retrieve data from external raster databases through an external WMS server.

The installation of the open source programs was straightforward when the pre-complied Windows version MS4Wwas downloaded and used. The basic MS4W package installs a preconfigured Web Server environment that includes Apache HTTP server, PHP, MapServer CGI, and others. The Apache HTTP server is used to publish web pages so that client users can get web pages when URLs are sent to the server. The Hypertext Processor (PHP), an open source server-side scripting language, is used to interpret and process the server-side and HTML-embedded scripting language. The PHP provides a way to put instructions into HTML files to create dynamic content. It was used to process controls, user's inputs, and to invoke and pass parameters to applications with embedded PHP structured codes inside HTML tags.

At the database layer, our prototypes are designed to show that both project-specific spatial databases and external spatial databases from other open source Internet GIS services can be directly used. To test it for data on external servers, Prototype I includes a layer that dynamically retrieves data from the WMS service of Terraserver-USA, which is a joint project by USGS, Microsoft, and HP to provide free image-based (raster) spatial data over the Internet.

We also created a project-specific GML-based spatial database including vector and raster data. This database is managed by the open source software PostgreSQL with the PostGIS extension. PostgreSQL is an advanced open source Object-Relational Database Management System. PostGIS is an extension of it to support the handling of spatial data. With the PostGIS extension, PostgreSQL works like ESRI's Spatial Database Engine (SDE) and Oracle's spatial extension. Following the OGC's Simple Feature Specification for SQL (OGC 1999), PostGIS makes geometry representation possible using the GML-enabling WKT/WKB data formats. There is even a tool for conversion from ESRI Shapefiles to WKT/WKB data format for the database. Therefore, it provides ideal backend database management to allow for GML data access through the WFS interface.

For map rendering, GML data have to be converted to SVG documents. We used the translation program, known as XSLT processors, to automate this conversion. There are three popular XSLT processors, including libxslt, Xalan (Apache 2006) and Saxon (Kay 2006). In the prototypes, we used the libxslt XSLT processor simply because it is embedded in the installed open source web server. This conversion process requires two basic pieces of information, the source GML document and the XSL style sheet (Tsoulos et al. 2003). An XSL stylesheet describes how the content of an XML document should be presented using the formatting vocabulary. We could use it to transform XML documents into other formats, here specifically SVG format.

Finally, the generated SVG maps and retrieved raster datasets were visualized on the client side web browsers. Raster (image) display is commonplace for all web browsers. It is far from easy for vector graphics rendering. Some web browsers (e.g., Mozilla Firefox) already support SVG viewing, while other browsers (e.g., Internet Explorer) do not support it natively. Even the SVG-supporting web browsers still currently only have limited viewing capabilities (although the situation is improving quickly), which may not satisfy the high demand of graphic interactions for mapping services. Mozilla's Firefox, for example, is an SVG-supporting browser but it lacks the ability to support pan and zoom functions. The company is working on extending the viewing capabilities of Firefox in an ongoing Mozilla SVG project.

Regardless of the web browsers in use, our prototypes require users (i.e., client side computers) to enhance their SVG viewing capability by installing an SVG viewer such as the Adobe SVG Viewer plug-in. For the future, it is expected that SVG will be supported natively in most web browsers and thus no plug-in will be necessary. As evidence supporting this expectation, Adobe announced at its official web site that the company will discontinue its SVG viewer plug-in after Jan 1 2009 for the following reasons: 1) there are a number of other third-party SVG viewer implementations in the marketplace, including native support for SVG in many web browsers; and 2) the SVG language and its adoption in the marketplace have both matured to the point where it is no longer necessary for Adobe to provide an SVG viewer.

Prototype I: Athens Map

With this prototype, we demonstrate capability in dynamic mapping of both vector and raster data, which are either stored on the project's hosting server or retrieved from external servers. There are three function areas. Centered in the window is the map viewer. A map navigator is located to the right of the map viewer, which is where the users can conduct zooming, panning, resizing and other map navigation manipulations. A user can use the vertical navigation bar on the right of the map navigator to control the spatial extent of the map area. The transparent light blue rectangle in the map navigator shows the relative location of the mapped area. The rectangle shrinks or enlarges as the user moves the slider up or down the vertical bar. Users can also use the buttons below the navigator to pan the mapped area by selecting and holding the light blue area, and then move it freely in the navigator window. Figure 3 shows the interface of this prototype.


In the interface as illustrated in Figure 3, below the map navigator is a list of base layers whose visibility can be turned on or off by checking or un-checking the layer selection boxes. As the raster images overlap each other, only the top one is visible even if others are checked. Therefore, be sure to uncheck the other two if you want a specific raster data to be visible. There are four base layers and a query layer in the prototype, shown in the list of layers in Table 1. The base layers are the city boundary in vector format, and three raster data of shaded relief, the Aster remote sensing image, and the digital orthophoto Quadrangles (DOQQ) images of Athens respectively. The shaded relief of Athens area was produced in Erdas Imagine using DEM data. Similarly, the ASTER image of the area was georeferenced in Erdas Imagine. Both raster datasets are in JPEG format and stored in the GML database, which is managed on the server by the PostgreSQL DBMS. The spatial database has been built and stored on the prototype server side. The fourth layer, however, is a WMS map layer retrieved from an external server. This layer was added to demonstrate the capability of the framework to utilize raster data on other servers. In this particular case, we use a WMS data layer retrieved from the Terraserver-USA, an open Internet spatial database serving geospatial imagery data. The function sends a new request each time after the user zooms or pans the map so that a new DOQQ layer can be retrieved from the Terraserver-USA. Beside the four base layers, there is a query layer that is a vector dataset of Athens airports. This is a shapefile downloaded from Georgia GIS Data Clearinghouse, and then converted into the GML-based spatial database. The conversion was accomplished by using the shp2pgsql utility included as part of the PostGIS extension. Table 1 shows all data layers used in the prototype.

To the left of the map viewer is a map query area where an interactive web form is in place. The web form is processed by PHP server-side scripts. Figure 4a shows the form. A user may request features in specific layers given certain criteria (or filters) in the text box. Previously Figure 3 shows all features are fetched from the airports query layer. There are two, shown as red dots on the map. If a search condition is entered in the filter box when a request is sent, only features in the query layer that meet the criteria will be fetched from the WFS server and be converted to SVG documents for display. In this prototype, we have data allowing a simple example to demonstrate the feasibility. A user can choose (highlight) the airports as the query layer, and enter the criteria as

"MGRADDR (the address field) equals 1010 NEN EPPS RD." For the convenience of PHP scripting, the above example criterion is coded as:
 "< Filter> < PropertyIsEqualTo >
 < PropertyName > MGRADDR</Property
 Name> <Literal> 1010 BEN EPPS RD</
 Literal > </rtyIsEqualTo > </Filter>"

The query result in Figure 4b has only one airport, which is a subset of all airports shown in Figure (3). The prototype aims to demonstrate feasibility only. For future implementation, the query interface needs to be improved to make it more user friendly.


Prototype II: University of Georgia (UGA) Campus

The second prototype was developed to demonstrate a few more advanced spatial visualization and spatial query capabilities within the proposed framework. Figure 5 shows a screenshot of this prototype. Here, we focused on functions of animation, interactive graphical selection, as well as another way of spatial querying attributes. The functions that have already been shown in the first prototype are not implemented again here. It is noted that if a user is using the Mozilla Firefox as the web browser and did not install an SVG viewer for Firefox, the user may not be able to see the animation and some of the query options. An SVG viewer is required for either Firefox or IE to observe all functions of this prototype. There are three vector layers in this prototype, the UGA property layer, the buildings layer, and the road names layer. To the left, there is a Menu area where users can choose the layer(s) to view in the map area. To display a specific layer, one can choose a necessary layer in the drop down list and then hit the Request button.


To demonstrate the animation ability of the SVG format, an animation will automatically start along a travel path between a home address and a campus work address immediately when the campus prototype is launched in the browser. The animation can start again whenever the user chooses and displays "All Layers." The code to initiate an animation in an SVG viewer follows a pattern similar to the one below:
 <rect width="40" height="40" fill="red"> <animateMotion
 path="[Mx.sub.1],[y.sub.1][absolute value of [x.sub.2],[y.sub.2]]
 ..., ....|[x.sub.n],[y.sub.n]" begin="0s" dur="10s" fill="freeze"/>

The line of code defines the symbol of the motion icon with < rect > tag, the path of animation with <animateMotion path ... >, and the timing with values of beginning time and duration.

The second visualization feature demonstrated in this prototype is the interactive selection and highlighting of vector features. We illustrate this with the Buildings layer. Whenever the cursor moves over a building polygon, this feature will be highlighted in a different color to notify the user that the feature is selected. The prototype is also able to show the capability of spatial query by attribute or location with vector data. To query a feature by location, a user can simply click on it. An information window will pop up displaying the attributes of the selected feature. Currently, only the building polygons have associated attributes (name) in the test GML database. A user can test it by clicking on any building in the map viewer. It should be noted that this capability is generally applicable to any vector data layer. Furthermore, it is possible to query a feature by its attribute. For instance, a client can search for a road using its road name. To do so, the user first choose Road Names layer from the Layers drop down list, then right-click in the map area. In the pop-up window with a list of options, choose the Find menu and search by a street name. If the street name is found, it will be highlighted in blue, otherwise an error message will pop up, reporting the name is not found.

These two prototypes each illustrate a selection of powerful capabilities within the proposed framework. A real implementation can, of course, choose all or any of the necessary capabilities in the application.


Focusing on the syntactic interoperability of Internet mapping services, this study aimed to analyze the issue, review the relevant technology, and discuss possible solutions. We conclude that a standard-based approach using open source resources is a viable solution. The study contributes to the existing body of research in several aspects. First, we focus on the integration of raster and vector data of various formats seamlessly in one interoperable system. We also demonstrated the feasibility of rendering high-quality, interactive vector maps along with raster images on local or external servers. Secondly, the paper provides an analysis of the important role of international standards and their relationship to interoperability. The proposed architecture is based on standards, and two prototypes of the framework were implemented using open source tools.

Many current services use proprietary data and/or vendor software for implementation. This hampers the interoperability of the system. Standard-based approaches are, by definition, open to data of various sources. The use of open standards and open source development tools makes implementing the framework inexpensive. It was not our intention to create new software or simply to develop an application. Instead, we hope the discussion can shed light on the implication of advances in technology and standardization to interoperable Internet GIS mapping. Furthermore, we hope that the systematic review of Internet mapping techniques presented in this paper and the detailed discussion of interoperability issue as it pertains to web GIS, will advance the development of new data models (vector and raster) and data formats.

Conclusion and Future Research

The study proves that advanced interoperable Internet GIS mapping applications can be implemented using open source resources with techniques conforming to open standards. A framework was proposed which uses GML, SVG, and WFS techniques to store, manipulate, and display both raster and vector spatial data interactively on the Internet. This framework also shows the capability to publish external raster data, such as remotely sensed images or scanned maps, located on other Internet WMS services. Because GML, SVG, WFS, and WMS are all international industry standards, the greatest strength of the proposed framework lies in the promised syntactic interoperability. Furthermore, we proved that there are sufficiently powerful open source tools to develop high-quality, interoperable Internet mapping services. Standard viewing functions such as zooming, panning can be realized for both raster and vector data. In addition, more advanced capabilities such as animation, highlighting, and querying are available for vector data to produce high quality interactive, dynamic, and animated maps.

We suggest that a viable future direction for Internet GIS services is to make integrative use of standard-based data and technology with open source resources. The approach can make accessing geographic services much easier and less expensive.. Increased access to GIS analysis tools and data will certainly help policy makers and the public to make better-informed decisions. In the future, such approaches, combined with a wide range of scientific and business models, could provide GIS professionals and non-technical users with convenient tools to perform complex analyses and build what-if scenarios on the web. Therefore, such open and standard-based Internet GIS solutions would allow GIS technology to play an even greater role in our society.

Several further research needs were identified in the study. The GML and SVG standards are all relatively new, which means more research and experiments are necessary to explore their potential. Below are some possible research issues to start the exploration. First, data compression of GML and SVG documents is an immediate research need in order to cut down on transmission volumes over the Internet.

Second, it would be useful to develop computer programs to parse SVG files more efficiently. For example, Google's KML (a proprietary counterpart of SVG) and its compressed format KMZ are new data formats used for vector data rendering on Google Maps and some other Web GIS services,. Although they are proprietary data formats and, thus, not qualified as possible candidates of standard-based solutions, the increasing interest in KML does shed light on the potential of SVG as well. KML and SVG are both XML-based data formats. Google Earth can parse KML very efficiently with a standalone program, which makes KML a very attractive format. Once SVG can be parsed as efficiently as KML, its popularity will soar.

Third, more sophisticated client-side SVG user interfaces and data processing tools should be developed to assist users as they interact with GML data and conduct spatial analysis. Finally, as GML is currently not a secure option for copyrighted project or sensitive data because GML data are text-based and thus are easy to understand, edit, and reuse in different software environments, research on this security issue may be needed.


We wish to thank the journal editor Dr. Elisabeth Nelson and the three anonymous reviewers for their constructive comments, suggestions, and useful information on the subject matter. The paper would not come to its final version without their valuable inputs. However, the authors are fully responsible to all mistakes and shortcomings of the paper. We are also grateful to Drs. Marguerite Madden and Tommy Jordan for sharing their data and providing feedback when the project was carried out.


Anderson, G., and R. M. Sanchez. 2003. Building web-based spatial information solutions around open specifications and Open Source software. Transactions in GIS 7(4): 447-66.

Antoniou, B., and L. Tsoulos. 2006. The potential of XML encoding in geomatics converting raster images to XML and SVG. Computers and Geosciences. 32(2): 184-94.

Apache. 2006, Xalan-Java Version 2.7.0, available at, last accessed on January 22, 2006.

Babu, M.N. 2003. Implementing Internet GIS with Java based Client/Server environment, Conference Proceedings of Map Asia 2003.

Bishr, Y. 1998. Overcoming the semantic and other barriers to GIS interoperability. International Journal of Geographical Information Science 12(4): 299-314.

Brinkhoff, T. 2003. A portable SVG viewer on mobile devices for supporting geographic applications. In: Proceedings 6th AGILE Conference on Geographic Information Science. 87-96.

Carrara, P., G. Fresta, and A. Rampini. 2003. Banco: An SVG-based approach to create web sites for the management of remote sensing, spatial and non-spatial data. Internal Journal of Remote Sensing 24(20): 3903-15.

Cecconi, A., and M. Galanda. 2002. Adaptive zooming in web cartography. Computer Graphics Forum 21(4): 787-99.

Chang, Y.S., and H.D. Park. 2006. XML web service-based development model for Internet GIS applications. International Journal of Geographical Information Science 20(4): 371-99.

Devogele, T., C. Parent, and S. Spaccapietra. 1998. On spatial database integration. International Journal of Geographical Information Science 12(4): 335-52.

Dunfey, R.I., B.M. Gittings, and J.K. Batcheller. 2006. Towards an open architecture for vector GIS. Computers & Geosciences 32(10): 1720-32.

Gong, J.Y., N.C. Chen, X.Y. Zhu, and X. Zhang. 2003, Design and implementation of a distributed largescale spatial database system based on J2EE. In: Proceedings of Society of Photo-Optical Instrumentation Engineers Vol. 4886.

Huang, B., and H. Lin. 2002. A Java/CGI approach to developing a geographic virtual reality toolkit on the Internet. Computers & Geosciences 28: 13-9.

Huang, B., and M.E Worboys. 2001. Dynamic modeling and visualization on the Internet. Transactions in GIS 5(2): 131-9.

Jenny, B., A. Terribilini, H. Jenny, R. Gogu, L. Hurni, and V. Dietrich. 2006. Modular web-based Atlas Information Systems. Cartographica 41(3): 247-56.

Kay, M.H. Saxon. 2006. The XSLT and XQuery Processor Version 8.6.1. [http://saxon.sourceforge. net/;,accessed on January 22, 2006].

Kim, M., M. Kim, E. Lee, and I. Joo. 2005. Web services framework for geo-spatial services. In: Web And Wireless Geographical Information Systems 1-13.

Kobben, B. 2003. SVG and the TOP10NL project. In: Proceedings of the EuroSDR workshop: Visualization and Rendering, ITC Enschede, 22-24 January 2003.

Kumar, N. 2000. Automation and democratization of cartography: An example of a mapping system at CEM, University of Durham. The Cartographic Journal 37(1): 65-77.

Laurini, R. 1998. Spatial multi-database topological continuity and indexing: A step towards seamless GIS data interoperability. International Journal of

Geographical Information Science 12(4): 373-402. Lee, B.L., Y.C. Kim, and J.I. Yun. 1998. Web interface for GIS in agriculture. Paper by the Asian Federation for Information Technology in Agriculture. pp. 107-11.

Lime, S., and E Koormann. 2007. MapServer CGI reference, version 4.6,. [http://mapserver.gis.umn. edu/doc46/cgi-reference.html; accessed on May 14, 2007.]

Lu, C.T., R.E Dos Santos, L.N. Sripada, and Y.E Kou. 2007. Advances in GML for geospatial applications. GeoInformatica 11 (1): 131-57.

Morrison, J.L. 1994. The paradigm shift in cartography: The use of electronic technology, digital spatial data, and future needs. In: R. C. Healey and T.C. Waugh (eds), Advances in GIS research. Proceedings SDN 94, Sixth International Symposiumn on Spatial Data Handling. Edinburgh, Scotland. Vol. 1, pp. 1-15.

Neumann, A.,, and A. Winter. 2001. Time for SVG--Towards high quality interactive web-maps. In: Proceedings of the 20th International Cartographic Conferenc,. Beijing, China. pp. 2349-62.

OGC. 1999. OpenGIS: Simple features specification for SQL. [ index.php?artifact_id=829,; accessed May 11, 2007.]

OGC. 2004. OpenGIS Geography Markup Language (GML) encoding specification 3.1.1. [http://portal.; accessed March 15, 2008.]

OGC. 2005. OpenGIS filter encoding implementation specification. [ ?artifact_id=8340; accessed May 11, 2007.]

OGC. 2007a. OpenGIS specifications (standards). [; accessed May 11, 2007.]

OGC.2007b. OpenGIS Geography Markup Language (GML) encoding standard 3.2.1. [http://www.; accessed March, 15, 2008.]

Peng, Z.R. 1999. An assessment framework of the development strategies of Internet GIS. Environment and Planning. B, Planning & Design 26: 117-32.

Peng, Z.R., and M.S. Tsou. 2003. Internet GIS: Distributed geographic information services for the Internet and wireless networks. New York, New York: John Wiley & Sons.

Peng, Z.R., and C. Zhang. 2004. The roles of Geography Markup Language (GML), scalable vector graphics (SVG), and Web Feature Service (WFS) specifications in the development of Internet Geographic Information Systems (GIS). Journal of Geographical Systems 6(2): 95-116.

Zhang, C., Z.R. Peng, W. Li, and M.J. Day. 2003. GML-based interoperable geographic databases. Cartography 32(2): 1-15.

Xiaobai Yao, University of Georgia, GG Bldg, Department of Geography, Athens, Georgia 30602. Ph: 706-583-0326; Fax 706-542-2388 204. E-mail: <>. Liang Zou, Google Inc., 1600 Amphitheatre Parkway, Mountain View, California 94043. Ph: 650-253-4717; Fax: 650-253-8494. E-mail: < >.
Table 1. All data layers in prototype I

 Name Type Database Server Rendering

City boundary Vector GML-based WFS Vector
 Airport Vector GML-based WFS Vector
Shaded relief Raster GML-based WFS Raster
 Aster image Raster GML-based WFS Raster
 DOGG image External WMS
 (on Raster Raster (external) Raster
COPYRIGHT 2008 Cartography and Geographic Information Society, Inc.
No portion of this article can be reproduced without the express written permission from the copyright holder.
Copyright 2008 Gale, Cengage Learning. All rights reserved.

Article Details
Printer friendly Cite/link Email Feedback
Author:Yao, Xiaobai; Zou, Liang
Publication:Cartography and Geographic Information Science
Article Type:Technical report
Geographic Code:1USA
Date:Oct 1, 2008
Previous Article:An assessment of the effects of cell size on AGNPS modeling of watershed runoff.
Next Article:Foreword.

Related Articles
W3C progress. (Internet Focus News & Products).
The roles of Web Feature and Web Map Services in real-time geospatial data sharing for time-critical applications.
Open source resources.
Open source--it's everywhere, even on Intelink Central.
Concordia Project Advances Interoperability Among Digital Identity Management Solutions.
Bandit Project's Cross-Platform Card Selector Gives Users Control of Their Internet Identities. Releases Open Source Code for Driving Security and Privacy Into Web Services and Web 2.0 Applications.
Loopt Now Available in the Android Market.

Terms of use | Copyright © 2017 Farlex, Inc. | Feedback | For webmasters