Detailed Profile Proposal: Publish Subscribe for XDS: Difference between revisions
No edit summary |
No edit summary |
||
| Line 28: | Line 28: | ||
''Existing systems'': EHR systems, registries, repositories. | ''Existing systems'': EHR systems, registries, repositories. | ||
'' | ''Relevant standards'':<br /> | ||
[http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=regrep#technical ebXML Registry standard, v3.0.1]<br /> | [http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=regrep#technical ebXML Registry standard, v3.0.1]<br /> | ||
[http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=wsn#technical OASIS WS-Notification standard, v. 1.3]<br /> | [http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=wsn#technical OASIS WS-Notification standard, v. 1.3]<br /> | ||
| Line 34: | Line 34: | ||
==5. Technical Approach== | ==5. Technical Approach== | ||
There are two main parts to the design of publish/subscribe infrastructure. The first is the definition of the messages exchanged by the actors involved. The second is the definition of the topics used for subscriptions. One possible approach is to split the two parts into a profile for the first, and a white paper for the second. | |||
Using the WS-Eventing submission will allow us to define the transactions for subscribing, unsubscribing, and publishing that can be re-used by other profiles. Another possible approach is to use existing XDS transactions (stored query, provide and register) and add the publish/subscribe semantics to these transactions. | |||
===Existing actors=== | ===Existing actors=== | ||
'' | ''Actors affected'': Document Source, Document Consumer, Document Repository, Document Registry | ||
===New actors=== | ===New actors=== | ||
'' | ''New Actors'': Subscriber, Notification Broker, Publisher | ||
===Existing transactions=== | ===Existing transactions=== | ||
One possible approach is to enhance Stored Query, and Provide and Register | |||
===New transactions (standards used)=== | ===New transactions (standards used)=== | ||
Possible new transactions are:<br /> | |||
Publish | |||
Subscribe | |||
Unsubscribe | |||
===Impact on existing integration profiles=== | ===Impact on existing integration profiles=== | ||
Revision as of 12:17, 26 October 2007
1. Proposed Profile: Publish/Subscribe Infrastructure for XDS
- Proposal Editor: Vassil Peytchev
- Profile Editor: Vassil Peytchev
- Date: N/A (Wiki keeps history)
- Version: N/A (Wiki keeps history)
- Domain: ITI
Summary
Event driven information exchange patterns dominate the data interchange in most healthcare settings. For example, most HL7 version 2.x interfaces send messages based on events within the sender's system. Most current IHE profiles assume either static, out-of-band determination of the senders and receivers of event driven information exchange, or describe query-response patterns. There is a need for a profiled dynamic infrastructure for event-driven information exchange patterns within IHE. This profile will describe such a framework based on the publish-subscribe data exchange model.
OASIS has published the WS-Notification standards for web-services based publish-subscribe data exchange. The update of that work is under way in the W3C under the WS-Eventing submission. The range of solutions can range from creating guidelines for publish/subscribe within IHE, and specifying the XDS-[a,b] solution (similar to the XUA profile development), through profiling the WS-* specifications with the intent of using the solution beyond just XDS, to specific solution for XDS-[a,b].
Profiling a Publish/Subscribe infrastructure for XDS will have various positive impacts on XDS-[a,b] implementation.
2. The Problem
The IHE XDS profiles require Document Consumers to constantly poll the Document Registry for new documents or updates to existing documents in cases when there is an expectation that additional documents may become available after an initial query. In many such cases a publish/subscribe method of receiving new information for patients of interest. In addition, the NAV profile assumes some kind of subscription method. Providing a consistent pub/sub framework will benefit various use cases where constant polling is not feasible.
3. Key Use Case
How it works with current XDS
Person A visits his PCP with week-old trauma to his foot. Concerned about possible fracture and infection, the PCP orders x-ray and a lab panel, and refers him to a specialist. Upon receiving the referral (which is out of scope here, see proposal for referral orders), the specialist queries the document registry, and received the referral summary. Noticing the outstanding radiology and lab orders, the specialist, or the staff at the specialist's practice, will have to periodically query the registry to retrieve the radiology and lab reports.
How it should work
Person A visits his PCP with week-old trauma to his foot. Concerned about possible fracture and infection, the PCP orders x-ray and a lab panel, and refers him to a specialist. Upon receiving the referral (which is out of scope here, see proposal for referral orders), the specialist queries the document registry, and received the referral summary. The specialist also subscribes for any additional information about the patient. As the radiology and lab reports are submitted to the registry, either a notification is sent to the specialist's system, or an online XDR transaction is exectuted.
4. Standards & Systems
Existing systems: EHR systems, registries, repositories.
Relevant standards:
ebXML Registry standard, v3.0.1
OASIS WS-Notification standard, v. 1.3
WS-Eventing W3C Submission
5. Technical Approach
There are two main parts to the design of publish/subscribe infrastructure. The first is the definition of the messages exchanged by the actors involved. The second is the definition of the topics used for subscriptions. One possible approach is to split the two parts into a profile for the first, and a white paper for the second.
Using the WS-Eventing submission will allow us to define the transactions for subscribing, unsubscribing, and publishing that can be re-used by other profiles. Another possible approach is to use existing XDS transactions (stored query, provide and register) and add the publish/subscribe semantics to these transactions.
Existing actors
Actors affected: Document Source, Document Consumer, Document Repository, Document Registry
New actors
New Actors: Subscriber, Notification Broker, Publisher
Existing transactions
One possible approach is to enhance Stored Query, and Provide and Register
New transactions (standards used)
Possible new transactions are:
Publish
Subscribe
Unsubscribe
Impact on existing integration profiles
<Indicate how existing profiles might need to be modified.>
New integration profiles needed
<Indicate what new profile(s) might need to be created.>
Breakdown of tasks that need to be accomplished
<A list of tasks would be helpful for the technical committee who will have to estimate the effort required to design, review and implement the profile.>
6. Support & Resources
<List groups that have expressed support for the proposal and resources that would be available to accomplish the tasks listed above.>
7. Risks
<List technical or political risks that will need to be considered to successfully field the profile.>
8. Open Issues
<Point out any key issues or design problems. This will be helpful for estimating the amount of work and demonstrates thought has already gone into the candidate profile.>
9. Tech Cmte Evaluation
<The technical committee will use this area to record details of the effort estimation, etc.>
Effort Evaluation (as a % of Tech Cmte Bandwidth):
- 35% for ...
Responses to Issues:
- See italics in Risk and Open Issue sections
Candidate Editor:
- TBA