TRxHub IG
0.1.0 - ci-build
TRxHub IG - Local Development build (v0.1.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions
| Official URL: https://trxhub.mediservice.ch/fhir/StructureDefinition/trxhub-message-header | Version: 0.1.0 | |||
| Draft as of 2026-10-08 | Computable Name: TRxHubMessageHeader | |||
Message Header for TRxHub. Not part of the FHIR API
This message header is not part of the TRxHub FHIR API and can be ignored by clients.
Currently only one event, resources-submitted, is defined.
Therefore, the receiving client has to perform upserts for each resource based on the id.
The sender holds the id of the external client which created the resources via the API.
TRxHub itself only sets the sender but does not process it if received.
Responsible holds the id of the external client the resources inside the bundle belong to.
TRxHub itself only sets responsible but does not process it if received.
Holds information about the processing result of a message bundle.
The response only covers technical and structural problems (e.g. invalid format or failed validation). Business errors are reported independently per resource through status updates.
response.identifier holds the id of the MessageHeader of the original message.
The response code indicates if the message bundle was processed successfully or not.
If a message bundle could be processed without problems ok is returned.
If an error occurred during processing the code can be fatal-error or transient-error.
fatal-error: The message was rejected because of a problem with its format or content.
The sender has to fix the problem on their end since resending the message would result in the same error again.
Only errors the sender can and has to fix should carry this code.
transient-error: The receiver could not process the message due to a problem in their system.
This error should only be returned after the receiver's own retries have failed.
No action is required from the sender. It only informs that the message has not been processed yet.
In case of an error an OperationOutcome needs to be provided as a bundle entry and referenced here via its local fullUrl urn:uuid
Usages:
You can also check for usages in the FHIR IG Statistics
Description of Profiles, Differentials, Snapshots and how the different presentations work.
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | MessageHeader | A resource that describes a message that is exchanged between systems Constraints: trxhub-mh-1 |
![]() ![]() |
1..1 | id | Unique identifier of the message (UUID) | |
![]() ![]() |
0..1 | uri | A set of rules under which this content was created | |
![]() ![]() |
0..* | Extension | Extensions that cannot be ignored | |
![]() ![]() |
1..1 | Coding | Code for the event this message represents or link to event definition Binding: TRxHub MessageHeader Event ValueSet (required) | |
![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Required Pattern: https://trxhub.mediservice.ch/fhir/CodeSystem/trxhub-message-header-event | |
![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system | |
![]() ![]() |
1..1 | BackboneElement | Message destination application(s) | |
![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |
![]() ![]() ![]() |
1..1 | url | Endpoint the message was sent to | |
![]() ![]() |
0..1 | Reference(Practitioner | PractitionerRole | Organization) | Client that submitted the message | |
![]() ![]() ![]() |
1..1 | Identifier | Logical reference, when literal reference is not known | |
![]() ![]() ![]() ![]() |
0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . | |
![]() ![]() ![]() ![]() |
1..1 | string | clientId that submitted the message Example General: 123456 | |
![]() ![]() |
1..1 | BackboneElement | Message source application | |
![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |
![]() ![]() ![]() |
1..1 | url | Endpoint of the sending side (where replies are sent to) | |
![]() ![]() |
0..1 | Reference(Practitioner | PractitionerRole | Organization) | Client that owns the data in the message | |
![]() ![]() ![]() |
1..1 | Identifier | Logical reference, when literal reference is not known | |
![]() ![]() ![]() ![]() |
0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . | |
![]() ![]() ![]() ![]() |
1..1 | string | clientId that owns the data in the message Example General: 123456 | |
![]() ![]() |
0..1 | BackboneElement | If this is a reply to prior message | |
![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |
![]() ![]() ![]() |
1..1 | id | Id of original message | |
![]() ![]() ![]() |
1..1 | code | ok | transient-error | fatal-error Binding: ResponseType (required): The kind of response to a message. | |
![]() ![]() ![]() |
0..1 | Reference(OperationOutcome) | Specific list of hints/warnings/errors | |
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| MessageHeader.event[x] | Base | required | TRxHub MessageHeader Event ValueSet | 📦0.1.0 | This IG |
| MessageHeader.sender.identifier.use | Base | required | IdentifierUse | 📍4.0.1 | FHIR Std. |
| MessageHeader.responsible.identifier.use | Base | required | IdentifierUse | 📍4.0.1 | FHIR Std. |
| MessageHeader.response.code | Base | required | ResponseType | 📍4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| dom-2 | error | MessageHeader | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | MessageHeader | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource |
contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
|
| dom-4 | error | MessageHeader | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated |
contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
|
| dom-5 | error | MessageHeader | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | MessageHeader | A resource should have narrative for robust management |
text.`div`.exists()
|
| ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children |
hasValue() or (children().count() > id.count())
|
| ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both |
extension.exists() != value.exists()
|
| trxhub-mh-1 | error | MessageHeader | A response with a code other than 'ok' must reference an OperationOutcome in response.details. |
response.where(code != 'ok').exists() implies response.details.exists()
|
This structure is derived from MessageHeader
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | MessageHeader | A resource that describes a message that is exchanged between systems Constraints: trxhub-mh-1 |
![]() ![]() |
1..1 | id | Unique identifier of the message (UUID) | |
![]() ![]() |
1..1 | Coding | Code for the event this message represents or link to event definition Binding: TRxHub MessageHeader Event ValueSet (required) | |
![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Required Pattern: https://trxhub.mediservice.ch/fhir/CodeSystem/trxhub-message-header-event | |
![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system | |
![]() ![]() |
1..1 | BackboneElement | Message destination application(s) | |
![]() ![]() ![]() |
1..1 | url | Endpoint the message was sent to | |
![]() ![]() |
0..1 | Reference(Practitioner | PractitionerRole | Organization) | Client that submitted the message | |
![]() ![]() ![]() |
1..1 | Identifier | Logical reference, when literal reference is not known | |
![]() ![]() ![]() ![]() |
1..1 | string | clientId that submitted the message | |
![]() ![]() |
1..1 | BackboneElement | Message source application | |
![]() ![]() ![]() |
1..1 | url | Endpoint of the sending side (where replies are sent to) | |
![]() ![]() |
0..1 | Reference(Practitioner | PractitionerRole | Organization) | Client that owns the data in the message | |
![]() ![]() ![]() |
1..1 | Identifier | Logical reference, when literal reference is not known | |
![]() ![]() ![]() ![]() |
1..1 | string | clientId that owns the data in the message | |
![]() ![]() |
0..1 | BackboneElement | If this is a reply to prior message | |
![]() ![]() ![]() |
1..1 | id | Id of original message | |
![]() ![]() ![]() |
1..1 | code | ok | transient-error | fatal-error | |
![]() ![]() ![]() |
0..1 | Reference(OperationOutcome) | Specific list of hints/warnings/errors | |
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| MessageHeader.event[x] | Base | required | TRxHub MessageHeader Event ValueSet | 📦0.1.0 | This IG |
| Id | Grade | Path(s) | Description | Expression |
| trxhub-mh-1 | error | MessageHeader | A response with a code other than 'ok' must reference an OperationOutcome in response.details. |
response.where(code != 'ok').exists() implies response.details.exists()
|
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() | ||||
|---|---|---|---|---|---|---|---|---|
![]() |
C | 0..* | MessageHeader | A resource that describes a message that is exchanged between systems Constraints: trxhub-mh-1 | ||||
![]() ![]() |
1..1 | id | Unique identifier of the message (UUID) | |||||
![]() ![]() |
0..1 | Meta | Metadata about the resource | |||||
![]() ![]() |
0..1 | uri | A set of rules under which this content was created | |||||
![]() ![]() |
0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
![]() ![]() |
0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements | |||||
![]() ![]() |
0..* | Resource | Contained, inline Resources | |||||
![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() |
0..* | Extension | Extensions that cannot be ignored | |||||
![]() ![]() |
1..1 | Coding | Code for the event this message represents or link to event definition Binding: TRxHub MessageHeader Event ValueSet (required) | |||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Required Pattern: https://trxhub.mediservice.ch/fhir/CodeSystem/trxhub-message-header-event | |||||
![]() ![]() ![]() |
0..1 | string | Version of the system - if relevant | |||||
![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system | |||||
![]() ![]() ![]() |
0..1 | string | Representation defined by the system | |||||
![]() ![]() ![]() |
0..1 | boolean | If this coding was chosen directly by the user | |||||
![]() ![]() |
1..1 | BackboneElement | Message destination application(s) | |||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |||||
![]() ![]() ![]() |
0..1 | string | Name of system | |||||
![]() ![]() ![]() |
0..1 | Reference(Device) | Particular delivery destination within the destination | |||||
![]() ![]() ![]() |
1..1 | url | Endpoint the message was sent to | |||||
![]() ![]() ![]() |
0..1 | Reference(Practitioner | PractitionerRole | Organization) | Intended "real-world" recipient for the data | |||||
![]() ![]() |
0..1 | Reference(Practitioner | PractitionerRole | Organization) | Client that submitted the message | |||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() |
C | 0..1 | string | Literal reference, Relative, internal or absolute URL | ||||
![]() ![]() ![]() |
0..1 | uri | Type the reference refers to (e.g. "Patient") Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model). | |||||
![]() ![]() ![]() |
1..1 | Identifier | Logical reference, when literal reference is not known | |||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() |
0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . | |||||
![]() ![]() ![]() ![]() |
0..1 | CodeableConcept | Description of identifier Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose. | |||||
![]() ![]() ![]() ![]() |
0..1 | uri | The namespace for the identifier value Example General: http://www.acme.com/identifiers/patient | |||||
![]() ![]() ![]() ![]() |
1..1 | string | clientId that submitted the message Example General: 123456 | |||||
![]() ![]() ![]() ![]() |
0..1 | Period | Time period when id is/was valid for use | |||||
![]() ![]() ![]() ![]() |
0..1 | Reference(Organization) | Organization that issued id (may be just text) | |||||
![]() ![]() ![]() |
0..1 | string | Text alternative for the resource | |||||
![]() ![]() |
0..1 | Reference(Practitioner | PractitionerRole) | The source of the data entry | |||||
![]() ![]() |
0..1 | Reference(Practitioner | PractitionerRole) | The source of the decision | |||||
![]() ![]() |
1..1 | BackboneElement | Message source application | |||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |||||
![]() ![]() ![]() |
0..1 | string | Name of system | |||||
![]() ![]() ![]() |
0..1 | string | Name of software running the system | |||||
![]() ![]() ![]() |
0..1 | string | Version of software running | |||||
![]() ![]() ![]() |
0..1 | ContactPoint | Human contact for problems | |||||
![]() ![]() ![]() |
1..1 | url | Endpoint of the sending side (where replies are sent to) | |||||
![]() ![]() |
0..1 | Reference(Practitioner | PractitionerRole | Organization) | Client that owns the data in the message | |||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() |
C | 0..1 | string | Literal reference, Relative, internal or absolute URL | ||||
![]() ![]() ![]() |
0..1 | uri | Type the reference refers to (e.g. "Patient") Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model). | |||||
![]() ![]() ![]() |
1..1 | Identifier | Logical reference, when literal reference is not known | |||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() |
0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . | |||||
![]() ![]() ![]() ![]() |
0..1 | CodeableConcept | Description of identifier Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose. | |||||
![]() ![]() ![]() ![]() |
0..1 | uri | The namespace for the identifier value Example General: http://www.acme.com/identifiers/patient | |||||
![]() ![]() ![]() ![]() |
1..1 | string | clientId that owns the data in the message Example General: 123456 | |||||
![]() ![]() ![]() ![]() |
0..1 | Period | Time period when id is/was valid for use | |||||
![]() ![]() ![]() ![]() |
0..1 | Reference(Organization) | Organization that issued id (may be just text) | |||||
![]() ![]() ![]() |
0..1 | string | Text alternative for the resource | |||||
![]() ![]() |
0..1 | CodeableConcept | Cause of event Binding: ExampleMessageReasonCodes (example): Reason for event occurrence. | |||||
![]() ![]() |
0..1 | BackboneElement | If this is a reply to prior message | |||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |||||
![]() ![]() ![]() |
1..1 | id | Id of original message | |||||
![]() ![]() ![]() |
1..1 | code | ok | transient-error | fatal-error Binding: ResponseType (required): The kind of response to a message. | |||||
![]() ![]() ![]() |
0..1 | Reference(OperationOutcome) | Specific list of hints/warnings/errors | |||||
![]() ![]() |
0..* | Reference(Resource) | The actual content of the message | |||||
![]() ![]() |
0..1 | canonical(MessageDefinition) | Link to the definition for this message | |||||
Documentation for this format | ||||||||
| Path | Status | Usage | ValueSet | Version | Source |
| MessageHeader.language | Base | preferred | Common Languages | 📍4.0.1 | FHIR Std. |
| MessageHeader.event[x] | Base | required | TRxHub MessageHeader Event ValueSet | 📦0.1.0 | This IG |
| MessageHeader.sender.type | Base | extensible | ResourceType | 📍4.0.1 | FHIR Std. |
| MessageHeader.sender.identifier.use | Base | required | IdentifierUse | 📍4.0.1 | FHIR Std. |
| MessageHeader.sender.identifier.type | Base | extensible | IdentifierType | 📍4.0.1 | FHIR Std. |
| MessageHeader.responsible.type | Base | extensible | ResourceType | 📍4.0.1 | FHIR Std. |
| MessageHeader.responsible.identifier.use | Base | required | IdentifierUse | 📍4.0.1 | FHIR Std. |
| MessageHeader.responsible.identifier.type | Base | extensible | IdentifierType | 📍4.0.1 | FHIR Std. |
| MessageHeader.reason | Base | example | Example Message Reason Codes | 📍4.0.1 | FHIR Std. |
| MessageHeader.response.code | Base | required | ResponseType | 📍4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| dom-2 | error | MessageHeader | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | MessageHeader | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource |
contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
|
| dom-4 | error | MessageHeader | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated |
contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
|
| dom-5 | error | MessageHeader | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | MessageHeader | A resource should have narrative for robust management |
text.`div`.exists()
|
| ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children |
hasValue() or (children().count() > id.count())
|
| ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both |
extension.exists() != value.exists()
|
| trxhub-mh-1 | error | MessageHeader | A response with a code other than 'ok' must reference an OperationOutcome in response.details. |
response.where(code != 'ok').exists() implies response.details.exists()
|
This structure is derived from MessageHeader
Key Elements View
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | MessageHeader | A resource that describes a message that is exchanged between systems Constraints: trxhub-mh-1 |
![]() ![]() |
1..1 | id | Unique identifier of the message (UUID) | |
![]() ![]() |
0..1 | uri | A set of rules under which this content was created | |
![]() ![]() |
0..* | Extension | Extensions that cannot be ignored | |
![]() ![]() |
1..1 | Coding | Code for the event this message represents or link to event definition Binding: TRxHub MessageHeader Event ValueSet (required) | |
![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Required Pattern: https://trxhub.mediservice.ch/fhir/CodeSystem/trxhub-message-header-event | |
![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system | |
![]() ![]() |
1..1 | BackboneElement | Message destination application(s) | |
![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |
![]() ![]() ![]() |
1..1 | url | Endpoint the message was sent to | |
![]() ![]() |
0..1 | Reference(Practitioner | PractitionerRole | Organization) | Client that submitted the message | |
![]() ![]() ![]() |
1..1 | Identifier | Logical reference, when literal reference is not known | |
![]() ![]() ![]() ![]() |
0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . | |
![]() ![]() ![]() ![]() |
1..1 | string | clientId that submitted the message Example General: 123456 | |
![]() ![]() |
1..1 | BackboneElement | Message source application | |
![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |
![]() ![]() ![]() |
1..1 | url | Endpoint of the sending side (where replies are sent to) | |
![]() ![]() |
0..1 | Reference(Practitioner | PractitionerRole | Organization) | Client that owns the data in the message | |
![]() ![]() ![]() |
1..1 | Identifier | Logical reference, when literal reference is not known | |
![]() ![]() ![]() ![]() |
0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . | |
![]() ![]() ![]() ![]() |
1..1 | string | clientId that owns the data in the message Example General: 123456 | |
![]() ![]() |
0..1 | BackboneElement | If this is a reply to prior message | |
![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |
![]() ![]() ![]() |
1..1 | id | Id of original message | |
![]() ![]() ![]() |
1..1 | code | ok | transient-error | fatal-error Binding: ResponseType (required): The kind of response to a message. | |
![]() ![]() ![]() |
0..1 | Reference(OperationOutcome) | Specific list of hints/warnings/errors | |
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| MessageHeader.event[x] | Base | required | TRxHub MessageHeader Event ValueSet | 📦0.1.0 | This IG |
| MessageHeader.sender.identifier.use | Base | required | IdentifierUse | 📍4.0.1 | FHIR Std. |
| MessageHeader.responsible.identifier.use | Base | required | IdentifierUse | 📍4.0.1 | FHIR Std. |
| MessageHeader.response.code | Base | required | ResponseType | 📍4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| dom-2 | error | MessageHeader | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | MessageHeader | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource |
contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
|
| dom-4 | error | MessageHeader | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated |
contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
|
| dom-5 | error | MessageHeader | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | MessageHeader | A resource should have narrative for robust management |
text.`div`.exists()
|
| ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children |
hasValue() or (children().count() > id.count())
|
| ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both |
extension.exists() != value.exists()
|
| trxhub-mh-1 | error | MessageHeader | A response with a code other than 'ok' must reference an OperationOutcome in response.details. |
response.where(code != 'ok').exists() implies response.details.exists()
|
Differential View
This structure is derived from MessageHeader
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | MessageHeader | A resource that describes a message that is exchanged between systems Constraints: trxhub-mh-1 |
![]() ![]() |
1..1 | id | Unique identifier of the message (UUID) | |
![]() ![]() |
1..1 | Coding | Code for the event this message represents or link to event definition Binding: TRxHub MessageHeader Event ValueSet (required) | |
![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Required Pattern: https://trxhub.mediservice.ch/fhir/CodeSystem/trxhub-message-header-event | |
![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system | |
![]() ![]() |
1..1 | BackboneElement | Message destination application(s) | |
![]() ![]() ![]() |
1..1 | url | Endpoint the message was sent to | |
![]() ![]() |
0..1 | Reference(Practitioner | PractitionerRole | Organization) | Client that submitted the message | |
![]() ![]() ![]() |
1..1 | Identifier | Logical reference, when literal reference is not known | |
![]() ![]() ![]() ![]() |
1..1 | string | clientId that submitted the message | |
![]() ![]() |
1..1 | BackboneElement | Message source application | |
![]() ![]() ![]() |
1..1 | url | Endpoint of the sending side (where replies are sent to) | |
![]() ![]() |
0..1 | Reference(Practitioner | PractitionerRole | Organization) | Client that owns the data in the message | |
![]() ![]() ![]() |
1..1 | Identifier | Logical reference, when literal reference is not known | |
![]() ![]() ![]() ![]() |
1..1 | string | clientId that owns the data in the message | |
![]() ![]() |
0..1 | BackboneElement | If this is a reply to prior message | |
![]() ![]() ![]() |
1..1 | id | Id of original message | |
![]() ![]() ![]() |
1..1 | code | ok | transient-error | fatal-error | |
![]() ![]() ![]() |
0..1 | Reference(OperationOutcome) | Specific list of hints/warnings/errors | |
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| MessageHeader.event[x] | Base | required | TRxHub MessageHeader Event ValueSet | 📦0.1.0 | This IG |
| Id | Grade | Path(s) | Description | Expression |
| trxhub-mh-1 | error | MessageHeader | A response with a code other than 'ok' must reference an OperationOutcome in response.details. |
response.where(code != 'ok').exists() implies response.details.exists()
|
Snapshot View
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() | ||||
|---|---|---|---|---|---|---|---|---|
![]() |
C | 0..* | MessageHeader | A resource that describes a message that is exchanged between systems Constraints: trxhub-mh-1 | ||||
![]() ![]() |
1..1 | id | Unique identifier of the message (UUID) | |||||
![]() ![]() |
0..1 | Meta | Metadata about the resource | |||||
![]() ![]() |
0..1 | uri | A set of rules under which this content was created | |||||
![]() ![]() |
0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
![]() ![]() |
0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements | |||||
![]() ![]() |
0..* | Resource | Contained, inline Resources | |||||
![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() |
0..* | Extension | Extensions that cannot be ignored | |||||
![]() ![]() |
1..1 | Coding | Code for the event this message represents or link to event definition Binding: TRxHub MessageHeader Event ValueSet (required) | |||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Required Pattern: https://trxhub.mediservice.ch/fhir/CodeSystem/trxhub-message-header-event | |||||
![]() ![]() ![]() |
0..1 | string | Version of the system - if relevant | |||||
![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system | |||||
![]() ![]() ![]() |
0..1 | string | Representation defined by the system | |||||
![]() ![]() ![]() |
0..1 | boolean | If this coding was chosen directly by the user | |||||
![]() ![]() |
1..1 | BackboneElement | Message destination application(s) | |||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |||||
![]() ![]() ![]() |
0..1 | string | Name of system | |||||
![]() ![]() ![]() |
0..1 | Reference(Device) | Particular delivery destination within the destination | |||||
![]() ![]() ![]() |
1..1 | url | Endpoint the message was sent to | |||||
![]() ![]() ![]() |
0..1 | Reference(Practitioner | PractitionerRole | Organization) | Intended "real-world" recipient for the data | |||||
![]() ![]() |
0..1 | Reference(Practitioner | PractitionerRole | Organization) | Client that submitted the message | |||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() |
C | 0..1 | string | Literal reference, Relative, internal or absolute URL | ||||
![]() ![]() ![]() |
0..1 | uri | Type the reference refers to (e.g. "Patient") Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model). | |||||
![]() ![]() ![]() |
1..1 | Identifier | Logical reference, when literal reference is not known | |||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() |
0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . | |||||
![]() ![]() ![]() ![]() |
0..1 | CodeableConcept | Description of identifier Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose. | |||||
![]() ![]() ![]() ![]() |
0..1 | uri | The namespace for the identifier value Example General: http://www.acme.com/identifiers/patient | |||||
![]() ![]() ![]() ![]() |
1..1 | string | clientId that submitted the message Example General: 123456 | |||||
![]() ![]() ![]() ![]() |
0..1 | Period | Time period when id is/was valid for use | |||||
![]() ![]() ![]() ![]() |
0..1 | Reference(Organization) | Organization that issued id (may be just text) | |||||
![]() ![]() ![]() |
0..1 | string | Text alternative for the resource | |||||
![]() ![]() |
0..1 | Reference(Practitioner | PractitionerRole) | The source of the data entry | |||||
![]() ![]() |
0..1 | Reference(Practitioner | PractitionerRole) | The source of the decision | |||||
![]() ![]() |
1..1 | BackboneElement | Message source application | |||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |||||
![]() ![]() ![]() |
0..1 | string | Name of system | |||||
![]() ![]() ![]() |
0..1 | string | Name of software running the system | |||||
![]() ![]() ![]() |
0..1 | string | Version of software running | |||||
![]() ![]() ![]() |
0..1 | ContactPoint | Human contact for problems | |||||
![]() ![]() ![]() |
1..1 | url | Endpoint of the sending side (where replies are sent to) | |||||
![]() ![]() |
0..1 | Reference(Practitioner | PractitionerRole | Organization) | Client that owns the data in the message | |||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() |
C | 0..1 | string | Literal reference, Relative, internal or absolute URL | ||||
![]() ![]() ![]() |
0..1 | uri | Type the reference refers to (e.g. "Patient") Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model). | |||||
![]() ![]() ![]() |
1..1 | Identifier | Logical reference, when literal reference is not known | |||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() |
0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . | |||||
![]() ![]() ![]() ![]() |
0..1 | CodeableConcept | Description of identifier Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose. | |||||
![]() ![]() ![]() ![]() |
0..1 | uri | The namespace for the identifier value Example General: http://www.acme.com/identifiers/patient | |||||
![]() ![]() ![]() ![]() |
1..1 | string | clientId that owns the data in the message Example General: 123456 | |||||
![]() ![]() ![]() ![]() |
0..1 | Period | Time period when id is/was valid for use | |||||
![]() ![]() ![]() ![]() |
0..1 | Reference(Organization) | Organization that issued id (may be just text) | |||||
![]() ![]() ![]() |
0..1 | string | Text alternative for the resource | |||||
![]() ![]() |
0..1 | CodeableConcept | Cause of event Binding: ExampleMessageReasonCodes (example): Reason for event occurrence. | |||||
![]() ![]() |
0..1 | BackboneElement | If this is a reply to prior message | |||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() |
0..* | Extension | Extensions that cannot be ignored even if unrecognized | |||||
![]() ![]() ![]() |
1..1 | id | Id of original message | |||||
![]() ![]() ![]() |
1..1 | code | ok | transient-error | fatal-error Binding: ResponseType (required): The kind of response to a message. | |||||
![]() ![]() ![]() |
0..1 | Reference(OperationOutcome) | Specific list of hints/warnings/errors | |||||
![]() ![]() |
0..* | Reference(Resource) | The actual content of the message | |||||
![]() ![]() |
0..1 | canonical(MessageDefinition) | Link to the definition for this message | |||||
Documentation for this format | ||||||||
| Path | Status | Usage | ValueSet | Version | Source |
| MessageHeader.language | Base | preferred | Common Languages | 📍4.0.1 | FHIR Std. |
| MessageHeader.event[x] | Base | required | TRxHub MessageHeader Event ValueSet | 📦0.1.0 | This IG |
| MessageHeader.sender.type | Base | extensible | ResourceType | 📍4.0.1 | FHIR Std. |
| MessageHeader.sender.identifier.use | Base | required | IdentifierUse | 📍4.0.1 | FHIR Std. |
| MessageHeader.sender.identifier.type | Base | extensible | IdentifierType | 📍4.0.1 | FHIR Std. |
| MessageHeader.responsible.type | Base | extensible | ResourceType | 📍4.0.1 | FHIR Std. |
| MessageHeader.responsible.identifier.use | Base | required | IdentifierUse | 📍4.0.1 | FHIR Std. |
| MessageHeader.responsible.identifier.type | Base | extensible | IdentifierType | 📍4.0.1 | FHIR Std. |
| MessageHeader.reason | Base | example | Example Message Reason Codes | 📍4.0.1 | FHIR Std. |
| MessageHeader.response.code | Base | required | ResponseType | 📍4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| dom-2 | error | MessageHeader | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | MessageHeader | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource |
contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
|
| dom-4 | error | MessageHeader | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated |
contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
|
| dom-5 | error | MessageHeader | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | MessageHeader | A resource should have narrative for robust management |
text.`div`.exists()
|
| ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children |
hasValue() or (children().count() > id.count())
|
| ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both |
extension.exists() != value.exists()
|
| trxhub-mh-1 | error | MessageHeader | A response with a code other than 'ok' must reference an OperationOutcome in response.details. |
response.where(code != 'ok').exists() implies response.details.exists()
|
This structure is derived from MessageHeader
Other representations of profile: CSV, Excel, Schematron