A Simple Web Mapping Solution for Complex Spatial Databases
SVG Open/Carto.Net 2002 Developer's Conference
Abstract Submission
Brandon Plewe
Department of Geography
Brigham Young University
Provo, Utah, USA 84602-5462
801-378-4161
brandon_plewe@byu.edu
Faculty at BYU are currently in the early stages of developing the Atlas
of Utah's Past. We have debated at length the relative merits
of the print and Internet media for this atlas: Printed atlases have a high
degree of quality and scholarly merit, while the Internet has potential for
cheaper distribution and interactive capabilities. Therefore, both
will probably be produced in some form, if the quality is consistent, and
if both products can be produced from the same source data with minimal redundancy,
and of course if both can be produced at minimal cost. Finding an Internet
system that meets these criteria has been difficult, but we have recently
discovered a very attractive solution.
There are a variety of reasons for integrating GIS, maps, and the Internet,
as explained by Plewe (1997) and Kraak and Brown (2001), but generally the
purpose is to distribute geographic information (and tools for using it)
to a wider audience than would otherwise have access. The phenomenal
growth in this (Web Mapping, Internet GIS, DGI, or whatever it may be termed)
market (Plewe 2000) attests to the importance of this goal. Unfortunately,
there are still many obstacles standing in the way of this technology reaching
its full potential. Four obstacles stand out:
- Specialized web mapping software (such as ESRI's ArcIMS or Intergraph's
GeoMedia Web Map) is still complex to install, manage, and use, despite
some recent improvements. They are designed to be implemented by Internet
software engineers, not by GIS professionals (and certainly not by the cartographer
who wants to put one or two maps online).
- This software is extremely expensive. It is generally priced
according to the principle that the vendor is giving you unlimited access
to their technology, rather than just a single seat.
- The capabilities for retrieving data are rather weak, which is surprising
since most vendors are data-oriented. Most of the software is based
on the traditional GIS model of static layers that are displayed in their
entirety on top of one another. Many current GIS applications have complex
data models, and the collection of features to be displayed is often based
on a multi-table query; many of the "most powerful" web GIS platforms cannot
do this without extensive programming.
- The cartographic quality of the maps produced by these services is
almost universally poor. They have only minimal capabilities for labeling,
symbology, and interactivity. A cartographer cannot produce a professional
map online that rivals paper products. There are certainly inherent
limitations in the medium, but much more could be done within these constraints.
Our solution overcomes all four of these obstacles, at least in certain
situations. It is based on the Scalable Vector Graphics (SVG) standard,
the plethora of tools for working with the Extensible Markup Language (XML),
and the spatial capabilities of current relational databases.
One reason for this conference is that the Scalable Vector Graphics (SVG)
standard has the potential to solve many of these problems, especially the
last, but also the first and second. It enables a cartographer to produce
an Internet-based map, with basic interactive capabilities (pan and zoom),
from commercial graphics software with no programming at all. This map can
be of a quality that rivals print products. However, something more sophisticated
is still needed for advanced interactive cartography and GIS applications.
The capabilities of SVG are not lost on the Web GIS software companies (mostly
third-party developers rather than traditional GIS vendors), some of whom
offer SVG as an output format. However, these solutions still have problems
in all four areas. One reason why these "middleware" software packages
exist is because map generation has always required extensive spatial processing,
as well as the ability to write to several binary graphics formats such as
GIF and JPEG.
However, SVG solves this problem as well. Because it is XML, it can
be created very easily. One of the powerful capabilities of XML is
that its structure enables translation between different XML schemae, usually
using the Extensible Stylesheet Language Translation (XSLT) standard. Thus,
any XML content can be converted into an SVG map without any specialized
graphics or GIS tools. Since XSLT processors are bundled into many
commercial web servers and good translators are available for free, a dynamic
web mapping server could be created very inexpensively if one could get geospatial
data in an XML format.
One way to do this is to generate GIS data in the Geography Markup Language
(GML), a standard developed by the OpenGIS Consortium (OGC). The OGC
is currently developing a specification for the Web Feature Server (WFS),
middleware that extracts data from a spatial database and delivers it as
GML. However, the early middleware software based on the WFS proposal
is still complex, expensive, and short on capabilities. Is there a
better way?
Our Geo-Historical Information System, a temporal GIS, is currently implemented
in Oracle 9i Spatial, a very robust platform for storing and managing complex
geographic data models. Oracle Spatial provides data types for spatial
objects, and extensions to SQL for doing spatial queries, performing basic
spatial analysis, and retrieving spatial data. In recent years, Oracle has
positioned itself squarely in the Internet services market, including among
other things a variety of tools for leveraging XML. One of these tools
is a ready-made Internet service (no special installation or configuration
required) called XSQL. Rather than a lot of custom server-side programming,
XSQL uses simple XML templates to transform HTTP requests into SQL queries,
and transmit the results as generic XML, or any other XML schema by connecting
to Oracle's XSLT processor (also built into Oracle).
Thus, we are able to create simple web pages that take one or two client-provided
parameters, plug them into spatiotemporal SQL queries, and return SVG maps
(using custom CSS stylesheets for the symbology). A full dynamic, interactive,
database-driven mapping website can be created with no more programming than
some Javascript for the interface. Of course, Oracle itself is probably
to expensive for many sites to use this as a ground-up solution, but if a
site already has their data in Oracle, this is an essentially free way to
deliver maps across the Internet with a quality that rivals print.
References
Kraak, Menno-Jan, Brown, Allan (2001) Web Cartography: Developments
and Prospects. London: Taylor & Francis.
Plewe, Brandon (1997) GIS Online: Information Retrieval, Mapping, and
the Internat. Santa Fe, NM: Onword Press.
Plewe, Brandon (2000) Profiling the DGI Market: Just How Big is It?
GeoInfo Systems, V.10#2, 58.