Skip to content

GNIP 4 Accept XML Metadata with Uploaded Layer Data

tomkralidis edited this page Sep 29, 2012 · 4 revisions

GNIP 4 - Accept XML Metadata with Uploaded Layer Data

Overview

Allow data uploads to accept XML metadata documents as part of the Add Data dialogue.

This will allow users to upload existing XML metadata for a dataset as part of the upload, thereby lessening the requirement for manually editing initial metadata if an XML document exists for a dataset.

Proposed By

Jeffrey Johnson

Assigned to Release

TBD

State

For Review and Comment

Motivation

GeoNode allows for users to publish data via an Add Data dialogue. Users can upload data (currently Shapefile or GeoTIFF), SLD (optional), and title/abstract information. Upon initial upload, the user is presented with a metadata form (with greater detail) to be filled in by the user. The metadata is then processed into an ISO 19139 XML document, which is published to GeoNode's underlying OGC:CSW.

If a metadata document exists for a given dataset, allowing XML import would improve the efficiency and management of metadata (less/no copy/paste from XML metadata to form).

Proposal

owslib

Use owslib as the metadata format parser. Enhance and fix owslib as required.

Formats

Support the following formats:

Workflow

  • Add Data dialogue
    • allow for "XML Document" field (optional)
    • on submit, if XML document is uploaded, parse with owslib
  • Detailed metadata form
    • present to user with the more detailed form filled in from uploaded XML metadata
    • on submit, save as per current behaviour

Issues

  • the GeoNode OGC:CSW implementation (pycsw, GeoNetwork) must support the metadata formats specified above
  • uploaded XML metadata may have values filled in which are not part of the detailed metadata form. How to resolve? Options:
    • upload from XML, do not allow for further editing
    • discard elements not in GeoNode detailed metadata form
    • other?
  • a review of the detailed metadata form would be valuable (elements, etc.)

Testing

Provide test mechanisms to demonstrate interoperability with various metadata formats. TODO: need to further clarify

Alternatives

Do nothing

Feedback

See discussion on the geonode-dev list here

https://groups.google.com/a/opengeo.org/group/geonode-dev/browse_thread/thread/0ba863b9a26286fc

Initial implementation in https://github.com/GeoNode/geonode/pull/394

Voting

Clone this wiki locally