Title: Semantic Web: State of the Art and Opportunities
1Semantic WebState of the Art and Opportunities
Industrial Ontologies Group
- Vagan Terziyan
- Compiled, partly based on various online
tutorials and presentations, with respect to
their authors - Industrial Ontologies Group
- http//www.cs.jyu.fi/ai/OntoGroup/index.html
University of Jyväskylä
2Web of Everything Summary(EaaS4E beyond
Cloud Computing)
- While the academic and business communities are
exited with the new Cloud Computing and SOA
slogan EaaS Everything-as-a-Service !
spending to it huge resources without full
understanding of what everything actually
means, our group since 2003 with extremely modest
resources is actively working on GUN technology
and Web 5.0 (Web of Everything), which much
more challenging slogan (based on ?-projection
technological vision) is EaaS4E
Everything-as-a-Service for Everything!, meaning
Really Everything-as-a- Proactive, Semantic and
Intelligent Web Service Provider and Consumer!.
October 2009 Vagan Terziyan Head of Industrial
Ontologies Group
32020 And Beyond ..
Middle Agent
Praffuls Agent ContactsA Middle Agent to find
out some hospital in powaihaving a recently
admittedpatient named Hansa.
Agent Your wife is admitted at New Powai
Hospital Ward No. 9
Agent Your meeting is re-scheduled to tomorrow
500 PM
Phone Your wife had an accident she is admitted
at some hospital in powai
New Powai Hospital
Prafful I still dont know where is she
admitted in powai . I should use my agent .
Prafful I have a meeting with my boss and I am
late .
Prafful I should inform my agent to reschedule
meeting
Praffuls Agent Negotiates WithBosss Agent and
re-schedule meeting to tomorrow.
4Motivation for Semantic Web
5i.e. the Syntactic Web is
- A place where
- computers do the presentation (easy) and
- people do the linking and interpreting (hard).
- Why not get computers to do more of the hard
work?
Goble 03
6Hard Work using the Syntactic Web
- Complex queries involving background knowledge
- Find information about animals that use sonar
but are not either bats, dolphins or whales - Locating information in data repositories
- Travel enquiries
- Prices of goods and services
- Results of human genome experiments
- Delegating complex tasks to web agents
- Book me a holiday next weekend somewhere warm,
not too far away, and where they speak French or
English
Almost impossible for machines and too hard for
people without automation
7Limitations of the Web today
Machine-to-human, not machine-to-machine
8Summarizing the Problem Computers dont
understand Meaning
- My mouse is broken. I need a new one
Use of ontology My mouse is broken vs. My
mouse is dead
9(No Transcript)
10(No Transcript)
11(No Transcript)
12(No Transcript)
13(No Transcript)
14Approach Semantic Web
- The Semantic Web is a vision the idea of
having data on the Web defined and linked in a
way that it can be used by machines not just for
display purposes, - but for automation, integration and reuse
- of data across various applications
- http//www.w3.org/sw/
- The Semantic Web is an initiative with the
goal of extending the current Web and
facilitating Web automation, universally
accessible web resources, and the 'Web of Trust',
providing a universally accessible platform that
allows data to be shared and processed by
automated tools as well as by people.
15(No Transcript)
16(No Transcript)
17(No Transcript)
18(No Transcript)
19(No Transcript)
20(No Transcript)
21(No Transcript)
22Tim Berners-Lee's Vision of Semantic Web
(IJCAI-01)
23Semantic Web Stack (updated, W3C, 2006)
24Semantic Web New Users
applications
agents
25Semantic Web Annotations
applications
agents
Semantic annotations are specific sort of
metadata, which provides information about
particular domain objects, values of their
properties and relationships, in a
machine-processable, formal and standardized way.
26Semantic Web Ontologies
applications
agents
Ontologies make metadata interoperable and ready
for efficient sharing and reuse. It provides
shared and common understanding of a domain, that
can be used both by people and machines.
Ontologies are used as a form of agreement-based
knowledge representation about the world or some
part of it and generally describe domain
individuals, classes, attributes, relations and
events.
27Semantic Web Rules
applications
agents
Logical support in form of rules is needed to
infer implicit content, metadata and ontologies
from the explicit ones. Rules are considered to
be a major issue in the further development of
the semantic web. On one hand, they can be used
in ontology languages, in conjunction with or as
an alternative to description logics. And on the
other hand, they will act as a means to draw
inferences, to configure systems, to express
constraints, to specify policies, to react to
events/changes, to transform data, to specify
behavior of agents, etc.
28Semantic Web Languages
applications
agents
Languages are needed for machine-processable
formal descriptions of metadata (annotations)
like e.g. RDF ontologies like e.g. OWL. rules
like e.g. RuleML. The challenge is to provide a
framework for specifying the syntax (e.g. XML)
and semantics of all of these languages in a
uniform and coherent way. The strategy is to
translate the various languages into a common
'base' language (e.g. CL or Lbase) providing them
with a single coherent model theory.
29Semantic Web Tools
applications
agents
User-friendly tools are needed for metadata
manual creation (annotating content) or automated
generation, for ontology engineering and
validation, for knowledge acquisition (rules),
for languages parsing and processing, etc.
30Semantic Web Applications and Services
applications
agents
Utilization of Semantic Web metadata, ontologies,
rules, languages and tools enables to provide
scalable Web applications and Web services for
consumers and enterprises" making the web
'smarter' for people and machines.
31The Semantic Web
The Ontology Articulation Toolkit helps agents to
understand unknown ontologies
32Cant we just use XML?
This is what a web-page in natural language
looks like for a machine
J. Hendler
33XML helps
XML allows meaningful tags to be added toparts
of the text
J. Hendler
34XML ? machine accessible meaning
But to your machine, the tags look like this.
J. Hendler
35Schemas take a step in the right direction
Schemas help.
lt CV gt
by relating common termsbetween documents
private
J. Hendler
36But other people use other schemas
Someone else has one like this.
?namegt
lteducgt
lt CV gt
ltgt
lt????gt
J. Hendler
37The semantics isnt there
lt CV gt
which dont fit in
private
J. Hendler
38KR provides external referents to merge on
nme
CV
CV
work
vate
CV
educ
educ
Semantic Web languages add mappings and structure.
J. Hendler
39Semantic Web basics
- RDF
- is a W3C standard, which provides tool to
describe Web resources - provides interoperability between applications
that exchange machine-understandable information - RDF Schema
- is a W3C standard which defines vocabulary for
RDF - organizes this vocabulary in a typed hierarchy
- capable to explicitly declare semantic relations
between vocabulary terms
40Where we are Today the Syntactic Web
Hendler Miller 02
41Most of the Current Web (dumb links)
42Semantic Web (data connected by relationships)
43RDF Semantic Web over Web Resources
John
has_homepage
Director
has_job
to_be_in_love_with
Ontology
has_job
has_homepage
Secretary
Mary
44Resources
- All things being described by RDF expressions are
called resources - entire Web page
- a specific XML element
- whole collection of pages
- an object that is not directly accessible via the
Web.
45Semantic Predicate
Lk
Aj
Ai
Relation (i ? j)
Ai
Property (i j)
Lk
46Semantic Function
Variables
Name of Function
Value of property
Lk
Aj
Ai
Relation
Ai
Property
Lk
47Different Ways to Represent properties
in RDF
in RDFS
in semantic network
48RDF Statement
Property_k
Resource_i
Value_n
OR
Property_r
Resource_i
Resource_ j
49Semantic Relation as RDF statement(so called
object property)
Lk
Relation
Aj
Resource
Ai
Resource
Relation (i ? j)
Subject
object
Predicate
Personal web page of Terziyan V.
Web page of Agora Center
http//www.cs.jyu.fi/ai/vagan/index.html
http//www.jyu.fi/agora-center/indexEng.html
refers_to
employed_by
URI of Terziyan V.
URI of Agora Center
http//www.cs.jyu.fi/ai/vagan/vagan
http//www.jyu.fi/agora-center/AC
Dereferenceable URI (Hash vs. Slash)
Dereferenceable URI (Hash vs. Slash)
50Semantic Property as RDF statement (so called
datatype property)
Property
Literal
Resource
Subject
object
Predicate
Personal web page of Terziyan V.
http//www.cs.jyu.fi/ai/vagan/index.html
Literal
has_birthday
15.02.2000
Birthday of the web-page
Birthday of Terziyan V.
has_birthday
27.12.1958
URI of Terziyan V.
http//www.cs.jyu.fi/ai/vagan/vagan
Dereferenceable URI (Hash vs. Slash)
51Semantic Network of Web Resources
Personal web page of Terziyan V.
Web page of Agora Center
http//www.cs.jyu.fi/ai/vagan/index.html
http//www.jyu.fi/agora-center/indexEng.html
refers_to
isWebPageOf
isWebPageOf
27.12.1958
hasWebPage
has_birthday
hasWebPage
employed_by
URI of Terziyan V.
URI of Agora Center
http//www.cs.jyu.fi/ai/vagan/vagan
http//www.jyu.fi/agora-center/AC
52From Hyperlinks to Semantic Web
http//www.kture.kharkov.ua/
http//www.cs.jyu.fi/ai/
university
international_contacts
http//www.cs.jyu.fi/ai/contacts.html
53Resources and URIs
- A resource can be anything that has identity
- Uniform Resource Identifiers (URI) provide a
simple and extensible means for identifying a
resource - Not all resources are network "retrievable"
e.g., human beings, corporations, and books in a
library can also be considered resources
The term "Uniform Resource Locator" (URL)
refers to the subset of URI that identify
resources via a representation of their primary
access mechanism (e.g., their network
"location"), rather than identifying the resource
by name or by some other attribute(s) of that
resource.
54URI
Venn diagram of Uniform Resource Identifier
(URI) scheme categories. Schemes in the URL
(locator) and URN (name) categories both function
as resource IDs, so URL and URN are subsets of
URI. They are also, generally, disjoint sets.
However, many schemes can't be categorized as
strictly one or the other, because all URIs can
be treated as names, and some schemes embody
aspects of both categories or neither.
55Dereferenceable URI
The term Linked Data is used to describe a method
of exposing, sharing, and connecting data via
dereferenceable URIs on the Web. Linked Data is
about using the Web to connect related data that
wasnt previously linked, or using the Web to
lower the barriers to linking data currently
linked using other methods. More specifically,
Wikipedia defines Linked Data as a term used to
describe a recommended best practice for
exposing, sharing, and connecting pieces of data,
information, and knowledge on the Semantic Web
using URIs and RDF. Linked Data aims to extend
the Web with a data commons by publishing various
open datasets as RDF on the Web and by setting
RDF links between data items from different data
sources.
A dereferenceable Uniform Resource Identifier or
dereferenceable URI is a resource retrieval
mechanism that uses any of the internet protocols
(e.g. HTTP) to obtain a copy or representation of
the resource it identifies. In the context of
traditional HTML web pages, this is the normal
and obvious way of working A URI refers to the
page, and when requested the web server returns a
copy of it. In other non-dereferenceable
contexts, such as XML Schema, the namespace
identifier is still a URI, but this is simply an
identifier (i.e. a namespace name). There is no
intention that this can or should be
dereferenced. There is even a separate attribute,
schemaLocation, which may contain a
dereferenceable URI that does point to a copy of
the schema document. In the case of Linked Data,
the representation takes the form of a document
(typically HTML or XML) that describes the
resource that the URI identifies. In either case,
the mechanism makes it possible for a user (or
software agent) to "follow your nose" to find out
more information related to the identified
resource.
http//www.ted.com/talks/tim_berners_lee_on_the_ne
xt_web.html
56RDF Statement
- Subject of an RDF statement is a resource
- Predicate of an RDF statement is a property of a
resource - Object of an RDF statement is the value of a
property of a resource
57Example of RDF Statement
Ora Lassila is the creator of the resource
http//www.w3.org/Home/Lassila.
Subject (resource)
http//www.w3.org/Home/Lassila
Predicate (property)
Creator
Object (literal)
Ora Lassila
58RDF Example (subject of statement)
Ora Lassila is the creator of the resource
http//www.w3.org/Home/Lassila.
Subject
ltrdfRDFgt ltrdfDescription about
"http//www.w3.org/Home/Lassila"gt
ltsCreatorgtOra Lassilalt/sCreatorgt
lt/rdfDescriptiongt lt/rdfRDFgt
59RDF Example (predicate of statement)
Ora Lassila is the creator of the resource
http//www.w3.org/Home/Lassila.
ltrdfRDFgt ltrdfDescription about
"http//www.w3.org/Home/Lassila"gt
ltsCreatorgtOra Lassilalt/sCreatorgt
lt/rdfDescriptiongt lt/rdfRDFgt
Predicate
60RDF Example (object of statement)
Ora Lassila is the creator of the resource
http//www.w3.org/Home/Lassila.
ltrdfRDFgt ltrdfDescription about
"http//www.w3.org/Home/Lassila"gt
ltsCreatorgtOra Lassilalt/sCreatorgt
lt/rdfDescriptiongt lt/rdfRDFgt
Object
61RDF Example (reference to ontology)
Ora Lassila is the creator of the resource
http//www.w3.org/Home/Lassila.
ltrdfRDFgt ltrdfDescription about
"http//www.w3.org/Home/Lassila"gt
ltsCreatorgtOra Lassilalt/sCreatorgt
lt/rdfDescriptiongt lt/rdfRDFgt
a specific namespace prefix as reference to
ontology where predicates are defined, e.g.
xmlns s"http//description.org/schema/"
62Full XML Document for the Example
Namespaces as attributes of RDF element in XML
lt?xml version"1.0"?gt ltrdfRDF xmlnsrdf"http//
www.w3.org/1999/02/22-rdf-syntax-ns xmlnss"ht
tp//description.org/schema/"gt ltrdfDescription
about "http//www.w3.org/Home/Lassila"gt
ltsCreatorgtOra Lassilalt/sCreatorgt
lt/rdfDescriptiongt lt/rdfRDFgt
63XML Document for the Examplewith default
namespace syntax
lt?xml version"1.0"?gt ltRDF xmlnss"http//des
cription.org/ schema/"gt ltDescription
about "http//www.w3.org/Home/Lassila"gt
ltsCreatorgtOra Lassilalt/sCreatorgt
lt/Descriptiongt lt/RDFgt
64RDF Abbreviated Syntax
- While the serialisation syntax shows the
structure of an RDF model most clearly, often it
is desirable to use a more compact XML form. - The RDF abbreviated syntax accomplishes this.
65RDF Abbreviated Syntax
2a description 'ltrdfDescription'
idAboutAttr? propAttr '/gt'
'ltrdfDescription' idAboutAttr?
propAttr 'gt'
propertyElt 'lt/rdfDescriptiongt'
typedNode 6a
propertyElt 'lt' propName 'gt' value 'lt/'
propName 'gt'
'lt' propName resourceAttr? propAttr '/gt' 16
propAttr propName '"' string '"'
(with embedded quotes
escaped) 17 typedNode 'lt' typeName
idAboutAttr? propAttr '/gt'
'lt' typeName idAboutAttr? propAttr
'gt'
property 'lt/' typeName 'gt'
66Abbreviated Syntax Example (1)
Ora Lassila is the creator of the resource
http//www.w3.org/Home/Lassila.
ltrdfRDFgt ltrdfDescription about"http//www.w3
.org/Home/Lassila"
sCreator"Ora Lassila" /gt lt/rdfRDFgt
67Abbreviated Syntax Example (2)
Ora Lassila is the creator of the resource
http//www.w3.org/Home/Lassila.
Subject
ltrdfDescription about"http//www.w3.org/Home/Las
sila"
sCreator"Ora Lassila" /gt
68Abbreviated Syntax Example (3)
Ora Lassila is the creator of the resource
http//www.w3.org/Home/Lassila.
ltrdfDescription about"http//www.w3.org/Home/Las
sila" sCreator
"Ora Lassila" /gt
Predicate
69Abbreviated Syntax Example (4)
Ora Lassila is the creator of the resource
http//www.w3.org/Home/Lassila.
ltrdfDescription about"http//www.w3.org/Home/Las
sila"
sCreator"Ora Lassila" /gt
Object
70Serialisation vs. Abbreviated Syntax Example (1)
The individual referred to by employee id 85740
is named Ora Lassila and has the email address
lassila_at_w3.org. The resource http//www.w3.org/Hom
e/Lassila was created by this individual.
ltrdfRDFgt ltrdfDescription about"http//www.w
3.org/Home/Lassila"gt ltsCreatorgt
ltrdfDescription about"http//www.w3.org/staffId/
85740"gt ltvNamegtOra Lassilalt/vNamegt
ltvEmailgtlassila_at_w3.orglt/vEmailgt
lt/rdfDescriptiongt lt/sCreatorgt
lt/rdfDescriptiongt lt/rdfRDFgt
Serialisation syntax used
71Serialisation vs. Abbreviated Syntax Example (2)
The individual referred to by employee id 85740
is named Ora Lassila and has the email address
lassila_at_w3.org. The resource http//www.w3.org/Hom
e/Lassila was created by this individual.
ltrdfRDFgt ltrdfDescription about"http//www.w
3.org/Home/Lassila"gt ltsCreator
rdfresource"http//www.w3.org/staffId/85740"
vName"Ora Lassila"
vEmail"lassila_at_w3.org" /gt
lt/rdfDescriptiongt lt/rdfRDFgt
Abbreviated syntax used
72RDF N3 syntax
- Notation3, or N3 as it is more commonly known, is
a shorthand non-XML serialization of RDF models,
designed with human-readability in mind N3 is
much more compact and readable than XML RDF
notation. The format is being developed by Tim
Berners-Lee and others from the Semantic Web
community.
RDF sample in XML notation
RDF sample in N3 notation
73RDF N3 examples
- Simple statement
- John Loves Mary
- Reified statement
- John Loves Mary accordingTo Bill
- Goal statement
- gbI gbwant John Loves Mary
- The prefix gb is used here to denote the
ontology of S-APL.
74Some N3 syntax specifics
75Containers
- Frequently it is necessary to refer to a
collection of resources. RDF containers are used
to hold such lists of resources or literals.
There are three types of a container - bag
- sequence
- alternative
76Containers. Bag.
- An unordered list of resources or literals.
- Bags are used to declare that a property has
multiple values and that there is no significance
to the order in which the values are given. - Bag might be used to give a list of part numbers
where the order of processing the parts does not
matter. Duplicate values are permitted.
77Bag Example (1)
The students in course 6.001 are Amy, Tim, John,
Mary, and Sue
78Bag Example (2)
The graph has eight nodes and seven arcs. The
first node is the resource /courses/6.001. An arc
labelled students connects this node to an
unnamed node. An arc labelled rdftype connects
the unnamed node to a node labelled rdfBag. Five
additional arcs labelled rdf_1, rdf_2, rdf_3,
rdf_4, and rdf_5 connect the unnamed node to
nodes labelled, respectively, /Students/Amy,
/Students/Tim, /Students/John, /Students/Mary,
and /Students/Sue. All the nodes are represented
as ovals.
79Bag Example (3)
The students in course 6.001 are Amy, Tim, John,
Mary, and Sue
ltrdfRDFgt ltrdfDescription about"http//mycol
lege.edu/courses/6.001"gt ltsstudentsgt
ltrdfBaggt ltrdfli
resource"http//mycollege.edu/students/Amy"/gt
ltrdfli resource"http//mycollege.edu/s
tudents/Tim"/gt ltrdfli
resource"http//mycollege.edu/students/John"/gt
ltrdfli resource"http//mycollege.edu/
students/Mary"/gt ltrdfli
resource"http//mycollege.edu/students/Sue"/gt
lt/rdfBaggt lt/sstudentsgt
lt/rdfDescriptiongt lt/rdfRDFgt
80Containers. Sequence.
- An ordered list of resources or literals.
- Sequence is used to declare that a property has
multiple values and that the order of the values
is significant. - Sequence might be used, for example, to preserve
an alphabetical ordering of values. - Duplicate values are permitted.
81Containers. Alternative.
- A list of resources or literals that represent
alternatives for the (single) value of a
property. - An application using a property whose value is an
Alternative collection is aware that it can
choose any one of the items in the list as
appropriate.
82Alternative Example (1)
The source code for X11 may be found at
ftp.x.org, ftp.cs.purdue.edu, or ftp.eu.net
83Alternative Example (2)
The graph has six nodes and five arcs. The first
node is the resource http//x.org/packages/X11.
An arc labelled DistributionSite connects this
node to an unnamed node. An arc labelled rdftype
connects the unnamed node to a node labelled
rdfAlt. Three additional arcs labelled rdf_1,
rdf_2, and rdf_3 connect the unnamed node to
nodes labelled, respectively, ftp.x.org,
ftp.cs.purdue.edu, and ftp.eu.net. All the nodes
are represented as ovals
84Alternative Example (3)
The source code for X11 may be found at
ftp.x.org, ftp.cs.purdue.edu, or ftp.eu.net
ltrdfRDFgt ltrdfDescription about"http//x.org
/packages/X11"gt ltsDistributionSitegt
ltrdfAltgt ltrdfli resource"ftp//ftp.x
.org"/gt ltrdfli resource"ftp//ftp.cs.p
urdue.edu"/gt ltrdfli resource"ftp//ftp
.eu.net"/gt lt/rdfAltgt
lt/sDistributionSitegt lt/rdfDescriptiongt
lt/rdfRDFgt
85Containers vs. Repeated Properties (1)
Sue has written "Anthology of Time", "Zoological
Reasoning", "Gravitational Reflections".
There is no stated relationship between the
publications other than that they were written
by the same person
86Containers vs. Repeated Properties (2)
The committee of Fred, Wilma, and Dino approved
the resolution.
three committee members as a whole voted in a
certain manner it does not necessarily state
that each committee member voted in favour of
the resolution.
87Statements about Statements (1)
- For example, let us consider the sentence
- Ora Lassila is the creator of the resource
http//www.w3.org/Home/Lassila. -
- RDF would regard this sentence as a fact. If,
instead, we write the sentence - Ralph Swick says that Ora Lassila is the creator
of the resource http//www.w3.org/Home/Lassila - we have said nothing about the resource
http//www.w3.org/Home/Lassila instead, we have
expressed a fact about a statement Ralph has made.
88Statements about Statements (2)
- To model statements RDF defines the following
properties - subject
- The subject property identifies the resource
being described by the modelled statement that
is, the value of the subject property is the
resource about which the original statement was
made (e.g., http//www.w3.org/Home/Lassila). - predicate
- The predicate property identifies the original
property in the modelled statement. The value of
the predicate property is a resource representing
the specific property in the original statement
(in our example, creator). - object
- The object property identifies the property value
in the modelled statement. The value of the
object property is the object in the original
statement (in our example, "Ora Lassila"). - type
- The value of the type property describes the type
of the new resource. All reified statements are
instances of RDFStatement that is, they have a
type property whose object is RDFStatement.
89Statements about Statements (3)
Ralph Swick says that Ora Lassila is the creator
of the resource http//www.w3.org/Home/Lassila
90Statements about Statements (4)
An unnamed node is the source of all five arcs.
The first arc is labelled rdftype and points to
the node identified as rdfStatement. The second
arc is labelled rdfpredicate and points to the
node identified as sCreator. The third arc is
labelled rdfsubject and points to a node
labelled http//www.w3.org/Home/Lassila. The
fourth arc is labelled rdfobject and points to a
node containing the string value "Ora Lassila".
The fifth and final arc is labelled
aattributedTo and points to a node containing
the string value "Ralph Swick".
91Statements about Statements (5)
Ralph Swick says that Ora Lassila is the creator
of the resource http//www.w3.org/Home/Lassila
ltrdfRDF xmlnsrdf"http//w3.org/TR/1999/PR-r
df-syntax-19990105" xmlnsa"http//descripti
on.org/schema/"gt ltrdfDescriptiongt
ltrdfsubject resource"http//www.w3.org/Home/Lass
ila" /gt ltrdfpredicate resource"http//desc
ription.org/schemaCreator" /gt
ltrdfobjectgtOra Lassilalt/rdfobjectgt
ltrdftype resource"http//w3.org/TR/1999/PR-rdf-s
yntax-
19990105Statement"
/gt ltaattributedTogtRalph
Swicklt/aattributedTogt lt/rdfDescriptiongt
lt/rdfRDFgt
92Statements about containers
ltrdfDescription about"http//www.cs.jyu.fi/vag
an/courses/ITKS544"gt ltslecturesgt
ltrdfBag ID"pages"gt ltrdfli
rdfresource" http//www.cs.jyu.fi/vagan/courses/
ITKS544/Lecture_1.ppt"gt ltrdfli
rdfresource" http//www.cs.jyu.fi/vagan/courses/
ITKS544/Lecture_2.ppt"gt
ltrdfli rdfresource"
http//www.cs.jyu.fi/vagan/courses/ITKS544/Lecture
_8.ppt"gt lt/rdfBaggt
lt/slecturesgt lt/rdfDescriptiongt ltrdfDescription
about"pages"gt ltdccreatorgt Vagan
Terziyan lt/dccreatorgt lt/rdfDescriptiongt
93Sharing Values between Sequences (1)
Consider the case of specifying 3 collected works
of an author, sorted once by publication date and
sorted again alphabetically by subject.
94Sharing Values between Sequences (2)
ltRDF xmlns"http//w3.org/TR/1999/PR-rdf-syntax-19
990105"gt ltSeq ID"JSPapersByDate"gt
ltli resource"http//www.dogworld.com/Aug96.doc"/gt
ltli resource"http//www.webnuts.net/Jan97
.html"/gt ltli resource"http//www.carchat.c
om/Sept97.html"/gt lt/Seqgt ltSeq
ID"JSPapersBySubj"gt ltli
resource"http//www.carchat.com/Sept97.html"/gt
ltli resource"http//www.dogworld.com/Aug96.d
oc"/gt ltli resource"http//www.webnuts.net/
Jan97.html"/gt lt/Seqgt lt/RDFgt
95Ternary Relation (1)
John Smiths weight is 200 pounds
96Ternary Relation (2)
John Smiths weight is 200 pounds
ltRDF xmlns"http//w3.org/TR/1999/PR-rdf-synta
x-19990105" xmlnsrdf"http//w3.org/TR/1999/
PR-rdf-syntax-19990105" xmlnsn"http//www.n
ist.gov/units/"gt ltDescription
about"John_Smith"gt ltnweight
rdfparseType"Resource"gt
ltrdfvaluegt200lt/rdfvaluegt ltnunits
rdfresource"http//www.nist.gov/units/Pounds"/gt
lt/nweightgt lt/Descriptiongt lt/RDFgt
97Statements about Statements (1)
Ralph Swick says that Ora Lassila is the creator
of the resource http//www.w3.org/Home/Lassila
An unnamed node is the source of all five arcs.
The first arc is labelled rdftype and points to
the node identified as rdfStatement. The second
arc is labelled rdfpredicate and points to the
node identified as sCreator. The third arc is
labelled rdfsubject and points to a node
labelled http//www.w3.org/Home/Lassila. The
fourth arc is labelled rdfobject and points to a
node containing the string value "Ora Lassila".
The fifth and final arc is labelled
aattributedTo and points to a node containing
the string value "Ralph Swick".
98Statements about Statements (2)
Ralph Swick says that Ora Lassila is the creator
of the resource http//www.w3.org/Home/Lassila
ltrdfRDF xmlnsrdf"http//w3.org/TR/1999/PR-r
df-syntax-19990105" xmlnsa"http//descripti
on.org/schema/"gt ltrdfDescriptiongt
ltrdfsubject resource"http//www.w3.org/Home/Lass
ila" /gt ltrdfpredicate resource"http//desc
ription.org/schemaCreator" /gt
ltrdfobjectgtOra Lassilalt/rdfobjectgt
ltrdftype resource"http//w3.org/TR/1999/PR-rdf-s
yntax-
19990105Statement"
/gt ltaattributedTogtRalph
Swicklt/aattributedTogt lt/rdfDescriptiongt
lt/rdfRDFgt
99What is RDFS ?
- RDF Schema
- Defines vocabulary for RDF
- Organizes this vocabulary in a typed hierarchy
(Class, subClassOf, type, Property,
subPropertyOf) - Rich, web-based publication format for declaring
semantics (XML for exchange) - Capability to explicitly declare semantic
relations between vocabulary terms
100RDF Schema
- Semantic network on the Web
- Nodes are identified by URIs
- rdfsClass
- rdfsProperty
- rdfssubClassOf
101Class Hierarchy of the RDFS
Class hierarchy is shown using a "nodes and arcs"
graph representation of the RDF data model. If
one class is a subset of another, then there is
an rdfssubClassOf arc from the node representing
the first class to the node representing the
second.
If a resource is an instance of a class, then
there is an rdftype arc from the resource to the
node representing the class.
102Example (1)
Example expresses the following class hierarchy.
We first define a class MotorVehicle. We then
define three subclasses of MotorVehicle, namely
PassengerVehicle, Truck and Van. We then define a
class Minivan which is a subclass of both Van and
PassengerVehicle.
103Example (2)
ltrdfRDF xmllang"en"
xmlnsrdf"http//www.w3.org/1999/02/22-rdf-syntax
-ns" xmlnsrdfs"http//www.w3.o
rg/2000/01/rdf-schema"gt lt!-- Note this
RDF schema would typically be used in RDF
instance data by referencing it with
an XML namespace declaration, for example
xmlnsxyz"http//www.w3.org/2000/03/example/
vehicles". This allows us to use
abbreviations such as xyzMotorVehicle to refer
unambiguously to the RDF class
'MotorVehicle'. --gt ltrdfDescription
ID"MotorVehicle"gt ltrdftype
resource"http//www.w3.org/2000/01/rdf-schemaCla
ss"/gt ltrdfssubClassOf
rdfresource"http//www.w3
.org/2000/01/rdf-schemaResource"/gt
lt/rdfDescriptiongt ...
104Example (3)
ltrdfDescription ID"PassengerVehicle"gt
ltrdftype resource"http//www.w3.o
rg/2000/01/rdf-schemaClass"/gt
ltrdfssubClassOf rdfresource"MotorVehicle"/gt
lt/rdfDescriptiongt ltrdfDescription
ID"Truck"gt ltrdftype
resource"http//www.w3.org/2000/01/rdf-schemaCla
ss"/gt ltrdfssubClassOf
rdfresource"MotorVehicle"/gt
lt/rdfDescriptiongt ...
105Example (4)
ltrdfDescription ID"Van"gt
ltrdftype resource"http//www.w3.org/2000/01/rdf
-schemaClass"/gt ltrdfssubClassOf
rdfresource"MotorVehicle"/gt
lt/rdfDescriptiongt ltrdfDescription
ID"MiniVan"gt ltrdftype
resource"http//www.w3.org/2000/01/rdf-schemaCla
ss"/gt ltrdfssubClassOf
rdfresource"Van"/gt
ltrdfssubClassOf rdfresource"PassengerVehicle"/
gt lt/rdfDescriptiongt lt/rdfRDFgt
106Dublin Core
- A set of fifteen basic properties for describing
generalised Web resources - ISO Standard 15836-2003 (February 2003)
http//www.niso.org/international/SC4/n515.pdf
The Dublin Core Metadata Initiative is an open
forum engaged in the development of interoperable
online metadata standards that support a broad
range of purposes and business models.
http//dublincore.org/
107Dublin Core (15 basic properties)
- Type
- Format
- Identifier
- Source
- Language
- Relation
- Coverage
- Rights
- Title
- Creator
- Subject
- Description
- Publisher
- Contributor
- Date
108Dublin Core Example
lt?xml version"1.0"?gt ltrdfRDF
xmlnsrdfhttp//www.w3.org/1999/02/22-rdf-syntax
-ns xmlnsdc"http//purl.org/dc/element
s/1.0/"gt ltrdfDescription rdfabout"http//w
ww.ukoln.ac.uk/metadata/resources/dc/
datamodel/WD-dc-rdf/"gt ltdctitlegt
Guidance on expressing the Dublin Core within the
Resource Description
Framework (RDF) lt/dctitlegt
ltdccreatorgt Eric Miller lt/dccreatorgt
ltdccreatorgt Paul Miller lt/dccreatorgt
ltdccreatorgt Dan Brickley lt/dccreatorgt
ltdcsubjectgt Dublin Core Resource Description
Framework RDF eXtensible
Markup Language XML lt/dcsubjectgt
ltdcpublishergt Dublin Core Metadata
Initiative lt/dcpublishergt
ltdccontributorgt Dublin Core Data Model Working
Group lt/dccontributorgt ltdcdategt
1999-07-01 lt/dcdategt ltdcformatgt
text/html lt/dcformatgt ltdclanguagegt en
lt/dclanguagegt lt/rdfDescriptiongt lt/rdfRDFgt
109Where to look next
- RDFhttp//www.w3.org/RDF/
- RDF Schemahttp//www.w3.org/TR/rdf-schema/
110Traditional RDF Statement
- Subject of an RDF statement is a resource
- Predicate of an RDF statement is a property of a
resource - Object of an RDF statement is the value of a
property of a resource (either literal or
resource)
Property_k
Resource_i
Literal
OR
Property_r
Resource_i
Resource_ j
111New semantics of RDF Statement in S-APL (object -
executable resource)
Property_m
exe Resource_ j
Resource_i
Semantics of such statement means that the value
of the Property_m of the Resource_i can be
obtained as a result of execution of the
procedure (query, service, function, etc.)
represented as Resource_ j
executable resource
Semantic Agent Programming Language (Designed by
Industrial Ontologies Group)
112Ontological Vision of Semantic Web
- Semantic Web needs ontologies
- An ontology is
- document or file that formally and in a
standardized way defines the hierarchy of classes
within the domain, semantic relations among terms
and inference rules - Use of ontologies
- Sharing semantics of your data across distributed
applications
113Ontologies the foundation of Semantic Web
Ontologies are key enabling technology for the
Semantic Web ..explicit specification of
conceptualization.. Ontology is formal and rich
way to provide shared and common understanding of
a domain, that can be used by people and machines
comment
__Thing__
Author
public
private
is-a
Location
Access Rights
Document
Related to
name
Report
is-a
is-a
uri
Web-page
Subject
Instance-of
Instance-of
O. Kononenko
V. Terziyan
public
Author
Author
Access rights
doc1
doc2
name
Related to
Semantic Web
uri
Location
Subject
comment
http//www.ontogroup.net
\\AgServ\vagan\InBCT_1.doc
comment
3.1 analysis
Home page
draft
Query 1 get all documents from location X, but
not web-pages Query 2 get documents related to
Y, with more then one author, one of which is
Terziyan Query 3 are there web-pages of Z with
private access related to documents with
subject S?
114Semantic Web Interoperability
Common (shared) ontology
System 2
System 1
A commitment to a common ontology is a guarantee
of a consistency and thus possibility of data
(and knowledge) sharing
115Query Today
WWW Hotbot
What is Al Qaeda?
The answer may be somewhere in this list of URLs
116Semantic Query
What is Al Qaeda?
A terrorist organization Would you like
additional information on?
- Membership
- Locations
- Structure
- Finances
- Tactics
- Other terrorist organizations
117Example Ontology
These ontologies accessed at remote locations
118RDF-Based Inference
ltdamlClass rdfIDBin Laden"gt
ltrdfssubClassOf rdfresource"terrorist"/gt lt/dam
lClassgt
Implies
- If x is Bin Laden, he must be a terrorist
- If x is a terrorist, then he may or may not be
Bin Laden - If x is not a terrorist, then he is not Bin Laden
- If x is not Bin Laden, he may or may not be a
terrorist
119Communication between people
120What is an ontology?
Studer(98) Formal, explicit specification of a
shared conceptualization
121What is an Ontology?
From Ian Horrocks OWL 2 The Next Generation
122What is an Ontology?
From Ian Horrocks OWL 2 The Next Generation
- A model of (some aspect of) the world
123What is an Ontology?
From Ian Horrocks OWL 2 The Next Generation
- A model of (some aspect of) the world
- Introduces vocabulary relevant to domain, e.g.
- Anatomy
124What is an Ontology?
From Ian Horrocks OWL 2 The Next Generation
- A model of (some aspect of) the world
- Introduces vocabulary relevant to domain, e.g.
- Anatomy
- Cellular biology
125What is an Ontology?
From Ian Horrocks OWL 2 The Next Generation
- A model of (some aspect of) the world
- Introduces vocabulary relevant to domain, e.g.
- Anatomy
- Cellular biology
- Aerospace
126What is an Ontology?
From Ian Horrocks OWL 2 The Next Generation
- A model of (some aspect of) the world
- Introduces vocabulary relevant to domain, e.g.
- Anatomy
- Cellular biology
- Aerospace
- Dogs
127What is an Ontology?
From Ian Horrocks OWL 2 The Next Generation
- A model of (some aspect of) the world
- Introduces vocabulary relevant to domain, e.g.
- Anatomy
- Cellular biology
- Aerospace
- Dogs
- Hotdogs
128What is an Ontology?
From Ian Horrocks OWL 2 The Next Generation
- A model of (some aspect of) the world
- Introduces vocabulary relevant to domain
- Specifies meaning of terms
- Heart is a muscular organ thatis part of the
circulatory system
129What is an Ontology?
From Ian Horrocks OWL 2 The Next Generation
- A model of (some aspect of) the world
- Introduces vocabulary relevant to domain
- Specifies meaning of terms
- Heart is a muscular organ thatis part of the
circulatory system - Formalised using suitable logic
130DL Semantics
From Ian Horrocks OWL A Description Logic
Based Ontology Language
- Semantics given by standard FO model theory
Interpretation domain ?I
Interpretation function I
Individuals iI 2 ?I John Mary Concepts CI µ
?I Lawyer Doctor Vehicle Roles rI µ ?I
?I hasChild owns
Individual Resources
Classes of Resources
Properties of Resources
(Lawyer u Doctor)
131Benefits
Knowledge sharing and reuse
Building an ontology is not a goal in itself.
132Ontology Elements
- Concepts(classes) their hierarchy
- Concept properties (slots/attributes)
- Property restrictions (type, cardinality, domain)
- Relations between concepts (disjoint, equality)
133How to build an ontology?
- Steps
- determine domain and scope
- enumerate important terms
- define classes and class hierarchies
- define slots
- define slot restrictions (cardinality,
value-type)
134Step 1 Determine Domain and Scope
Application route planning agent
Possible questions Distance between two
cities? What sort of connections exist between
two cities? In which country is a city? How many
borders are crossed?
135Step 2 Enumerate Important Terms
136Step 3 Define Classes and Class Hierarchy
137Step 4 Define Slots of Classes
Step 5 Define slot constraints
- Slot-cardinality
- Ex Borders_with multiple, Start_point single
- Slot-value type
- Ex Borders_with- Country
138OWL became standard
- 10 February 2004 the World Wide Web Consortium
announced final approval of two key Semantic Web
technologies, the revised Resource Description
Framework (RDF) and the Web Ontology Language
(OWL). - Read more in
- http//www.w3.org/2004/01/sws-pressrelease.html.en
139 OWL Introduction
- What is OWL?
- OWL is a language for defining Web Ontologies and
their associated Knowledge Bases - The OWL language is a revision of the DAMLOIL
web ontology language incorporating learning from
the design and application use of DAMLOIL.
140Example
- There are two types of animals, Male and Female.
- ltrdfsClass rdfID"Male"gt
- ltrdfssubClassOf rdfresource"Animal"/gt
- lt/rdfsClassgt
- The subClassOf element asserts that its subject -
Male - is a subclass of its object -- the
resource identified by Animal. - ltrdfsClass rdfID"Female"gt
- ltrdfssubClassOf rdfresource"Animal"/gt
- ltowldisjointWith rdfresource"Male"/gt
- lt/rdfsClassgt
- Some animals are Female, too, but nothing can be
both Male and Female (in this ontology) because
these two classes are disjoint (using the
disjointWith tag).
141OWL Example in Protégé (1)
- Class
- Person superclass
- Man, Woman subclasses
- Properties
- isWifeOf, isHusbandOf
- Property characteristics, restrictions
- inverseOf
- domain
- range
- Cardinality
- Class expressions
- disjointWith
142OWL Example in Protégé (2)
143OWL Example in Protégé (3)
144OWL on one Slide
- Symmetric if P(x, y) then P(y, x)
- Transitive if P(x,y) and P(y,z) then P(x, z)
- Functional if P(x,y) and P(x,z) then yz
- InverseOf if P1(x,y) then P2(y,x)
- InverseFunctional if P(y,x) and P(z,x) then yz
- allValuesFrom P(x,y) and yallValuesFrom(C)
- someValuesFrom P(x,y) and ysomeValuesFrom(C)
- hasValue P(x,y) and yhasValue(v)
- cardinality cardinality(P) N
- minCardinality minCardinality(P) N
- maxCardinality maxCardinality(P) N
- equivalentProperty P1 P2
- intersectionOf C intersectionOf(C1, C2, )
- unionOf C unionOf(C1, C2, )
- complementOf C complementOf(C1)
- oneOf C one of(v1, v2, )
- equivalentClass C1 C2
- disjointWith C1 ! C2
- sameIndividualAs I1 I2
Legend Properties are indicated by P, P1, P2,
etc Specific classes are indicated by x, y,
z Generic classes are indicated by C, C1,
C2 Values are indicated by v, v1, v2 Instance
documents are indicated by I1, I2, I3, etc. A
number is indicated by N P(x,y) is read as
property P relates x to y
145An Example
- Woman Person ? Female
- Man Person ? ?Woman
- Mother Woman ? ?hasChild.Person
- Father Man ? ?hasChild.Person
- Parent Father ? Mother
- Grandmother Mother ? ?hasChild.Parent
- We can further infer (though not explicitly
stated) - ? Grandmother ? Person
- Grandmother ? Man ? Woman
- etc.
146Resources
- W3C Documents
- Guide http//www.w3.org/TR/owl-guide/
- Reference http//www.w3.org/TR/owl-ref/
- Semantics and Abstract Syntaxhttp//www.w3.org/T
R/owl-semantics/ - OWL Tutorials
- Ian Horrocks, Sean Bechhoferhttp//www.cs.man.ac
.uk/horrocks/Slides/Innsbruck-tutorial/ - Roger L. Costello, David B. Jacobs
http//www.xfront.com/owl/ - Example Ontologies, e.g. here
- http//www.daml.org/ontologies/
147Tutorial Designing Ontologies with Protégé
PLEASE !!! Download version Protégé 3.4.4.
- Protégé is an ontology editor and a
knowledge-base editor (download from
http//protege.stanford.edu ). - Protégé is also an open-source, Java tool that
provides an extensible architecture for the
creation of customized knowledge-based
applications. - Protégé's OWL Plug-in now provides support for
editing Semantic Web ontologies.
http//www.cs.jyu.fi/ai/vagan/Ontologies.ppt
http//www.cs.man.ac.uk/horrocks/Teaching/cs646/
http//www.co-ode.org/resources/tutorials/ProtegeO
WLTutorial.pdf
148Web of Trust
- Claims can be verified if there is supporting
evidence from another (trusted) source - We only believe that someone is a professor at a
university if the university also claims that
person is a professor, and the university is on a
list I trust.
believe(c1) - claims(x, c1) predicate(c1,
professorAt) arg1(c1, x) arg2(c1,
y) claims(c2, y) predicate(c2,
professorAt) arg1(c2, x) arg2(c2,
y) AccreditedUniversity(y) AcknowledgedUniversit
y(u) - link-from(http//www.cs.umd.edu/universit
y-list,u)
Notice this one
149Rules on top of Semantic Web (Metasemantics)
Metasemantics
Production Rules
Temporal Rules
Semantic Rules
Semantic Web
150State of a Semantic Net
151Production Rules
152Production-Based Reasoning
State after n transformations
Initial state
S(t0nt)
S(t0)
Set of Production Rules
153Example (not formalised rules)
1. Mary will love John if he loves her and if he
is not abusing Pete. 2. Pete will consider Mary
as his friend if she is not in love with John. 3.
Pete will not consider Mary as his friend if she
is in love with John who is abusing him. 4. John
will stop loving Mary if she does not love him or
she is a friend of Pete. 5. Mary will stop loving
John if he is abusing Pete. 6. John being in bad
mood will abuse Pete. 7. John gets rid of bad
mood if Mary loves him or if she is not a friend
of Pete. 8. John will fall in a bad mood if he
loves Mary and she does not love him or vice
versa. 9. John will stop abusing Pete if he
(John) does not love Mary any more or if she is
not a friend of Pete.
154Example (names of objects and relations)
Names of objects A1 John A2 Mary A3 Pete
Names of relations (or properties) L1 to
love L2 to have a friend L3 to abuse L4 to
have a bad mood
155Example (relations and properties)
P1 P(A1, L1, A2) - John loves Mary P2
P(A2, L1, A1) - Mary loves John P3 P(A3,
L2, A2) - Pete has a friend Mary P4
P(A1, L3, A3) - John is abusing Pete P5
P(A1, L4, A1) - John has a bad mood.
156Example (initial state)
1. John loves Mary. 2. Mary does not love
John. 3. Mary is a friend of Pete. 4. John is not
abusing Pete. 5. John is not in a bad mood.
157Example (formalised rules)
1. Mary will love John if he loves her and if he
is not abusing Pete. 2. Pete will consider Mary
as his friend if she is not in love with John. 3.
Pete will not consider Mary as his friend if she
is in love with John who is abusing him. 4. John
will stop loving Mary if she does not love him or
she is a friend of Pete. 5. Mary will stop loving
John if he is abusing Pete. 6. John being in bad
mood will abuse Pete. 7. John gets rid of bad
mood if Mary loves him or if she is not a friend
of Pete. 8. John will fall in a bad mood if he
loves Mary and she does not love him or vice
versa. 9. John will stop abusing Pete if he
(John) does not love Mary any more or if she is
not a friend of Pete.
P1 P(A1, L1, A2) - John loves Mary P2
P(A2, L1, A1) - Mary loves John P3 P(A3,
L2, A2) - Pete has a friend Mary P4
P(A1, L3, A3) - John is abusing Pete P5
P(A1, L4, A1) - John has a bad mood.
158Example (reasoning, 1-st step)
to love
John
Mary
to have a friend
Pete
159Example (reasoning, 2-nd step)
to love
John
Mary
to have a friend
to have a bad mood
Pete
160Example (reasoning, 3-rd step)
to love
John
Mary
to abuse
to have a friend
Pete
161Example (reasoning, 4-th step)
John
Mary
to have a bad mood
Pete
162Example (reasoning, 5-th step)
John
Mary
to abuse
to have a friend
Pete
163Example (reasoning, reaching terminal state)
John
Mary
to have a friend
Pete
terminal state
164Example (final terminal state)
1. John does not love Mary. 2. Mary does not
love John. 3. Mary is a friend of Pete. 4. John
is not abusing Pete. 5. John is not in a bad mood.
165Example (another initial and in the same time
terminal state)
to love
John
Mary
1. John loves Mary. 2. Mary loves John. 3. Mary
is not a friend of Pete. 4. John is not abusing
Pete. 5. John is not in a bad mood.
to love
Pete
terminal state
166Example (two possible terminal states of the
love triangle)
to love
John
Mary
to love
Pete
Mary
John
to have a friend
Pete
167Example (asynchronous reasoning tree)
R1
R8
R4
R1
R4
R4
R6
R4
R6
R4
R8
R9
R6
R9
R5
R8
R7
R3
R9
R5
R3
R9
R5
R7
R8
R9
R6
R7
R9
R2
R9
R7
R5
R8
R6
R2
R9
R2
R7
R2
168Temporal Rules
- Lifetime of a relation
- Restoration time of a relation
169Lifetime of a Relation
Lifetime of relation Lk, which means that since
appearance in the network this relation is valid
T units of time
170Example (Initial state of the network)
171Example (Network evolution)
172Restoration Time of a Relation
Restoration (relaxation) time of relation Lk,
which means that since removal from the network
this relation will be restored and become valid
again after T units of time
173Example
174Example (Network evolution)
t t0
t t0 t
t t0 2t
t t0 3t
175Semantic Pendulum (Cyclic)
176Cyclic Pendulum Example
t t0
t t0 2t
t t0 5t
t t0 7t
177Semantic Pendulum (Semaphore)
178Semantic Semaphore Example
t t0
t t0 t
t t0 5t
t t0 11t
t t0 10t
t t0 6t
179Semantic Rules in SWRL
180Metasemantic Networks
181A Metasemantic Network
Metasemantic Network (Semantic Metanetwork) is
considered formally as the set of semantic
networks, which are put on each other in such a
way that links of every previous semantic network
are in the same time nodes of the next network
182An Example of a Semantic Metanetwork
183How it Works
- In a Semantic Metanetwork every higher level
controls semantic structure of the lower level. - Simple controlling rules might be, for example,
in which contexts certain link of a semantic
structure can exist and in which context it
should be deleted from the semantic structure. - Such multilevel network can be used in an
adaptive control system which structure is
automatically changed following changes in a
context of the environment. - The algebra for reasoning with a semantic
metanetwork is also developed.
184Published and Further Developed in
Terziyan V., Multilevel Models for Knowledge
Bases Control and Their Applications to Automated
Information Systems, Doctor of Technical Sciences
Degree Thesis, Kharkov State Technical University
of Radioelectronics, 1993.
Terziyan V., Puuronen S., Reasoning with
Multilevel Contexts in Semantic Metanetworks, In
P. Bonzon, M. Cavalcanti, R. Nossun (Eds.),
Formal Aspects in Context, Kluwer Academic
Publishers, 2000, pp. 107-126.
185Metasemantic Algebra of Contexts
186Metasemantic Algebra A Semantic Predicate
Semantic predicate describes a piece of knowl