lecture course service-oriented computing 10:...

56
Fuyuki Ishikawa (石川 冬樹) [email protected] Lecture Course Service-Oriented Computing 10: Related Topics (4): Semantic Web 2012/06/20

Upload: others

Post on 22-May-2020

31 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

Fuyuki Ishikawa (石川 冬樹)[email protected]

Lecture CourseService-Oriented Computing

10: Related Topics (4): Semantic Web2012/06/20

Page 2: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

1 Introduction

2 Basics: Distributed Objects

3 Basics: XML

4 Web Services: Foundations

5 Web Services: Composition

6 Web Services: Implementation

7 Related Topics (1): Reliability

SOC'12 @ Sokendai 2Fuyuki Ishikawa

Course Plan

Page 3: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

8 Related Topics (2): Security

9 Related Topics (3): Engineering

10 Related Topics (4): Semantic Web

11 Cloud Computing (1): Overview

12 Cloud Computing (2): Experience

13 Discussion and Summary

14 Students’ Presentation

SOC'12 @ Sokendai 3Fuyuki Ishikawa

Course Plan

Page 4: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

Semantic WebVisionRDFRDFSOWLOther Specifications

Semantic Web ServicesVisionOWL-STechniques

4

TOC

SOC'12 @ Sokendai Fuyuki Ishikawa

Page 5: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

On the Web, I see everyday my bank statements, photographs, and calendarQuestion

Can I See my photos in my calendar to see what I was doing when I took them?Can I see bank statement lines in my calendar?

Why not?Because we don't have a web of dataBecause data is controlled by applications, and each application keeps it to itself[W3C Semantic Web Activity: http://www.w3.org/2001/sw/]

5

Semantic Web: Vision

SOC'12 @ Sokendai Fuyuki Ishikawa

Page 6: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

The current WebOnly exchanges design information of data, for humans, provided by each Web applicationLack explicit representation of data or their relationships, provided by different Web applications

The main goals of the Semantic WebAllows data to be surfaced in the form of real dataAllows people to write (or generate) files which explain, to a machine, the relationship between different sets of data[from the FAQ of the W3C Semantic Web Activity: http://www.w3.org/2001/sw/]

6

Semantic Web: Vision

SOC'12 @ Sokendai Fuyuki Ishikawa

Page 7: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

7

Semantic Web and Web ServicesCurrent Web Semantic Web

Web Service

Semantic Web Service

<table><tr><td>2008/06/23</td>…

<date>2008/06/23

</date>…

… 2008/06/23Is-a date (is an instance of the concept date)• date has-a year• birthday is-a date• date is the same concept as the one called 日にち in the application A

Machines can directly use services provided by machines

Machines can understand and make use of data relationships

SOC'12 @ Sokendai Fuyuki Ishikawa

Page 8: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

Ontology: a formal explicit specification of a shared conceptualization of a domain of interest

Formal: machine-processibleExplicit: including common sense for humansShared: agreed by people or their machines in a communityConceptuality: representing concepts and their relations in terms of symbols, covering as many situations as possibleDomain-specificity: focusing on details in a domain, modularizing and separating domains of interest

8

Ontology

SOC'12 @ Sokendai Fuyuki Ishikawa

Page 9: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

Semantic Web ServicesUsuallynot "Semantic Web" Servicesbut Semantic "Web Services"

9

Note

SOC'12 @ Sokendai Fuyuki Ishikawa

Page 10: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

Semantic WebVisionRDFRDFSOWLOther Specifications

Semantic Web ServicesVisionOWL-STechniques

10

TOC

SOC'12 @ Sokendai Fuyuki Ishikawa

Page 11: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

RDF: Resource Description Framework(W3C Recommendation in 1999)

Originally intended for representing metadata about Web resources (e.g., title, author, modification date)Provides a more general framework to describe relationships called RDF triples: Subject, Predicate, and ObjectUses URI to identify subjects, predicates and objects (including literal values)Provides a graph model as well as XML syntaxes including many abbreviated notations

11

RDF: Overview

SOC'12 @ Sokendai Fuyuki Ishikawa

Page 12: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

12

RDF: Graph Data Model

(Cited from the RDF specification Primer)SOC'12 @ Sokendai Fuyuki Ishikawa

Page 13: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

13

RDF: XML Syntax

<?xml version="1.0"?><rdf:RDF

xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:exterms="http://www.example.org/terms/">

<rdf:Description rdf:about="http://www.example.org/index.html"><exterms:creation-date>August 16, 1999</exterms:creation-date><dc:language>en</dc:language><dc:creator rdf:resource="http://www.example.org/staffid/85740"/>

</rdf:Description></rdf:RDF>

(Cited from the RDF specification Primer)SOC'12 @ Sokendai Fuyuki Ishikawa

Page 14: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

14

RDF: Into Semantic Network

(Cited from the RDF specification Primer)SOC'12 @ Sokendai Fuyuki Ishikawa

Page 15: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

15

RDF: Flexible Notations

<rdf:RDF …><rdf:Description rdf:about="http://www.example.org/index.html">…<dc:creator rdf:resource="http://www.example.org/staffid/85740"/>

</rdf:Description></rdf:RDF>

<rdf:RDF …><rdf:Description rdf:about=" http://www.example.org/staffid/85740 "><dc:city>Bedford</dc:city>…

</rdf:Description></rdf:RDF>

SOC'12 @ Sokendai Fuyuki Ishikawa

Page 16: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

16

RDF: Flexible Notations

<rdf:RDF …><rdf:Description rdf:about="http://www.example.org/index.html">…<dc:creator rdf:resource="http://www.example.org/staffid/85740"/><rdf:Description><dc:city>Bedford</dc:city>…

</rdf:Description></rdf:Description>

</rdf:RDF>

Can be included inline(the Description element can be omitted)

SOC'12 @ Sokendai Fuyuki Ishikawa

Page 17: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

RDF defines a property type to describe a class that a resource belongs to

Also provides an abbreviated notation

(For literals, types can be associated, e.g., by referring to XML Schema types)

17

RDF: Class Description

<rdf:Description rdf:ID=“carA"><rdf:type rdf:resource=“http://.../MotorVehicle"/>

</rdf:Description>

<ex:MotorVehicle rdf:ID=“carA”/>

SOC'12 @ Sokendai Fuyuki Ishikawa

Page 18: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

RSS 1.0 (RDF Site Summary)

18

RDF: Application (RSS 1.0)

<rdf:RDF …>…<rss:item

rdf:about="http://www.w3.org/News/2002#item164"><rss:title>User Agent Accessibility Guidelines Become

a W3C Proposed Recommendation </rss:title><rss:description> 17 October 2002: W3C is pleased to

announce the …</rss:description><rss:link>http://www.w3.org/News/2002#item164</rss:link><rss:date>2002-10-17</rss::date>

</rss:item> </rdf:RDF>

SOC'12 @ Sokendai Fuyuki Ishikawa

Page 19: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

FOAF (Friend of a Friend)

19

RDF: Application (FOAF)

<rdf:RDF ...><foaf:Person><foaf:name>Fuyuki Ishikawa</foaf:name><foaf:mbox rdf:resource="mailto:[email protected]"/><foaf:msnChatID>…</foaf:msnCharID><foaf:knows><Person> … </Person>…

</foaf:knows></foaf:Person>

</rdf:RDF>

SOC'12 @ Sokendai Fuyuki Ishikawa

Page 20: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

CC/PP: Composite Capabilities/Preferences Profile

20

RDF: Application (CC/PP)

<ccpp:component><rdf:Description rdf:ID="UserPreferences"><rdf:type rdf:resource="http://.../v1_0#UserPreferences"/><ex:AudioOutput>Yes</ex:AudioOutput><ex:Graphics>No</ex:Graphics><ex:Languages><rdf:Seq><rdf:li>en-cockney</rdf:li><rdf:li>en</rdf:li>

</rdf:Seq></ex:Languages>

</rdf:Description></ccpp:component>

SOC'12 @ Sokendai Fuyuki Ishikawa

Page 21: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

Semantic WebVisionRDFRDFSOWLOther Specifications

Semantic Web ServicesVisionOWL-STechniques

21

TOC

SOC'12 @ Sokendai Fuyuki Ishikawa

Page 22: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

RDFS: RDF SchemaProvides a basic vocabulary to describe (define) RDF vocabularies, or ontologiesIncluded as part of the RDF specificationPrimarily handles

Inheritances of resources, i.e., subclasses and sub-propertiesDomains and ranges or properties

22

RDFS: Overview

SOC'12 @ Sokendai Fuyuki Ishikawa

Page 23: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

RDFS: Class definitionMotorVehicle is a ClassVan is a subclass of MotorVehicle

23

RDFS: Examples

<rdf:Description rdf:ID="MotorVehicle"><rdf:type rdf:resource="http://.../rdf-schema#Class"/>

</rdf:Description>

<rdf:Description rdf:ID="Van"><rdf:type rdf:resource="http://.../rdf-schema#Class"/><rdfs:subClassOf rdf:resource=“#MotorVehicle"/>

</rdf:Description>

SOC'12 @ Sokendai Fuyuki Ishikawa

Page 24: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

RDFS: Property definitionregisteredTo is a PropertyThe domain of registeredTo is MotorVehicleThe range of registeredTo is Person

24

RDFS: Examples

<rdf:Description rdf:ID=“registeredTo"><rdf:type rdf:resource="http://.../rdf-schema#Property"/><rdfs:domain rdf:resource="#MotorVehicle"/><rdfs:range rdf:resource="#Person"/>

</rdf:Description>

SOC'12 @ Sokendai Fuyuki Ishikawa

Page 25: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

RDFS: Property definitionhasDriver is a PropertyThe domain of hasDriver is MotorVehiclehasPrimaryDriver is a sub-property of hasDriver(inheriting the domain)

25

RDFS: Examples

<rdf:Description rdf:ID=“hasDriver"><rdf:type rdf:resource="http://.../rdf-schema#Property"/><rdfs:domain rdf:resource="#MotorVehicle"/>

</rdf:Description>

<rdf:Description rdf:ID=“hasPrimaryDriver"><rdf:type rdf:resource="http://.../rdf-schema#Property"/>

<rdfs:subPropertyOf rdf:resource="#hasDriver"/> </rdf:Description>

SOC'12 @ Sokendai Fuyuki Ishikawa

Page 26: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

Semantic WebVisionRDFRDFSOWLOther Specifications

Semantic Web ServicesVisionOWL-STechniques

26

TOC

SOC'12 @ Sokendai Fuyuki Ishikawa

Page 27: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

OWL: Web Ontology LanguageProvides a rich vocabulary to describe (define) RDF vocabularies, or ontologies, in order to support useful reasoning tasks

Three subclassesOWL-Lite: simple and easy to implement, only with a classification hierarchy and simple constraintsOWL-DL: expressive but computable and decidable with certain restrictionsOWL-Full: fully expressive with a syntactic freedom

27

OWL: Overview

SOC'12 @ Sokendai Fuyuki Ishikawa

Page 28: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

28

OWL: Definition and Reasoning Examples

<owl:Class rdf:ID="WhiteWine"><owl:intersectionOf rdf:parseType="Collection"><owl:Class rdf:about="#Wine" /><owl:Restriction><owl:onProperty rdf:resource="#hasColor" /><owl:hasValue rdf:resource="#White" />

</owl:Restriction></owl:intersectionOf>

</owl:Class>

<BaseballPlayer rdf:ID="イチロー"><owl:sameAs rdf:resource="http://mlb.com/.../Ichiro" />

</BaseballPlayer>

WineABC type WhiteWine⇒ WineABC hasColor White

SOC'12 @ Sokendai Fuyuki Ishikawa

Page 29: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

29

OWL: Definition and Reasoning Examples

<owl:Class rdf:ID="Wine"><rdfs:subClassOf rdf:resource="&food;PotableLiquid"/><rdfs:subClassOf><owl:Restriction><owl:onProperty rdf:resource="#madeFromGrape"/><owl:minCardinality >1</owl:minCardinality></owl:Restriction>

</rdfs:subClassOf><rdfs:subClassOf><owl:Restriction><owl:onProperty rdf:resource="#hasMaker" /><owl:allValuesFrom rdf:resource="#Winery" />

</owl:Restriction></rdfs:subClassOf>

</owl:Class>

A subclass of Class, which includes resources that has at least one grape as ingredient

A subclass of Class, which includes resources that has a winery as its maker

WineABC type Wine∧ WineABC hasMaker George⇒ George type Winery

SOC'12 @ Sokendai Fuyuki Ishikawa

Page 30: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

30

OWL: Definition and Reasoning Examples

<owl:ObjectProperty rdf:ID="locatedIn"><rdf:type rdf:resource="&owl;TransitiveProperty" /><rdfs:domain rdf:resource="&owl;Thing" /><rdfs:range rdf:resource="#Region" /> </owl:ObjectProperty>

<Region rdf:ID="SantaCruzMountainsRegion"><locatedIn rdf:resource="#CaliforniaRegion" />

</Region><Region rdf:ID="CaliforniaRegion"><locatedIn rdf:resource="#USRegion" />

</Region>

⇒ SantaCruzMountainsRegion locatedIn USRegion

SOC'12 @ Sokendai Fuyuki Ishikawa

Page 31: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

OWL-Lite vocabulariesEquality and inequality

equivalentClass (in a sense of including the same set of individuals, not equality of the concept)equivalentPropertysameAs, differentFrom, AllDifferent(about individuals)

Property characteristicsinverseOfTransitiveProperty, SymmetricProperty, FuntionalProperty, InverseFunctionalProperty

31

OWL: OWL-Lite

SOC'12 @ Sokendai Fuyuki Ishikawa

Page 32: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

OWL-Lite vocabulariesProperty restrictions

allValuesFrom, someValuesFromProperty cardinarity restriction

minCardinarity, maxCardinarity(0 or 1 in OWL-Lite)

Class intersectionintersectionOf

32

OWL: OWL-Lite

SOC'12 @ Sokendai Fuyuki Ishikawa

Page 33: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

OWL-DL: additional vocabularies (to OWL-Lite)Class relationships

oneOf, unionOf, complementOf, disjointWithProperty restriction

hasValue, DataRangeOWL-DL: removed restrictions (from OWL-Lite)

The object can only be a class name or a restriction in type, equivalentClass, subClassOf, and intersectionOfThe object can be any non negative integer in minCardinarity, maxCardinarity…

33

OWL: OWL-DL

SOC'12 @ Sokendai Fuyuki Ishikawa

Page 34: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

OWL-Full: removed restrictions (from OWL-DL)Distinction must be made between each pair of classes, datatypes, datatype properties, object properties, individuals, data values and the built-in vocabulary, etc.

e.g., OWL-Full allows to say classA is sameAs classBe.g., OWL-Full allows to say classA has type (is an instance of) classBe.g., OWL-Full allows to say hasWeightInKg is transitive (though a subject of the transitiveproperty should be an object property, not a datatype property)

34

OWL: OWL-Full

SOC'12 @ Sokendai Fuyuki Ishikawa

Page 35: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

OWL-Full: removed restrictions (from OWL-DL)No cardinality constraints should not be given for transitive properties, either directly or indirectly (given for super-properties of inverse properties)

e.g., OWL-Full allows to say a property is both transitive and functional, which is impossible

All statements (called axioms in OWL) must be well-formed, with no missing or extra components, leading to tree-like structure

e.g., OWL-Full allows for lack of definition of referenced resources

35

OWL: OWL-Full

SOC'12 @ Sokendai Fuyuki Ishikawa

Page 36: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

What is DL in OWL-DL?DL: Description Logic

Each of OWL-Lite and OWL-DL has a corresponding dialect of Description Logic(not in the scope of this lecture)Well-understood computational properties and decidability

36

Note

SOC'12 @ Sokendai Fuyuki Ishikawa

Page 37: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

Semantic WebVisionRDFRDFSOWLOther Specifications

Semantic Web ServicesVisionOWL-STechniques

37

TOC

SOC'12 @ Sokendai Fuyuki Ishikawa

Page 38: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

SOC'12 @ Sokendai 38Fuyuki Ishikawa

Semantic Web: Layer Cake

Page 39: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

Query language to query data from RDF documents

e.g., SPARQL (W3C)

39

Other specifications: SPARQL

• PersonA hasName Bob• PersonA hasMbox [email protected]• PersonB hasName Alice• PersonB hasMbox [email protected]

DataData

SELECT ?name ?mboxWHERE{ ?x hasName ?name .

?x hasMbox ?mbox }

QueryQuery

?name ?mboxBob [email protected] [email protected]

ResultResult

SOC'12 @ Sokendai Fuyuki Ishikawa

Page 40: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

Rule language to formalize and process semantics

e.g., SWRL (Semantic Web Rule Language, W3C)

40

Other specifications: SWRL

hasParent(?x1,?x2) ∧ hasBrother(?x2,?x3)⇒ hasUncle(?x1,?x3)

Student(?x1) ⇒ Person(?x1)

The same as Student isSubclassOf Person using the OWL vocaburary

SOC'12 @ Sokendai Fuyuki Ishikawa

Page 41: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

Activities to increase actual instances of data described with semantic web techniques (in RDF)

http://linkeddata.org/Wikipedia:http://dbpedia.org/National Diet Library japan: http://id.ndl.go.jp/auth/ndlsh/US Government: http://www.data.gov/communities/semantic/index

SOC'12 @ Sokendai 41Fuyuki Ishikawa

Linked Data

Page 42: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

Semantic WebVisionRDFRDFSOWLOther Specifications

Semantic Web ServicesVisionOWL-STechniques

42

TOC

SOC'12 @ Sokendai Fuyuki Ishikawa

Page 43: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

Semantic Web Services: Motivating tasksAutomatic discovery

e.g., find service providers that sell airline tickets for Tokyo-Paris and accept payment by a JCB card

Automatic invocatione.g., invoke service providers found at runtime by understanding what input is necessary to invoke the service, and what information will be returned

Automatic selection, composition and interoperatione.g., select service providers to compose a service that makes all the travel arrangements

43

Semantic Web Services: Vision

SOC'12 @ Sokendai Fuyuki Ishikawa

Page 44: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

Related Proposals (to W3C all in 2005)OWL-S: OWL ontology for Services

Based on DARPA activities on agents and ontologies (since 2001)

WSMO: Web Service modeling OntologyProposed to deal with limitations in OWL-S

WSDL-S: Web Service SemanticsDefines a way to include references to semantic descriptions in WSDL documents (not about how semantics are described)

44

Semantic Web Services: Vision

SOC'12 @ Sokendai Fuyuki Ishikawa

Page 45: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

Semantic WebVisionRDFRDFSOWLOther Specifications

Semantic Web ServicesVisionOWL-STechniques

45

TOC

SOC'12 @ Sokendai Fuyuki Ishikawa

Page 46: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

OWL-S: OWL Ontology for ServicesDefines vocabularies to describe servicesEspecially models IOPEs of services

InputsOutputsPreconditionsEffects

Formally called DAML-SBased on DAML + OIL, the ancestor of OWL

DAML: DARPA Agent Markup Language

46

OWL-S: Overview

SOC'12 @ Sokendai Fuyuki Ishikawa

Page 47: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

47

Semantic Web and Web ServicesCurrent Web Semantic Web

Web Service

Semantic Web Service

<table><tr><td>2008/06/23</td>…

<date>2008/06/23

</date>…

… 2008/06/23Is-a date (is an instance of the concept date)• date has-a year• birthday is-a date• date is the same concept as the one called 日にち in the application A

Machines can directly use services provided by machines

Machines can understand and make use of data relationships

SOC'12 @ Sokendai Fuyuki Ishikawa

Page 48: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

SOC'12 @ Sokendai 48Fuyuki Ishikawa

OWL-S: Upper Ontology

(Cited from the OWL-S specification)

Page 49: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

SOC'12 @ Sokendai 49Fuyuki Ishikawa

OWL-S: Service Profile

(Cited from the OWL-S specification)

Page 50: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

SOC'12 @ Sokendai 50Fuyuki Ishikawa

OWL-S: Process Model

(Cited from the OWL-S specification)

Page 51: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

SOC'12 @ Sokendai 51Fuyuki Ishikawa

OWL-S: Service Grounding

(Cited from the OWL-S specification)

Page 52: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

Semantic WebVisionRDFRDFSOWLOther Specifications

Semantic Web ServicesVisionOWL-STechniques

52

TOC

SOC'12 @ Sokendai Fuyuki Ishikawa

Page 53: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

One aspect of discovery: how to match inputs/outputs requested with inputs/outputs accepted (provided)?

Exact: the accepted concept (class) for input or output is equivalent to the requested onePlugin: the accepted concept for input or output is sub-concept of the requested oneSubsume: the accepted concept for input or output is super-concept of the requested oneIntersection: intersection of the accepted concept for input or output and the requested one is not empty

53

Typical Techniques: Discovery

SOC'12 @ Sokendai Fuyuki Ishikawa

Page 54: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

One aspect of composition: how to compose a service, given a goal, by integrating existing services?

Automated service composition is often thought as aplanning problem in AIVarious planning tools (and involved logical formalisms) have been used (e.g., SHOP2)For simplicity, only I/O matching is sometimes considered(e.g., describing I/O graphs and finding a path from a certain input to a certain output)

54

Typical Techniques: Composition

SOC'12 @ Sokendai Fuyuki Ishikawa

Page 55: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

One aspect of mediation: how to mediate interoperation by inserting required translations?

Data mediation (syntax, encoding, etc.)e.g., From XML documents to RDF documents

Ontology mediatione.g., mapping a terminology to another that refers to the same concept

Protocol Mediatione.g., inserting acknowledgements

55

Typical Techniques: Mediation

SOC'12 @ Sokendai Fuyuki Ishikawa

Page 56: Lecture Course Service-Oriented Computing 10: …research.nii.ac.jp/.../Soken-SOC/SOC12-10-semanticweb.pdfSemantic Web Vision RDF RDFS OWL Other Specifications Semantic Web Services

June 22Cloud Computing (1): Overview

56Fuyuki Ishikawa

Next

SOC'12 @ Sokendai