Skip to content
Snippets Groups Projects
Select Git revision
  • master default protected
  • 1.1.2
  • 1.1.0
  • 1.0.4
  • 1.0.3
  • 1.0.2
  • 1.0
7 results

dcat-uploader

  • Clone with SSH
  • Clone with HTTPS
  • dcat-upload

    Ein Hilfsprogramm, mit dem man aus Java-Programmen heraus DCAT-AP.de konforme Metadaten in CKAN hochladen kann.

    Abhängigkeit

    <dependency>
        <groupId>de.landsh.opendata</groupId>
        <artifactId>dcat-uploader</artifactId>
        <version>1.1.1</version>
    </dependency>

    Nutzung

    Es gibt ein low-level CKAN-API de.landsh.opendata.ckan.CkanAPI für die grundlegende Kommunikation mit CKAN. Hier wird auf Basis der CKAN-Konzepten Package und Resource gearbeitet, die in Java als org.json.JSONObject sichtbar werden. Für den Zugriff benötigt man die Basisadresse der des Portals und sein API-Key, den man in seinem CKAN-Profil einsehen kann, z.B. unter https://opendata-stage.schleswig-holstein.de/user/

    CkanAPI ckanAPI = new CkanAPI("https://opendata-stage.schleswig-holstein.de", new ApiKey("5f6c2da3-dfdc-4c88-a129-22acb129526b"));
    JSONObject dataset = readDataset( "schulen-2021-02-01");

    Der de.landsh.opendata.ckan.DcatUploader arbeitet hingegen mit dem konzeptuellen Modell von DCAT-AP.de. Relevante Klassen sind Dataset und Distribution, die in Java als org.apache.jena.rdf.model.Resource sichtbar werden. Ein DcatUpload benötigt ein CkanAPI (siehe oben) für die CKAN-Instanz, mit der kommuniziert werden soll.

    Die Methode upload nimmt eine vollständig gefüllte RDF-Resources eines Dataset und legt diese samt Distributionen und Collections in CKAN an. Dateien von Distributionen werden derzeit noch nicht nach CKAN hochgeladen.

    CkanAPI ckanAPI = new CkanAPI("https://opendata-stage.schleswig-holstein.de", new ApiKey("5f6c2da3-dfdc-4c88-a129-22acb129526b"));
    DcatUploader uploader = new DcatUploader(ckanAPI);
    Resourse dataset = ...
    uploader.upload(dataset);