Interactive Topographic Web-Maps Using SVG

Andreas Neumann
Institute of Cartography, ETH Zurich
ETH Hoenggerberg, CH-8093 Zurich
Fax: ++41-1-6331153
neumann@karto.baug.ethz.ch
http://www.karto.ethz.ch/neumann/

Abstract

SVG is a language for describing two-dimensional graphics in XML, defined by a W3C working group. It is designed to be interactive (event-based) and allows scripting. SVG is also well integrateable with other XML-based W3C standards, such as SMIL, XSL/CSS, XLINK, XPTR, XML-NS and others. The SMIL-integration for every element, attribute and property of the graphics to be animated. Because SVG is text/xml-based it can be easily used for data-driven visualization, such as interactive cartography.

The presentation shows how to present interactive topographic maps with high graphical quality using open standards and open-source software. Because SVG graphics can be structured and linked to attribute data it allows the display of corresponding attribute-data with mouse-over effects, querying of geographical objects, user-defined symbolization and personalization. As to enhanced topographic functionality interactive topographic maps allow to interactively define hillshading-parameters along with various standard dtm-analysis, such as extracting profiles, calculating exposition, aspect and visibility. Map calculation may be done either on the server- or on the client-side, depending on computing power, data licensing issues and responsivenes.

The presentation also deals with optimization techniques to keep filesizes small and enhance data maintenance. Optimization includes the use of centralized symbol libraries, re-useable objects, style-sheets, path-optimizations and XML-entities. Topographic databases tend to get large. Webbased mapping systems therefore usually send a subset of the whole data. Because SVG is a text-based format any sql-compatible database along with the developers favourite scripting or programming language will do the job. A solution for open-source databases, such as MySQL or Postgres will be presented.