Da Vinci Unsolicited Notifications
1.0.0 - STU1 Release

Da Vinci Unsolicited Notifications, published by HL7 International - Infrastructure and Messaging Work Group. This is not an authorized publication; it is the continuous build for version 1.0.0). This version is based on the current content of https://github.com/HL7/davinci-alerts/ and changes regularly. See the Directory of published versions

Resource Profile: NotificationsMessageHeader

The Da Vinci Notifications MessageHeader Profile sets minimum expectations for the FHIR MessageHeader resource to record the necessary context for Da Vinci notification messaging using FHIR resources. It references the focus of the use case event or request as well as other information related to the action typically transmitted in a Bundle resource in which the MessageHeader resource instance is the first resource in the Bundle.

The official URL for this profile is:

http://hl7.org/fhir/us/davinci-alerts/StructureDefinition/notifications-messageheader

Mandatory and Must Support Data Elements

The following data-elements are mandatory (i.e., data MUST be present) or must be supported if the data is present in the sending system (Must Support definition). They are presented below in a simple human-readable explanation. Profile specific guidance and examples are provided as well. The Formal Profile Definition below provides the formal summary, definitions, and terminology requirements.

Each MessageHeader must have:

  1. A logical id
  2. A code for the type of event
  3. The message source application
  4. A reference to the event’s focus resource(s) which will be bundled in the message

Each MessageHeader must support:

  1. A destination
  2. A reference to the sender which will be bundled in the message
  3. A reference to author which will be bundled in the message
  4. A reference to responsible party which will be bundled in the message

Additional Profile specific implementation guidance:

  • The destination.endpoint and source.endpoint can be in any form of url the server understands (usually, https: or mllp:). The URI is allowed to be relative; in which case, it is relative to the server end-point
  • The reference attribute is required for MessageHeader.sender, MessageHeader.author, MessageHeader.responsible, and MessageHeader.focus so there is no question how to find the resource inside the bundle - the use of only an identifier attribute (in other words, a logical reference) is not permitted.

Examples

The following example of this profile is a freestanding resource instance which is technically invalid since the profile is defined to reference other resources within the same Da Vinci Notification Message Bundle. For examples of this profile within a bundle, see the message bundle examples which are listed on the Examples page.

Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work.

This structure is derived from MessageHeader

Summary

Mandatory: 4 elements (4 nested mandatory elements)
Must-Support: 13 elements
Prohibited: 1 element

Structures

This structure refers to these other structures:

This structure is derived from MessageHeader

NameFlagsCard.TypeDescription & Constraintsdoco
.. MessageHeader 0..*MessageHeaderA resource that describes a message that is exchanged between systems
... id S1..1stringLogical id of this artifact
... eventCoding S1..1CodingCode for the event this message represents or link to event definition
Binding: Da Vinci Notification Event ValueSet (extensible)
... destination S0..1BackboneElementMessage destination application(s)
.... endpoint S1..1urlActual destination address or id
... sender S0..1Reference(US Core Practitioner Profile | US Core PractitionerRole Profile | US Core Organization Profile) {b}Real world sender of the message
.... reference S1..1stringLiteral reference, Relative, internal or absolute URL
... author S0..1Reference(US Core Practitioner Profile | US Core PractitionerRole Profile) {b}The source of the decision
.... reference S1..1stringLiteral reference, Relative, internal or absolute URL
... source S1..1BackboneElementMessage source application
... responsible S0..1Reference(US Core Practitioner Profile | US Core PractitionerRole Profile | US Core Organization Profile) {b}Final responsibility for event
.... reference S1..1stringLiteral reference, Relative, internal or absolute URL
... response 0..0
... focus S1..*Reference(Resource) {b}The actual content of the message
.... reference S1..1stringLiteral reference, Relative, internal or absolute URL

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. MessageHeader I0..*MessageHeaderA resource that describes a message that is exchanged between systems
... id SΣ1..1stringLogical id of this artifact
... meta ΣI0..1MetaMetadata about the resource
... implicitRules ?!ΣI0..1uriA set of rules under which this content was created
... language I0..1codeLanguage of the resource content
Binding: CommonLanguages (preferred)
Max Binding: AllLanguages
... text I0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension I0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!I0..*ExtensionExtensions that cannot be ignored
... event[x] ΣI1..1(Slice Definition)Code for the event this message represents or link to event definition
Slice: Unordered, Closed by type:$this
Binding: MessageEvent (example)
.... event[x]:eventCoding SΣI1..1CodingCode for the event this message represents or link to event definition
Binding: Da Vinci Notification Event ValueSet (extensible)
... destination SΣI0..1BackboneElementMessage destination application(s)
.... id 0..1stringUnique id for inter-element referencing
.... extension I0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!ΣI0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... name ΣI0..1stringName of system
.... target ΣI0..1Reference(Device)Particular delivery destination within the destination
.... endpoint SΣI1..1urlActual destination address or id
.... receiver ΣI0..1Reference(Practitioner | PractitionerRole | Organization)Intended "real-world" recipient for the data
... sender SΣI0..1Reference(US Core Practitioner Profile | US Core PractitionerRole Profile | US Core Organization Profile) {b}Real world sender of the message
.... id 0..1stringUnique id for inter-element referencing
.... extension I0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... reference SΣI1..1stringLiteral reference, Relative, internal or absolute URL
.... type ΣI0..1uriType the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible)
.... identifier ΣI0..1IdentifierLogical reference, when literal reference is not known
.... display ΣI0..1stringText alternative for the resource
... enterer ΣI0..1Reference(Practitioner | PractitionerRole)The source of the data entry
... author SΣI0..1Reference(US Core Practitioner Profile | US Core PractitionerRole Profile) {b}The source of the decision
.... id 0..1stringUnique id for inter-element referencing
.... extension I0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... reference SΣI1..1stringLiteral reference, Relative, internal or absolute URL
.... type ΣI0..1uriType the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible)
.... identifier ΣI0..1IdentifierLogical reference, when literal reference is not known
.... display ΣI0..1stringText alternative for the resource
... source SΣI1..1BackboneElementMessage source application
.... id 0..1stringUnique id for inter-element referencing
.... extension I0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!ΣI0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... name ΣI0..1stringName of system
.... software ΣI0..1stringName of software running the system
.... version ΣI0..1stringVersion of software running
.... contact ΣI0..1ContactPointHuman contact for problems
.... endpoint ΣI1..1urlActual message source address or id
... responsible SΣI0..1Reference(US Core Practitioner Profile | US Core PractitionerRole Profile | US Core Organization Profile) {b}Final responsibility for event
.... id 0..1stringUnique id for inter-element referencing
.... extension I0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... reference SΣI1..1stringLiteral reference, Relative, internal or absolute URL
.... type ΣI0..1uriType the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible)
.... identifier ΣI0..1IdentifierLogical reference, when literal reference is not known
.... display ΣI0..1stringText alternative for the resource
... reason ΣI0..1CodeableConceptCause of event
Binding: ExampleMessageReasonCodes (example)
... focus SΣI1..*Reference(Resource) {b}The actual content of the message
.... id 0..1stringUnique id for inter-element referencing
.... extension I0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... reference SΣI1..1stringLiteral reference, Relative, internal or absolute URL
.... type ΣI0..1uriType the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible)
.... identifier ΣI0..1IdentifierLogical reference, when literal reference is not known
.... display ΣI0..1stringText alternative for the resource
... definition ΣI0..1canonical(MessageDefinition)Link to the definition for this message

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. MessageHeader I0..*MessageHeaderA resource that describes a message that is exchanged between systems
... id Σ1..1stringLogical id of this artifact
... event[x]:eventCoding ΣI1..1CodingCode for the event this message represents or link to event definition
Binding: Da Vinci Notification Event ValueSet (extensible)
... destination ΣI0..1BackboneElementMessage destination application(s)
.... endpoint ΣI1..1urlActual destination address or id
... sender ΣI0..1Reference(US Core Practitioner Profile | US Core PractitionerRole Profile | US Core Organization Profile) {b}Real world sender of the message
.... reference ΣI1..1stringLiteral reference, Relative, internal or absolute URL
... author ΣI0..1Reference(US Core Practitioner Profile | US Core PractitionerRole Profile) {b}The source of the decision
.... reference ΣI1..1stringLiteral reference, Relative, internal or absolute URL
... source ΣI1..1BackboneElementMessage source application
... responsible ΣI0..1Reference(US Core Practitioner Profile | US Core PractitionerRole Profile | US Core Organization Profile) {b}Final responsibility for event
.... reference ΣI1..1stringLiteral reference, Relative, internal or absolute URL
... focus ΣI1..*Reference(Resource) {b}The actual content of the message
.... reference ΣI1..1stringLiteral reference, Relative, internal or absolute URL

doco Documentation for this format

This structure is derived from MessageHeader

Summary

Mandatory: 4 elements (4 nested mandatory elements)
Must-Support: 13 elements
Prohibited: 1 element

Structures

This structure refers to these other structures:

Differential View

This structure is derived from MessageHeader

NameFlagsCard.TypeDescription & Constraintsdoco
.. MessageHeader 0..*MessageHeaderA resource that describes a message that is exchanged between systems
... id S1..1stringLogical id of this artifact
... eventCoding S1..1CodingCode for the event this message represents or link to event definition
Binding: Da Vinci Notification Event ValueSet (extensible)
... destination S0..1BackboneElementMessage destination application(s)
.... endpoint S1..1urlActual destination address or id
... sender S0..1Reference(US Core Practitioner Profile | US Core PractitionerRole Profile | US Core Organization Profile) {b}Real world sender of the message
.... reference S1..1stringLiteral reference, Relative, internal or absolute URL
... author S0..1Reference(US Core Practitioner Profile | US Core PractitionerRole Profile) {b}The source of the decision
.... reference S1..1stringLiteral reference, Relative, internal or absolute URL
... source S1..1BackboneElementMessage source application
... responsible S0..1Reference(US Core Practitioner Profile | US Core PractitionerRole Profile | US Core Organization Profile) {b}Final responsibility for event
.... reference S1..1stringLiteral reference, Relative, internal or absolute URL
... response 0..0
... focus S1..*Reference(Resource) {b}The actual content of the message
.... reference S1..1stringLiteral reference, Relative, internal or absolute URL

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. MessageHeader I0..*MessageHeaderA resource that describes a message that is exchanged between systems
... id SΣ1..1stringLogical id of this artifact
... meta ΣI0..1MetaMetadata about the resource
... implicitRules ?!ΣI0..1uriA set of rules under which this content was created
... language I0..1codeLanguage of the resource content
Binding: CommonLanguages (preferred)
Max Binding: AllLanguages
... text I0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension I0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!I0..*ExtensionExtensions that cannot be ignored
... event[x] ΣI1..1(Slice Definition)Code for the event this message represents or link to event definition
Slice: Unordered, Closed by type:$this
Binding: MessageEvent (example)
.... event[x]:eventCoding SΣI1..1CodingCode for the event this message represents or link to event definition
Binding: Da Vinci Notification Event ValueSet (extensible)
... destination SΣI0..1BackboneElementMessage destination application(s)
.... id 0..1stringUnique id for inter-element referencing
.... extension I0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!ΣI0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... name ΣI0..1stringName of system
.... target ΣI0..1Reference(Device)Particular delivery destination within the destination
.... endpoint SΣI1..1urlActual destination address or id
.... receiver ΣI0..1Reference(Practitioner | PractitionerRole | Organization)Intended "real-world" recipient for the data
... sender SΣI0..1Reference(US Core Practitioner Profile | US Core PractitionerRole Profile | US Core Organization Profile) {b}Real world sender of the message
.... id 0..1stringUnique id for inter-element referencing
.... extension I0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... reference SΣI1..1stringLiteral reference, Relative, internal or absolute URL
.... type ΣI0..1uriType the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible)
.... identifier ΣI0..1IdentifierLogical reference, when literal reference is not known
.... display ΣI0..1stringText alternative for the resource
... enterer ΣI0..1Reference(Practitioner | PractitionerRole)The source of the data entry
... author SΣI0..1Reference(US Core Practitioner Profile | US Core PractitionerRole Profile) {b}The source of the decision
.... id 0..1stringUnique id for inter-element referencing
.... extension I0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... reference SΣI1..1stringLiteral reference, Relative, internal or absolute URL
.... type ΣI0..1uriType the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible)
.... identifier ΣI0..1IdentifierLogical reference, when literal reference is not known
.... display ΣI0..1stringText alternative for the resource
... source SΣI1..1BackboneElementMessage source application
.... id 0..1stringUnique id for inter-element referencing
.... extension I0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!ΣI0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... name ΣI0..1stringName of system
.... software ΣI0..1stringName of software running the system
.... version ΣI0..1stringVersion of software running
.... contact ΣI0..1ContactPointHuman contact for problems
.... endpoint ΣI1..1urlActual message source address or id
... responsible SΣI0..1Reference(US Core Practitioner Profile | US Core PractitionerRole Profile | US Core Organization Profile) {b}Final responsibility for event
.... id 0..1stringUnique id for inter-element referencing
.... extension I0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... reference SΣI1..1stringLiteral reference, Relative, internal or absolute URL
.... type ΣI0..1uriType the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible)
.... identifier ΣI0..1IdentifierLogical reference, when literal reference is not known
.... display ΣI0..1stringText alternative for the resource
... reason ΣI0..1CodeableConceptCause of event
Binding: ExampleMessageReasonCodes (example)
... focus SΣI1..*Reference(Resource) {b}The actual content of the message
.... id 0..1stringUnique id for inter-element referencing
.... extension I0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... reference SΣI1..1stringLiteral reference, Relative, internal or absolute URL
.... type ΣI0..1uriType the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible)
.... identifier ΣI0..1IdentifierLogical reference, when literal reference is not known
.... display ΣI0..1stringText alternative for the resource
... definition ΣI0..1canonical(MessageDefinition)Link to the definition for this message

doco Documentation for this format

 

Other representations of profile: Schematron

Terminology Bindings

PathConformanceValueSet
MessageHeader.languagepreferredCommonLanguages
Max Binding: AllLanguages
MessageHeader.event[x]exampleMessageEvent
MessageHeader.event[x]:eventCodingextensibleNotificationEventValueSet
MessageHeader.sender.typeextensibleResourceType
MessageHeader.author.typeextensibleResourceType
MessageHeader.responsible.typeextensibleResourceType
MessageHeader.reasonexampleExampleMessageReasonCodes
MessageHeader.response.coderequiredResponseType
MessageHeader.focus.typeextensibleResourceType