What is ckanext-jsonschema
This plugin provides a quite extensive set of functionalities to introduce JSON Schema based metadata types into CKAN (>=2.8) metadata.
It also provides an User Interface (UI) based on the json-editor library to properly edit and validate complex JSON fields. The UI can also be customized in terms of components and autocompletion capabilities via JavaScript modules.
Provides an ISO 19139 implementation and a simplified profile and several types already implemented.
Provides several extension points to introduce new dataset and resource formats in other (JSON based) formats (e.g. STAC).
Basic functionalities:
- Registry: Drives the behaviors of JSON Schema plugin. Each plugin can define its own registry.
- Validator: Makes it possible to dynamically validate user inputs.
- View Configurations: Allows each plugin to have multiple view types.
Additional Functionalities:
- Extractor: Creates an extraction flow from JSON to CKAN or reverse
- Importer: Import metadata from external repositories (e.g. from GeoNetwork)
- Exporter: Export metadata to standard XML
- Cloner: Interface to duplicate existing metadata
- Harvester: Harvester capabilities
- Resolver: Reflects changes in CKAN objects into related objects
- Wrapper: Compose views into collections
Plugins:
- jsonschema: Core plugin
- jsonschema_iso: Simplified ISO model
- jsonschema_iso19139: ISO 19139 binding
- jsonschema_stac: STAC format support
- jsonschema_dataset: Dataset metadata integration
- jsonschema_frictionless: Tabular Data support