DE: Dieses Repository beinhaltet die Erweiterung von ckanext-dcat auf die Spezifikation DCAT-AP.de. EN: This is a DCAT-AP.de specific CKAN extension for providing and importing DCAT-AP.de-Profile data.
Der CKAN-CKAN-Harvester sieht bereits eine Möglichkeit vor, Datensätze auf Herausgeber zu verteilen. Dabei gibt es sogar die Möglichkeit, noch fehlende Herausgeber automatisch anzulegen. Hier ist die Stelle im Code: ckanharvester.py
Auch im DCAT RDF-Harvester ist bereits vorgesehen, dass der Datensatz von einem anderen Herausgeber als die Harvest-Source stammt: rdf.py Damit das aktiv wird, muss aber ein IDCATRDFHarvester (Aufruf in rdf.py) einen Eintrag dataset['owner_org'] erzeugen.
Meine Idee ist es, im DCATdeProfile entsprechende Logik einzubauen. Dabei würde ich analog zum CKAN-CKAN-Harvester vorgehen. Nur wenn die Konfiguration remote_orgs gesetzt ist, wird die Logik überhaupt aktiv. Auf Basis von dataset['publisher_name'] wird dann ein Herausgeber gesucht.
Ist er vorhanden, wird dataset['owner_org'] passend gesetzt.
Ist kein Herausgeber mit dem Namen vorhanden, wird nur bei remote_orgs=create ein Herausgeber mit diesem Namen angelegt und dataset['owner_org'] passend gesetzt.
Klingt das sinnvoll? Dann würden wir uns an der Umsetzung versuchen.
DCAT-AP.de sieht vor, dass in einem Katalog Datensätze mehrerer Herausgeber enthalten sind. Im Konventionenhandbuch ist angegeben, dass der
dct:publisher
angegeben werden MUSS. https://www.dcat-ap.de/def/dcatde/2.0/implRules/#angaben-zum-herausgeberDer CKAN-CKAN-Harvester sieht bereits eine Möglichkeit vor, Datensätze auf Herausgeber zu verteilen. Dabei gibt es sogar die Möglichkeit, noch fehlende Herausgeber automatisch anzulegen. Hier ist die Stelle im Code: ckanharvester.py
Auch im DCAT RDF-Harvester ist bereits vorgesehen, dass der Datensatz von einem anderen Herausgeber als die Harvest-Source stammt: rdf.py Damit das aktiv wird, muss aber ein
IDCATRDFHarvester
(Aufruf in rdf.py) einen Eintragdataset['owner_org']
erzeugen.Meine Idee ist es, im DCATdeProfile entsprechende Logik einzubauen. Dabei würde ich analog zum CKAN-CKAN-Harvester vorgehen. Nur wenn die Konfiguration
remote_orgs
gesetzt ist, wird die Logik überhaupt aktiv. Auf Basis vondataset['publisher_name']
wird dann ein Herausgeber gesucht.dataset['owner_org']
passend gesetzt.remote_orgs=create
ein Herausgeber mit diesem Namen angelegt unddataset['owner_org']
passend gesetzt.Klingt das sinnvoll? Dann würden wir uns an der Umsetzung versuchen.