Intelligent Systems
Semantic Web and Exam Preparation
© Copyright @2009 Dieter Fensel and Mick Kerrigan 1 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
2 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 3 SEMANTIC WEB - DATA
4 4 MOTIVATION
5 5 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 6 TECHNICAL SOLUTIONS
7 7 Uniform Resource Identifier
Taken from http://www.w3.org/TR/webarch/
8 RDF
• 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
ex:father-of ex:john ex:bill
ex:father-of ex:bill ex:tom
• Results in the creation of a labeled directed graph
9 9 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
rdf:type ex:john ex:student
ex:hasName
“John Smith”
10 10 RDFS Example
11 11 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 12 SPARQL
• SPARQL is an RDF Query Language • Uses a SQL-like syntax
• Example: Find the names of all the Students
PREFIX ex
SELECT ?name ?name FROM
Bill Thompson
13 13 ILLUSTRATION BY LARGER EXAMPLES
14 14 Illustration 1 – KIM Browser Plugin • 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
Annotated Content
15 15 Illustration 2 – Disco Hyperdata Browser
Dereferencable Disco Hyperdata Browser URI navigating the Semantic Web as an unbound set of data sources
16 16 EXTENSIONS
17 17 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 18 Extensions: Linked Open Data
19 19 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)
20 20 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)
21 21 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 22 SEMANTIC WEB - PROCESSES
23 23 MOTIVATION
24 24 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 25 Motivation
26 26 Motivation
• 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
27 27 TECHNICAL SOLUTIONS
28 28 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 29 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 30 Technical Overview
Conceptual Model for SWS
Formal Language for WSMO
Execution Environment Ontology & Rule Language For SWS for the Semantic Web
31 31 WSMO – Design Principles
Web Service versus Service
Strict Decoupling Ontology-Based of Modeling Elements WSMO Centrality of Ontological Role Mediation Separation
Description versus Implementation
32 32 WSMO – Conceptual Model
Objectives that a client wants to achieve by using Web Services
Formally specified Semantic description terminology used of Web Services by all other • Capability (functional) components • Interfaces (usage)
Connectors between components with mediation facilities for handling heterogeneities
33 33 WSML – Language Family
WSML - Full
WSML - Rule with WSML - DL f without
Expressivity WSML - Flight
WSML - Core
34 34 Semantic Execution Environment
Seman c Execu on Environment
ver cal broker
Discovery Ranking Selec on
Composi on Data Media on Process Media on
Process Li ing &
Monitoring Execu on Lowering
base
Reasoning Storage
35 35 Semantic Execution Environment - WSMX
36 36 ILLUSTRATION BY LARGER EXAMPLES
37 37 Receives a customer id Illustration 1: SWS Challenge and returns a full customer description
id Purchase Order
cid
openOrder Purchase Order Confirmation addItem*
closeOrder
Blue Company can only send POs and • Blue companyreceive has PO discovered Moon company on the Web Confirmations • Blue company wishes to communicate with MoonAllows the company opening of a PO, the specification of the items to be purchased and the • Broker required to resolve data and process interoperabilityclosing of the POissues
38 38 Illustration 2: Virtual Travel Agency
Rail Services
Flight Services
Hotel Services
Car Hire Services
39 39 EXTENSIONS
40 40 Extensions: WSMX At Work
41 41 Extensions: WSMX At Work
Request to discover Web services.
42 42 Extensions: WSMX At Work
Goal expressed in WSML is sent to WSMX System Interface
43 43 Extensions: WSMX At Work
Com. M. implements the interface to receive WSML goals
44 44 Extensions: WSMX At Work
Com. M. informs Core that Goal has been received
45 45 Extensions: WSMX At Work
Chor. wrapper picks up event for Chor. component
46 46 Extensions: WSMX At Work
New choreography Instance is created
47 47 Extensions: WSMX At Work
Core is notified that choreography instance has been created.
48 48 Extensions: WSMX At Work
WSML goal is parsed to internal format.
49 49 Extensions: WSMX At Work
Discovery is invoked for parsed goal.
50 50 Extensions: WSMX At Work
Discovery may requires ontology mediation.
51 51 Extensions: WSMX At Work
After data mediation, Discovery iterates, if needed through last steps until result set is finished.
52 52 Extensions: WSMX At Work
Selection is invoked to relax result set to finally one service.
53 53 Extensions: WSMX At Work
Choreography instance for goal requester is checked for next steps.
54 54 Extensions: WSMX At Work
Result is returned to Com. Man. to be forwarded to the service requester.
55 55 Extensions: WSMX At Work
Set of Web Service descriptions expressed in WSML sent to adapter.
56 56 Extensions: WSMX At Work
Set of Web Service descriptions expressed in requester’s own format returned to goal requester.
57 57 SUMMARY
58 58 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 59 REFERENCES
60 60 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 61 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 62 62 Questions?
63 63