Presentatie over het publiceren van overheidsdata als linked data. Met nadruk op hoe context-afhankelijkheid hierbij gerespecteerd kan blijven.
Gehouden voor een groep mensen van (Bureau) Forum Standaardisatie, Novay, ICTU/eOverheid voor burgers, Information Dynamics en de Vrije Universiteit
1. Publicatie van Linked Open Overheidsdata Rinke Hoekstra Semantic Web Rubik's Cube by dullhunk at flickr under a cc-license. Thanks!
2. Vragen Wat is linked data, en hoe ziet het eruit? Wat heeft de overheid eraan? Op welke manier kan het ontsloten worden? Wat zijn openstaande problemen?
3. De Semantic Web Ideologie Identiteit is het allerbelangrijkst Gedeeltelijkeoplossingenzijnprachtig Layer cake 8/26/10 3
4. Linked Data/Semantic Web Identificatie Uniform Resource Identifier (URI) Globale identifier (NB: persistent!) Heeft de syntactische verschijningsvorm van een URL Vaak: Internationalized Resource Identifier (IRI) Beschrijving Resource DescriptionFramework (RDF) RDF Schema (RDFS) SimpleKnowledgeOrganization System (SKOS) Web OntologyLanguage (OWL) Bevragen RDF Triple stores SPARQL Query Language
5. Hoe ziet RDF eruit? Datamodel is een (directed) graph Elk data-item is een ‘resource’ met een URI als identifier Elke eigenschap is een binaire relatie: ‘triple’ Tussen resources: <subjectURI, predicateURI, objectURI> Tussen een resource en een ‘literal’ <subjectURI, predicateURI, “literalvalue”>
8. Waarom linkeddata? Globaal unieke identifiers Hergebruik van identifiers in andere datasets Op datum niveau(bijv. twee bronnen die iets over ‘Groningen’ zeggen) Op schema niveau(bijv. twee bronnen die elk het zelfde begrip ‘Stad’ gebruiken) In feite dus ‘linked data sets’
11. In 2010? New York Times subject catalog Data.gov.uk Linked Life Data (4 miljard triples) FreeBase is gekocht door Google FaceBook publiceert Open Graph protocol ...
12. Wat heeft de overheid eraan? Uniforme representatietaal voor zowel: Schema informatie (begrippen), als Gegevens (data) Gedistribueerd Wederom zowel schema als gegevens De moeite waard? Bevordert transparantie, herbruikbaarheid etc. Maakt hergebruik zichtbaar (bijv. HTTP requests)
13. Ontsluiten Overheidsdata Laagdrempelig Transparant Herbruikbaar Multi-channel Dezelfde content op verschillende manieren aanbieden Geïntegreerd Ruwe data en begeleidende tekst
14. Tim Berners-Lee: 5-sterren plan ★ Stel informatie beschikbaar op het Web ★★ Stel het beschikbaar als gestructureerde data(bijv. als Excel sheet ipv. een plaatje) ★★★ Gebruik een open formaat(bijv. CSV ipv. Excel) ★★★★ Gebruik een linked-data formaat(URI’s als id, en RDF als formaat) ★★★★★ Verbind je data aan dat van anderen (geef context) Bron: http://inkdroid.org/journal/2010/06/04/the-5-stars-of-open-linked-data/
15. Over de helewereld… Bron: o.a.http://www.slideshare.net/cygri/the-state-of-linked-government-data 15 of XYZ
16. Verenigde Staten Data.gov Nationaleruwe data en geodatacatalogi Data-gov Wiki project bij RPI “Triplifying” tabulaire datasets van Data.gov Generieke services op RDF data Wiki voor het vergaren van meerinformatie over de datasets Demos Data.govverwijstnaarRPI’s RDF (2010) Bron: o.a.http://www.slideshare.net/cygri/the-state-of-linked-government-data
18. VerenigdKoninkrijk Grote hoeveelheidruwe datasets op data.gov.uk Selectieals five-star Linked Data Basis gelegdvoorkwalitatiefgoede Linked Data representatie URI sets Vocabulaires Best Practices Opensourcecatalogus (CKAN) Bron: o.a.http://www.slideshare.net/cygri/the-state-of-linked-government-data
19. Stap: Catalogus Doorzoekbare catalogus van datasets Catalogus verwijst: naar website waar data oorspronkelijk gepubliceerd is, of naar data als bestand Eenvoudig voortborduren op Open Data http://data.overheid.nl (?) http://nl.ckan.net (grassroots) Relatief ‘standaard’ als oplossing ... afgezien van organisatorische problematiek Weinig ‘semantic web’ Slechts downloadbare bestanden Fulltext zoeken, geen ‘echte’ queries Geen integratie met ander materiaal
20. Stap: URI dereferencing Wat is het? “URI als URL” Meest eenvoudige API Een HTTP request op het URI geeft ofwel: Een RDF dump van de resource met het URI, ofwel Een HTML pagina met een beschrijving van de resource Twee mogelijkheden: Afhankelijk van de ‘agent’ (Content negotiation) Extra informatie in de URL
23. SPARQL output <http://linkeddata.few.vu.nl/rechtspraak/uitspraak/BJ3703> a rnl:Uitspraak;rnlrdf:datum_gepubliceerd "24-07-2009"; rnlrdf:datum_uitspraak "22-07-2009"; rnlrdf:indicatie "Eiser wordt verondersteld de verwekker van gedaagde (nu 41 jaar oud) te zijn. Eiser vordert veroordeling van gedaagde tot medewerking aan DNA-onderzoek, ter verkrijging van zekerheid. De rechtbank wijst de vordering niet reeds af omdat de inzet daarvan louter emotioneel is. De rechtbank merkt het recht om te weten of een ander zijn kind is aan als een persoonlijkheidsrecht. Dit recht wordt afgewogen tegen het belang van gedaagde om de kwestie als afgedaan te beschouwen en vrede te hebben met wat zij weet. De vordering wordt afgewezen."; rnlrdf:instantie rnlrdf:Rechtbank_Groningen; rnlrdf:ljn "BJ3703"; rnlrdf:procedure_soort rnlrdf:Eerste_aanleg_-_enkelvoudig; rnlrdf:rechtsgebied_rechtspraak rnlrdf:Handelszaak; rnlrdf:status rnlrdf:gepubliceerd; rnlrdf:zaaknummers "107402 / HA ZA 09-89"; metalex:src "http://www.rechtspraak.nl/ljn.asp?ljn=BJ3703" .
24.
25.
26. Stap: SPARQL Endpoint RESTful service SPARQL queriesgeencodeerd in request URL Normaal gesproken read-only Zeer veel vrijheidsgraden om data uit te vragen SPARQL query language SELECT, DELETE, UPDATE Elke RDF triple store ondersteunt SPARQL Virtuoso, 4Store, OpenRDFSesame, AllegroGraph Nadeel: vereist infrastructuur
27. Stap: RDFa/GRDDL RDFa: RDF annotations Metadata in HTML pagina’s Manier om RDF triples te ‘verstoppen’ in HTML Zichtbaar voor Google en Yahoo crawlers Voordeel: Maakt client-side RDF applicaties mogelijk Niet alle data hoeft in RDF te zijn(bijv. copyright/licensenotice) Kan RDF produceren uit standaard databases ... en dus ontlastend voor de server GRDDL: Gleaning Resource DescriptionsfromDialects of Languages Verwijzing naar transformatie service (bijv. XSLT)
30. Reality check “Triplification” zelf is nietaltijdnuttig Linked Data gaat over syntax, data model, access, maar lost nietautomatisch de lastigeproblemen op standaardclassificatiesysteem; identifier management; data provenance; versiebeheer; context; data discovery “LD removes some technical issues, giving us a better shot at solving the organizational/political ones” (Richard Cyganiak, DERI) Bron: o.a.http://www.slideshare.net/cygri/the-state-of-linked-government-data
32. Openstaande Problemen (NB: “probleem” = nog geen standaard oplossing) Provenance Herkomstinformatie van gegevens Probleem: Individuele RDF triples zijn lastig adresseerbaar Geen standaard vocabulair voor uitdrukken provenance Context Lijkt op provenance, maar geeft interpretatie Waarom een probleem? Het negeren van context leidt tot het op een hoop gooien van mogelijk conflicterende gegevens Versiebeheer & Onderhoud
33. Context als Namespace De eigenaar van het domein van de URI wordt geacht deze te onderhouden Nadeel: Namespaces zijn geheel transparant voor clients Domein/eigenaar alleen te achterhalen door URI parsing, dereferencing, of whoislookup
34. Context in SKOS SKOS: SimpleKnowledgeOrganization System Lichtgewicht taal voor uitdrukken van taxonomische informatie omtrent begrippen skos:Concept skos:broader, skos:narrower, skos:related Elk skos:Concept is gerelateerd aan een skos:ConceptScheme Eenvoudige 1:1 mapping relaties mogelijk tussen concepten uit verschillende schemes Uitgebreidere mappings mogelijk dmv gebruik OWL 2 Eenvoudig en vaak voldoende Lang niet alle Linked Data is uitdrukbaar in SKOS
35. Mapping in SKOS 24 October 2009 Rinke Hoekstra - OWLED 2009 35
36.
37. Mappings as OWL Classes A mapping class: Classifies resources annotated using one vocabulary, and Infers annotations using the other vocabulary … it may be directed 24 October 2009 Rinke Hoekstra - OWLED 2009 37
39. Context als NamedGraph RDF Triple stores zijn eigenlijk Quad stores: <subjectURI, predicateURI, objectURI, graphURI> Hergebruik URI’s van grafen in andere triples: <graphURI, dc:creator, “Rinke Hoekstra”, ...> SPARQL ondersteunt queries op grafen, dus: Provenance kan worden achterhaald Context kan expliciet worden gemaakt Maar: Pragmatische oplossing Nog steeds inconsistenties mogelijk Er is nog geen officiële syntax voor
40. The Construction of Social Reality Searle (1995): Institutional Facts Intentional categories are social constructs, they are subjective, relative to an observer, and they are attributed to brute facts. Brute facts are independent of human agreement Constitutive and regulative rules: X counts as Y in context C
41. Searle’s Rules Constitutive rule Why is counts-as not subsumption? Counts-as is relative to a context Counts-as does not permit substitution, and limits inheritance: Counts-as can connect anti-rigid with rigid classes Bills issued by the Bureau of Engraving and Printing (X) count as money (Y) in the United States (C) Money (Y) is the root of all evil
42. Standard Practice Duality of roles is a well known problem Role as class: “Person plays Student” Distinct classes for role and role player But, rather verbose Role as relation: “Person student_at University” Avoid tautology in definition of the role But, no way to incorporate contextual information Problem: cannot have both at the same time Student equivalentClassstudent_atsome University
43. In short Focus either on relation or class oriented representation Observations Reification makes knowledge about a relation explicit e.g. the context of a role, the thematic roles of an action ... but comes at the cost of the relation itself, and and is rather verbose Question: can’t we have both?
44. Yes, we can Infer the relation from a reification ... instead of the reification from the relation Example: definition of ‘student’ A person (X) counts as a student (Y) if enrolled at some university (C)
45. Subjective Entity and Social Role A subjective entity is defined using counts-as Social roles are subjective entities
47. Example: Propositional Attitudes A propositional attitude is anything held towards some proposition: “Mary believes that John killed Suzan” “Mary holds a belief towards the proposition ‘John killed Suzan’” “‘John killed Suzan’ counts as a belief in the context of Mary”
49. Versiebeheer Eenvoudige oplossing: Voor elke versie een nieuwe graaf Nadeel: Applicaties kunnen afhankelijk zijn van oude versie(bijv. URI dereferencing) Twee URI’s per resource: ‘latestversion’ URI URI met versie-datum erin verwerkt Probleem: versies zijn niet altijd zo eenvoudig