Title: The Semantic Web
1The Semantic Web
- A Brief Introduction
- Dr. Randy M. Kaplan
2A Quote
- I have always imagined the information space as
something to which everyone has immediate and
intuitive access, not just to browse but to
create ... Machines become capable of analyzing
all the data on the web - the content, and links,
and transaction between people and computers.
2
3A Quote (continued)
- ... When the Semantic web does emerge the
day-to-day mechanisms of trade, bureaucracy, and
our daily lives will be handled by machines
talking to machines, leaving people to provide
the inspiration and intuition. - Tim Berners-Lee, 2000
3
4What is the Semantic Web
- Semantic meaning
- Semantic Web meaningful web?
- The term semantic web is a vision
- Computers - Software - People
- Find, read, and understand data over the WWW to
accomplish useful goals for users
4
5Semantic Web
- Make data anywhere on the web accessible and
understandable to people and machines - Informally defined
- Fluid
- Evolving
- Not a working system
5
6Semantic web
- Ideas
- Machine-readable-data-view
- Data on the web is used by machine
- Used for automation, integration, and reuse (W3C
2003)
6
7Semantic web
- Ideas
- Intelligent Agents
- Allow intelligent agents to retrieve and
manipulate pertinent information
7
8Semantic web
- Ideas
- Distributed Database View
- The Semantic Web does for data what HTML did for
textual information systems
8
9Semantic web
- Ideas
- Distributed Database View
- Represent all databases
- Represent logic rules to link databases together
to add value
9
10Semantic web
- Ideas
- Distributed Database View
- Transform the web from a large interlinked book
to large interlinked database
10
11Semantic web
- Ideas
- Automated Infrastructure
- Berners-Lee argues that the Semantic web is
infrastructure and not software
11
12Semantic web
- Ideas
- Servant of Humanity
- Allow software relieve us of much of the burden
of finding, extracting, integrating, and indexing
information on the web
12
13Semantic web
- Ideas
- Better Annotation
- Web as we know it augmented with annotations that
are machine-readable and linked
13
14Semantic web
- Ideas
- Improved Searching
- Possible to access web resources by content
rather than keywords
14
15Semantic web
- Ideas
- Web Services
- Semantic Web will be called upon to provide
services that in turn provide useful behavior - Agents automate procedures that are currently
performed manually
15
16Semantic web
- Recurring Themes
- Indexing and retrieving
- Meta data
- Annotation
- Web as Database
- Machine retrieval of data
16
17Semantic web
- Recurring Themes
- Web-based services
- Discovery of services
- Agents
17
18Semantic Web
- Videos
- http//www.youtube.com/watch?vmVFY52CH6Bc
- http//www.youtube.com/watch?vOGg8A2zfWKg
18
19Semantic web
- Scenario
- During her stay in Honolulu Clara runs into
several interesting people and they trade vCards.
In the evening Clara reviews the days activities
on her digital assistant. The assistant pops up a
note with a link to one of the vCards that reads,
This guys profile seems to match the position
advertisement that Bill put on our intranet. Can
I notify Bills assistant? - Clara asked her digital assistant to explain. I
used his company directory for finding his DAML
enhanced vita hes got the required skills as a
statistician who led the data mining group of the
database department at Montana U for the
requirement of a researcher who worked in machine
learning. Clara asked the assistant to provide
evidence. I checked his affiliation with the
university of Montana, he is cited several times
in their web pages reasonably trusted I checked
his publication records from publishers DAML
sources and asked bill assistant a rating of the
journals highly trusted. More details? - Clara asked the assistant to inform Bills
assistant
19
20Semantic web
- Questions about the scenario -
- What sorts of information must the agent have
access to in order to perform these tasks? - What sorts of processing must the agent do in
order to perform these tasks?
20
21Semantic web
- Foundations
- Resources
- Standardized Addressing
- Small set of commands
- Scalability and large networks
21
22Semantic web
- Foundations
- Openness, completeness, and consistency
- Web and Semantic Web
22
23Semantic web
- Resources
- A resource is intended to represent any idea that
can be referred to - We think of these as tangible packages of data
- The notion of resource is more general
23
24Semantic web
- Resources
- Generality of Resources
- A resource can change over time and still be the
same resource - A resource can also be a reference to a real or
fictitious person
24
25Semantic web
Trust
Logic Proof
Ontology
RDF Schema
RDF
XML Schema
XML
25
26Semantic Web
Trust
Logic Proof
Ontology
RDF Schema
RDF
XML used to define new languages that are used to
interchange data on the web
XML Schema
XML
26
27Semantic Web
Trust
Logic Proof
Ontology
RDF Schema
A schema defines a language and is used to make
sure statements in the language are
written correctly
RDF
XML Schema
XML
27
28Semantic Web
RDF resource description framework
Trust
Logic Proof
Ontology
RDF Schema
RDF
A language that is capable of describing all
sorts of information and meta-data
XML Schema
XML
28
29Semantic Web
Trust
When designing specific RDF-based application
languages defines specific elements of the
special language
Logic Proof
Ontology
RDF Schema
RDF
XML Schema
XML
29
30Semantic Web
An ontology defines the vocabulary and usage of
words in the context of the specific vocabulary
Trust
Logic Proof
Ontology
RDF Schema
RDF
XML Schema
XML
30
31Semantic Web
Logical reasoning is used to establish the
consistency and correctness of datasets
Trust
Logic Proof
Ontology
RDF Schema
RDF
XML Schema
Logical reasoning is also necessary to infer
conclusions which are not necessarily
XML
31
32Provide authentication of identity
Trust
Logic Proof
Ontology
RDF Schema
RDF
Create evidence that data, service, and agents
are trustworthy
XML Schema
XML
32
33RDF
- W3Cs candidate language to provide a standard
way to model, describe, and exchange information
about resources
33
34RDF
- Three capabilities
- Describe most kinds of data that will be
available - Describe the structural design of data sets
- Describe relationships between bits of data
34
35RDF
- Uses a simple data model
- Three things
- Resources
- Statements
- Simple sentences in SVO order
35
36RDF
- Example
- Billy lives in Chicago.
- Billy subject
- Lives verb
- Chicago object
36
37Statements in RDF
- Statement is sometimes called a triple (because
it has three parts) - Subject is called the subject
- Verb is called the predicate (alt. Property)
- Object is called the object (alt. Value)
37
38Statements in RDF
Subject
Predicate
Object
(person-1, name, William Sparks)
Triple
38
39Statements in RDF
- A value in a statement can be -
- A number
- A string
- Such a value is called a LITERAL
- A value in a statement may also be another
resource
39
40Identifying Resources in RDF
- RDF needs a standard widely used way to identify
resources - RDF uses the URI (Uniform Resource Identifier)
- URIs can be used to identify a concept, tangible
thing, chunk of data
40
41Identifying Resources in RDF
- Identifying things is complicated
- May never be a general solution
- Names are not unique (many Robert Smith in the
U.S.) - Same name - not the same person
41
42Identifying Resources in RDF
- To identify a resource -
- A URI is paired with or associated with a
resource and not any other resource - How this is accomplished in NOT specifed
- May not be a good way to identify a resource
42
43Identifying Resources in RDF
- Alternative -
- Identify a resource as the same as some other
resource - The other resource is well-known
- Use the right predicate (from a trusted source)
43
44Identifying Resources in RDF
- Alternative
- Identify a resource by its properties and
relationships with other resources
44
45Identifying Resources in RDF
- Example using properties
- 2003 New York Yankees had one general manager
- If it were known that a person had been the
general manager of the Yankees during that time,
the individual would be uniquely identified
45
46Identifying Resources in RDF
- Suppose the pairing of a URI with a resource is
described in a document - Question How can this document be found?
- RDF provides no standard method for answering
this question
46
47Identifying Resources in RDF
- To deal with the problem of locating the
document, an informal approach is sometimes
adopted - Use a URL to retrieve the document
- One must remember that the document may not be
the actual resource
47
48Identifying Resources in RDF
- Example
- The type of resource that is an RDF statement is
identified by its URI - http//www.w3.org/1999/02/22-rdf-syntax-nsStateme
nt
48
49Identifying Resources in RDF
- At this URI there is a document
- The document contains the following RDF fragment
among others
49
50Identifying Resources in RDF
lt!-- This is the RDF schema for the RDF data
model as described in The Resource Description
Framework (RDF) Model and Syntax Specifications
http//www.w3c.org/TR/REC-rdf-syntax
--gt ltsClass rdfIDStatement ScommentA
triple consisting of a predicate, a subject, And
an object. /gt ltsClass rdfIDProperty Acomme
ntA name of a property, defining specific
meaning For the property /gt
50
51Identifying Resources in RDF
- The URI is not required to point to a document
- The fact that this fragment in fact does is useful
51
52Anonymous Resources
- A resource without an identifying URI reference
is called an anonymous resource - It would be analogous to English language
expressions like, - That man, a women with a red car
- Anonymous resources are also called blank-nodes
52
53RDF and Conventional Databases
- Triples may seem different from the model found
in the conventional relational databases - The difference is not as great as it appearss
53
54RDF and Conventional Databases
- Each row of a conventional relational database
has the same structure as any other - In relational database lingo, a collection of
related data items is called a tuple
54
55RDF and Conventional Databases
- Consider the following table fragment from a
sample database
Name Phone Email City State
William Sparks 435 555-6789 Wsparks_at_mailto.com Springfield MA
Constance Sim 312 555-2238 Csim_at_coldmail.com Chicago IL
55
56RDF and Conventional Databases
- In a well designed table, all the cells on a row
will depend on a single value called the primary
key
Name Phone Email City State
William Sparks 435 555-6789 Wsparks_at_mailto.com Springfield MA
Constance Sim 312 555-2238 Csim_at_coldmail.com Chicago IL
56
57RDF and Conventional Databases
- An obvious candidate for this is the persons
name ... But ...
Name Phone Email City State
William Sparks 435 555-6789 Wsparks_at_mailto.com Springfield MA
Constance Sim 312 555-2238 Csim_at_coldmail.com Chicago IL
57
58RDF and Conventional Databases
- But ... Names can change and more than one person
can have the same name so lets give each tuple a
unique identifier
Name Phone Email City State
William Sparks 435 555-6789 Wsparks_at_mailto.com Springfield MA
Constance Sim 312 555-2238 Csim_at_coldmail.com Chicago IL
58
59RDF and Conventional Databases
- But ... Names can change and more than one person
can have the same name so lets give each tuple a
unique identifier
Name Phone Email City State Person ID
William Sparks 435 555-6789 Wsparks_at_mailto.com Springfield MA person-1
Constance Sim 312 555-2238 Csim_at_coldmail.com Chicago IL person-2
59
60RDF and Conventional Databases
- How do we get the data in this table in the form
of a triple?
Name Phone Email City State Person ID
William Sparks 435 555-6789 Wsparks_at_mailto.com Springfield MA person-1
Constance Sim 312 555-2238 Csim_at_coldmail.com Chicago IL person-2
60
61RDF and Conventional Databases
- How do we get the data in this table in the form
of a triple? We can break this table into a bunch
of smaller tables
Name Phone Email City State Person ID
William Sparks 435 555-6789 Wsparks_at_mailto.com Springfield MA person-1
Constance Sim 312 555-2238 Csim_at_coldmail.com Chicago IL person-2
61
62RDF and Conventional Databases
Name Phone Email City State Person ID
William Sparks 435 555-6789 Wsparks_at_mailto.com Springfield MA person-1
Constance Sim 312 555-2238 Csim_at_coldmail.com Chicago IL person-2
Person ID Name
person-1 William Sparks
person-2 Constance Sim
Person ID Phone
person-1
person-2
435 555-6789
312 555-2238
62
63RDF and Conventional Databases
- An RDF triple can be written as -
- (resource) - (type of fact) - (value of fact)
- Any set of tables can be rewritten in the form of
RDF-triples - The primary key should be converted to a URI
reference
63
64RDF and Conventional Databases
- RDF and relational tables seem to be equivalent
- Databases have better performance but require
regular data - RDF does not require regular data and can be
added to by adding a new triple
64
65RDF and Conventional Databases
- Another interesting feature of RDF is tha it can
be self describing - In other words, RDF can be used to describe the
data that describes the data - This particular aspect of RDF cannot be matched
by a conventional database
65
66Properties as Resources
- An RDF statement associates a resource with a
property value - The predicate (property type) denotes the type of
association - The object represents the value assigned
66
67Properties as Resources
- Predicates in RDF are interesting
- Predicates are resources
- Predicates can be the subjects of statements
67
68Properties as Resources
- An RDF predicate (or property) is also a kind of
resource - It can be identified by a URI reference
- A standard RDF property defined in the RDF model
68
69Properties as Resources
- http//www.w3.org/1999/02/22-rdf-syntax-nstype
69
70Properties as Resources
- A property identified by this URI reference is
used to state the TYPE of the resource - The recommendation includes an example where the
subject is a person - This subject will have a type property
70
71RDF Graphs
- We can represent the RDF notation visually using
graphs - In graphs we use a node to represent a resource
or literal value, an arrow represents a predicate
color
shoe
red
71
72RDF Graphs
- In RDF we cannot speak about all shoes
- We can only speak about particular resources
- Statements can be made about the class of shoes
- This is not the same as making a statement about
a generic shoe
72
73RDF Graphs
- Lets give the shoe an identifier instead of a
generic name
Shoe-23
color
red
73
74RDF Graphs
- In RDF graphs circles or ovals represent
resources and rectangles represent literal values
color
Shoe-23
red
74
75RDF Graphs
- Resources with Many Statements
- We can have a graph that depicts several
statements about the same resource
435 555-6789
phone
Person-1
name
William Sparks
email
Wsparks_at_mailto.com
city
state
MA
Springfield
75
76RDF Graphs
- It goes without saying that city and state are
somehow related and yet this information is not
represented in the diagram - We can correct this situation with the addition
of a special node - the anonymous node
76
77RDF Graphs
435 555-6789
phone
Person-1
name
William Sparks
email
Wsparks_at_mailto.com
city
state
MA
Springfield
77
78RDF Graphs
- person-1 has an address that is something whose
type is address, whose city is Springfield, and
whose state is MA - This something is known by its properties
- It is not known by its intrinsic identity
78
79RDF Graphs
435 555-6789
phone
Person-1
name
William Sparks
email
Wsparks_at_mailto.com
type
city
state
address
MA
Springfield
79
80RDF Graphs
- Describing Collections
- RDF provides three types of mechanisms to
describe collections - (1) Bag
- (2) Alternative
- (3) Sequence
80
81RDF Graphs
- Bag
- Contains any number of resources without any
order - Duplicates are allowed
81
82RDF Graphs
- Alternative
- Specifies that any one of the members can be
selected - For example -
- A light switch can be on or off
82
83RDF Graphs
- Sequence
- Contains an ordered collection of resources
83
84RDF Graphs
- The arcs from a collection node to its members
are given special labels - rdf1
- rdf2
- And so on ...
84
85RDF Graphs
rdf_1
Alternative
state
Light Switch
rdf_2
85
86rdfStatement
- A special resource
- Can be used to say things about triples
- In the RDF model, a triple is NOT a resource
- Therefore, it cant be the subject of another
statement
86
87RDF Graphs
RDFStatement
person-1
type
subject
name
predicate
object
William Sparks
87
88RDF Graphs
- This graph is saying, There is something whose
type is RDFStatement ...
RDFStatement
person-1
type
subject
name
predicate
object
William Sparks
88
89RDF Graphs
- person-1 is the subject ...
RDFStatement
person-1
type
subject
name
predicate
object
William Sparks
89
90RDF Graphs
RDFStatement
person-1
type
subject
name
predicate
object
William Sparks
90
91RDF Graphs
- and William Sparks as an object
RDFStatement
person-1
type
subject
name
predicate
object
William Sparks
91
92RDF Graphs
- Once we create this node we can use it as the
subject of other sentencces
RDFStatement
person-1
type
subject
name
predicate
object
William Sparks
92
93RDF Graphs
- We call this process reifying
- To reify is to make a thing out of something
93
94Meshing Data and Meta Data
- Supposing you had a data model as shown below
reference
0..n
occurs in
0..n
1..n
publication
person
is written by
one or more
0..n
published
organization
94