Upload
drupalcon-paris
View
1.246
Download
2
Tags:
Embed Size (px)
Citation preview
Semantic Web fundamentals- information linking and layering in practice
Dan Brickley,[email protected]
(Vrije Universiteit Amsterdam)
(or: what RDF might do for Drupal)
OVERVIEW- Where I’m coming from - Layered & linked information
- What’s out there now: data, apps, ecosystem- Semantic Web standards - acronym attack:
- RDF/S, OWL, SPARQL, SKOS, RDFa - POWDER, GRDDL, RDB2RDF...
- What’s in it for Drupal & its users?
- Web History & Linking Open Data
RDFa?
• “I don’t know what it is, but Dries likes it”
• a set of attributes for adding typed links and properties to document markup
• a bit like microformats, but with different strengths & weaknesses
• a way of putting data into Web pages
Semantic Web & RDF(De-fragmenting the Web of data?)
[email protected]• Accidental standards-nerd
• Making things in the Web since ’94
• Found metadata community & W3C through trying to make better Web sites
• W3C staff ‘99-’05, edited RDFS, co-chaired RDFCore work; SKOS, POWDER; FOAF...
• TV stuff at Joost & now VU University Amsterdam, see www.NoTube.tv
LAYERED INFORMATION
Calendar Layers
Pixel Layers
Map Layers
http://data-gov.tw.rpi.edu/demo/exhibit/earthquake.html
Layers of data?
Can we also “layer” the kind of information we find in ordinary Web pages & databases?
How do we select, compose, compare layers?
How do we figure out when two data sources are talking about the same thing?
How can we model, create, publish, consume, and query general-purpose layered data?
What links the layers?
• when we don’t have time & space indexes...
LINKED INFORMATION
• Good old-fashioned HTML hyperlinks
• Data files that form a Web (Linked Data)
• Two documents mentioning same thing
• Two identifiers referring to the same thing
• Typed links between things (including docs)
WEB HISTORY
Where the Web came from...
Original image credits: Tim Berners-Lee
Aside: RDF Data Model
Image credits: Tim Berners-Lee, Ian Davis
Links!
Layers?
Hmm......
alice.example.com
bob.example.org
school.example.net
http://www.w3.org/DesignIssues/LinkedData.html
“The Semantic Web isn't just about putting data on the web. It is about making links, so that a person or
machine can explore the web of data. With linked data, when you have some of it, you
can find other, related, data.”
“1. Use URIs as names for things. 2. Use HTTP URIs so that people can look up those names. 3. When someone looks up a URI, provide useful information, using the standards. 4. Include links to other URIs. so that they can discover more things.”
From linked documents to databases & websites...
Aside: the value of linking
Examples
• GMail - labelling messages or conversations
• W3C POWDER - label pages or collections?
• Google Social Graph API - data linking
• Biz/ed Web site - my first webmaster job
WHAT’S OUT THERE?
RDF DATA - lotsFrom lifescience data and all the BBC’s TV and music listings to FOAF profiles, agricultural research, views of bestbuy.com for machines, and an ever growing
collection of taxonomies and thesauri.
Thesauri and taxonomies?- formal, logical taxonomies - OWL, Web Ontology Language
- library-style thesauri, looser topical concept hierarchies - SKOS
UN-FAO Geo-political Ontology
An RDFS/OWL taxonomy...
hasBorderWith, hasMember, isAdministeredBy,isInGroup, isPredecessorOf, isSuccessorOf...
... a SKOS/RDF concept scheme
Library of Congress Subject Headings (LCSH)“The Library of Congress Authorities and Vocabularies service enables both humans and machines to programmatically access authority data at the Library of Congress.
This service is influenced by -- and implements -- the Linked Data movement's approach of exposing and inter-connecting data on the Web via dereferenceable URIs.”
http://id.loc.gov/authorities/
One XHTML/RDFa page per topic, eg. http://id.loc.gov/authorities/sh95000541
LCSH topics for Paris
More linked data on Paris...
In HTML at http://www.geonames.org/2988507/paris.html
<link rel="alternate" type="application/rdf+xml" title="RDF Version" href="http://sws.geonames.org/2988507/about.rdf" />
In RDF/XML at http://sws.geonames.org/2988507/about.rdf
<rdf:RDF><Feature rdf:about="http://sws.geonames.org/2988507/"><name>Paris</name><alternateName xml:lang="ja">パリ</alternateName>
<featureClass rdf:resource="http://www.geonames.org/ontology#P"/><featureCode rdf:resource="http://www.geonames.org/ontology#P.PPLC"/><inCountry rdf:resource="http://www.geonames.org/countries/#FR"/><population>2138551</population><postalCode>75000</postalCode><wgs84_pos:lat>48.85341</wgs84_pos:lat><wgs84_pos:long>2.3488</wgs84_pos:long<wikipediaArticle rdf:resource="http://en.wikipedia.org/wiki/Paris"/><owl:sameAs rdf:resource="http://dbpedia.org/resource/Paris"/>
In http://dbpedia.org/resource/Paris
populationTotal 2167994, cityMotto ..., coatOfArmsLegend ..., skos:subject World_Heritage_Sites_in_France, ...birthplace Alexis_de_Tocqueville, Jean_Genet, Guy_Debord, ..., ....owl:sameAs http://sws.geonames.org/2988507/owl:sameAs http://www.freebase.com/view/en/paris
In http://rdf.freebase.com/rdf/en.paris
<fb:olympics.olympic_city_bid rdf:about="http://rdf.freebase.com/ns/guid.9202a8c04000641f8000000008caf949"><fb:olympics.olympic_city_bid.olympic_games rdf:resource="http://rdf.freebase.com/ns/en.2008_summer_olympics"/><fb:olympics.olympic_city_bid.bidding_city rdf:resource="http://rdf.freebase.com/ns/en.beijing"/><fb:olympics.olympic_city_bid.bidding_city><fb:location.administrative_division rdf:about="http://rdf.freebase.com/ns/en.paris"> <fb:travel.travel_destination.tourist_attractions rdf:resource="http://rdf.freebase.com/ns/en.ile_de_la_cite"/><fb:travel.travel_destination.tourist_attractions rdf:resource="http://rdf.freebase.com/ns/en.eiffel_tower"/><fb:travel.travel_destination.tourist_attractions rdf:resource="http://rdf.freebase.com/ns/en.champs-elysees"/><fb:travel.travel_destination.tourist_attractions rdf:resource="http://rdf.freebase.com/ns/en.notre_dame_de_paris"/><fb:film.film_location.featured_in_films rdf:resource="http://rdf.freebase.com/ns/en.ronin_1998"/><fb:film.film_location.featured_in_films rdf:resource="http://rdf.freebase.com/ns/en.breathless"/><fb:film.film_location.featured_in_films rdf:resource="http://rdf.freebase.com/ns/en.amelie"/><fb:film.film_location.featured_in_films rdf:resource="http://rdf.freebase.com/ns/en.charade"/><fb:film.film_location.featured_in_films rdf:resource="http://rdf.freebase.com/ns/en.paris_when_it_sizzles"/><fb:film.film_location.featured_in_films rdf:resource="http://rdf.freebase.com/ns/en.les_amants_du_pont_neuf"/><fb:film.film_location.featured_in_films rdf:resource="http://rdf.freebase.com/ns/en.the_dinner_game"/>
BBC Music - Linked Data
Data: In Summary...More every day.
Increasingly cross-referenced.
All use RDF’s data model and vocabularies.
Some write RDF in RDF/XML, others XHTML/RDFa.
Varying focus, detail, quality, linkage.
Serious Library RDF data in Dublin Core and SKOS.
http://www.flickr.com/photos/timobrien/sets/794898/
FOAF visualization by Tim O’Brien
Data ecosystem?
SEARCH
Yahoo’s BOSS (Build your Own Search Service): “By combining your unique assets and ideas with our search technology assets, BOSS is a platform
for the next generation of search innovation, serving hundreds of millions of users across the Web.”
Google Rich Snippets: RDFa & Microformats
FILES & WORKFLOW
Adobe XMP:
Since 2001, RDF/XML inside TIFF, JPEG, PNG, GIF, PDF, ...
OpenOffice.org & OASIS OpenDocument Format 1.2:
Multi-file archives, with a manifest.rdf and inline RDFa (coming soon...)
OpenOffice.org report 2.5 Million download / week, > 100 million users.
DRUPAL
RDF in Drupal
DC - Dublin Core Metadata Initiative
DC & Education
DC & Museums
DC & Libraries...
SKOS
& the “cold start” taxonomy problem
SKOS in Drupal
“OrganiK extends the Taxonomy XML module by adding SKOS support.
This allows you to import/export taxonomies using SKOS.”
"OrganiK is a partially EU-funded Research project for the benefit of SMEs."http://www.organik-project.eu/
Load...
see also: http://drupal.org/node/560326
Edit...
Update...
Publish...
Drupal Fields API
• Attach arbitrary properties to anything in Drupal 7
• RDF does the same for the Web at large
• Natural to bridge these two
Drupal & Taxonomies
• Many existing add-ons, patches, applications
• SKOS (a W3C standard since August :) will bring dozens of thesauri, glossaries etc.
• News sites can be pre-populated with externally managed categories and topics
• Using standard identifiers for topics aids aggregators
Drupal & Data APIs
• SPARQL is to RDF as SQL is to RDBMs
• SPARQL scripting looks very familiar to anyone working with SQL
• Drupal code can call external SPARQL DBs
• SPARQL queries can include “GRAPH” clauses which specify chosen data layers...
Drupal RDFa
• the “lowest hanging fruit”
• data need no longer be hidden in the db
• SEO (Yahoo searchmonkey, Google Snippets), cross-linking and improved search
• A foundation to build on
Acronym Recap
• RDF is a data model for linked/layered data
• “Links” are made with URIs
• “Layers” represent independent data sources
Creating RDF
• Types of thing (classes) and relationship (property) are defined using RDFS and OWL
• So there is an RDFS or OWL definition for all the terms defined by Dublin Core, FOAF etc.
• Basically a simple machine-readable dictionary
Sharing RDF
• RDF/XML is the oldest RDF syntax
• RDFa is new, integrates with XHTML
• GRDDL lets you map from other XML or microformat notations
• You can also map from SQL, JSON, CSV ...
Querying RDF: SPARQL
• a language for asking questions
• looks a lot like SQL, but simpler and webby
• comes with xml and json Web service API
• Working Group is working on an update
POWDER
• let’s you say “everything on mp3.myserver.example.com/ is a CC-SA-licensed MP3 music file”
• Or that “everything under w3.org/People/ is published by W3C”
• Or that everything on images.playboy.com is an image that might not be child-suitable
SKOS
• Simple Knowledge Organization Systems
• An RDF-based way of encoding thesauri
• Or other things that are thesaurus-like
• Like site hierarchy, IMAP folders, tags
• bringing lots of library data into the Web
SummaryThere’s a growing ecosystem around linked RDF data.
Drupal can expect to manage files containing it, link to sites carrying it, and be populated with
taxonomies expressed in it.