Specialized SVG Applications for Cadastral Departments

kvwmap - an OpenSource WebGIS solution

Keywords: WebGIS, application development

Dipl.-Ing. Hauke Christoph
Software Engineer
Chair of Geodesy and Geoinformatics, University of Rostock
Justus-von-Liebig Weg 6
18059 Rostock
Germany
+49 381 498 2165
+49 381 498 2188
hauke.christoph[a]uni-rostock.de

Biography

Hauke Christoph is a research assistant at the University of Rostock (Chair of Geodesy and Geoinformatics). His current research topics arise from working on an InternetGIS solution for cadastral departments as the basis for the development of specialized SVG applications. He took his degree (diploma) at the University of Rostock in 2001. Within the intervening period he also worked as a research assistant for the wwr-project at the University of Luebeck (Chair of Computer Engineering), where he was dealing with XML-based multimedia training systems. Among his key qualifications he lists a deep knowledge of the main languages and technologies related to web development.


Abstract


The concept of a cost effective InternetGIS solution (based on open source software) for communes and counties as the basis for the development of specialized SVG applications is being described here. The potential of such applications is explained resting upon a WebGIS solution [kvwmap] developed for the administration in a county of Germany. Interactive task oriented applications are implemented in respect of the county's needs. The technical solutions have been realised using common scripting languages, open standards (Scalable Vector Graphics [SVG] of the World Wide Web Consortium [W3C], Open GIS Consortium [OGC]) and open source software (kvwmap, WAMP architecture and UMN Map Server [UMN]).


Table of Contents


1. Introduction
2. Motivation
3. Mapping components
4. Extensions using professional application concepts
     4.1 Examples for specialized applications
          4.1.1 Survey of geothermal energy potential in upper soilregions
          4.1.2 Verifying the level of sealing of urban surfaces
5. Technical realisation and effort
     5.1 Demands on frontend (HTML, SVG)
     5.2 Client-side demands (SVG)
6. Implementation
     6.1 Client/Server conception
     6.2 Scalable Vector Graphics (SVG)
     6.3 Hypertext Preprocessor (PHP)
7. Conclusions
Appendix 1. References
     Appendix 1.1 Bibliographic references
     Appendix 1.2 Internet references

1. Introduction

Market monitoring in Germany indicates that the usage of Geographic Information Systems (GIS) in smaller municipalities and counties will increase to a large extent. This is due to the fact that internet technologies are offering advanced solutions, not only for eGovernment, but also for geoinformation delivery.

With InternetGIS (also called WebGIS, OnlineGIS) geo and property datasets can be provided to a wide range of users. Internet technology can be used in small local area networks (Intranet), in large world-wide information systems (Internet) as well as within the mobile range with Location-Based-Services. A classification of what constitutes an InternetGIS is hardly possible, since the technical realisations were made by different free committees and product vendors. Thus the quality and functionality of individual applications differ considerably. Internet technology might be adopted in such way that nearly all functionalities of a stand-alone GIS are delivered to the user. At the same time the access to different datasets from different data providers and products is possible via the Internet.

A large part of the data in public administration of municipalities and counties has spatial relations. This includes also text data such as addresses or kilometer mileage of streets beside the pure coordinates in maps like cadastral or topographic maps.

2. Motivation

Due to the general availability, Internet technology is gaining increased importance also for public administrations. The employment of Internet technology represents a more profitable solution. The Internet is based on a client-server architecture. This offers the possibility that the data can be administered and maintained where it is being produced. Additionally the main part of processing logic can remain on the server, so that the user of the data does not have to worry about complex hard- and software. The user accesses the data using a standard web browser only. The information is ready to be used immediately. By such an approach a lot of time can be saved in relation to software-training, maintenance of data and general costs of hard- and software. In contrast to this, there is an increased responsibility for the data provider. Taking over the role of a service provider, they must deliver and publish the data in an easy-to-use form based on the requirements of the users.

By using Open Source solutions the chances of participating in developments exist. These solutions often fit better to the needs of users, because these users are often developers of system components themselves. Apart from the smaller capital outlays, the high stability and security as well as the large flexibility of Open Source code plays an important role. Therefore Open Source solutions find also increasing acceptance and a rising popularity. From the end-user's perspective, there is little distinction between OpenSource and commercial products. It looks slightly different on the side of a provider of InternetGIS services such as a cadastral offices. It is to be clearly presupposed that the staff in charge need to be technically experienced. The staff not only has to guarantee the system's availability in the given manner, but also to develop and expand the system. With the appropriate understanding of the role as a geo chief information manager and a service provider, the land registration offices become able to deliver full geo service packages.

3. Mapping components

In the first phase of the realisation of this InternetGIS for the county administration, all information which is intended to be published via Internet needs to be converted. This matters for the ALK (ALK - Automatisierte Liegenschaftskarte) and ALB (ALB - Automatisierte Liegenschaftsbuch) and other data sets on the county level. The ALK data (describing the real estate situation in form of a map), which is captured with the GIS DAVID, is stored in a data base at the cadastral office of the county. Thus it was easier to convert the data into the well-known ESRI shape format, which is supported by the UMN Map Server. The ALB data are maintained and stored in the computing centre at the federal level of Mecklenburg-Western Pomerania. Usually they are delivered online to the user based on his individual query. The ALB data (describing the real estate situation in tabular form) had been transferred from the WLDG file into a database format. This concept needed modifications because in future ALK and ALB will merge to one common GIS – called ALKIS (Automatisiertes Liegenschaftskataster-Informationssystem, Automated real estate information system). Because of that there is the need to store and deliver data in one place. We realized this by using a copy of the original data, both for the graphic and the attribute data. This process of preparing data sets for publishing via the Internet has been done at the administration offices, it is partly automated and can be done on a periodical base dependent on the updating cycle and users' demands [Bill, Korduan].

The solution achieved gives different users access to the common database, both on the county level and the municipality level. Additional datasets have also been integrated: e.g., at the county level environmental data and at the municipality level zoning plans. Many municipality zoning plans are still available in an analogue format only. The map server delivers these maps as georeferenced raster data sets. In addition we integrated digital orthophotos captured with our low-cost aerial flight system [PFIFF].

4. Extensions using professional application concepts

Mapping Services mainly allow zoom, pan and query functions. Only read-statements will be sent to the database and conflicts do not occur when data has been shared by more than one user. Professional applications must additionally facilitate access to write, insert and drop datasets. Interactive forms must be delivered to the client and each input has to be checked against the permission settings for the user and the authority level.

uebersicht-info.png

Figure 1: Embedded SVG client for visualizing and handling maps provided by mapserver technologies [enlarge]

karteninfo.png

Figure 2: Additional map information within an alert window

The district of Bad Doberan expressed the requirement to be able to deal with certain internal procedures using the existing InternetGIS application kvwmap.

By fulfilling this need we passed the requirement of providing an information system and started developing additional interactive applications for editing and digitalizing objects and appending them to existing databases.

To provide professional applications they have to be extensible. To reach the extensibility needed we use object oriented and case driven programming. All requests to the application are handled in a centralized index file. At the beginning of this file all necessary files are included. In a single configuration file, config.php, additional constant values and parameters for database connection can be assigned.

In the startup script, start.php, classes for the authority position, the user and the graphical user interface are initialized. During the initialization of the classes authority position and user the default and last modified values are read from the database in accordance to the user-id given by the session of the web server. After the initialization of classes the application switches to the use case which was requested by the client. The string which calls the use case is concatenated from the variables sent by forms with the method post or get. The variable go is assigned to define the use case which is to be fulfilled. The variable go_plus is assigned to add sub cases. For example with go=land parcel the kind of use case is defined and with go_plus=delete or go_plus=insert the option that was selected in the form before sending the request. All other form values, e.g. the identifier of the parcel or whatever is to be checked before, are stored in a global array and are delivered to the user interface class. The use cases are called in a switch order. Every use case calls functions of the user interface class. For this reason all parameters of the running application are available and we bridge the stateless internet protocol from one request to another during runtime of the user session. The permission is checked before starting each access to the database.

Through this program architecture it is easy to include output formats such as Scalable Vector Graphics (SVG). All parameters needed to create interactive SVG source code dynamically (server-side) are requested from the database and calculated during run time. This is the preferred way of presenting our GIS data. The developed SVG application also displaced a former Java-Applet which did not reach the reliability criteria required.

nutzung.png

Figure 3: Embedded SVG client for visualizing and handling maps dealing with land usage [enlarge]

The layout components are assembled dynamically for the specific use case. It can be a map, calculated with the UMN-MapServer CGI program included in a HTML page and visualised through an embedded SVG file or a document for data representation in PDF format.

All of these output formats such as the interactive SVG applications are components of the OpenSource WebGIS solution named kvwmap. kvwmap is a Sourceforge [SF.net] project since the first of May 2005 and was also available under the GNU General Public License [GPL] before that time. It focusses on supporting administrative tasks for German municipalities and counties.

4.1 Examples for specialized applications

4.1.1 Survey of geothermal energy potential in upper soilregions

One example of the district's internal procedures is the survey of geothermal energy potential in upper soilregions (near surface). The district's targets are the development of

geothermie.png

Figure 4: Embedded SVG client for dispositioning of geothermal potential drilling processes [enlarge]

In this context the effects of accruing heat deprivation in neighboring soil regions are of special interest to the district's strategy of planning.

4.1.2 Verifying the level of sealing of urban surfaces

Another example of the district's internal procedures is to verify the level of sealing of urban surfaces. Providing the sealed surface area including a preassigned factor is a legal duty for the county. This has to be done in order to calculate taxes dealing with the maintenance of rain runoffs (i.e. wastewater).

versiegelung.png

Figure 5: Embedded SVG client for capturing sealed urban surfaces [enlarge]

5. Technical realisation and effort

The implementation of the InternetGIS took place on the basis of the UMN Map Server. The user interface was realised by using PHP to generate a combined HTML and SVG front end.

clientside.png

Figure 6: Visualisation of architecture [enlarge]

5.1 Demands on frontend (HTML, SVG)

The InternetGIS solution shall provide the following basic functions:

5.2 Client-side demands (SVG)

The demands on the client-side concerning map presentation and handling are as follows:

nav-buttons.PNG

Figure 7: Toolbar with buttons

6. Implementation

The implementation is based on a client/server architecture which separates the client (graphical user interface) from the server. The client sends requests to the server, to which the server responds.

structure.png

Figure 8: Visualisation of conception [enlarge]

6.1 Client/Server conception

The front end (thin client-side) of the system consists of a SVG based Graphical User Interface (GUI) connected to the server-side application using ECMA/Javascript. The client-side functionality is constrained to track user events, send event driven queries to the server and render instructions returned by the server.

The server-side application generates rendering instructions, performs all processing logic, and stores key information in combined PostgreSQL (PostGIS) and MySQL databases [database references].

6.2 Scalable Vector Graphics (SVG)

Mapping represents a perfect application of SVG, because maps are in fact vector layered representations. The SVG syntax allows identical layering concepts to those used in GIS. Since maps are graphics that depict our environment, there is a great need for maps to be both informative and interactive. SVG provides this interaction with very high quality output capability, directly on the web.

6.3 Hypertext Preprocessor (PHP)

PHP on the other hand provides an attractive solution for server-side generated SVG applications due to its performance, extensibility and convenient coding vocabulary. Additionally the language has a number of components which provide exceptional support for DOM-based XML generation.

Using this programming approach we implemented selected web based SVG applications i.e. GIS tools for digitizing, handling and editing geo coded data on a map.

In this particular case, among others, two examples are

7. Conclusions

In respect of the complexity of geographical data (projection, coordinate systems etc.), the present specification of SVG does not contain all the features demanded by GIS. Nevertheless, the current specification is adequate to build interactive web applications. Such applications have been designed to meet the needs of the district of Bad Doberan (Germany) and will be widely used both within the district administration and by institutions affiliated with it. Further applications based on other requirements will be implemented on demand.

Appendix 1. References

Bibliographic and internet references

Appendix 1.1 Bibliographic references

Bill, R., Korduan, P., 2004: 'Internet-GIS Development for Municipalities and Counties Based on Open Source Software'. In: ISPRS ; Internationals Society for Photogrammetry and Remote Sensing(Hrsg.): Geo-Imagery Bridging Continents : Proceedings of Commission VI. 1. Istanbul : ISPRS, 141 - 146

Grenzdörffer, G., 2004: 'Digital Low-Cost Remote Sensing with PFIFF, the Integrated Digital Remote Sensing System'. In: XX ISRPS Congress 12.7.-23.7.2004, Istanbul: Proceedings – Vol. XXXV, Part B., Commission I., 235 - 239

Bill, R., 1999a: 'Grundlagen der Geo-Informationssysteme', Band 1, Hardware, Software und Daten, Wichmann Verlag, Heidelberg.

Bill, R., 1999b: 'Grundlagen der Geo-Informationssysteme', Band 2, Analysen, Anwendungen und neue Entwicklungen, Wichmann Verlag, Heidelberg

Appendix 1.2 Internet references

GI-Service - InternetGIS and geoinformatics service system - http://www.geoinformatik.uni-rostock.de/

Landkreis Bad Doberan - principal supporter of kvwmap - http://www.lk-dbr.de/

SourceForge.net is the world's largest OpenSource software development website - http://sourceforge.net/

kvwmap - OpenSource WebGIS-Client and -Server solution for eGovernment-purposes - http://sourceforge.net/projects/kvwmap/

ALB-WLDGE to SQL converter - http://sourceforge.net/projects/wldge2sql/

Polylux - OpenSource slide generator/editor - http://sourceforge.net/projects/polylux/

The GNU General Public License (GNU GPL or simply GPL) is a free software license - http://www.gnu.org/licenses/gpl.html

Scalable Vector Graphics - SVG is a language for describing two-dimensional graphics and graphical applications in XML - http://www.w3.org/Graphics/SVG/

The World Wide Web Consortium (W3C) develops interoperable technologies (specifications, guidelines, software, and tools) to lead the Web to its full potential. - http://www.w3.org/

The Open Geospatial Consortium, Inc. (OGC) is a non-profit, international, voluntary consensus standards organization that is leading the development of standards for geospatial and location based services. - http://www.opengeospatial.org/

UMN MapServer - OpenSource development environment for constructing spatially enabled internet-web applications - http://mapserver.gis.umn.edu/

Database references:

XHTML rendition made possible by SchemaSoft's Document Interpreter™ technology.