1 / 20

Asynchronous Web Services Exchange

Asynchronous Web Services Exchange. Teddy Bachour Microsoft Corporation August 11, 2008. Agenda. What is Asynchronous Web Services Exchange Why Asynchronous Web Services Exchange Scope of Asynchronous Web Services Exchange Supplement Updates to Standards & Systems Updates to WSDL & SOAP.

lorna
Download Presentation

Asynchronous Web Services Exchange

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Asynchronous Web Services Exchange Teddy Bachour Microsoft Corporation August 11, 2008

  2. Agenda • What is Asynchronous Web Services Exchange • Why Asynchronous Web Services Exchange • Scope of Asynchronous Web Services Exchange Supplement • Updates to Standards & Systems • Updates to WSDL & SOAP

  3. What is Asynchronous Web Services Exchange • A request-response message exchange pattern (aka mep) between a Requestor and a Provider of service • Provider may not be available at the time the request is sent • Provider will ‘eventually’ receive and process the request and send a response back to the Requestor

  4. Provide and Register Document Set-b Sync Provide and Register Document Set-b [ITI-41] Document Source Document Repository

  5. Provide and Register Document Set-b ASync Provide and Register Document Set-b [ITI-41] (Request) Document Source Document Repository Provide and Register Document Set-b [ITI-41] (Response)

  6. Examples of Synchronous and Asynchronous Message Exchange Patterns Synchronous Asynchronous Email exchanges Discussion boards Voice mails • Phone conversations • Meetings • Instant Messaging

  7. Why Asynchronous Web Services Exchange • Current XDS.b and XCA implementation profiles imply synchronous communication between actors • This works well in tightly controlled environments • Asynchronous Web Services Exchange further enables support for network infrastructures where • Transports are unreliable • Systems are not always available • Variable or high communication latency is present • Asynchronous Web Services Exchange opens the options • For using intermediaries for store and forward or offline communication modes • Using reliable messaging mechanisms to address the reliability and availability challenges that these types of network infrastructures present

  8. Store & Forward, Offline Request Queue Provide and Register Document Set-b [ITI-41] (Request) Document Source Document Repository Provide and Register Document Set-b [ITI-41] (Response) Response Queue

  9. Reliable Messaging Provide and Register Document Set-b [ITI-41] (Request) Intermediaries Document Source Document Repository Provide and Register Document Set-b [ITI-41] (Response)

  10. Scope of Asynchronous Web Services Exchange Supplement • Volume I and Volume II • Appendix V • XDS.b • XCA

  11. Asynchronous Web Services Exchange for XDS.b Actors

  12. Asynchronous Web Services Exchange for XDS.b Actors XDS.b Actors that support this option shall support the following: • Document Source Actor shall support Asynchronous Web Services Exchange for the Provide & Register Document Set – b [ITI-41] transaction • Document Consumer Actor shall support Asynchronous Web Services Exchange for the Registry Stored Query [ITI-18] and Retrieve Document Set [ITI-43] transactions • Document Repository Actor shall support Asynchronous Web Services Exchange for the Provide & Register Document Set – b [ITI-41] and Register Document Set – b [ITI-42], and Retrieve Document Set [ITI-43] transactions • Document Registry Actor shall support Asynchronous Web Services Exchange for the Registry Stored Query [ITI-18] and Register Document Set – b [ITI-42] transactions Use of Synchronous or Asynchronous Web Services Exchange is dictated by the individual install environment and affinity domain policy

  13. Asynchronous Web Services Exchange for XCA

  14. Asynchronous Web Services Exchange for XCA • Initiating Gateways which support Asynchronous Web Services Exchange shall support Asynchronous Web Services Exchange on the Cross Gateway Query [ITI-38] and Cross Gateway Retrieve [ITI-39] transactions • If the Initiating Gateway supports both the XDS Affinity Domain Option and the Asynchronous Web Services Option it shall support Asynchronous Web Services Exchange on the Registry Stored Query [ITI-18] and Retrieve Document Set [ITI-43] transactions

  15. Standards & Systems • Asynchronous Web Services Exchange uses the same standards as the Synchronous Web Services Exchange • The key enabler for Asynchronous Web Services Exchange is WS-Addressing that allows for: • Specification of the reply-to endpoint where responses should be sent • Specification of the SOAP message id to allow for correlation of responses to the original requests

  16. Updates to WSDL and SOAP Patient Identity Source Patient Identity Feed [ITI-8] Patient Identity Feed HL7v3 [ITI-44] Registry Stored Query [ITI-18] New WSDL Document Registry Document Consumer Register Document Set-b [ITI-42] Provide and Register Document Set-b [ITI-41] Retrieve Document Set [ITI-43] New WSDL Document Source Document Repository Integrated Document Source/Repository

  17. Sample WSDL Update Document Repository Sync <portType name="DocumentRepository_PortType"> <operation name="DocumentRepository_ProvideAndRegisterDocumentSet"> <input message="ihe:ProvideAndRegisterDocumentSet-b_Message" wsaw:Action="urn:ihe:iti:2007:ProvideAndRegisterDocumentSet-b"/> <output message="ihe:ProvideAndRegisterDocumentSet-bResponse_Message" wsaw:Action="urn:ihe:iti:2007:ProvideAndRegisterDocumentSet-bResponse"/> </operation> . . . </portType> Document Repository Async <portType name="DocumentRepository_PortType"> <operation name="DocumentRepository_ProvideAndRegisterDocumentSetAsync"> <input message="ihe:ProvideAndRegisterDocumentSet_Message" wsaw:Action="urn:ihe:iti:2007:ProvideAndRegisterDocumentSet-bAsync"/> </operation> . . . </portType> Document Source Async (New) <portType name="DocumentSource_PortType"> <operation name="DocumentSource_ProvideAndRegisterDocumentSet-bAsyncResponse"> <input message="ihe:ProvideAndRegisterDocumentSet-bResponse_Message" wsaw:Action="urn:ihe:iti:2007:ProvideAndRegisterDocumentSet-bAsyncResponse"></input> </operation> </portType>

  18. How SOAP Headers Change Document Source Sync - ProvideAndRegisterDocumentSet-b Request <soap:Envelopexmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:wsa="http://www.w3.org/2005/08/addressing"> <soap:Header> <wsa:Actionsoap:mustUnderstand="1">urn:ihe:iti:2007:ProvideAndRegisterDocumentSet-b</wsa:Action> <wsa:MessageID>urn:uuid:67cd539a-87ca-2684-4e54-00016c82368a</wsa:MessageID> <wsa:ReplyTo> <wsa:Address>http://www.w3.org/2005/08/addressing/anonymous</wsa:Address> </wsa:ReplyTo> <wsa:Tosoap:mustUnderstand="1">http://localhost:9080/XDS/RepositoryReceiver</wsa:To> </soap:Header> <soap:Body> </soap:Body> </soap:Envelope> Document Source Async - ProvideAndRegisterDocumentSet-b Request (Updated) <soap:Envelopexmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:wsa="http://www.w3.org/2005/08/addressing"> <soap:Header> <wsa:Actionsoap:mustUnderstand="1">urn:ihe:iti:2007:ProvideAndRegisterDocumentSet-b</wsa:Action> <wsa:MessageID>urn:uuid:67cd539a-87ca-2684-4e54-00016c82368a</wsa:MessageID> <wsa:ReplyTo> <wsa:Address> http://IPAddress:Port#/XDS/DocumentSourceReceiver</wsa:Address> </wsa:ReplyTo> <wsa:Tosoap:mustUnderstand="1">http://localhost:9080/XDS/RepositoryReceiver</wsa:To> </soap:Header> <soap:Body> </soap:Body> </soap:Envelope>

  19. How SOAP Headers Change (2) Document Repository - ProvideAndRegisterDocumentSet-b Response (New) <soap:Envelopexmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:wsa="http://www.w3.org/2005/08/addressing"> <soap:Header> <wsa:Actionsoap:mustUnderstand="1">urn:ihe:iti:2007:ProvideAndRegisterDocumentSet-b</wsa:Action> <wsa:MessageID>urn:uuid:aaaabbbb-cccc-dddd-eeee-wwwwwwwwwww</wsa:MessageID> <wsa:RelatesTo>urn:uuid:67cd539a-87ca-2684-4e54-00016c82368a</wsa:RelatesTo> <wsa:Tosoap:mustUnderstand="1">http://localhost:9080/XDS/SourceReceiver</wsa:To> </soap:Header> <soap:Body> </soap:Body> </soap:Envelope>

  20. Questions

More Related