Metadata¶
Having good metadata is essential for the discoverability and usability of your published (map) data.
Version 1.x
of GeoCat Bridge offers limited support for metadata, but improvements will be made in future releases.
This section discusses the (im)possibilities of metadata publishing in GeoCat Bridge. First however, we will discuss how ArcGIS Pro handles metadata, and what that means for GeoCat Bridge.
Working with metadata in ArcGIS Pro¶
Like any serious GIS application, ArcGIS Pro supports viewing and editing metadata. However, there are some peculiarities that you should be aware of.
First of all, ArcGIS Pro offers two ways to store metadata:
- Layer metadata
This metadata has a 1:1 relationship with the layer and is stored in the ArcGIS Pro project file (.aprx
), map file (.mapx
), or layer file (.lyrx
).
It is always stored in the ArcGIS metadata format and can be edited using the built-in editor. - Source metadata
This metadata is associated with the data source itself (e.g. a Shapefile, database, GeoTIFF, and so on). It can be shared by different layers that refer to the same dataset.
This type of metadata can comply with various well-known standards (ISO 19139, ISO 19115, FGDC, ...), but it can only be edited in Pro's Catalog view (not per layer) and if stored in the ArcGIS metadata format.
What happens if my metadata is not stored in the ArcGIS format?
If your metadata is not stored in the ArcGIS format, it is always considered read-only by ArcGIS Pro. You can still view it, but you cannot edit it using the built-in editor. See the next section for more information.
If your metadata is not in the ArcGIS format and you click Edit Metadata
in ArcGIS Pro on the catalog or layer item, you will see the following warning:
If you click View Metadata
on the same item, you will see the following message:
When you click View Content
there, ArcGIS Pro will only allow you to view a basic XML tree in a built-in web browser window:
By default, ArcGIS Pro sets your layers to "Layer has its own metadata"
(1).
However, most "serious" metadata users may wish to set this to "Show metadata from source (read-only)"
(2).
You can change this setting in the Layer Properties of your layer in the Table of Content (TOC):
When you manually set this to "Show metadata from source (read-only)"
, ArcGIS Pro will try to detect the metadata associated with the data source.
Only Esri knows how this detection works, but it should work fine if:
- The geodata uses an Esri format (e.g. File Geodatabase, ArcSDE, and so on).
- The geodata is file-based and has an accompanying metadata XML file (e.g. Shapefile with
.shp.xml
file, GeoTIFF with.tif.xml
file, and so on).
If no metadata could be found, it will fall back to the layer metadata (empty by default).
Did you know?
Bridge allows you to always use the source metadata by default, regardless of the Layer Properties setting. You can set this on the Metadata tab of the General Options of GeoCat Bridge.
Custom metadata handling¶
For users who only want to work with source metadata and keep it in its original format (i.e. ISO 19139 XML or compatible), GeoCat Bridge offers an alternative way of handling metadata.
You can configure Bridge to use a metadata lookup table in a PostgreSQL/PostGIS database, much like ArcSDE does.
Note that this lookup is only intended for geodata layers that are stored in a "pure" PostGIS database (i.e. not ArcSDE-enabled), where ArcGIS Pro fails to look up the metadata.
This is not required for file-based metadata, as ArcGIS Pro will be able to retrieve that (but not edit it).
If you wish to work with your own ISO 19139 compatible metadata records, and also want GeoCat Bridge to keep your metadata in-sync,
we recommend using Shapefiles or (cloud-optimized) GeoTIFFs with an auxiliary .shp.xml
file, or a PostGIS database.
Editing¶
In contrast to its ArcMap predecessor, GeoCat Bridge for ArcGIS Pro no longer offers a metadata editor. There also aren't any plans to add this feature back in the future.
To edit metadata, users should either:
- Use the built-in metadata editor in ArcGIS Pro. However, this requires your metadata to be stored in the ArcGIS metadata format. ArcGIS Pro offers a one-way conversion ("upgrade", as Esri calls it) from standard formats to the ArcGIS format.
- Use a third-party or tailor-made metadata editor tool. Bridge supports storing metadata in a lookup database, so it can be synchronized with GeoNetwork.
- Let Bridge publish a minimal record to GeoNetwork that references the map layer(s), and then edit/complete the metadata using GeoNetwork's web-based editor.
GeoCat Bridge will generate a UUID if needed and store it in the ArcGIS Pro project for future reference, if the metadata is missing or stored in the layer.
Publishing¶
This version of GeoCat Bridge can only publish ISO 19139 metadata records to GeoNetwork.
It is able to successfully publish your metadata if:
- Your metadata is in the ArcGIS metadata format, in which case Bridge will export it to ISO 19139.
- Your geodata and metadata are file-based and already comply with the ISO 19139 format (e.g. ISO 19115 XML).
- Your metadata complies with ISO 19139 and is stored in a PostgreSQL lookup database.
Bridge currently uses ArcGIS Pro's API to extract metadata from the map layers or their data sources, or you can configure it to lookup metadata from a PostgreSQL database.
When publishing metadata, GeoCat Bridge will overwrite existing records in GeoNetwork if the UUID matches.
Although Bridge cannot edit the metadata (especially not if it's source metadata, for which ArcGIS Pro enforces strict read-only mode), it will update an ISO 19139 copy of the original metadata before the record is pushed to GeoNetwork. The following items are updated:
- The metadata title if missing, in which case it is set to the layer name.
- The date that the record was created, if it's missing.
- The date (timestamp) that the record was last modified.
- The spatial extent (bounding box) of the record.
- The spatial reference (CRS).
Metadata Identifier
A new unique identifier (UUID) is generated by Bridge only when it's missing (e.g. for layer metadata),
in which case the UUID is also stored as custom layer data in the ArcGIS Pro project (.aprx
) for future reference.
Because GeoCat Bridge performs a couple of metadata updates before it publishes the record, the remote record may not reflect the original metadata exactly. If you wish to update the local record, please refer to the next section, where we will discuss local synchronization options.
Local Synchronization¶
As described in the previous section, minor differences can occur over time between the local metadata and the remote record in GeoNetwork. These can be overcome by a local synchronization process, that updates the source metadata with the values that were published.
GeoCat Bridge supports metadata synchronization. However, for source metadata, ArcGIS Pro does not allow mutations of the original source, unless the source has been converted to the ArcGIS metadata format.
We recognize that some customers do not wish to convert their metadata to the ArcGIS format. For this scenario, GeoCat Bridge can be configured to try and update the original metadata source.
This may be possible when:
- The geodata and metadata are both file-based (e.g. a Shapefile or GeoTIFF) and the files are not locked.
- The metadata is stored in a (custom) PostgreSQL/PostGIS database.
To enable this behavior, you must set the Update source metadata
option in the GeoNetwork configuration for the relevant data space to Update if possible
.
For file-based metadata this is all you need to check, but for XML metadata stored in a lookup table, you must also configure the PostgreSQL metadata lookup settings below it.