Sprache wählen / Select language ![]()
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.
Fig. 2: A clipping from the GUEK 300 in the original ArcMap project

Fig. 3: Program "ArcGIS-map to SLD Converter"
![]()

Fig. 4: Clipping of a program-generated SLD from the GUEK 300
![]()

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

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
The 64 bit app:
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.