幻灯片 1 - Metadata Standards

Download Report

Transcript 幻灯片 1 - Metadata Standards

ISO/IEC JTC1/SC32/WG2 N1485
MFI-7: Metamodel for
Service Registration
Zaiwen Feng, Keqing He, Chong Wang, Jian Wang,
Peng Liang
SKLSE, Wuhan University, P.R. China
2010.11.09
1
Outline







Motivation of this Work
Definition of Service
Scope of MFI-7
Metamodel for Service Registration
Service Registration Example
MFI-7 v.s. UDDI
Summary
2
Outline







Motivation of this Work
Definition of Service
Scope of MFI-7
Metamodel for Service Registration
Service Registration Example
MFI-7 v.s. UDDI
Summary
Motivation of this Work

Heterogeneity in service

Different Description languages
WSMO, OWL-S, WADL, WSDL, SAWSDL, SA-rest…
Solution: Providing a metamodel as the common
registration mechanism for different kinds of services.
4
Outline







Motivation of this Work
Definition of Service
Scope of MFI-7
Metamodel for Service Registration
Service Registration Example
MFI-7 v.s. UDDI
Summary
5
Definitions of Service

Service (systems architecture): the provision of a discrete
function within a systems environment

In the context of Enterprise architecture, Service-orientation, and Serviceoriented architecture, the term service refers to a set of related software
functionality, together with the policies that should control their usage.
From: wikipedia (http://en.wikipedia.org/wiki/Service_(systems_architecture))

Web service: a software system to support interaction over
a network


OASIS : a mechanism to enable access to one or more capabilities, where
the access is provided using a prescribed interface and is exercised
consistent with constraints and policies as specified by the service
description.
Web services are frequently just Internet Application Programming
Interfaces (API) that can be accessed over a network, such as the Internet,
and executed on a remote system hosting the requested services

From: Wikipedia – Web Service
6
Service Definition in MFI-7


Service is defined as a modular functionality
entity with provision of value that can be invoked
by accessing its interface.
Currently, we focus on



SOAP Web service
Restful Web service
Web API
7
Outline







Motivation of this Work
Definition of Service
Scope of MFI-7
Metamodel for Service Registration
Service Registration Example
MFI-7 v.s. UDDI
Summary
8
Scope of MFI-7(1/2)
Common Facilities in MFI
WSDL: Web Services Description Language (W3C)
OWL-S: Web Ontology Language for Services(W3C)
WSMO: Web Service Modeling Ontology(W3C)
WADL: Web Application Description Language(W3C)
SA-Rest: Semantic Annotation-representational state
transfer(Wright State University, US)
SAWSDL: Semantic Annotation Web Services Description
Language(W3C)
SWSO: Semantic Web Service Ontology (W3C)
Service Registry
based on MFI-7
Registration
Interoperation
Specification
…
WADL
SAWSDL OWL-S
SA-REST SWSO
WSMO
9
Scope of MFI-7(2/2)

It is intended to




specify a metamodel for registering services that can
enable users to discover appropriate services.
define the common functional and nonfunctional
description of services.
promote semantic interoperation between various
services.
It does not specify


the elements expressed in specific languages
details of service composition
10
Outline







Motivation of this Work
Definition of Service
Scope of MFI-7
Metamodel for Service Registration
Service Registration Example
MFI-7 v.s. UDDI
Summary
11
Overview of Service Semantics in
MFI-7
Objective
Semantic
Functional Semantic
Service Semantic
Interaction
Semantic
Non Functional
Semantic
12
Objective Semantics of Service

Objective Semantics


Objective that a client may have when consulting a
Web Service
For example:

WSMO: It describe Objective semantic by post-condition and
effect in service goal
13
Function Semantics of Services

Function Semantics describes service
functionality, i.e. what a service can offer to its
clients when it is invoked. It includes that:

Capability: the functionality defined using conditions
which must hold before and after service invocation
14
Function Semantics of Services

For example:

Function Semantics




WSMO: It describes function semantics by preconditon,
postcondition(constrained input/output), and assumption,
effect (conditions for service usage)
SWSO: It describes function of service by input, output,
precondition and effect
SAWSDL(WSDL): It describes function of service by
interface_name, operation_name, input and output
OWL-S Profile: It describes feature of service by specifying
the category of a given service, for example, the category of
service within the UNSPSC classification system. Further, it
shows function semantics through input, output, precondition and post-condition
15
Interaction Semantic of Service

Interaction semantic: It is the formal description
which defines a service’s public behavior.


MFI-7 focuses on External behavior, which describes a
protocol that can be used by the client to consume the
service functionality
We call the public behavior of service is choreography
in MFI-7
16
Interaction Semantic of Service

Interaction semantic



OWL-S: From orchestration perspective, it describes a
process model inside service
WSMO: From choreography view, it specifies the
behavior interface for service consumption; and from
orchestration view, it specifies how the functionality of
a web service is achieved by aggregating other web
services
SWSO: From orchestration view, it defines how to
construct a process model inside a service
17
Non-Function Semantic of Service

Non-Function Semantic: It describes attributes
specifying quality of service


We describe quality of service based on WS-Policy
framework in MFI-7
WS-Policy contains an attachment specification, WSPolicyAttachment, which defines mechanisms for
associating policies with policy subjects
18
Non Function Semantic of Service

Non Functional Semantic of Service

For example:




WSDL-S 1.0: It investigates how to represent QoS assertions
using ontologies and rules by extending the WS-Policy
framework (future work)
OWL-S Profile: It provides information about quality rating of
service
SWSO: It consists of various attributes in the part of Service
Descriptors, e.g. Service Trust, Service Reliability and Service
Cost in order to describe QoS
WSMO: It describes Web Service specific non-Functional
properties in the part of Capability, e.g. Accuracy, Availability,
Financial…
19
How MFI-7 is constructed

Harmonization of Service models for registration








WSDL (Web Services Description Language, W3C, 2007)
OWL-S (Web Ontology Language for Services, W3C,
2007)
WSMO (Web Service Modeling Ontology, W3C, 2005)
SAWSDL(Semantic Annotation for WSDL, W3C, 2007)
SWSO(Semantic Web Service Ontology, W3C, 2005)
WADL (Web Application Description Language, W3C,
2009)
SA-Rest: Semantic Annotation-representational state
transfer (W3C, 2010)
…
20

How to select elements and relationships from
current service-related specifications?




Function Semantics
Non-Function Semantics
Objective Semantics
Interaction Semantics
21
Service concepts in OWL-S
Condition
hasCondition
hasParameter
Result
Parameter
hasResult
ServiceCategory
Profile
hasServiceCategory
presents
supports
Service
Input
ServiceProfile
hasQualityRating
Output
ServiceGrounding
Quality Rating
describedBy
ServiceModel
From: W3C, OWL-S: Semantic Markup for Web Services,
http://www.daml.org/services/owl-s/1.2/overview/, accessed on 2010-05-12
22
Service concepts in WSMO
hasInterface
Web Service
interface
requestsInterface
hasCapability
requestsCapability
Capability
hasAssumption
hasEffect
hasPrecondition
hasPostcondition
Axiom
hasSharedVariables
sharedVariables
goal
hasOrchestration
orchestration
hasChoreography
choreography
From: W3C, Web Service Modeling Ontology, http://www.wsmo.org/TR/d2/v2.0/,
accessed on 2010-05-10
23
Service concepts in SAWSDL
hasSemantics
Type
hasSemantics
Fault
1..*
hasSemantics
Message
1..*
hasInFault
1..1
SemanticConcept
1..*
hasInput
1..*
hasOutFault
hasOutput
1..1
1..1
1..1
Operation
hasOperations
hasSemantics
1..*
1..1
Interface
From: W3C, Semantic Annotations for WSDL and XML Schema, http://www.w3.org/TR/sawsdl/,
accessed on 2010-05-10
24
Service concepts in SWSO
Service_name
name
Service_Trust
Service Descriptors
trust
cost
reliability
hasDescriptor
SWSO Element
support
Grounding
describedBy
message
Input
Output
Service_Reliabiltiy
Process Model
hasConstraints
Control Constraints
Service_Cost
hasFlowCore
FLOWS-Core
AtomicProcess
Precondition
composedOf
channel
Postcondition
From: W3C, Semantic Web Services Ontology, http://www.w3.org/Submission/SWSF-SWSO/
access on: 2010-11-09
25
Service concepts in SA-REST
Service
hasOperation
operation
hasInput
Input
hasMethod
HTTTMethod
hasOutput
Output
From: W3C, SA-REST: Semantic Annotation of Web Resources, http://www.w3.org/Submission/SA-REST/
access on: 2010-11-09
26
Service Concept in WADL
1
Resource
*
hasMethod
method
-name
-id
1..1
hasRequest
1..1 1..*
1..1
hasRequest
1..2
0..1
request
1
response
1..1
hasReresentation
*
param
-name
-style
1..1
representation
-mediaType
-element
From: W3C, Web Application Description Language, http://www.w3.org/Submission/wadl/
access on: 2010-11-09
27
MFI-7: Metamodel for Service Registration
presentedBy
1..1
1..1
Assertion
1..*
-valueType : ConceptfromDomainOntology
-comparisonOperator : ConceptfromDomainOntology
-assertionName : ConceptfromDomainOntology
StateSignature
presentedBy
hasStateSingature
TransitionRules
hasTransitionRules
-Condition[1..*] : string
1..*
-Action[1..*] : string
1..1
Choreography
1..1
1..1
Alternative
hasInteraction
1..1
1..1
Service
Policy
-Quality_Property_Type[1..*] : string
-URI[1..1] : string
1..1
hasPolicy
0..*
1..1
1..1
1..1 hasPostcondition
hasInput
1..*
hasPrecondition
0..*
Precondition
0..*
Input
-Message_Type[1..1] : Parameter_Type
-annotation[0..*] : Concept_URI
1..*
constrainedBy
Output
1..*
-Parameter[1..*] : ConceptfromDomainOntology
0..* -Predicate[1..1] : ConceptfromDomainOntology
Postcondition
-Message_Type[1..1] : Parameter_Type
-annotation[0..*] : Concept_URI
0..*
hasOutput
1..*
constrainedBy
-Parameter[1..*] : ConceptfromDomainOntology
0..*
-Predicate[1..1] : ConceptfromDomainOntology
0..*
Comparison between MFI-7 and
Other Specifications
MFI-7
WSMO
OWL-S
SWSO
SAWSDL
Service
Web services
Service
Service
Web service
Input
precondition
Input
input
input
Output
postcondition
Output
output
output
Policy
Quality
Aspects
ServiceParameter
—
Precondition
assumption
Condition
Service
Trust/Reliability/
Cost
precondtion
Postcondition
effect
Result
effect
—
Interaction
choreography
—
—
—
—
29
Function-related Metaclasses(1)

Precondition


specifies the state that should be satisfied before a service is
invoked
Postcondition
specifies the state that should be satisfied after a service is
invoked successfully
Their properties are Parameter and Predicate

1..1
1..1 hasPostcondition
hasPrecondition
0..*
Precondition
Postcondition
0..*
30
Function-related Metaclasses(2)

Input, output

the link between service and outer space
 Their type can be depicted as Message_Type
Message_Type



specifies the type of message that is used, as input variable, out
variable.
It can be the domain concepts in Ontology
31
Non-Function Related Metaclass(1)


Policy: It provides a grammar for representing
the non-functional attributes of entities in a Web
service based XML environment
Quality_Property_Type: Current WS-Policy
specification makes assertion in different
domains, e.g. security, transaction, cost…
32
Non-Function Related Metaclass(2)


A policy is defined as a finite set of alternatives.
It can also be expressed as a disjunction of all its
alternatives
An alternative is defined as a finite set of
assertions. It can also be expressed as a
conjunction of all its assertions
33
Non-Function Related Metaclass(3)

Assertion: A policy assertion represents an
individual requirement, capability, or other
property of a behavior.



valueType: It is used to specify whether an assertion
is a numeric or a non-numeric assertion
comparisonOperator: It is used to represent the
relationship between the assertion name and value
assertionName: It describes name of assertion
<semsecurity:TokenType
assertionType="sempolicy:Requirement"
valueType="owl:object"
comparisonOperator="sempolicy:EQ">
semsecurity:Kerberosv5TGT
</semsecurity:TokenType >
34
Interaction Related Metaclass

Choreography






The Choreography interface describes the behaviour of the
service from the client's point of view (W3C Glossary, 2004)
Users may be other Web Services, applications or human beings
Transitionrule
It deals with basic operations on instance data, such as adding,
removing and updating instances to the states.
State
It defines the state ontology used by the service together with
the definition of the types of modes the concepts and relations
may have
35
Choreography example
Choreography_Item 1
phonenumber before monthnumber
Choreography_Item 2
password before monthnumber
Choreography_Item 3
monthnumber after authentication result
Choreography
36
Relationships with Other Parts in MFI
Metaclass from MFI-5
Metaclass from MFI-8
annotation attributes are annotated by Ontology_Atomic_Construct from MFI-3
37
Outline







Motivation of this Work
Definition of Service
Scope of MFI-7
Metamodel for Service Registration
Service Registration Example
MFI-7 v.s. UDDI
Summary
38
Registration example(1/4)
in WSMO

Case study: Book Ticket

Description


The service can achieve the goal which specifies the
intent of buying a ticket for a trip from one place to
another
Service Language

WSMO
39
Registration example(2/4)
in WSMO
WS1
Booking
WS2
Paying
Book Ticket WS
Reservation
Reservation
Request
P1
P2
Booking
Paying
creditCard
ticket
I want to book a ticket!
40
Maybe, In the above example, we should register three Web Services:
Web Service1: Booking (for invoking by business process)
Web Service2: Paying (for invoking by business process)
Web Service3: Book Ticket WS (the whole service)
41
Registration example(2/4)
in WSMO
reservationRequest
temporaryReservation
Reservation
Request
temporaryReservation
Reservation
Book Ticket
WS
ticket
creditCard
Book
Ticket
WS
creditCard
reservation
ticket
temporaryReservation
What is
my Goal?
creditCard
negative
I want to book a ticket!
42
What can we find proper service
by?
Objective
Semantic
MFI-8
Functional Semantic
Service Semantic
Interaction
Semantic
MFI-7
Non Functional
Semantic
MFI-7
Response time <= 5 seconds
Security is high
… … MFI-7
43
Registration example (3/4)
in WSMO
44
Registration example (3/4)
in WSMO
45
Registration example (4/4)
in WSMO
46
Registration example (4/4)
in WSMO
47
Registration example (4/4)
in WSMO
48
Registration example(1/4)
in WADL

Case study: Amazon item search service

Description


The service provided by Amazon is to search items in
Amazon Internet Shop. Browser will return item
information after user inputs keywords or index of
item
Service Language

WADL
49
Registration example(2/4)
in WADL
SubscriptionId
name
SearchIndex
KeyWord
ResponseGroup
Amazon
Item
Search
description
price
I want to search item in Amazon?
Registration example(3/4)
WADL
51
Registration example(4/4)
WADL
52







Motivation of this Work
Definition of Service
Scope of MFI-7
Metamodel for Service Registration
Service Registration Example
MFI-7 v.s. UDDI
Summary
53
MFI-7 v.s. UDDI


UDDI

lacks description of service semantics

mainly considers SOAP Web services
MFI-7


Provides a mechanism to register service semantics
based on MFI-3&-5&-8
Considers other kinds of services

different protocols, such as SOAP, HTTP,…

Restful Web Service, Mashup, …
54







Motivation of this Work
Definition of Service
Scope of MFI-7
Metamodel for Service Registration
Service Registration Example
MFI-7 v.s. UDDI
Summary
55
Summary and Future Work

Summary


MFI-7 provides a means to register interaction
information and capability of services
Future work




Submit CD version in 2010
Coordinate with other specifications
Support interoperation between services in cloud
computing
Refer more Web Services non-functional specifications
to MFI-7 (E.g. SLA…)
56
Thank you!
Q&A
57