An Ontological Framework for Web Service Processes
This paper explores the growing need for the development of semantic-based services on the web. It aims to provide a comprehensive ontological framework for service process description and discovery, facilitating the composition of services using abstract descriptions via ontologies. The framework details two forms of service composition—Orchestration and Choreography—each elucidating how services interact and collaborate. We present an operational layer that supports the requirements of orchestration and choreography through formal descriptions and abstractions, ultimately aiming to improve the efficiency of web service processes.
An Ontological Framework for Web Service Processes
E N D
Presentation Transcript
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?