On Wed, 25 Mar 2015, Paolo Cavallini wrote:

Date: Wed, 25 Mar 2015 15:52:49 +0100
From: Paolo Cavallini <[email protected]>
To: [email protected]
Subject: Re: [Qgis-developer] QGIS & PyCSW

Il 25/03/2015 15:24, Angelos Tzotsos ha scritto:

This idea is excellent: we discussed something similar some time ago,
when we were thinking about future features for MetaSearch.
Among those features were a metadata editor and direct configuration for
pycsw publishing.
I strongly believe that these features should reach core QGIS in the
future.

Hi Angelos,
glad you are interested. Could you please give us an outline of what is
necessary? Even better, publish a QEP for this?
All the best, and thanks.


Sounds like there are possibly two core workflows / use cases:

1./ publish an existing layer's metadata to a existing CSW

This could be realized by adding CSW publishing functionality to relevant
plugins (Metatools, QSphere, etc.).  Having said this, I think the silver
bullet here would be giving the Metadata section of the Layer Properties
window an update to support vanilla ISO 19115/19139 (this is worthy of a QEP
all by itself), and then have plugins build upon that for profiles, etc.
This would enhance metadata management deeper in QGIS.

In either case, as Angelos says the publishing machinery would be
pure CSW-T which is straightforward and implementation agnostic.  As CSW
does not dictate security, some additional logic would be required to handle
various authentication mechanisms of popular CSW implementations
(i.e. pycsw: IP-based restrictions, GeoNetwork: HTTP Basic Auth and
others, etc.)

One would then accomplish this (preferable) via MetaSearch, i.e.:
- add a 'publish' tab which provides layer list
- metadata would/could be generated dynamically or based on where it was
  saved from a plugin (i.e. look in same dir as data path for .xml
  file, etc.).  Dublin Core would be by far the easiest to implement,
  but I suspect ISO would be preferred
- 'publish' button would insert or update the record to the CSW
- 'delete' button would delete the record from the CSW

2./ publish an actual CSW service via QGIS Server

I'm not sure about the QGIS server innards, but pycsw can be easily integrated
(in Python) as a library to advertising a .qgs file's layer metadata against a
single endpoint supporting numerous search APIs like CSW, SRU, OAI-PMH,
OpenSearch/Atom, etc.  An SQLite3 DB would be the backend and pycsw
configuration (.ini / ConfigParser driven) would be handled by a dialog during
the publishing/export workflow.  The workflow would write the configuration
and import the metadata into the SQLite3 backend for metadata publishing.

..Tom
_______________________________________________
Qgis-developer mailing list
[email protected]
http://lists.osgeo.org/mailman/listinfo/qgis-developer

Reply via email to