Deutsch Sprache wählen / Select language English


A tool for reading out styling information from ArcMap® and converting into Styled Layer Descriptor-Files (SLD) of OGC

 


Initial situation

At present many systems exist from various producers to be able to realize Internet map-services. Nearly all of these systems are based on proprietary configurations for setting up parameters like:
layer name, geodata-url, database-name, etc. But not only basic map-service configurations, even the symbolization-prescriptions of the service are usually made in proprietary configuration-files of the map-server. But this kind of symbolizing geodata is:

OGC (Open Geospatial Consortium) provides with its SLD-specification a new standard for web map-service (WMS) symbolization. SLD is an enhancement of the OGC WMS-standard to offer a widespread spectrum in web based symbolization of geodata.
For web map-server, that offers OGC-conformous services, the SLD specification provides better facilities in the following relationships:

 

Objectives

Problem: How can somebody create a symbolization-prescription without spending any amount of work and time?

Solution: You have to use existing symbolization-prescriptions!

The bulk of any existing geodata is already saved as a completely ready symbolized desktop GIS-project. So the work which was once invested to symbolize (and of course classify) the geodata should be saved and utilized to allocate the data a broader audience via the Internet.

That means: an automatism must be created that is able to investigate a desktop GIS-project by its symbolization (and further parameters like layer names, classes etc.) and to write out the gathered information in SLD.
ArcGIS ® from ESRI was chosen as base for the developed program, because this (professional-) desktop GIS-system is the most common GIS-system not only in the German-speaking area (
Germany, Austria, Switzerland) but in the whole world. Thereby, a large number of users are able to reap the benefits of this tool called “ArcGIS-map to SLD Converter” (short: ArcMap2SLD).

Indeed SLD is still a young technology and systematic tests on how good SLD is supported by conventional map servers have been missing. Therefore subsequent to the generation of the SLD they have to be tested on usual map servers to make a statement about the availability of WMS-SLD relating to usual map servers.
For these tests the geo-scientific general map of Hessen 1:300.000 (Geologische Uebersichtskarte - shortly GUEK 300) was used as reference-project, because this map with its several layers and around 150 classes each layer (nearly every class has a complex multilayer-symbol) represents a good practical test for the developed program.

 

Resolutions:

1. The Program "ArcGIS-map to SLD Converter"

Workflow:
The program so called "ArcGIS-map to SLD Converter" analyses an ArcGIS-Project with respect to its symbolisation and assembles the SLD for the OGC-WMS from the gathered data. Thereby the program is designed as "One Button-Push"-solution, i.e. the user hasn’t to make complicated settings because the program decides all necessary settings internally (of course there are some possible optional settings).
The program is started parallel to a running ArcMap-session and after specifying the location where to store the SLD the application takes up employment. After a few seconds (up to a few minutes – depending on the size and complexity of the available project) the application deposits an SLD-file which mirrors the symbolisation of the available ArcGIS-project to the specified destination.  This is done according to the state of the art of SLD.
The SLD can now be integrated into a web mapping service through the request-URL (the service must of course be based on the same data as the investigated project!). As a result, this service now presents the same classes and their symbolisation as the original ArcMap-project! For further information about invoking SLD into your WMS (or WFS) refer to the official OGC SLD-specification.

Techniques:
The Program was developed with Visual Basic.NET.
It is modularly constructed and therefore appropriately flexible and extensive.
The analysis of the ArcGIS-project was realized with the ArcObjects-Framework of ESRI. The Output of the analysed ArcGIS-data is ruled with XPath- and XSLT-technology.

Implementation:
ArcGIS-map to SLD Converter
supports the most important classification-modes:

Marker-, Line- and Polygon-features are supported. Implemented are:

Additionally for polygon-features hatchings are implemented (as crosshatching). So-called Multilayer-Symbols from ArcMap are also supported and are transcribed in SLD as two-layer-symbols (some map-server do only support two-layer-symbols).

The program posses a self-control algorithm. It is able to automatically verify the validity of the generated SLD if you integrate schema-files for validation from OGC to check the generated SLD against the files.

Projects based on the data of ArcSDE, Personal Geodatabases and Shapefiles are supported.

Following you will see the program workflow with its most important participating components:

Fig. 1: Workflow of the program "ArcGIS-map to SLD Converter" (without validation of SLD)

 

2. The SLD-tests on the ArcIMS and UMN map-server

The software was tested with both a commercial and an open source map-server.
As a prevalent and very common substitute of its particular category the ArcIMS from ESRI and the UMN map-server were selected for the tests. Both systems support SLD.
As an open source product, the UMN map-server is well versed in nearly all options which are presently served by SLD, while the ArcIMS from ESRI in the tested Version 9.0 offers explicitly less SLD-functionality

Figure 2 shows a representative clipping of the GUEK 300 in its original ArcMap-project. You can see simple polygon symbols as well as multilayer symbols with marker-fillings and hatchings.

Original ArcMap 

Fig. 2: A clipping from the GUEK 300 in the original ArcMap project

 

ArcGIS-map 2 SLD Converter

Fig. 3: Program "ArcGIS-map to SLD Converter"

SLD

Fig. 4: Clipping of a program-generated SLD from the GUEK 300

Karte UMN

Fig. 5: Clipping of the GUEK 300, generated with the program-engendered SLD on the UMN map-server

 

ArcIMS-Karte

Fig. 6: Clipping of the GUEK 300, generated with the program-engendered SLD on the ArcIMS

The maps from figure 5 and 6 were both generated with the same SLD.

 

Related Works:

The ArcGIS map 2 SLD converter is able to convert ArcGIS projects from version 9.0 upwards. Since september 2006 lat/lon, Bonn in Germany provides a java-api that is able to convert former ESRI projects (until ArcView 3.3). The api is called AVL2SLD and for conversion it needs a project that is styled with a legend file (*.avl).

 


 


 

The program „ArcGIS-map to SLD Converter“ can be downloaded here.
New! The program supports group layers since release 1.1.0!
The recent changes are friendly supported by AGI Rijkswaterstaat, Delft.

New: the program has become shortly open source. Please visit:

http://wald.intevation.org/projects/arcmap2sld/

The  latest release  (1.3.0) supports ArcMap 10.0.

Many thanks for the generous support to Benjamin Lewis from the geographic faculty of the university of Harvard, Cambridge.

 

To download the installation files just click the icon below. For the recent changes please refer to the readme.txt

Download ArcMap2SLDConverter

The 64 bit app:

Download ArcMap2SLDConverter 64 bit

The schema-files for validation of your SLD can be downloaded here (please notice the 1st_readme.txt):

The Diploma Thesis (german laguage) "Auomatisierte Generierung von Styled Layer Descriptor-Dateien aus ESRI ArcGIS-Projekten..." can be downloaded here:

 

The development of the program will be continued. For bug-reporting or any helpful suggestions send an E-Mail to the developer:

Dipl.-Ing. (FH) Albrecht Weiser (Institute for Spatial Information and Surveying Technology, i3mainz); E-Mail: aweiser@gmx.de


 

The program was developed in the context of the diploma thesis of Albrecht Weiser. The thesis was attended by Prof. Dr. Alexander Zipf (Institute for Spatial Information and Surveying Technology, i3mainz).

The diploma thesis was awarded by "Runder Tisch GIS e.V." (which is a sponsoring development association for geoinformatics of the Technical University of Munich) with the 3rd grade promotional award of geoinformatics 2006.