Upload
thijsbrentjens
View
305
Download
0
Embed Size (px)
DESCRIPTION
Linked geodata maken hoeft niet moeilijk te zijn. JSON-LD en GeoJSON lijken een hele geschikte combinatie om de eerste stappen te zetten: semantiek toevoegen aan bestaande data. Deze presentatie hierover is op de Linked Open Data bijeenkomst in Enschede van 17 april.
Citation preview
JSON-LD & GeoJSON: een makkelijke weg naar Linked
Geodata?
Donderdag 17 april 2014, EnschedeThijs Brentjens – PiLOD2
donderdag 17 april 2014 Brentjens Geo-ICT 2 / 23
JSON
● lichtgewicht codering voor gegevens
● leesbaar voor mens en machine
{
“Naam” : “Domtoren”,
“Adres” : “Domplein”,
“Postcode” : “3512JE”,
“Plaats” : “Utrecht”,
“Omschrijving” : “...”
}
donderdag 17 april 2014
JSON: bijna overal
● Ondersteuning in vele programmeertalen– JavaScript, Python, PHP, Java, Ruby, C, C++, C#, R, …
● Softwarebibliotheken● Web API's● Databases● ...
donderdag 17 april 2014
JSON: bijna overal
Web ontwikkelaars
JSON
donderdag 17 april 2014
Maar...
● Hoe zit dat met JSON en het Semantic web?
JSON-LD!
donderdag 17 april 2014
JSON-LD
● W3C Recommendation (16 jan 2014)● Linked data in JSON● Ontworpen met bestaande systemen en data in
gedachten !
● Kern: voeg aan data definities toe van de gebruikte properties
donderdag 17 april 2014 Brentjens Geo-ICT 8 / 23
@context bevat definities
{“@context”: {
“Naam”: “http://schema.org/name”,
“Adres”: “http://schema.org/streetAddress”,
“Postcode”: “http://schema.org/postalCode”,
...
},
“Naam”: “Domtoren”,
“Adres”: “Domplein”,
“Postcode” : “3512JE”,
… }
data
defi
niti
es
donderdag 17 april 2014
@context toevoegen
● Direct bij de data● Via een extern bestand in de JSON data
“@context”: “http://data.pilod.nl/contexts/kerktorens.json”
● Via een extern bestand in de HTTP header● Aangeven van:
– @type– @id voor URI– … en meer
donderdag 17 april 2014
Waarom is dit handig?
● Eenvoudige manier van toevoegen vocabularies● Bestaande data en systemen blijven intact● @context kan je negeren als je wilt● @context kan je gebruiken als je wilt:
– verwerken met standaard algoritmes. Bijvoorbeeld omzetten in N-triples, Expanded form, …
– Standaard gedrag voor bekende termen in je applicatie
– ...
En nu GeoJSON
donderdag 17 april 2014
Wat is GeoJSON?
● JSON Encoding voor geodata● Open specificatie, IETF draft● Voor meeste gangbare geodata erg geschikt
donderdag 17 april 2014
Voorbeeld GeoJSON
● Vaste structuur● Verzameling
objecten, met per object:– Geometry– Properties– (id)
{“type”:”Feature”,
“id”:123456,
“geometry”: {"type":"Point", "coordinates":[5.12130,52.09067]},
{
properties: {
“Naam” : “Domtoren”,
“Adres” : “Domplein”,
“Postcode” : “3512JE”,
“Plaats” : “Utrecht”,
“Omschrijving” : “...” }
}
donderdag 17 april 2014
Wat is GeoJSON?
● Ondersteuning in vele tools en platformen
● Er is al heel erg veel geodata beschikbaar in GeoJSON
● Maar ... geen echte semantiek
donderdag 17 april 2014
De vraag...
Kunnen we dan iets met JSON-LD + GeoJSON?
donderdag 17 april 2014
GeoJSON-LD
● Vermoedelijk wel!● GeoJSON:
– Vaste structuur– Definities voor geometrie– Ook gewoon JSON
● GeoJSON + @context –-> GeoJSON-LD● Proberen = leren
donderdag 17 april 2014
Demo: GeoJSON2LD tool
● http://nieuwsinkaart.nl/rdfgeo/geojson2ld.html
Werk in uitvoering...
Doelen:● Geodata omzetten naar Linked Data● Geodata als linked data gaan gebruiken
donderdag 17 april 2014
Demo: GeoJSON2LD tool
donderdag 17 april 2014
Demo
Voeg definities toe
donderdag 17 april 2014
Demo
App bekend met GeoJSON App bekend met GeoJSON-LD en Dublin Core
donderdag 17 april 2014
Demo
● Data ook nog steeds te gebruiken in andere pakketten
donderdag 17 april 2014
Tot slot
● JSON-LD: laagdrempelig linked data maken en gebruiken in web applicaties
● GeoJSON-LD kan voor veel gangbare geodata makkelijke manier zijn om Linked Geodata te maken
● Uitnodiging: geodata beschikbaar (in GeoJSON) om om te zetten naar JSON-LD? Laat het weten!
donderdag 17 april 2014
Wat links
● JSON-LD playground: http://json-ld.org/playground/index.html
● GeoJSON: http://geojson.org/ ● W3C spec: http://www.w3.org/TR/json-ld/