Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
1 © Copyright @2009 Dieter Fensel and Mick Kerrigan
Intelligent Systems
Semantic Web and Exam Preparation
2
Where are we?
# Title 1 Introduction
2 Propositional Logic
3 Predicate Logic
4 Theorem Proving, Description Logics and Logic Programming
5 Search Methods
6 CommonKADS
7 Problem Solving Methods
8 Planning
9 Agents
10 Rule Learning
11 Inductive Logic Programming
12 Formal Concept Analysis
13 Neural Networks
14 Semantic Web and Exam Preparation
3
Agenda
• Semantic Web - Data • Motivation • Technical Solution: URI, RDF, RDFS, OWL, SPARQL • Illustration by Larger Examples: KIM Browser Plugin, Disco Hyperdata Browser • Extensions: Linked Open Data
• Semantic Web – Processes • Motivation • Technical Solution: Semantic Web Services, WSMO, WSML, SEE, WSMX • Illustration by Larger Examples: SWS Challenge, Virtual Travel Agency
• Extensions: WSMX at work
• Conclusions
3
4
SEMANTIC WEB - DATA
4
5
MOTIVATION
5
6
Motivation
• If the Web is about the global networking of data through URL, HTML, and HTTP…
• … the Semantic Web is about the global networking of knowledge through URI, RDF, and SPARQL
• This knowledge can be an annotation of Web data (this picture depicts Innsbruck) or just for knowledge‘s sake (Innsbruck is a city in Austria)
• Structured data: – is a key towards Artificial Intelligence – is background knowledge – enables formal reasoning
6
7
TECHNICAL SOLUTIONS
7
8
Uniform Resource Identifier
Taken from http://www.w3.org/TR/webarch/
9
• URIs are used to identify resources, not just things that exists on the Web, e.g. Dieter Fensel, University of Innsbruck
• RDF is used to make statements about resources in the form of triples
<entity, property, value>
• Results in the creation of a labeled directed graph
ex:john ex:bill ex:father-of
ex:bill ex:tom ex:father-of
9
RDF
10
RDFS
• RDFS is a language for defining RDF types • Define Classes
– #Student is a class • Relationships between classes
– #Student is a sub-class of #Person • Properties of classes
– #Person has a property hasName – hasName has a domain of Person and a range of a string literal – Can define relationship between properties with rdfs:subPropertyOf
ex:john ex:student rdf:type
“John Smith”
ex:hasName
10
11
RDFS Example
11
12
OWL
• The limitation of RDFS is that it only allows binary relations
• OWL provides an ontology language, that is a more expressive Vocabulary Definition Language for use with RDF
– Class membership – Equivalance of classes – Consistency – Classification
• OWL is layered into languages of different expressiveness – OWL Lite: Classification Hierarchies, Simple Constraints – OWL DL: Maximal expressiveness while maintaining tractability – OWL Full: Very high expressiveness, loses tractability, all syntactic freedom of RDF
• More expressive means harder to reason with
12
13
SPARQL
• SPARQL is an RDF Query Language • Uses a SQL-like syntax
• Example: Find the names of all the Students
PREFIX ex <http://www.example.org/> PREFIX rdfs <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
SELECT ?name FROM <http://www.uibk.ac.at/students> WHERE{
?x rdfs:type ex:student. ?x ex:hasName ?name.
}
?name
John Smith
Tom Johnson
Bill Thompson
13
14
ILLUSTRATION BY LARGER EXAMPLES
14
15
Annotated Content
• KIM Browser Plugin Web content is annotated using ontologies Content can be searched and browsed intelligently
Select one or more concepts from the ontology… … send the currently loaded web page to the Annotation Server
Illustration 1 – KIM Browser Plugin
15
16
Dereferencable URI
Disco Hyperdata Browser navigating the Semantic Web as an unbound set of data sources
Illustration 2 – Disco Hyperdata Browser
16
17
EXTENSIONS
17
18
Extensions: Linked Open Data
• Linked Data is a method for exposing and sharing connected data via dereferenceable URI’s on the Web
– Use URIs to identify things that you expose to the Web as resources – Use HTTP URIs so that people can locate and look up (dereference) these things – Provide useful information about the resource when its URI is dereferenced – Include links to other, related URIs in the exposed data as a means of improving
information discovery on the Web
• Linked Open Data is an initiative to interlink open data sources – Open: Publicly available data sets that are accessible to everyone – Interlinked: Datasets have references to one another allowing them to be used
together
18
19
Extensions: Linked Open Data
19
20
Extensions: Linked Open Data - FOAF
• Friend Of A Friend (FOAF) provides a way to create machine-readable pages about:
– People – The links between them – The things they do and create
• Anyone can publish a FOAF file on the web about themselves and this data becomes part of the Web of Data
• FOAF is connected to many other data sets, including – Data sets describing music and musicians (Audio Scrobbler, MusicBrainz) – Data sets describing photographs and who took them (Flickr) – Data sets describing places and their relationship (GeoNames)
<foaf:Person> <foaf:name>Dieter Fensel</foaf:name> <foaf:homepage rdf:resource="http://www.fensel.com"/>
</foaf:Person>
20
21
Extensions: Linked Open Data - GeoNames
• The GeoNames Ontology makes it possible to add geospatial semantic information to the Web of Data
• We can utilize GeoNames location within the FOAF profile
• GeoNames is also linked to more datasets – US Census Data – Movie Database (Linked MDB) – Extracted data from Wikipedia (DBpedia)
<foaf:Person> <foaf:name>Dieter Fensel</foaf:name> <foaf:homepage rdf:resource="http://www.fensel.com"/> <foaf:based_near ” http://ws.geonames.org/rdf?geonameId=2775220"/>
</foaf:Person>
21
22
Extensions: Linked Open Data - DBpedia
• DBpedia is a community effort to extract structured information from Wikipedia and to make this information available on the Web
• As our FOAF profile has been linked to GeoNames, and GeoNames is linked to DBpedia, we can ask some interesting queries over the Web of Data
– What is the population of the city in which Dieter Fensel lives? => 117916 people
– At which elevation does Dieter Fensel live? => 574m
– Who is the mayor of the city in which Dieter Fensel lives => Hilde Zach
22
23
SEMANTIC WEB - PROCESSES
23
24
MOTIVATION
24
25
Motivation
• The Web is moving from static data to dynamic functionality – Web services: a piece of software available over the Internet,
using standardized XML messaging systems over the SOAP protocol
– Mashups: The compounding of two or more pieces of web functionality to create powerful web applications
– Significant growth of Web APIs • 1.100 Web APIs on ProgrammableWeb.com (including SOAP and REST APIs) • 3.700 Mashups on ProgrammableWeb.com (combining Web APIs from one or
more sources
• Examples: – Amazon Web Services – iGoogle – Yahoo Pipes – RSS Feeds 25
25
26 26
Motivation
27
• Web services and mashups are limited by their syntactic nature
• As the amount of services on the Web increases it will be harder to find Web services in order to use them in mashups
• The current amount of human effort required to build applications is not sustainable at a Web scale
Motivation
27
28
TECHNICAL SOLUTIONS
28
29
Semantic Web Services
• Brings the benefits of Semantics to the executable part of the Web – Ontologies as data model – Unambiguous definition of service functionality and external interface
• Reduce human effort in integrating services in SOA – Many tasks in the process of using Web services can be automated
• Improve dynamism – New services available for use as they appear – Service Producers and Consumers don’t need to know of each others existence
• Improve stability – Service interfaces are not tightly integrated so even less impact from changes – Services can be easily replaced if they are no longer available – Failover possibilities are limited only by the number of available services
29
30
Semantic Web Services
• Semantic Web Services are a layer on top of existing Web service technologies and do not aim to replace them
• Provide a formal description of services, while still being compliant with existing and emerging technologies
• Distinguish between a Web service (computational entity) and a service (value provided by invocation)
• Make Web services easier to: – Find – Compare – Compose – Invoke
30
31
Conceptual Model for SWS
Formal Language for WSMO
Ontology & Rule Language for the Semantic Web
Technical Overview
31
Execution Environment
For SWS
32
Strict Decoupling of Modeling Elements
Centrality of Mediation
Ontological Role Separation
Description versus Implementation
WSMO Ontology-Based
Web Service versus Service
WSMO – Design Principles
32
33
WSMO – Conceptual Model
Objectives that a client wants to achieve by using Web Services
Formally specified terminology used by all other components
Semantic description of Web Services • Capability (functional) • Interfaces (usage)
Connectors between components with mediation facilities for handling heterogeneities
33
34
WSML – Language Family
WSML -‐ Core
WSML -‐ DL
WSML -‐ Full
WSML -‐ Flight
WSML -‐ Rule
f
with
without
34
Exp
ress
ivity
35
Semantic Execution Environment
35
Seman(c Execu(on Environment
Discovery Ranking SelecSon
ComposiSon Data MediaSon Process MediaSon
Process ExecuSon
LiVing & Lowering
base
broker verScal
Mon
itoring
Reasoning Storage
36
Semantic Execution Environment - WSMX
36
37
ILLUSTRATION BY LARGER EXAMPLES
37
38
• Blue company has discovered Moon company on the Web • Blue company wishes to communicate with Moon company
• Broker required to resolve data and process interoperability issues
Purchase Order
Purchase Order Confirmation
id
cid
openOrder
addItem*
closeOrder
Blue Company can only send POs and
receive PO Confirmations
Allows the opening of a PO, the specification of the items
to be purchased and the closing of the PO
Receives a customer id and returns a full
customer description Illustration 1: SWS Challenge
38
39
Rail Services
Flight Services
Hotel Services
Car Hire Services
Illustration 2: Virtual Travel Agency
39
40
EXTENSIONS
40
41
Extensions: WSMX At Work
41
42
Extensions: WSMX At Work
Request to discover Web services.
42
43
Extensions: WSMX At Work
Goal expressed in WSML is sent to WSMX System Interface
43
44
Extensions: WSMX At Work
Com. M. implements the interface to receive WSML goals
44
45
Extensions: WSMX At Work
Com. M. informs Core that Goal has been received
45
46
Extensions: WSMX At Work
Chor. wrapper picks up event for Chor. component
46
47
Extensions: WSMX At Work
New choreography Instance is created
47
48
Extensions: WSMX At Work
Core is notified that choreography instance has been created.
48
49
Extensions: WSMX At Work
WSML goal is parsed to internal format.
49
50
Extensions: WSMX At Work
Discovery is invoked
for parsed goal.
50
51
Extensions: WSMX At Work
Discovery may requires ontology
mediation.
51
52
Extensions: WSMX At Work
After data mediation, Discovery iterates, if needed through last steps until result set is finished.
52
53
Extensions: WSMX At Work
Selection is invoked to relax result set to finally one service.
53
54
Extensions: WSMX At Work
Choreography instance for goal requester is checked for next steps.
54
55
Extensions: WSMX At Work
Result is returned to Com. Man. to be forwarded to the service requester.
55
56
Extensions: WSMX At Work
Set of Web Service descriptions expressed in WSML sent to adapter.
56
57
Extensions: WSMX At Work
Set of Web Service descriptions expressed in requester’s own format returned to goal requester.
57
58
SUMMARY
58
59
Summary
• The Semantic Web provides a mechanism for – Representing knowledge on the Web – Annotating data on the Web – Annotating services on the Web
• Everything is identified by a URI • RDF to assert relations between resources • RDFS and OWL to make statements about types • SPARQL to query RDF data • WSMO as a conceptual model • WSML for describing services at different levels of expressivity • WSMX as a Semantic Execution Environment for bringing requesters
and providers together
59
60
REFERENCES
60
61
References
• Semantic Web Primer: http://www.ics.forth.gr/isl/swprimer/ • Linked Open Data: http://linkeddata.org/ • Linked Open Data Tutorial:
http://www4.wiwiss.fu-berlin.de/bizer/pub/LinkedDataTutorial/ • WSMO: http://www.wsmo.org/TR/d2/ • WSML: http://www.wsmo.org/TR/d16/d16.1/ • WSMO/WSML Tutorials: http://wiki.sti2.at/index.php?title=WSMT_Tutorials
• Wikipedia: – URI: http://en.wikipedia.org/wiki/URI – RDF; http://en.wikipedia.org/wiki/Resource_Description_Framework – RDFS: http://en.wikipedia.org/wiki/RDFS – SPARQL: http://en.wikipedia.org/wiki/SPARQL – WSMO: http://en.wikipedia.org/wiki/WSMO – WSML: http://en.wikipedia.org/wiki/Web_Services_Modeling_Language
61
62 62
Exam Preparation
• Exam will take place on the 1st of February 2010, 14:15 in room HG. • Exam time is 90 minutes • The material for exam are the slide sets:
Title Introduction
Propositional Logic
Predicate Logic
Theorem Proving, Description Logics and Logic Programming
Search Methods
CommonKADS
Problem Solving Methods
Planning
Agents
Rule Learning
Inductive Logic Programming
Semantic Web and Exam Preparation
63 63
Questions?