A web based (Node/Vue.js) application to populate YAML/JSON oriented metadata records. The editor supports multiple metadata models (and models can be extended), currently supported are:
The app is currently in BETA, improvement suggestions very welcomed.
Deployment of latest version can be found at GitHub.io.
- Open local metadata (MCF)
- Import metadata from:
- DOI (extract DOI metadata as DataCite)
- WMS (extract metadata from Capabilities)
- iso19139 (via metadata conversion service provided by pygeoapi.io
- Export metadata (via metadata conversion service)
- iso19139
- OGCAPI-Records
- Spatio Temporal Asset Catalog (STAC)
- DCAT
- edit metadata
- save metadata
Note that the application runs client side only. No content is send to a server. Although the client can easily be extended to store the output in a Git repository or a catalogue system, like pygeoapi, pycsw, Geonetwork opensource or CKAN.
Exceptions are import and export metadata, which use a metadata transformation service provided by demo.pygeoapi.io.
Metadata is saved in the Metadata Control File (MCF) format. The format is encoded as YAML, which is a readable file format and optimal for content versioning in a Git repository. When alternate formats are needed (iso19115, DCAT, STAC), you can export to these formats using a transformation service provided by the pygeoapi demo server based on pygeometa.
Requires:
- Node.js
- Yarn
git clone https://github.com/osgeo/mdme.git
yarn install
yarn serve
Visit localhost:8000.
Configure vocab
in app.vue
on which schema to use, MCF, OGC API - Records or Data Package.
Models are defined in models/{model}/model.json
. Very welcome to adjust the existing schema's or add a new one.
The library vjsf uses a json-schema definition to render a form. Some special fields ('x-display: 'hidden') are added to the schema file to enrich vizualisation.
MCF introduces contacts and distributions as key-value pairs. This pattern is not supported by vsjf. For this reason contacts and distributions are converted to array at loading time and back to object when saving.
MIT