an ontological framework for web service processes
DESCRIPTION
An Ontological Framework for Web Service Processes. By Claus Pahl and Ronan Barrett. Introduction – Why the Paper was written??. Increase in attention of developing semantic based services on the Web - PowerPoint PPT PresentationTRANSCRIPT
An Ontological Framework for
Web Service Processes
By Claus Pahl and Ronan Barrett
Introduction – Why the Paper was written??
Increase in attention of developing semantic based services on the Web There is a need to allow for the composition of
services based on abstract descriptions (by use of Ontologies)
Aim of paper to give semantics to the framework of process
composition to develop an ontological framework for service
process description and discovery
Contents
What is a Service Process How a Process is Composed Operation Framework presented in the
paper Ontological Framework presented in
the paper
What is a Service Process?
Models the dynamic behavior of business or workflow systems
Composition of individual services Service is a set of coherent operations provided at a
certain location Services are made available through abstract interfaces
where users can locate and invoke a desired service Web Services Framework (WSF) is a
platform that allows services to be invoked in a once-off basis
Service Composition Two forms of service composition
Orchestration Specifies the internal and external services to perform its
task Focuses on the execution order through the use of message
exchanges Controlled by one agent in the system Known as the Process Model
Choreography Specifies the interactions and collaboration between services Specifies the synchronization and the exchange of data
between the services Involves multiple agents where each agent describes its own
part in the interaction Known as the Interaction Model
Example of a Web Process
Service Composition
Orchestration:
Each process implements many services
Describes process of online shopping user starting at login, then repeatedly buying products and finally logging out
Choreography:
Each invocation results in an interaction – message exchange
Service Composition
Process Assembly is a two step process: 1) Discovery
Clients search for suitable services in registry Based on abstract descriptions (formalised on
Ontologies) 2) Assembly and Usage
Composition of matching services Interaction
Service Composition
Services & Processes – An Operational Framework
Introduce the abstract language that forms the Operational Framework for Description and Composition By use of pi-calculus
Operational Framework serves to capture requirements and forms an underlying layer for the Ontological Framework
Orchestration and Choreography Formal Description Identifies Core Requirements for Orchestration
Description Notation(based on the Web Services Process Execution Language (WS-BPEL)) Basic Elements: message-based actions
Invocations for external services Receive/Reply actions if service is available to others
Process Language Service Process Combinations Sequence, choice, iteration, concurrency
Abstraction Interface Process can be provided as a Web Service
State & Data Needed variables and parameters for actions
Orchestration and Choreography Formal Description
Orchestration Defines a Process in
terms of actions and control flow
Describe the external, interaction pattern that a service can engage in
Orchestration and Choreography Formal Description Orchestration Language
Orchestration Language now allows for an Abstract Process expression to be defined
Orchestration and Choreography Formal Description
Identifies Core Requirements for Choreography Description Notation (based on Web Services Choreography Interface (WSCI) and Web Services Choreography Description Language (WS-CDL))
Basic Activities Request and Response Activities for local activities Invoke to call operations to external services
Structured Activities Loop, sequence, choice, concurrency
Infrastructure Channels (connections between ports) Ports – represent services and their operations
Orchestration and Choreography Description
Focus on interaction behavior, not execution order
Based on Fixed Connections Shared channel that
forms a connection between two service processes
Orchestration and Choreography Formal Description
Choreography Language
Composition Support Description and matching are design
activities Need to also integrate aspects of
deployment in a life cycle of a process Each service is a family of ports
Sc – Contract Port Interface to capture abstract properties
Si – Connection Port for interaction Handles service invocation and input
Sr – Connection Port for interaction Handles the service reply
Composition Support
Defining the three ports allows the Notation of a Service Life Cycle Client
Provider
Request Service s using port Sc (requirements)
Invoke Action using port Si and specify result to be sent thru Sr
Result of action y is then received on port Sr
Provides Service s using port Sc (requirements)
Executes action received thru Si
Returns result of action f(a) to specified port Sr
Composition Support
Composition and Interaction Protocol Activities captured in a standard life cycle form
Composition Support
Matching of a Process Provider needs to meet the expected request pattern of the client
Defined using the notion of transition graph
Client
Provider
Composition Support
If the pairs of service operations match based on their individual descriptions Catalog/CatalogBrowse, Quote/QuoteProd Purchase/ProdPurch
then the provider matches the requested process
Composition Support Connection & Interaction
Successful matching results in a contract between two ports Contract Phase- both processes form a contract based
on matching abstract descriptions
Once Contract Port is established, processes can then interact through the a connector channel Connection Phase
Composition Support Formal definition of Contract and
Connector Rules
Services & Processes –an Ontological Framework Ontology Framework Defined
Data model used to represent a set of concepts within a domain and the relationships between these concepts
Enables the shared representation of knowledge Services Service Process Descriptions Reasoning about this knowledge
Needed to support the discovery and matching of processes through the use of descriptions
Represented through use of Description Logic i.e. Resource Description Framework (RDF)
XML-based language
Semantic Web Services is a current available framework that allows descriptions and searches but only at a service-level and not a process level
Services & Processes –an Ontological Framework
A Basic Process Ontology Defined Concepts
Classes of objects with same properties Represent states in a process
Roles Relations between concepts
<Subject, Property, Object> <Component, hasAuthor, Author>
Two Types Transitional roles
Represent Service Operations Description roles
Properties of a state Pre & post Conditions, Service Name & Description
Constructors Allow complex concepts to be constructed in form of concept description - interpreted as reaching a new state C through role R
Services & Processes –an Ontological Framework
Service Process Ontology Concepts (States) & Roles (Transitional, Descriptive) preState & postState (describe states in terms of conditions)
Services & Processes –an Ontological Framework
Notational for Ontology Language
Services & Processes –an Ontological Framework Importance of incorporating Role Constructors
Role constructors allow composition of services to service processes
Role constructors allow for data and process parameters
Services & Processes –an Ontological Framework Now with the complete ontological language specified, a service
process can now be specified
Services & Processes –an Ontological Framework Matching Ontologies of Service Processes
Through use of Subsumption Defined as a Subset-relationship Incorporating something into a more generalized class
Subsumption of Concepts
Subsumption of Roles
More Input/Output oriented
Subsumption in terms of simulation Looking at the internal states of a composite role
expression
Services & Processes –an Ontological Framework Example of Matching
UserLogin matches requirements of Login Weaker, less restricted precondition (synax(id) -> True) Stronger postcondition (valid(id) v invalid(id) -> valid(id) v
invalid(id) v unknown())
Services & Processes –an Ontological Framework
Ontological Matching of Service Processes Requires some additional rules
Reachability of a concept A concept description
with composite transitional role P is reachable if the set of transitions is not empty
Consistency of a role A composite role
is consistent if the last state is reachable through transitions.
Conclusion
Paper presented a layered approach to service process composition Presented an Operational Framework Presented an Ontological Framework
These frameworks are created through the use of Pi-Calculus Allows for the mobility of interations by allow the
sending of ports for communication
Thank You!
Questions?