Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Semantic Web / Linked Data Technologies
1. Semantic Web
Linked Data Technologies
Mathieu d’Aquin (@mdaquin)
Knowledge Media Institute,
The Open University, UK
2. Semantic Web
Linked Data Technologies
Mathieu d’Aquin (@mdaquin)
Knowledge Media Institute,
The Open University, UK
Research Fellow – Background in Artificial Intelligence, Knowledge
Engineering, Reasoning
Working on Semantic Web, Linked Data and Knowledge Technologies
Especially applied to education and personal information management/Privacy
Research Lab, ~75 people, many industrial and academic
collaborations, Leader in semantic web, linked data,TEL, learning
analytics, new media research
Open and Distance Learning University, the biggest
university in the UK in number of students (~250,000 per year), 13
regional centres, + national centres. Almost all teaching at
distance.
3. The Semantic Web
Using theWeb to publish,
share and exploit
information/knowledge
From machines to
machines
Using graph-based data
modeling, knowledge
representation
(ontologies) and
reasoning
4. Linked Data
As set of principles and
technologies for a Web of
Data
– Putting the “raw” data
online in a standard
representation (RDF)
– Make the data Web
addressable (URIs)
– Link to other Data
http://lucero-project.info/lb/what-is-linked-data/
http://linkeddata.org
5. Semantic Web/Linked Data
Technologies?
A stack of technologies and languages – the semantic
web layer cake – more or less fromTim Berners Lee
(W3C, various sources)
10. The Internet
Network protocols to connect machines
The Web
Network of documents connected by
hyperlinks
The Linked DataWeb
Graph of data objects connected by
labelled hyperlinks
11. The Internet
Computer level communication
The Web
Browsing, reading, searching
The Linked DataWeb
Data exchange and mashups
12. Linked Data
Open University
Website
Open University
VLE
Mathieu’s
Homepage
Mathieu’s
List of
Publications
Mathieu’s
Twitter
The Web
M366 Course
page
Person: Mathieu
Publication:Pub1
Organisation:
The Open University
Course: M366
Country: Belgium
Book: Mechatronics
author
workFor
availableIn
offers
setBook
The Web of Linked Data
13.
14. How that works: URIs
Example:
http://data.open.ac.uk/course/aa100
An anchor for linking
Let’s say you took this course.
You – took this URI
An identifier for a
data entity
Here, the a course offered by
the Open University
An access point to
representation(s) of
the data entity
In possibly different
formats…
15. URI resolving
http://data.aalto.fi/id/courses/noppa/dept_T3030
10/09/13 15
In the browser
(Accept: text/html)
curl -H "Accept: application/rdf+xml" -L
http://data.aalto.fi/id/courses/noppa/dept_T3030
<rdf:Description rdf:about="http://data.aalto.fi/data/id/courses/noppa/dept_T3030">
<rdfs:label>RDF description of Department of Media Technology</rdfs:label>
<foaf:primaryTopic>
<aiiso:Department rdf:about="http://data.aalto.fi/id/courses/noppa/dept_T3030">
<aiiso:teaches rdf:resource="http://data.aalto.fi/id/courses/noppa/course_T-111.5077"/>
<aiiso:teaches rdf:resource="http://data.aalto.fi/id/courses/noppa/course_T-111.2211"/>
<aiiso:teaches rdf:resource="http://data.aalto.fi/id/courses/noppa/course_Inf-0.3101"/>
<aiiso:teaches rdf:resource="http://data.aalto.fi/id/courses/noppa/course_T-75.5100"/>
<aiiso:teaches rdf:resource="http://data.aalto.fi/id/courses/noppa/course_T-111.5006"/>
<aiiso:teaches rdf:resource="http://data.aalto.fi/id/courses/noppa/course_Inf-0.1300"/>
<aiiso:teaches rdf:resource="http://data.aalto.fi/id/courses/noppa/course_T-75.5600"/>
<aiiso:teaches rdf:resource="http://data.aalto.fi/id/courses/noppa/course_T-75.4950"/>
<aiiso:teaches rdf:resource="http://data.aalto.fi/id/courses/noppa/course_T-111.1100"/>
<aiiso:teaches rdf:resource="http://data.aalto.fi/id/courses/noppa/course_T-111.6596"/>
<aiiso:teaches rdf:resource="http://data.aalto.fi/id/courses/noppa/course_T-75.5300"/>
<aiiso:teaches rdf:resource="http://data.aalto.fi/id/courses/noppa/course_Inf-0.1220"/>
<aiiso:teaches rdf:resource="http://data.aalto.fi/id/courses/noppa/course_T-111.4360"/>
<aiiso:teaches rdf:resource="http://data.aalto.fi/id/courses/noppa/course_T-111.5701"/>
<aiiso:code>T3030</aiiso:code>
<aiiso:teaches rdf:resource="http://data.aalto.fi/id/courses/noppa/course_T-75.4210"/>
<aiiso:teaches rdf:resource="http://data.aalto.fi/id/courses/noppa/course_T-111.5070"/>
<aiiso:teaches rdf:resource="http://data.aalto.fi/id/courses/noppa/course_T-75.4400"/>
<foaf:name xml:lang="en">Department of Media Technology</foaf:name>
<aiiso:teaches rdf:resource="http://data.aalto.fi/id/courses/noppa/course_T-111.5310"/>
<aiiso:teaches rdf:resource="http://data.aalto.fi/id/courses/noppa/course_T-111.5020"/>
<aiiso:teaches rdf:resource="http://data.aalto.fi/id/courses/noppa/course_T-75.1110"/>
<aiiso:teaches rdf:resource="http://data.aalto.fi/id/courses/noppa/course_T-111.6595"/>
16. How that works:
Graph Data modelling (RDF)
http://data.open.ac.uk/course/aa100
“The arts past and present”
http://data.open.ac.uk/saou/ontology#undergraduate
http://purl.org/vocab/aiiso/schema#Module
http://data.open.ac.uk/topic/arts_and_humanities
http://sws.geonames.org/3017382/
“France”
dc:title
rdf:label
rdf:type
dc:subject
courseLevel
geo:lat
geo:long
location
17. How that works:
Querying over HTTP - SPARQL
select distinct ?q (count(distinct ?t) as ?n) where {
?q a <http://purl.org/net/mlo/qualification>.
?q <http://data.open.ac.uk/saou/ontology#hasPathway> ?p.
?p <http://data.open.ac.uk/saou/ontology#hasStage> ?s.
{{?s <http://data.open.ac.uk/saou/ontology#includesCompulsoryCourse>
?c}
union
{?s <http://data.open.ac.uk/saou/ontology#includesOptionalCourse> ?c}}.
?c <http://purl.org/dc/terms/subject> ?t.
[] <http://www.w3.org/2004/02/skos/core#hasTopConcept> ?t.
} group by ?q order by desc(?n)
List of courses (degrees, etc.) atThe Open University, with number of
topics they cover
Example:
data.open.ac.uk/query
URI of the query:
http://data.open.ac.uk/query?query=select%20distinct%20...
22. Same thing? Not exactly
ID course post-
code
Students
Stays
private
data.open.ac.uk
Topics
data.ordnancesurvey.co.uk
Districts
Location
Clustering
Other resources
DBpedia
Geonames
23. Analysing own data agains others
Academics in “Arts and Humanities”
most often involved with the media (in
number of news items)
Topics most commonly mentioned by
news outlets own by the BBC (in
number of news items)
From news
clipping data
From dataset about
our researchers From dbpedia.org
24. ParkJam
http://parking.kmi.open.ac.uk/
ParkJam is a mobile
app for Android™ that
gets parking
availability information
from its users, so that
we can all
conveniently find
parking when coming
to work or driving into
town. When you find
some car park is full,
it's real easy to tell
others about it.
28. The Web
Network of documents connected by
hyperlinks
The Linked DataWeb
Graph of data objects connected by
labelled hyperlinks
The SemanticWeb
Connected knowledge where entities,
concrete and abstract, have formal
attached meaning/interpretations
29. The SemanticWeb
Smart, knowledge intensive, connected
systems
The Web
Browsing, reading, searching
The Linked DataWeb
Data exchange and mashups
34. Tracking a specific context/topic through
ontology-based querying
Looking at reading,
by military staff
during the first
world war
35. Example: Generic analytics, taking into account
background knowledge in the domain
Web logs or
application
logs
Web logs or
application
logs
Web logs or
application
logs
Generic
Ontology of
events,
resources
and actions
Domain
specific
extension
ontology (=
background
knowledge)
Analytics
with
domain
specific
filters,
views and
reasoning
41. Facebook Ontology (extract)
Person Post
Photo
Video
Status
update
Comment
Agent
App
subclass
author
likes
includes
subclass
author
on
Place
in
{Everyone, Friends_of_Friends,All_Friends, Custom}
scope
42. Example epistemic rules
Ka Post(X) :- author(X, a)
Ka Post(X) :- scope(X,All_Friends),
author(X,Y), friend(Y, a)
Ka Post(X) :- includes(X,Y), friend(Y, a)
Ka wasIn(P,Y) :- includes(X,Y), in(X,P),
Ka Post(X)
Ka wasWith (Y,Z) :- includes(X,Y), include(X,Z),
Ka Post(X)
43. Data/Information/Knowledge on the Semantic Web
NLP
Information
retrieval
Recommender
Systems
Data Mining
Step further: intelligent applications
and knowledge discovery
44. The Linked DataWeb
Graph of data objects connected by
labelled hyperlinks
The SemanticWeb
Connected knowledge where entities,
concrete and abstract, have formal
attached meaning/interpretations
IntelligentWeb information and
knowledge processing
Discovering knowledge models
52. Finding patterns in data:
Data mining
Example:
Using Formal Concept
Analysis + Reasoning to
build a hierarchy of
questions a linked dataset
can answer
Use statistical metrics to
identify the ones that are
most likely to be
interesting
57. Step further: Understanding knowledge
representation and data modeling
The SemanticWeb also
represents a very large,
collaborative base of
formally represented
knowledge
This can also be mined,
to discover things
about knowledge
representation and
data modeling
67. Using consensus to assess an ontology
(a new NeOn toolkit plugin
AKT Portal
The brighter the blue
the higher the positive
consensus (higher
agreement)
The brighter the red
the lower the negative
consensus
(higher disagreement)
Dark = controversy:
no clear cut between
disagreement and
agreement
Example: The statements
attached to the class
Employee are controversial:
some ontologies agree,
others disagree (often due
to alternative
representations of roles)
68. Summary
Intelligent information
processing
The Semantic Web
Linked Data Web
The Web
Internet
Making smart thing with
what we can find in the web
Naturally integrated data,
flexible model for rapid
development
Large scale, collaborative,
distributed, uncontrolled
Connected, decentralised,
independent
69. Future
Understand this
Make explicit the competence of
data in being used at the upper
level, what is being done to it when
going from raw to processed.
Formalise the practice level in
addition to the symbol, syntax and
semantic levels, to boost
development benefits.
Create generic, standard processes
for the development of intelligence
semantic web systems.