Pristup otvorenim podacima Europske unije
EUROPAPortal otvorenih podataka EU-aKutak za razvojne programere
Menu

Kutak za razvojne programere

Cilj je Portalom otvorenih podataka EU-a potaknuti uporabu skupova podataka za izradu aplikacija trećih strana. Kako bi se to postiglo, razvojnim se programerima predlažu dva sučelja za programiranje.

Pristup preko sučelja REST API

Portalu otvorenih podataka EU-a moguće je pristupiti uporabom sučelja REST API. Sve su temeljne funkcije portala dostupne preko sučelja API, čime je obuhvaćeno sve ono što se uz pomoć web-sučelja može učiniti, ali i više od toga. Dohvaćene informacije mogu se upotrebljavati uz pomoć vanjskog koda kojim se poziva API portala.

Za svrhe programiranja, API je dostupan preko sljedećeg URL-a: http://data.europa.eu/euodp/data/api/

Portal otvorenih podataka EU-a oslanja se na primjenu platforme CKAN na čijem se web-mjestu može pronaći dokumentacija o sučelju API.

Format poruka za zahtjeve i odgovore jest JSON (utvrđen u RFC 4627). U nastavku se nalaze primjeri uporabe sučelja REST API u vašoj aplikaciji.

Zbog posebnih obilježja infrastrukture Ureda za publikacije svi API zahtjevi koji bi automatski bili dostupni putem metode GET protokola HTTP moraju se umjesto toga podnositi metodom POST.

Alati za uporabu sučelja REST API

Generički HTTP klijenti i biblioteke

curl je generički http naredbeni redak koji se može upotrijebiti za postavljanje upita sučelju API. Postoje mogućnosti da se curl primijeni prisilno upotrebom zahtjeva metodom POST, primjerice dodavanjem podatkovne opcije „d” čak i s praznim popisom. Koristi se u primjerima upita u nastavku.

Određena proširenja postoje za većinu popularnih preglednika kojima se omogućuje izrada upita za API unutar preglednika, primjerice Postman za preglednik Google Chrome ili RESTClient za preglednik Mozilla Firefox.

Većina programskih jezika može se koristiti za postavljanje upita sučelju API pod uvjetom da postoji kompatibilna komponenta HTTP veze poput okvira Jersey za Javu.

Namjenski alati

Razvijeni su određeni specijalizirani alati koji se mogu upotrebljavati radi lakše uporabe sučelja REST API. Svi su ti klijenti dostupni na Githubu i mogu se prilagoditi za razvoj specijaliziranih rješenja u navedenim programskim jezicima.

Primjeri upita

Dohvati popis skupova podataka u formatu JSON

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

Dohvati popis oznake u formatu JSON

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

Dohvati opis određenog skupa podataka u formatu JSON

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

Pretraži skupove podataka ili resurse koji odgovaraju upitu

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

SPARQL krajnja točka

Drugi način pristupa Portalu otvorenih podataka EU-a jest strojno čitljiva SPARQL krajnja točka kojom su omogućeni upiti o opisima skupova podataka u formatu RDF.

Kako je prikazano na stranici „Povezani podaci”, radi unosa vaših SPARQL upita na raspolaganju je grafičko korisničko sučelje.

Za svrhe programiranja, strojno čitljiva krajnja točka dostupna je preko sljedećeg URL-a: http://data.europa.eu/euodp/sparqlep

Za specifikacije jezika za upite SPARQL posjetite web-mjesto W3C: http://www.w3.org/TR/rdf-sparql-query/. Modeli korišteni za opis skupova podataka popisanih na Portalu otvorenih podataka EU-a opisani su na stranici „Povezani podaci” pod nazivom „Rječnik metapodataka”.

Alati i biblioteke

Kako bi se izradile aplikacije kojima se mogu izvršiti upiti na krajnjoj točki Portala otvorenih podataka EU-a moguće se koristiti bibliotekama i aplikacijama trećih strana. Vidi u nastavku primjere takvih rješenja.

SPARQL klijenti

  • Sesame client je SPARQL klijent za operativni sustav Windows s grafičkim korisničkim sučeljem.
  • Twinkle je Java aplikacija primjenjiva na različitim platformama kojom se nudi korisničko sučelje za izvršavanje SPARQL upita na udaljenim krajnjim točkama.

Biblioteke

U nastavku možete pronaći nekoliko biblioteka koje su podijeljene na temelju programskog jezika i koje se mogu upotrijebiti za izradu aplikacija uporabom podataka s Portala otvorenih podataka EU-a.

  • Java
    • Jena je projekt korporacije Apache. Riječ je o okviru otvorenog koda izrađenog uporabom programskog jezika Java za izradu aplikacija za semantički web i povezane podatke.
    • OpenRDF Sesame pruža sučelje Java API za rukovanje podacima u formatu RDF i njihovo pretraživanje.
  • C
    • Redland je skup biblioteka izrađenih uz pomoć programskog jezika C kojim se pruža potpora za RDF i SPARQL.
  • JavaScript
    • Hercules predlaže biblioteku izrađenu uz pomoć programskog jezika JavaScript za slanje upita SPARQL krajnjoj točki na daljinu. Njime se omogućava izrada bogatih web-aplikacija koje upotrebljavaju informacije s Portala otvorenih podataka EU-a.
  • PHP
    • EASYRDF je biblioteka izrađena upotrebom programskog jezika PHP za olakšavanje uporabe SPARQL upita u vašoj aplikaciji u jeziku PHP.
  • Python
    • RDFLib predlaže skup biblioteka izrađenih uz pomoć programskoj jezika python za uključivanje podataka u formatu RDF u aplikaciju u jeziku python.

SPARQL krajnja točka: primjeri upita

Za primjere upita koji se mogu poslati posjetite stranicu „Povezani podaci” na Portalu otvorenih podataka EU-a.