GeoCat Bridge is an extension for ArcGIS Desktop and runs within ArcMap. This blogpost aims to explain what GeoCat Bridge does in more detail. In short; GeoCat Bridge enables you to publish the layers from a ArcMap map project (MXD) to GeoServer or MapServer as OGC Web Services (WMS/WFS/WCS) and publish the metadata of layers to GeoNetwork catalog.
So what does this mean? Let’s say you have a map project saved in ArcMap and you want to convert this map project to GeoServer, so you can view the map through the WMS service of your GeoServer. If you want to do this manually, you will have to:
- Convert the ArcMap symbology to an SLD and configure these styles in the server
- Export the datasets of the map and uploads these exported datasets in the server
- Configure the layers using the styles and the datasets
If you are using GeoCat Bridge the above steps are taken care of by Bridge, simply by the click of a button.
Besides publishing the maps to GeoServer or MapServer, Bridge can also publish the metadata of your datasets to a geospatial catalog, such as GeoNetwork (Bridge also supports generic CSW implementations, such as PyCSW). When publishing metadata to a catalog Bridge will convert the ArcGIS metadata to ISO19139 format and upload it to the catalog. Bridge supports a number of different metadata profiles; generic ISO19139, Dutch Profile version 1.3.1 and INSPIRE.
When publishing both metadata to a catalog and layers to a map server, Bridge will update the metadata to include in the metadata the URL of the map service the layer is published in. So when searching for the dataset in your catalog you can also find the map service. At the same time Bridge also adds the URL of the metadata to the layer in the map server. So the capabilities document will contain the URL of the metadata for that layer.
Online publishing scenarios
So Bridge exports the datasets of the layers in the MXD and uploads the exported datasets to the map server (either MapServer of GeoServer). But we still do not know how Bridge does this , because Bridge supports a number of different data publishing scenario’s. Four publishing scenarios are supported by Bridge at the moment, these are explained below.
There are two options to store uploaded datasets on the server:
- PostGIS (only GeoServer)
The default publishing scenario is to upload the datasets over HTTP as files to the server and store the datasets as file on the server. The file format used to upload the files is GeoPackage when this is supported by the GeoServer instance (see the notes in the manual about this), or when this has been enabled for the MapServer connection.
When using GeoServer, another option is to upload the datasets as files to server and then store the datasets in PostGIS. This can be done by configuring your GeoServer connection in Bridge to use a PostGIS datastore. When your GeoServer supports GeoPackage, Bridge will use the GeoPackage format to upload the dataset to the server. GeoServer then will take care of storing the dataset in PostGIS. Only vector layers will be saved in PostGIS, raster layers will be published as GeoTIFF layers.
Uploading files over HTTP can be slow and with big datasets you can run into problems. A solution in this case can be to use a direct PostGIS connection. Requirement for this is that Bridge can make a direct connection to the Postgres/PostGIS database. In order to do this you will need to create a PostGIS connection in Bridge. Then from your GeoServer or MapServer connection you can choose “Direct PostGIS” and then select the desired PostGIS connection.
When you publish with direct PostGIS connection, Bridge will export the data and store it directly in the PostGIS database. Raster layers will be published as GeoTIFF in the map server.
Reference data (GeoServer only)
When using OracleSpatial as a datasource for your layers in your MXD you can decide to not export the data but to reference the data on your map server instead. The advantage of this approach is that all data stays in the same place, so there are no duplication/synchronization problems. Also publishing the map layers is a lot quicker since no data needs to be processed.
In order to do this you will need to configure a OracleSpatial datastore in GeoServer and select this datastore in your GeoServer connection in Bridge. When publishing your MXD Bridge will check if the layers in your MXD are available in the Oracle datastore (they need to be present in the datastore for publication). If so, Bridge will create a new layer based on this layer from the Oracle datastore. Raster layers will published as GeoTIFF in the map server.
If you have idea’s for new publishing scenarios or features in GeoCat Bridge, feel free to contact us. I you would like to try Bridge, checkout Bridge on our website.