This wiki has undergone a migration to Confluence found Here
<meta name="googlebot" content="noindex">

Receiver Responsibilities

From HL7Wiki
Revision as of 13:04, 9 December 2005 by Rene spronk (talk | contribs) (→‎Notes)
Jump to navigation Jump to search

Receiver Responsibilities of an Interaction will be defined for the target receiver of the message. The receiver responsibilities will be cast in terms of one of several interactions to be sent as a result of receiving the message and/or as one trigger event out of a set of trigger events the receiver will fire after receipt of the message.

Implementers will need to take care that applications that can send an interaction are capable of receiving the ‘receiver responsibility’ interactions, and vice versa.

Definition

Receiver Responsibilities are a set of mutually exclusive responsibility options that are triggered by the receipt of an interaction. Each responsibility option includes a description that describes the circumstances under which that option should be fired. These circumstances are all mutually exclusive, such that one and only one responsibility option fires in response to a given interaction. The recipient must invoke one and only one of the receiver responsibilities (provided that at least one is defined) when they receive the interaction.

An individual responsibility consists of:

However, for reasons of dynamic conformance, the following constraint applies: either all receiver responsibilities have interactions or none do. In other words: if one of the individual receiver responsibities is to "return an interaction", then all individual receiver responsibities shall "return an interaction".

It is NOT be possible to define something that amounts to:

  • the receiver will either trigger an event, OR sent an interaction.
  • the receiver will either Do Nothing, OR sent an interaction.

Notes

  1. All interactions have the (not explicitly documented) default receiver responsability of sending a Syntax Level Acknowledgement (a.k.a. accept-level reject) message in case of syntax or conformance errors. This resposibility is conditional on the value of the Message.acceptAckCode attribute.
  2. It is possible that an interaction (sent when a receiver fulfills its receiver resposibilities) will itself have receiver responsibilities, resulting in a prolonged conversation between sender and receiver.