Semantic Web and Exam Preparation
Total Page:16
File Type:pdf, Size:1020Kb
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 <entity, property, value> 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 <http://www.example.org/> PREFIX rdfs <http://www.w3.org/1999/02/22-rdf-syntax-ns#> SELECT ?name ?name FROM <http://www.uibk.ac.at/students> WHERE{ ?x rdfs:type ex:student. John Smith ?x ex:hasName ?name. } Tom Johnson 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:Person> <foaf:name>Dieter Fensel</foaf:name> <foaf:homepage rdf:resource="http://www.fensel.com"/> </foaf:Person> • 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 <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> • 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 Execuon Environment verScal broker Discovery Ranking Selecon Composion Data MediaSon Process MediaSon Process Liing & Monitoring Execuon 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