I am reviewing the properties of ckan and am unsure about whether it has the ability to expose datasets stored with ckan. As I found, ckan uses pycsw for harvesting remote CSW servers. The documentation says,

Remember, only datasets that were harvested with the Spatial Harvesters can currently be exposed via pycsw.

So is it right, that currently, datasets entered in ckan directly, cannot be exposed via an CSW server (the included pycsw instance) and harvested itself from remote servers?

Alternatively, is it possible to insert metadata to the included pycsw server and update/ edit it by the ckan interface?

1 Answer 1


You are correct, pycsw is curently used to expose only harvested datasets.This work was done for the US data.gov project.

By default CKAN does not store ISO-19115 or FGDC elements in its database schema to make it easy for publishers to publish open data. The minimum required CKAN metadata elements are not enough to be represented/transformed into a valid ISO 19115 XML file.

This problem is addressed in PublicaMundi project (http://publicamundi.eu/), where we have implemented native ISO 19115 and INSPIRE support for CKAN and tight pycsw integration. You can see an example here: http://labs.geodata.gov.gr/dataset/urban-transportation-routes-athens and in case you want to see integration with other OGC services: http://labs.geodata.gov.gr/dataset/city-blocks-kalamaria

The source code is available at: https://github.com/PublicaMundi/ckanext-publicamundi

  • Thanks, Angelos. Does it mean, if I enter valid metadata (not just the minimum required) I will be able to expose it through pycsw when using the PublicaMundi extension?
    – ulrich
    Jun 14, 2015 at 19:20
  • Yes. The PublicaMundi extension adds this functionality to CKAN, but also includes an ISO 19115 metadata editor. Jun 15, 2015 at 19:51

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.