340 likes | 481 Views
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
E N D
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
Service Composition Describes process of online shopping user starting at login, then repeatedly buying products and finally logging out Orchestration: Each process implements many services 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 Discovery Assembly
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 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 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
Focus on interaction behavior, not execution order Based on Fixed Connections Shared channel that forms a connection between two service processes Orchestration and Choreography Description
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 Invoke Action using port Si and specify result to be sent thru Sr Result of action y is then received on port Sr Request Service s using port Sc (requirements) 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
Matching of a Process Provider needs to meet the expected request pattern of the client Defined using the notion of transition graph Composition Support 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
Formal definition of Contract and Connector Rules Composition Support
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
Service Process Ontology Concepts (States) & Roles (Transitional, Descriptive) preState & postState (describe states in terms of conditions) Services & Processes –an Ontological Framework
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?