Modeling SVG and GML data for the Cartographic Generalization and the Multiple Representation on the web.

E. Gbei, I. Cosma, B. Moulin, N. Jabeur
Laval University, Department of Computer Sciences and Software Engineering
{ Edouard.gbei, ioana-mihaela.cosma, Bernard.Moulin, Nafaa.Jabeur, }


Web mapping, SVG, GML, XML, geodata modeling, multiple representation, cartographic generalization


One of the main bottlenecks when trying to use cartographic generalization for real time map production is the difficulty to handle large amounts of geo-spatial data required by the generalization process. In most cases the large volumes of raster, vector data and other types of data to be processed, displayed and to be transmitted are prohibitive because of limited network speed, bandwidth, incompatibility of data formats and lack of efficient data structures in wired and wireless environments.

The aim of this paper is to address several issues related to the manipulation of spatial data structure for real time cartographic generalization. We propose a conceptual model of GML/SVG data based on the exploitation of Scalable Vector Graphics (SVG) features as well as Geographic Markup Language (GML) data structures for mapping applications in wired and wireless environment along with the use of the cartographic generalization and multiple representations. The implementation issues of this GML/SVG model for cartographic applications address successfully different topics such as the map on demand, data storage and data transfer in the context of the web and wireless system. We use tourism application to illustrate the use of this model

1. Introduction

The Scalable Vector Graphics (SVG) is an emerging two-dimensional vector graphics standard. The Geographic Markup Language (GML) provides a vendor neutral as well as implementation neutral format suited for distribution of geodata over a network. Developed respectively by W3C organization and Open GIS Consortium (OGC), the SVG and GML are XML dialects that add flexibility to mobile cartography and provide a dynamic way of presenting spatial data to a mobile user based on his context and his profile. SVG and GML are suited for context sensitive mapping. They are fully compatible with XML and its children XSL, CSS, XLink, XPointer, SMIL, XHTML.

Moreover their native capabilities can be extended in order to implement certain cartographic generalization operators. For more complex cases, extensions using XSLT, Java or other object oriented languages can be used (Letho et al. 2001). The combined SVG and GML technology can be used adequately in order to perform generalization operations and multiple representations as an alternative to traditional geometric algorithms. In the GiModig project (a recent European project which addresses real-time generalization of spatial data suited to mobile devices with different display resolutions [Sarjokoski et al. 2002]), the authors emphasised the need for research on real-time generalization and small-display cartography as well as methods to transfer vector-formatted data to wireless devices using the standards GML and SVG. We believe that the efficient use of these technologies for mapping applications requires an efficient data structure that can support both multiple representation and cartographic generalization.

The paper contains three main sections. First, we present an overview of SVG/GML technologies and their capabilities for on-the fly map production. Then we discuss and propose a multiple representation data modelling approach using SVG/GML standard, the pre-computed pictographic database approach is exposed. The paper ends with a summary and an overview of further investigations.

2. SVG for web and wireless mapping

Two main approaches are used when delivering mapping products in wireless or web environments: the Java applet technology and the approach that consists in generating map images on the server site. Both approaches are very useful and bring more flexibility for users when interacting with spatial data. However, several technical issues are not well addressed: compatibility with browsers, with firewalls and data transfer from the server every time the map is requested. The use of SVG technology prevents the mobile cartography applications from dealing with these technical problems. Moreover, SVG brings its vector graphic potential to mapping applications. Typical application of small display cartography includes location-based services, positioning services, geo-marketing services, emergency services etc. Due to lots of technical issues involved in the implementation of these services such as restricted CPU, small display and low resolution of the mobile device and limited user’s interaction capabilities, the use of light vector graphic is of particular interest for effective data manipulation.

3. Visualization and processing of geo-database within the SVG/GML environment

Basically, we can distinguish three approaches to visualize and manipulate geo-spatial data within Internet and wireless environments: conversion of all data in the HTML/SVG file directly, on-demand dynamic conversions from the source-data file to SVG/HTML using a script, and building a GML/XML database for multi-purpose uses. Table 1 summarizes these approaches along with their advantages and drawbacks.

Advantages Drawbacks
GISdata =>SVG =>Map - Huge volume of data- Dynamic conversion- Use of XSLT - Format incompatibility- Problem of interoperability- Need for a conversion tool
SVGdata =>Map - Support Document Object Model(DOM)- Embedded in HTML- Customized SVG structure- Mobile application - Only for small geographic areas
GMLdata =>SVG =>Map - More elaborated approach- Handle large datasets- Separate presentation and content- More descriptive and flexible- Mobile application - Very large datasets- Need a Viewer or conversion to SVG for presentation purpose

Table 1: Geo-spatial data presentation within SVG/GML technology.

4. Modeling SVG/GML for SIGERT systems

4.1. Introduction

The Research Center for Geomatics and its industry partners (le Ministere de Resources Naturelles du Quebec, Defence Research and Development Canada – Valcartier, CITS Sherbrooke), launched in 2002 the GEMURE project (Generalization and Multiple Representation for on-Demand Map Production and Delivery) a project devoted to on–demand cartographic information delivery, based on cartographic generalization and multiple representation. We are developing an Intelligent System for Tourism based on Cartographic Generalization and Multiple Representation, SIGERT, as one ofthe sub-objectives of this project.
This system aims at providing services supporting tourist and recreational activities. Hence, it should allow tourists, professionals and businessmen to use tourist services. An adapted cartographic support and other information should be delivered to any type of users depending on their preferences, their contexts, their locations and the characteristics of their terminals. SIGERT is a typically multi-modal mobile cartography application, the success of which depends on how a range of technical, non technical issues as well as issues of methodological nature are considered:

Hardware related issues

- Constraints on handheld consumer devices (displays resolution; weather resistant; readable in daylight and at darkness; memory)
- Positioning (GPS, cellular network) and orienteering techniques

Data transfer issues

- Broadband wireless internet connection
- Interoperability
- Component architecture

Data Modelling and manipulation issues

- Data Modelling (spatial search and retrieval functions, optimization)
- Real-time data handling (visualisation functions, processing.)

There is an increasing number of research projects and international professional associations working on how to adjust new technologies according to mobile GIS requirements. Current technology supports applications like Location-Based Services (LBS), mobile GIS and car navigation. We believe that the technology certainly advances faster than the methodologies. Therefore, we need new and enhanced methods for handling spatial data in mobile environment in a more user-centered way. Thus, in this paper we focus our efforts on data modeling and manipulation issues and stress the need to provide methods for the real time handling of large data sets, faster transmittal and rendering techniques of spatial data.

4.2. Functional schema of SIGERT

The services provided by SIGERT are wired and wireless services. Many steps are necessary before being able to generate a specific map (Figure 1). When the server receives a map service request from a user, it determines the region to be displayed and the scale of the map to be generated according to the user’s parameters (context, profile, terminal characteristics, etc.). Then, the server extracts from the appropriate database the geographic information contained in the region to be displayed and puts this information in a GML file. Then, a spatial multi-agent system manipulates the retrieved data in order to generate the map required by the user’s request.

Figure 1: Mobile mapping scenario in SIGERT

An agent is a software program which is able to act autonomously and to cooperate with other agents in order to manipulate the spatial objects and create a legible map (Wooldrigde & Jenning, 1995). An agent is assigned to each relevant cartographic object. The final map results from a spatial competition between the different agents. During the competition some geographic objects may disappear. The remaining objects will be positioned and handled by the agents in order to generate a legible map that comply with the user’s preferences. The agents manipulate the selected cartographic objects in a workspace (these manipulations provide results that are similar to application of cartographic generalization operators such as displacement, aggregation, smoothing, etc. and use of multiple representations). When an acceptable solution is found an SVG file is generated and then displayed on the user’s terminal (Jabeur et al. 2003).
In a typical mobile mapping scenario, when users require cartographic information, efficient generalization algorithms can be processed on-the-fly and used to refine the nearest level of detail (LOD) to the requested map scale. Multiple representation is used in order to compensate for the lack of efficiency of certain generalization algorithms.

4.3. Proposed data model for SIGERT

An important challenge for the development of an intelligent system in tourism is to take into account the locations of the user and of the objects that are relevant to his request. (Zipf 2002). An efficient SVG/GML model must be able to offer the relevant geodata in a location-aware way. Taking into account the research on spatial data modeling issues in the earlier described European project (GiMoDig-2001), we adopted the flexibility of SVG and GML standard to address the problem of Multi-Representation Database (MRDB). Furthermore we added a multi-agent system to handle the generalization process based on GML/SVG database file.
Several approaches to construct the MRDB for cartographic generalization research have been proposed recently (Badard 1999, Vangenot et al. 2002, Hampe et al. 2002). These approaches are considered as alternatives to the complex algorithmic generalization process. In order to avoid the complexity of generalization algorithms, these approaches operate on pre-computed datasets with different levels of detail (LoD’s) in a multiple representation database. The MRDB are necessary for geo-web applications that need a short time of response. They are application specific, based on the reorganization of the geographic database and strongly scale dependant. Therefore, they do not have the flexibility of a data model based on SVG, GML technology.

Building a robust SVG/GML data model for cartographic generalization requires to tackle several issues such as correspondence between abstractions, correspondence between objects and the matching process between objects. Hence we emphasize the need:
1) To have a scalable, robust and efficient SVG/GML database as a cartographic support to the application. Therefore, the following questions have to be investigated in the process of GML/SVG data modeling:
- How can GML/SVG data be efficiently accessed in a database ?
- What is the suitable data structure to support query of GML/SVG document?
- How to organize this data structure to support inter-file links?
- How can intra-document and inter-document links be efficiently retrieved ?

2) Take advantage of the new OpenGIS Consortium and W3C standards:
As it is the case for the new specifications of SVG, the current specification of GML (GML3) adds more features to GML2, enabling the mechanisms of multiple representation. The XLink and XPointer allow to link features in one GML file to those in another XML compatible file through the use of hyperlinks. Hence, these two technologies are compatible and can be integrated in order to successfully perform the creation of cartographic multiple representations. As a consequence, a MRDB can be created by constructing a new, even virtual, dataset by setting up links between two or more primary GML data stores. Therefore, both SVG and GML features can be combined to successfully achieve data storing, transfer, transformation and presentation in order to model a geographic data structure for multiple representation and cartographic generalization. The above stated SVG/GML data model is being implemented in our tourism system.

Figure 2: UML Diagram for multiple representation

Figure 2 illustrates the UML diagram describing the structure that we proposed to support multiple representations for geographic objects. At the top of the hierarchy we have the Region which is a collection of geographic objects (GeoObject). Each GeoObject is composed of three elements: Semantics, Graphics and Geometry, all inheriting from the GML AbstractFeature class. These three classes are aggregations of one or more elements describing each facet. The Category class describes the semantic categories that apply to the geographic object and the Symbol class describes different graphics used to draw or symbolize the geographic object. The Geometry class is an aggregation of different geometries that the geographic object can have. Figure 3 and Figure 4 are the implementation of the above UML multiple representation diagram in GML technology.

Figure 3: Portions of the region.xsd file, a XML schema file implementing the UML model

Figure 4: An instance GML document describing multiple representations for one geographic object, document conforming to the described application schema

4.4. Building a value added database for mobile cartography

In a successful, adaptive, context-aware mobility support system for tourism, it is crucial to provide a user with cartographic information that respect the user’s needs, preferences and social or cultural background. Ideally, generalization operations are implemented to get the cartographic background. Due to the limitation of computing resources in mobile platforms, pre-computed datasets are required for a mobile cartographic applications.
Several strategies and methods for designing pre-computed datasets were recently investigated by generalization researchers [Weibel 1999, Devogele et al. 2002, Bedard et al. 2002]. However, they can not be applied directly for mobile cartography.
Our data is organized in two different but complementary datasets:

1) Initial datasets
The initial datasets are mainly obtained from different geo-databases in proprietary GIS shape file formats (i.e ESRI conform shape file, MapInfo data, etc.).They consist of hydrographic networks, national road networks, vegetation data and miscellaneous features(parks, buildings etc.)
The core task at this stage is to deal with the integration, inspection, reorganization and conversion of this data in SVG and GML files. Once the data is in the GML or SVG format, we apply an XSL transformation in order to translate them into the structure proposed in Figure 2.

Window A

Windows A and B show a
visualization of a sample of an initial
geo-database in Intergraph(A),
Geomedia software and in Internet
Explorer as SVG format(B) .

Window B

The initial data in windows A and B are being enriched with additional pictographic database in order to add more expressive informations to the application. For the SIGERT system, the pictographic database contains different information related to touristic attractions.

2) The pre-computed GML and SVG pictographic database

This database is composed of pre-designed pictograms that, at different levels of detail, are the expression of the semantic, geometric and graphic multiplicities of any tourism- related geographic object. We call tourism-related geographic objects, objects such as hotels, historical sites, gardens, museums, shopping malls, sport halls etc.

The pre-computed pictograms are stored in three layers. These layers correspond to the levels of detail that can be used to represent a geographic object in order to comply with the user’s preferences. We have currently identified and built more than 210 pictograms
that represent tourist geographic objects. Figure 5 illustrates the organization of the extern pictographic database.

Figure 5: Organizing the extern pictographic database: at each level of detail , any pictogram representing a geographic object will have its corresponding multiple representation (semantic, geometric, graphic)

For each representation domain and depending on the level of detail, user’s profiles, scale and cultural context the following pictogram views can be adopted(figure. 6 a,b, c)

Figure 6: a) Multiplicity of representation – semantic domain, b) Multiplicity of representation – geometric domain, c) Multiplicity of representation – graphic domain

The use of a pictographic database enriches the initial datasets and adds more information relevant to the application. As the pictographic database is stored in external GML or SVG files, it can be customized to comply with any mobile cartography application.

5. Conclusion and further Work

SVG and GML are not a replacement for all the capabilities of a full GIS system. Rather, they represent a new way to present quality geographic information to any user accessing services through the web or wireless. This requires additional efforts in adjusting their native capability and applicability.

In this paper, features of the new standards GML, SVG are used to model the geo-spatial data in order to satisfy the cartographic requirements of a complex Tourism Information Systems. The proposed data modeling approach solves not only the interoperability problems of geo-spatial data, but brings a new approach for addressing the real time map production problem. This approach combines multiple representations and cartographic generalization in order to deliver cartographic background in wired and wireless environments on user’s demand. Furthermore, we augment the SVG and GML mapping capabilities by a spatial multi-agent system that deals with spatial operations using a competition approach. The concept and ideas showed in this paper are in development stage. The proposed data model has been tested and is now stable. This multiple representation data model can be adapted and applied to several mobile cartographic applications in which the response time is crucial. We used the pictographic database to add more value to the cartographic background. In the near future the intra- and extra- GML/SVG files have to be populated, the links between objects and their representations have to be established automatically. Moreover we are developing the application of spatial agent system to handle efficiently our proposed SVG and GML data model. We are considering the possibility that our agents will be able to handle the SVG files in order to make a better-personalized service. In this case, a supervisor agent is necessary to check the quality of the displayed map and to control the changes in user’s preferences.


Badard, T (1999): On the automatic retrieval of updates in geographic databases based on geographic data matching tools, in : proceedings of the 19th International Cartographic Conference of the ICA, Ottawa, Canada.
Bedard. Y & Bernier E. (2002): Supporting multiple representation with spatial Databases views management and the concept of VUEL, ISPRS/ICA Joint Workshop on Multi-scale Representation of spatial Data, Ottawa, Canada,2002.
Hampe M. & M Sester M. (2002): Real time integration and generalization of spatial data for mobile applications. 10th International Symposium on Spatial Data Handling, Ottawa, Canada, 2002.Jabeur N., Moulin B.& Gbei E.(2003): Une approche par competition d’agents pour la resolution de l’encombrement spatial lors de la generalisation automatique des cartes, submitted to JFSMA-2003, TUNIS
Lehto, L. & T. Kilpelainen (2001): Generalizing XML-Encoded Spatial Data On The
Web. In: Proceedings of the The 20th International Cartographic Conference, Beijing, China, August, 6 - 10, 2001,Vol.4: 2390-2396.
OpenGIS (2002): OpenGIS(R) Geography Markup Language (GML) Implementation Specification at (accessed 05/25/2003)
Sarjakoski et al.(2002): A variable scale map for small- display cartography 10th International Symposium on Spatial Data Handling, Ottawa, Canada, 2002.Vangenot C., Parent C. & Spaccapietra S. (2002): Modelling and manipulating multiple representation of spatial data, 10th International Symposium on Spatial Data Handling, Ottawa, Canada, 2002.
Weibel, R. and Dutton, G. (1999): Generalizing Spatial Data and Dealing with Multiple
Representations. In: Longley, P, Goodchild, M.F., Maguire, D.J. and Rhind, D.W. (eds.). Geographical Information Systems: Principles, Techniques, Management and Applications, Second Edition. Cambridge, GeoInformation International, 125-155.
Wooldridge M. and Jennings N.R.: Intelligent Agents : Theory and Practice, The
Knowledge Engineering Review, 10 (2), pp. 115-152, 1995.
Zipf, A. (2002): Location aware mobility support for tourists, Trends & Controversies. in: IEEE Intelligent Systems. Journal. Special Issue on "Intelligent Systems for Tourism". November/December 2002. 57-59.