Jeff Mischkinsky jeff.mischkinsky@ Nickolas Kavantzas nickolas.kavantzas@ Goran Olsson...

download Jeff Mischkinsky jeff.mischkinsky@  Nickolas Kavantzas nickolas.kavantzas@  Goran Olsson goran.olsson@  Web Services Choreography

of 42

  • date post

  • Category


  • view

  • download


Embed Size (px)

Transcript of Jeff Mischkinsky jeff.mischkinsky@ Nickolas Kavantzas nickolas.kavantzas@ Goran Olsson...

  • Slide 1

Jeff Mischkinsky Nickolas Kavantzas Goran Olsson Web Services Choreography Description Language W3C Choreography WG 21 Sept 2003 Slide 2 2 Agenda Goal Web Services Platform Web Services Choreography Description Language Slide 3 3 Goal Specify a declarative language that describes collaborations of Web Services participants by defining their complementary observable behavior Slide 4 4 Current Web Services platform Core communication framework bridging heterogeneous computational models Loosely-coupled, stateless Exchange of type checking information Transport Messaging Description Discovery HTTP, BEEP,IIOP, JMS, SMTP XML,Encoding SOAP WSDL UDDI Slide 5 5 Emerging Web Services platformTransport Messaging Description Discovery HTTP, BEEP,IIOP, JMS, SMTP XML,Encoding SOAP WSDL UDDI Integration Business Process Languages: BPEL, XPDL, BPML Business Collaboration Language: Web Services Choreography Description Language Quality of Service Reliable Messaging SecurityTransaction Coordination Slide 6 6 Emerging Web Services platform Reliable Messaging layer Guaranteed delivery Message ordering Exactly once Context, Coordination, Transaction layer Bridge heterogeneous coordination protocols Business Process Language layer Implements Web Services based applications Models non-observable (internal) behavior BPEL, BPML, XPDL Define control flows Manage private data Slide 7 7 Model the complementary observable behavior of Web Services participating in a common business transaction Based on a formal model pi-calculus variation WS-CDL Design Goals Slide 8 8 WS-CDL Concepts Web Services participants interact and align their shared information Synchronized document exchanges Progress is guarded by commonly defined ordering rules Interactions with common behavioral characteristics are combined to form a behavioral unit Enables re-usability in different business contexts Slide 9 9 WS-CDL Concepts Information Typing Identifying & Coupling of WS participants Information driven collaboration State Activities Reaction Choreography Packaging Slide 10 10 Information Typing Document type Aliases WSDL message type, XSD type, XSD element Supports future type systems Token type Specify name and type of piece of information Uses WS-CDL Document type of the attribute Token Locater type Specify rules for selecting a piece of information WS-CDL Document type WSDL message part XPATH query of document Slide 11 11 Static coupling: Roles & Relationships Role type Specify the observable behavior, in terms of the operations, a WS participant can perform One or more WSDL interface type(s) named as behavior type Relationship type Specify the mutual commitments, in terms of the Roles, two WS participants are required to provide Two WSDL interface types Slide 12 12 Dynamic coupling: Channel Identify a contact-point, through which two WS participants interact A contact-point describes the service type of a participant, using Token type(s) within a reference marker the business process type implementing a WS participant, using Token type(s) within an identity marker Identify a conversation between two or more WS participants A conversation groups a set of related document exchanges, using Token type(s) within an identity marker Slide 13 13 State Capture information shared between WS participants Affect the progress of their common business transaction State definitions Define Documents Typed with a documentType Define Channels Typed with a channel type Specify the Role of the WS participant the state resides in Slide 14 14 Activities: Interact Enable WS participants to communicate and align their shared state Synchronized document exchange between two roles within a relationship Atomic, request & accept of an operation through a channel WSDL One way or request-response Information flow request direction: fromRole towards toRole response direction: toRole towards fromRole Slide 15 15 Activities: Interact (2) Align state that resides in one role with state that resides in the other role The aligned states are made available at the two roles Slide 16 16 Activities Declare Create and make available new state at a Role Repeat Sleep Inact Compensate Slide 17 17 Reaction Guard a set of activities Express interest on the availability of zero, one or more state information When the state is/become available and a guard condition evaluates to true, the enclosed activities are enabled In parallel or sequentially Repeat: marks the re-enablement of a reaction reaction group: marks the mutual-exclusive enablement of a set of activities Slide 18 18 Choreography Interactions with common behavioral characteristics are combined to form a behavioral unit Enumerate all the binary relationships interactions act in Localize the visibility of state Using state definitions Prescribe alternative patterns of behavior Using reactions Enable Recovery Backward: handle exceptional conditions Forward: compensate already completed activities Recursively combine Choreographies to form new Choreographies Slide 19 19 Packaging Aggregate & Import Document types, toke types, toke locator types, role types, relationship types, channel types One or more choreographies Import XSD, WSDL types Slide 20 20 WS-CDL Example The example is a multi-participant choreography Illustrates a simple purchase sequence It involves four participants, Roles Buyer, Seller, Credit Checking Service, and Inventory Service Main choreography involves 3 relationships Buyer-Seller Seller-Credit Checking Service Seller-Inventory Service Slide 21 21 WS-CDL Example cont. The Buyer initiates an interact and the Choreography With the Seller to align the Purchase Order The Seller, when the Purchase Order is available, initiates 3 interactions With the Buyer to acknowledge receipt of the Purchase Order With the Credit Checking Service to check Buyers credit With the Inventory Service for product availability Slide 22 22 WS-CDL Example cont. The Seller reaction is guarded by the response interactions from Credit Checking Service and Inventory Service If both interactions result are positive, the order is processed and the Purchase Order Response is sent If either interaction indicate a negative result a Purchase Order Reject message is sent to the Buyer Slide 23 23 WS-CDL Example cont. Slide 24 24 WS-CDL Example cont. Buyer interacts with Seller to create a Purchase Order Seller acknowledges the Purchase Order in an interact Seller interacts with Credit Service and Inventory service Credit and Inv. Services interacts with Seller with results Seller interacts with Buyer creating PO Response 1 2 3 4 5 Slide 25 25 WS-CDL Example cont. Some Basic Constructs Slide 26"> 26 WS-CDL Example cont. DocumentsSlide 27"> "> " title="27 WS-CDL Example cont. Tokens "> 27 WS-CDL Example cont. TokensSlide 28 28 WS-CDL Example cont. roleTypeSlide 29 29 WS-CDL Example cont. Relationships Slide 30 30 WS-CDL Example cont. ChannelsSlide 31 "> 31 WS-CDL Example cont. State Definitions Slide 32 "> 32 WS-CDL Example cont. InteractsSlide 33 33 WS-CDL Example cont. Reactions"> 34 WS-CDL Example cont. Choreography Slide 35 "> 35 WS-CDL Example cont. ChoreographySlide 36 36 WS-CDL Example cont. Choreography ChoreographyNotation ? ChoreographyNotation ? Slide 37 37 WS-CDL Example cont. Slide 38 38 WS-CDL Example cont. Slide 39 39 WS-CDL Example cont. Slide 40"> 41 WS-CDL Example cont.Slide 42 42 WS-CDL Questions??? Comments!!!