Transcript lecture_20
Semantic Web
Tim Berner Lee’s Vision:
Web as a means of collaboration for people
Web as a means of collaboration for machines
Semantic Web is a web of data that machines can
“understand” too.
1
The Semantic Web vision (1)
The entertainment system was belting out the Beatles' "We Can Work It
Out" when the phone rang. When Pete answered, his phone turned the
sound down by sending a message to all the other local devices that had a
volume control.
His sister, Lucy, was on the line from the doctor's office: "Mom needs to
see a specialist and then has to have a series of physical therapy
sessions. Biweekly or something. I'm going to have my agent set up the
appointments." Pete immediately agreed to share the chauffeuring.
At the doctor's office, Lucy instructed her Semantic Web agent through her
handheld Web browser. The agent promptly retrieved information about
Mom's prescribed treatment from the doctor's agent, looked up several lists
of providers, and checked for the ones in-plan for Mom's insurance within a
20-mile radius of her home and with a rating of excellent or very good on
trusted rating services. It then began trying to find a match between available
appointment times (supplied by the agents of individual providers through
their Web sites) and Pete's and Lucy's busy schedules.
2
The Semantic Web Vision (2)
In a few minutes the agent presented them with a plan. Pete didn't like it.
University Hospital was all the way across town from Mom's place, and he'd be
driving back in the middle of rush hour. He set his own agent to redo the search
with stricter preferences about location and time. Lucy's agent, having complete
trust in Pete's agent in the context of the present task, automatically assisted by
supplying access certificates and shortcuts to the data it had already sorted
through.
Almost instantly the new plan was presented: a much closer clinic and earlier
times, but there were two warning notes. First, Pete would have to reschedule a
couple of his less important appointments. He checked what they were, not a
problem. The other was something about the insurance company's list failing to
include this provider under physical therapists: "Service type and insurance plan
status securely verified by other means," the agent reassured him. "(Details?)"
Lucy registered her assent at about the same moment Pete was muttering,
"Spare me the details," and it was all set. (Of course, Pete couldn't resist the
details and later that night had his agent explain how it had found that provider
even though it wasn't on the proper list.)
3
Difficulties for the SemWeb
How is information represented in the actual Web?
As documents written in natural language
As graphs, pictures, tables, videos, and other multimedia
Humans are good at:
deduce facts from some (incomplete) information
create associations between facts
aggregate information from several sources
But, machines:
cannot use partial (or incomplete) information
have difficulties aggregating several sources of information
can read but cannot “understand” information
4
SemWeb is about Integrating Data
5
Semantic Web (1998 – 2008)
Layers in 2001
Layers in 2008
6
Semantic Web Layers
URI/IRI
Universal Resource Identifier
Internationalized Resource Identifier
XML
eXtendted Markup Language
RDF
Resource Description Framework
RDFS
RDF Schema
RIF
Rule Interchange Format
SPARQL
Simple Protocol and RDF Query Language
OWL
Web Ontology Language
7
What is needed for the SemWeb?
The technologies shown in the previous picture.
That the existing data (which are meaningful only to
people) are represented in a form understandable for
machines. This means, annotate data with metadata.
Metadata are data about data.
Ontologies: documents that define relations among
terms.
Software agents that can process the data on behalf of
humans, and automated web services that provide data.
8
XML (eXtended Markup Language)
XML is a flexible text format that is widely used to
structure, store, and transport data.
XML is different from HTML because it is not about
displaying data.
In XML (differently from HTML) you create your own tags
to annotate data.
XML is used to create other languages such as: XHTML,
RSS, RDF, OWL, etc.
To learn XML go to: http://www.w3schools.com/xml/
9
An XML Example
<bookstore>
<book category="COOKING">
<title lang="en">Everyday Italian</title>
<author>Giada De Laurentiis</author>
<year>2005</year>
<price>30.00</price>
</book>
<book category="CHILDREN">
<title lang="en">Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
</bookstore>
10
RDF (Resource Description Framework)
RDF: a standard for describing resources on the Web
The meaning of data is encoded in sets of triples.
Triples are “subject, predicate, object” statements.
Harry Potter has as author J. K. Rowling.
Each element of a triple is identified by a URI.
URIs represent both resources and relations.
RDF is written in XML
RDF is to Semantic Web what HTML was to the Web.
11
An RDF Example
http://en.wikipedia.org/wiki/J._K._Rowling
dc:creator
http://en.wikipedia.org/wiki/ Harry_Potter
<rdf:RDF xmlns:rdf=http://www.w3.org/1999/02/22-rdf-syntax-ns#
xmlns:dc=http://purl.org/dc/elements/1.1/>
<rdf:Description
rdf:about=“http://en.wikipedia.org/wiki/Harry_Potter”>
<dc:creator=“http://en.wikipedia.org/wiki/J._K._Rowling”>
</rdf:Description>
</rdf:RDF>
12
Other RDF related technologies
RDFS supports expression of structured vocabulary.
It can be used to represent minimal ontologies.
RDF triples are stored in special repositories. For an
example, refer to openRDF.org
GRDDL - Gleaning Resource Descriptions from Dialects of
Languages (a means to extract RDF from XML or XHTML
documents)
SPARQL – a query language for RDF data
13
Ontologies and OWL
An ontology is an explicit description of things and their
relations.
OWL serves to write ontologies for the Web.
OWL is written in XML and built on top of RDF.
You can think of OWL as an object-oriented language that
defines classes, hierarchy of classes, attributes, relations,
etc.
OWL is designed to support inference (subsumption and
classification)
OWL is more expressive than RDF.
14
An Ontology Example
Visit http://protege.stanford.edu/ to learn about creating
ontologies.
Source: http://www.sei.cmu.edu/isis/guide/gifs/fruit-ontology.gif
15
Bringing things together
16
Friend of a Friend (FOAF)
RDF class Person
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:foaf="http://xmlns.com/foaf/0.1/">
<foaf:Person>
<foaf:name>Peter Parker</foaf:name>
<foaf:gender>Male</foaf:gender>
<foaf:title>Mr</foaf:title>
<foaf:givenname>Peter</foaf:givenname>
<foaf:family_name>Parker</foaf:family_name>
<foaf:mbox_sha1sum>cf2f4bd069302febd8d7c26d803f63fa7f20bd82
</foaf:mbox_sha1sum>
<foaf:homepage rdf:resource="http://www.peterparker.com"/>
</foaf:Person>
</rdf:RDF>
17
Repositories of SW data
a community effort to extract structured information
from Wikipedia
the universal protein resource, a central
repository of protein data
Semantic web atlas of postgenomic knowledge
GeoNames
Geographical database
18
Semantic Web Search
A search engine for
semantic web
documents
represented in RDF,
that provides services
to software agents.
19
Semantic Applications
Source:
http://www.readwriteweb.com/archives/10_semantic_apps_to_watch.php
20
Summary
Semantic Web is an ambitious vision with uncertain
future.
Not all technologies needed are yet in place, but progress
is steady.
The biggest challenge is to convince people to make their
data available in an annotated form (e.g., RDF).
There are big research opportunities in the SemWeb:
automatically annotating data
creating, aligning ontologies
approximate and probabilistic reasoning
defining and implementing trust
21
Where to learn more
W3C Semantic Web Activity: http://www.w3.org/2001/sw/
Prof. James Hendler: http://www.cs.rpi.edu/~hendler/
Prof. Steffen Staab: http://www.uni-koblenz.de/~staab/
Resources:
Jena – A semantic web framework for Java. It provides a
programmatic environment for RDF, RDFS and OWL, SPARQL and
includes a rule-based inference engine.
http://jena.sourceforge.net/
Yahoo! SearchMonkey:
http://developer.yahoo.com/searchmonkey/
LinkingOpenData:
http://esw.w3.org/topic/SweoIG/TaskForces/CommunityProjects
/LinkingOpenData
22