250 likes | 449 Views
Cross-Enterprise Document Sharing-b (XDS.b). Slides prepared by Roberto Ruggeri, XDS.b Slides Presented by Vassil Peytchev, PIX/PDQ v3, Appendix V. Introduction. XDS.b is an evolution of the current XDS Integration Profile (XDS.a) Same business scenario as XDS.a
E N D
Cross-Enterprise Document Sharing-b (XDS.b) Slides prepared by Roberto Ruggeri, XDS.b Slides Presented by Vassil Peytchev, PIX/PDQ v3, Appendix V
Introduction • XDS.b is an evolution of the current XDS Integration Profile (XDS.a) • Same business scenario as XDS.a • Provides new transactions in line with current standards • XDS.a and XDS.b can co-exist
What’s new in XDS.b • Document metadata format is ebXML Registry Information Model, Version 3.0 • Added new repositoryUniqueId attribute • New Retrieve Document Set transaction with Web Services binding • New transactions with updated Web Services bindings • WSDL for Document Repository, Document Registry • Allows for either Patient Identity Feed HL7v2 or HL7v3 or both to accommodate different scenarios • E.g.: Canada focusing on HL7 v3, U.S. focusing on HL7 v2 • No support for “off-line” mode
What is the Same in XDS.b • Addresses same scenario as XDS.a providing new implementation mechanism • Maintains the same options as XDS.a • Multiple document submission • Document Lifecycle management • Folder management • Composes with other IHE content profiles
Document Metadata Changes • New repositoryUniqueId allows for proper identification of location where document is stored • Document Consumers binds to appropriate repository • Document URI becomes optional • If present indicates support for Retrieve Document transaction [ITI 17]
Coexistence and Migration • XDS.b allows the document URI metadata attribute to be present • Facilitates the use of XDS.b Document Repository/Registry in legacy XDS.a environments • XDS.b identifies rules for implementations claiming conformance against both XDS.a and XDS.b at the same time • [ITI TF-1:10.7] in the supplement explains common scenarios
XDS.b Actors and Transactions • Document Registry • Registry Stored Query [ITI-18] • Register Document Set-b • Patient Identity Feed (HL7v2/HL7v3) • Document Repository • Provide and Register Document Set-b • Retrieve Document Set
XDS.b Actors and Transactions Patient Identity Source Patient Identity Feed [ITI-8] Patient Identity Feed HL7v3 Registry Stored Query [ITI-18] Document Registry Document Consumer Register Document Set-b Provide and Register Document Set-b Document Source Document Repository Retrieve Document Set Integrated Document Source/Repository
Changes in Actor Behavior • Document Repository populates repositoryUniqueId before calling Register Document Set-b • Document Registry can support either Patient Identity Feed HL7v2 or HL7v3 or both to accommodate different scenarios and requirement • Document Consumer needs to resolve the Document Repository endpoint before invoking the Retrieve Document Set transaction • Enables use of proxies for multiple Document Repositories
XDS.b Transactions • All transactions reference ebXML Registry Information Model 3.0 • All transactions support SOAP 1.2 • Optionally support SOAP 1.1 • All transactions support WS-Addressing • All transactions have WSDL defined • Appendix V: one WSDL per Actor per Integration Profile
Changes in Transactions • New XML schema types are defined • Provide and Register Document Set-b Request • Retrieve Document Set Request/Response • Document content is within the s:Body in an element of type xs:base64Binary for MTOM support
Provide and Register Document Set-bRequest Same document metadata as XDS.a Links the document to its metadata Enables support for MTOM
Retrieve Document SetRequest Support for Cross Community Access (XCA) Retrieve any number of documents Enables Consumer to bind to actual Web Service
Retrieve Document SetResponse Error messages consistent with ebRS 3.0 Retrieve any number of documents Links to Registry Response
XDS.b Document RegistryWeb Services Definitions (*) Namespaces presented on multiple lines for readability purposes
XDS.b Document RepositoryWeb Services Definitions (*) Namespaces presented on multiple lines for readability purposes
Retrieve Document Set Request Sample <s:Envelopexmlns:s="http://www.w3.org/2003/05/soap-envelope"xmlns:a="http://www.w3.org/2005/08/addressing"> <s:Header> <a:Action s:mustUnderstand="1"> urn:ihe:iti:2007:RetrieveDocumentSet </a:Action> <a:MessageID> urn:uuid:80b0b9c6-e902-4067-bae5-7fcf994a9f25 </a:MessageID> <a:ReplyTo> <a:Address> http://www.w3.org/2005/08/addressing/anonymous</a:Address> </a:ReplyTo> <a:To s:mustUnderstand="1"> http://localhost:2647/XdsService/IHEXDSRepository.svc </a:To> </s:Header> <s:Body> <RetrieveDocumentSetRequestxmlns="urn:ihe:iti:xds-b:2007"/> </s:Body> </s:Envelope> Support for WS-Addressing Synchronous request
Retrieve Document Set Response <s:Envelopexmlns:s="http://www.w3.org/2003/05/soap-envelope"xmlns:a="http://www.w3.org/2005/08/addressing"> <s:Header> <a:Action s:mustUnderstand="1"> urn:ihe:iti:2007:RetrieveDocumentSetResponse </a:Action> <a:RelatesTo> urn:uuid:80b0b9c6-e902-4067-bae5-7fcf994a9f25 </a:RelatesTo> </s:Header> <s:Body> <RetrieveDocumentSetResponsexmlns="urn:ihe:iti:xds-b:2007"/> </s:Body> </s:Envelope> Use of appropriate WSA action Indicates reply to previous message
Tips and Tricks • When generating Web Services proxy/stubs, evaluate using a development WSDL • Replaces typed definitions with un-typed XML • MTOM gives you binary attachments for free • Supports composition with WS-Security, WS-Reliable Messaging
Sample C# Code Use appropriate namespace and WSDL name Define WS-Addressing Actions for both Request and Response [ServiceContract( Namespace = "urn:ihe:iti:xds-b:2007", Name = "XDSRepository")] public interface IXdsDocumentRepository { [OperationContract( Action = "urn:ihe:iti:2007:ProvideAndRegisterDocumentSet-b", ReplyAction = "urn:ihe:iti:2007:ProvideAndRegisterDocumentSet-bResponse")] Message ProvideAndRegisterDocumentSet(Message input); [OperationContract( Action = "urn:ihe:iti:2007:RetrieveDocumentSet", ReplyAction = "urn:ihe:iti:2007:RetrieveDocumentSetResponse")] Message RetrieveDocumentSet(Message input); } Evaluate use of un-typed development WSDL
What’s Next for XDS.b • Cross Community Access (XCA) composes with XDS.b • Cross-Enterprise User Assertion (XUA) composes with XDS.b via WS-Security 1.1
Thank You! For questions: roberto.ruggeri@microsoft.com ititech@rsna.org