1 copyright 2010 dieter fensel and mick kerrigan intelligent systems semantic web and services

Download 1  Copyright 2010 Dieter Fensel and Mick Kerrigan Intelligent Systems Semantic Web and Services

If you can't read please download the document

Upload: neil-parrish

Post on 18-Jan-2018

219 views

Category:

Documents


0 download

DESCRIPTION

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, WSMX at work Extensions: Mobile Services, Intelligent Cars, Intelligent Electricity Meters Conclusions 3

TRANSCRIPT

1 Copyright 2010 Dieter Fensel and Mick Kerrigan Intelligent Systems Semantic Web and Services 2 Where are we? #Title 1Introduction 2Propositional Logic 3Predicate Logic 4Reasoning 5Search Methods 6CommonKADS 7Problem-Solving Methods 8Planning 9Software Agents 10Rule Learning 11Inductive Logic Programming 12Formal Concept Analysis 13Neural Networks 14Semantic Web and Services 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, WSMX at work Extensions: Mobile Services, Intelligent Cars, Intelligent Electricity Meters Conclusions 3 4 SEMANTIC WEB - DATA 4 5 MOTIVATION 5 6 6 Motivation: From a Web of Documents to a Web of Data Web of Documents Fundamental elements: 1.Names (URIs) 2.Documents (Resources) described by HTML, XML, etc. 3.Interactions via HTTP 4.(Hyper)Links between documents or anchors in these documents Shortcomings: Untyped links Web search engines fail on complex queries Documents Hyperlinks 7 7 Motivation: From a Web of Documents to a Web of Data Web of DocumentsWeb of Data Documents Things Hyperlinks Typed Links 8 8 Motivation: From a Web of Documents to a Web of Data Characteristics: Links between arbitrary things (e.g., persons, locations, events, buildings) Structure of data on Web pages is made explicit Things described on Web pages are named and get URIs Links between things are made explicit and are typed Web of Data Things Typed Links 9 TECHNICAL SOLUTIONS 9 10 Uniform Resource Identifier Uniform Resource Identifiers (URIs) are used to identify resources, not just things that exists on the Web, e.g. Dieter Fensel, University of Innsbruck URI is different than URL (Locator) Taken from 11 Resource Description Framework (RDF) The Resource Description Framework (RDF) provides a domain independent data model Resource (identified by URIs) Correspond to nodes in a graph E.g.:Properties (identified by URIs) Correspond to labels of edges in a graph Binary relation between two resources E.g.: Literals Concrete data values E.g.: "John Smith", "1", " " 12 Resource Description Framework (RDF) Triple Data Model Triple data model: Subject: Resource or blank node Predicate: Property Object: Resource, literal or blank node Example: Statement (or triple) as a logical formula P(x, y), where the binary predicate P relates the object x to the object y. RDF offers only binary predicates (properties) 13 Resource Description Framework (RDF) Graph Model The triple data model can be represented as a graph Such graph is called in the Artificial Intelligence community a semantic net Labeled, directed graphs Nodes: resources, literals Labels: properties Edges: statements ex:john ex:bill ex:father-of ex:tom ex:father-of 14 RDF Schema (RDFS) RDF Schema (RDFS) is a language for capturing the semantics of a domain, for example: In RDF: What is a #Student ? 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 15 RDF Schema (RDFS) Classes: Class hierarchies: Properties: Property hierarchies: Associating properties with classes (a): The property #hasName only applies to #Person Associating properties with classes (b): The type of the property #hasName is #xsd:string 15 16 RDF Schema (RDFS) - Example 16 17 Web Ontology Language (OWL) RDFS has a number of Limitations: Only binary relations Characteristics of Properties, e.g. inverse, transitive, symmetric Local range restrictions, e.g. for class Person, the property hasName has range xsd:string Complex concept descriptions, e.g. Person is defined by Man and Woman Cardinality restrictions, e.g. a Person may have at most 1 name Disjointness axioms, e.g. nobody can be both a Man and a Woman The Web Ontology Language (OWL) provides an ontology language, that is a more expressive Vocabulary Definition Language for use with RDF Class membership Equivalance of classes Consistency Classification 18 OWL 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 Different Syntaxes: RDF/XML (Recommended for Serialization) N3 (Recommended for Human readable Fragments) Abstract Syntax (Clear Human Readable Syntax) 18 lite DL Full 19 OWL Example: The Wine Ontology An Ontology describing wine domain One of the most widely used examples for OWL and referenced by W3C. There is also a wine agent associated to this ontology that performs OWL queries using a web-based ontological mark-up language. That is, by combining a logical reasoner with an OWL ontology. The agent's operation can be described in three parts: consulting the ontology, performing queries and outputting results. Available here: 20 OWL Example: The Wine Ontology Schema [http://mysite.verizon.net/jflynn12/VisioOWL/VisioOWL.htm] 21 SPARQL Querying RDF SPARQL RDF Query language Based on RDQL Uses SQL-like syntax Example: PREFIX uni: SELECT ?name FROM WHERE { ?s uni:name ?name. ?s rdf:type uni:lecturer } 22 SPARQL Queries PREFIX uni: SELECT ?name FROM WHERE { ?s uni:name ?name. ?s rdf:type uni:lecturer } PREFIX Prefix mechanism for abbreviating URIs SELECT Identifies the variables to be returned in the query answer SELECT DISTINCT SELECT REDUCED FROM Name of the graph to be queried FROM NAMED WHERE Query pattern as a list of triple patterns LIMIT OFFSET ORDER BY 23 SPARQL Example Query 1 Return the full names of all people in the graph PREFIX vCard: SELECT ?fullName WHERE {?x vCard:FN ?fullName} result: fullName ================= "John Smith" "Maryvcard:. ex:john vcard:FN "John Smith" ; vcard:N [ vcard:Given "John" ; vcard:Family "Smith" ] ; ex:hasAge 32 ; ex:marriedTo :mary. ex:mary vcard:FN "Mary Smith" ; vcard:N [ vcard:Given "Mary" ; vcard:Family "Smith" ] ; ex:hasAge 29. 24 SPARQL Example Query 2 Return the relation between John and Mary PREFIX ex: SELECT ?p WHERE {ex:john ?p ex:mary} result: pvcard:. ex:john vcard:FN "John Smith" ; vcard:N [ vcard:Given "John" ; vcard:Family "Smith" ] ; ex:hasAge 32 ; ex:marriedTo :mary. ex:mary vcard:FN "Mary Smith" ; vcard:N [ vcard:Given "Mary" ; vcard:Family "Smith" ] ; ex:hasAge 29. 25 SPARQL Example Query 3 Return the spouse of a person by the name of John Smith PREFIX vCard: PREFIX ex: SELECT ?y WHERE {?x vCard:FN "John Smith". ?x ex:marriedTo ?y} result: yvcard:. ex:john vcard:FN "John Smith" ; vcard:N [ vcard:Given "John" ; vcard:Family "Smith" ] ; ex:hasAge 32 ; ex:marriedTo :mary. ex:mary vcard:FN "Mary Smith" ; vcard:N [ vcard:Given "Mary" ; vcard:Family "Smith" ] ; ex:hasAge 29. 26 ILLUSTRATION BY LARGER EXAMPLES 26 27 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 27 28 Dereferencable URI Disco Hyperdata Browser navigating the Semantic Web as an unbound set of data sources Illustration 2 Disco Hyperdata Browser 28 29 EXTENSIONS 29 30 Extensions: Linked Open Data Linked Data is a method for exposing and sharing connected data via dereferenceable URIs 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 30 31 Extensions: Linked Open Data 31 32 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) Dieter Fensel Dieter Fensel 32 33 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) Dieter Fensel Dieter Fensel 33 34 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? => people At which elevation does Dieter Fensel live? => 574m Who is the mayor of the city in which Dieter Fensel lives => Hilde Zach 34 35 SEMANTIC WEB - PROCESSES 35 36 MOTIVATION 36 37 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 Web APIs on ProgrammableWeb.com (including SOAP and REST APIs) Mashups on ProgrammableWeb.com (combining Web APIs from one or more sources Examples: Amazon Web Services iGoogle Yahoo Pipes RSS Feeds 37 38 Motivation 39 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 39 40 TECHNICAL SOLUTIONS 40 41 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 dont 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 41 42 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 42 43 Conceptual Model for SWS Formal Language for WSMO Ontology & Rule Language for the Semantic Web Technical Overview 43 Execution Environment For SWS 44 Strict Decoupling of Modeling Elements Centrality of Mediation Ontological Role Separation Description versus Implementation WSMO Ontology-Based Web Service versus Service WSMO Design Principles 44 45 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 45 46 WSML Language Family WSML - Core WSML - DL WSML - Full WSML - Flight WSML - Rule f with without 46 Expressivity 47 Semantic Execution Environment 47 Semantic Execution Environment Discovery Ranking Selection Composition Data Mediation Process Mediation Process Execution Lifting & Lowering base broker vertical Monitoring Reasoning Storage 48 Semantic Execution Environment - WSMX 48 49 ILLUSTRATION BY LARGER EXAMPLES 49 50 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 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 50 51 Rail Services Flight Services Hotel Services Car Hire Services Illustration 2: Virtual Travel Agency 51 52 Illustration 3: WSMX At Work 52 53 Illustration 3: WSMX At Work Request to discover Web services. 53 54 Illustration 3: WSMX At Work Goal expressed in WSML is sent to WSMX System Interface 54 55 Illustration 3: WSMX At Work Com. M. implements the interface to receive WSML goals 55 56 Illustration 3: WSMX At Work Com. M. informs Core that Goal has been received 56 57 Illustration 3: WSMX At Work Chor. wrapper picks up event for Chor. component 57 58 Illustration 3: WSMX At Work New choreography Instance is created 58 59 Illustration 3: WSMX At Work Core is notified that choreography instance has been created. 59 60 Illustration 3: WSMX At Work WSML goal is parsed to internal format. 60 61 Illustration 3: WSMX At Work Discovery is invoked for parsed goal. 61 62 Illustration 3: WSMX At Work Discovery may requires ontology mediation. 62 63 Illustration 3: WSMX At Work After data mediation, Discovery iterates, if needed through last steps until result set is finished. 63 64 Illustration 3: WSMX At Work Selection is invoked to relax result set to finally one service. 64 65 Illustration 3: WSMX At Work Choreography instance for goal requester is checked for next steps. 65 66 Illustration 3: WSMX At Work Result is returned to Com. Man. to be forwarded to the service requester. 66 67 Illustration 3: WSMX At Work Set of Web Service descriptions expressed in WSML sent to adapter. 67 68 Illustration 3: WSMX At Work Set of Web Service descriptions expressed in requesters own format returned to goal requester. 68 69 EXTENSIONS 69 70 Extensions: Mobile Services 71 Extensions: Mobile Services Extending the mobile and sensors networks with Semantic technologies, Semantic Web will enable: Interoperability at the level of sensors data and protocols More precise search for mobile capabilities and sensors with desired capability From: 72 Extensions: Intelligent Cars 73 Extensions: Intelligent Cars A key aspect of future cars will be intelligence Real-time data collection Car-to-X communication Interaction Systems Driver Assistance Semantic Technologies can be used to add this intelligence through: Machine awareness of context (Spatio-temporal concerns, mood, etc..) Management of large volumes of real-time data Enabling interoperability between systems From: 74 Extensions: A Smarter Electricity Grid 75 Extensions: A Smarter Electricity Grid Managing increasingly dispersed energy resources is crucial to ensure efficient electricity consumption, for example Wind farms Solar panels Grid operators cannot be sure at any given time: Which electricity generators are connected If they are operational or not How much power they are outputting Semantic technologies can be used to enable self-describing networks Each member of the network autonomously publishes semantic data about itself Enables more efficient automated grid management technologies Ultimately semantic technologies can provide a Smart Electricity Grid 76 SUMMARY 76 77 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 77 78 REFERENCES 78 79 References Mandatory reading: T. Berners-Lee, J. Hendler, O. Lassila. The Semantic Web, Scientific American, Dieter Fensel, Holger Lausen, Axel Polleres, Jos de Bruijn, Michael Stollberg, Dumitru Roman, John Domingue, Enabling Semantic Web Services: The Web Service Modeling Ontology, Springer-Verlag, 2007 Further reading: Dieter Fensel, Mick Kerrigan, Michal Zaremba (Eds.), Implementing Semantic Web Services: The SESA Framework. Springer-Verlag, Jos de Bruijn, Dieter Fensel, Mick Kerrigan, Uwe Keller, Holger Lausen, and James Scicluna: Modeling Semantic Web Services, Springer-Verlag, 2008 D. Fensel. Ontologies: A Silver Bullet for Knowledge Management and Electronic Commerce, 2nd Edition, Springer G. Antoniou and F. van Harmelen. A Semantic Web Primer, (2nd edition), The MIT Press H. Stuckenschmidt and F. van Harmelen. Information Sharing on the Semantic Web, Springer T. Berners-Lee. Weaving the Web, HarperCollins 2000 T.R. Gruber, Toward principles for the design of ontologies used or knowledge sharing?, Int. J. Hum.-Comput. Stud., vol. 43, no. 5-6,1995 80 References David Martin, et al., OWL-S: Semantic Markup for Web Services, W3C Member Submission 22 November 2004,Joel Farrell and Holger Lausen, Semantic Annotations for WSDL and XML Schema, W3C Recommendation 28 August 2007,Rama Akkiraju et al., Web Service Semantics - WSDL-S, W3C Member Submission 7 November 2005,Steve Battle et al., Semantic Web Services Framework (SWSF), W3C Member Submission 9 September 2005,Semantic Web Primer:RDF Primer:RDF Schema:OWL Guide:RDF SPARQL Protocol:Linked Open Data:Linked Open Data Tutorial:WSMO:WSML:WSMO/WSML Tutorials: 81 References Wikipedia links: URI:RDF;RDFS:SPARQL:WSMO:WSML: 82 Exam Preparation Exam will take place on the DD.MM.YYYY, HH:MM in room X. 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 83 Questions?