Adgang til EU's portal for åbne data
EUROPAEU's portal for åbne dataUdviklernes hjørne
Menu

Udviklernes hjørne

EU's portal for åbne data skal tilskynde til anvendelse af EU's datasæt til udvikling af tredjemands applikationer. For at opnå dette foreslås udviklerne to programmeringsgrænseflader.

Adgang til API'en REST

Én måde at få adgang til EU's portal for åbne data er gennem API'en REST. Alle portalens grundlæggende funktioner er tilgængelige via API'en, hvilket omfatter alt, hvad du kan gøre med webgrænsefladen og meget mere. De indhentede data kan således anvendes af en ekstern kode, som ringer portalens API op.

Til programmeringsformål er API'en tilgængelig på følgende URL-adresse: http://data.europa.eu/euodp/data/api/

EU's portal for åbne data bygger på en applikation fra CKAN. På deres hjemmeside finder du information om brug af API'en.

Beskedformatet for både forespørgsel og svar er JSON (præciseret i RFC 4627). Nedenfor finder du eksempler på, hvad du kan gøre vedhjælp af REST-API'en i din applikation.

På grund af Publikationskontorets specifikke infrastruktur skal alle API-forespørgsler foretages ved hjælp af HTTP-protokollens POST-metode, selv om de pr. definition skulle være tilgængelige ved hjælp af GET-metoden.

Værktøjer til brug af REST-API'en.

Almindelige HTTP-klienter og biblioteker

Curl er et almindeligt kommandolinjeværktøj, som kan bruges til forespørgsler til API'en. Du kan tvinge curl til at anvende POST-forespørgsler, f.eks. ved at tilføje dataalternativet "-d" – selv med en tom liste. Det anvendes i de enkle eksempler herunder.

Der findes udvidelser til de fleste populære browsere, som gør det muligt at stille forespørgsler til API'en direkte i browseren. F.eks. Postman til Google Chrome eller RESTClient til Mozilla Firefox.

De fleste programmeringssprog kan anvendes til at stille forespørgsler til API'en, så længe der findes en kompatibel forbindelseskomponent såsom Jersey til Java.

Særlige værktøjer

Der er udviklet visse specialiserede værktøjer, som kan lette brugen af REST-API'en. Всички тези клиенти са на разположение на Github и могат да бъдат използвани като основа за разработване на конкретни решения на споменатите езици за програмиране.

Eksempler på forespørgsler

Få en liste over datasæt i JSON

curl http://data.europa.eu/euodp/data/api/action/package_list -d'{}'

Få en liste over tags i JSON

curl http://data.europa.eu/euodp/data/api/action/tag_list -d'{}'

Få en beskrivelse af et bestemt datasæt i JSON

curl http://data.europa.eu/euodp/data/api/action/package_show -d'{"id": "dgt-translation-memory"}'

Søg efter datasæt eller ressourcer, som svarer til en forespørgsel

curl http://data.europa.eu/euodp/data/api/action/package_search -d'{"q": "forest"}'

SPARQL endpoint

En anden måde at få adgang til EU's portal for åbne data er med et maskinlæsbart SPARQL endpoint, som gør det muligt at foretage forespørgsler om datasæts RDF-beskrivelser.

Som du kan se på siden "Sammenkædede data" findes der en grafisk brugergrænseflade til at indtaste dine SPARQL-forespørgsler.

Du kan finde et maskinlæsbart endpoint til brug ved programmering på følgende URL-adresse: http://data.europa.eu/euodp/sparqlep

Du kan finde specifikationer for SPARQL på W3C's website: http://www.w3.org/TR/rdf-sparql-query/. De modeller, der bruges til at beskrive datasæt i EU's portal for åbne data, beskrives på siden "Sammenkædede data" under "Vokabular over metadata".

Værktøjer og biblioteker

Det er muligt at bruge tredjemands biblioteker og applikationer til at udvikle applikationer, som kan foretage forespørgsler om endpoints i EU's portal for åbne data. Nedenfor finder du eksempler på sådanne løsninger.

SPARQL-klienter

  • Sesame client er en SPARQL-klient til Windows med en grafisk brugergrænseflade.
  • Twinkle er en java-applikation på tværs af platforme med en brugergrænseflade til at foretage SPARQL-forespørgsler om fjerne endpoints.

Biblioteker

Her følger nogle af de biblioteker, som kan bruges til at udvikle applikationer med data fra EU's portal for åbne data, opstillet efter programmeringssprog.

  • Java
    • Jena er et Apache-projekt. Det er en java-ramme med åben kilde til udvikling af applikationer til semantisk web og sammenkædede data.
    • OpenRDF Sesame tilbyder en Java-API to håndtering af of forespørgsler efter RDF-data.
  • C
    • Redland er et sæt af C-biblioteker, som underbygger RDF and SPARQL.
  • JavaScript
    • Hercules tilbyder et JavaScript-bibliotek til SPARQL endpoint-forespørgsler. Det gør det muligt at udvikle omfattende applikationer med oplysninger fra EU's portal for åbne data.
  • PHP
    • EASYRDF er et PHP-bibliotek, som gør det lettere at bruge SPARQL-forespørgsler i din PHP-applikation.
  • Python
    • RDFLib tilbyder et sæt python-biblioteker til at inkorporere RDF-data i en python-applikation.

SPARQL endpoint: eksempler på forespørgsler

Du kan finde eksempler på de forespørgsler, der kan udføres på siden "Sammenkædede data" på EU's portal for åbne data.