臺灣核心實作指引(TW Core IG)
0.3.0 - Trial Use

This page is part of the 臺灣核心實作指引(TW Core IG) (v0.3.0: Releases) based on FHIR (HL7® FHIR® Standard) R4. This is the current published version in its permanent home (it will always be available at this URL). For a full list of available versions, see the Directory of published versions

Resource Profile: TW Core MessageHeader

Official URL: https://twcore.mohw.gov.tw/ig/twcore/StructureDefinition/MessageHeader-twcore Version: 0.3.0
Active as of 2024-10-15 Computable Name: TWCoreMessageHeader

此臺灣核心-訊息表頭(TW Core MessageHeader) Profile說明本IG如何進一步定義FHIR的MessageHeader Resource以呈現訊息表頭的詳細資料。

Resource MessageHeader - 內容

當我們在進行訊息交換,不論是發出請求還是回應某個請求時,都會用到一個特別的表頭,我們稱之為訊息標頭(MessageHeader)。這個表頭裡面會包含這次請求涉及的主要內容參照(比如是關於哪些資料的操作)以及其他一些相關資訊。這些資訊通常會被打包在一個 bundle 中發送出去,而MessageHeader resource 則是這個bundle裡的第一個 resource,就像是包裹的首頁或封面一樣,告訴接收者這個包裹的主要內容和目的。

範圍與使用

MessageHeader Resource 是為了支援利用 FHIR Resources 進行訊息傳遞而設計的。當進行訊息交換時,主要會使用到 MessageHeader Resource。

MessageHeader Resource 也可以在 RESTful 架構中使用,它有一個標準的 resource 端點([base-url]/MessageHeader),可以透過這個端點管理一組訊息 resources及建立過去訊息的儲存庫。就像是在電腦裡保存的一個資料夾,裡面存放著所有曾經發送和接收的郵件。但要注意,僅僅是保存這些訊息紀錄,並不意味著這些事件還在發生,或者可以透過保存的紀錄來觸發任何相關的操作或事件。 它只是一個方便我們回顧和管理過去訊息的方法。

Usage:

Formal Views of Profile Content

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

This structure is derived from MessageHeader

NameFlagsCard.TypeDescription & Constraintsdoco
.. MessageHeader 0..* MessageHeader 描述系統間交換的訊息的resources
... id 0..1 id 不重複的ID用以識別儲存在特定FHIR Server中的DocumentReference紀錄,通常又稱為邏輯性ID。
... meta 0..1 Meta 此DocumentReference Resource的metadata
... implicitRules 0..1 uri 創建此內容所依據的一組規則
... text 0..1 Narrative DocumentReference Resource之內容摘要以供人閱讀
... event[x] 1..1 Coding, uri 此訊息代表的事件的代碼或連結到事件定義
Binding: MessageEvent (example): 可參考所綁定值集,但此值集只是針對這個欄位的一個可能值的範例,不預期也不鼓勵使用者一定要使用此值集的代碼。

... destination 0..* BackboneElement 訊息目的地應用程式
.... name 0..1 string 系統的名稱
.... target 0..1 Reference(Device) 在訊息或資料發送的目的地中,指定一個具體的接收點。
.... endpoint 1..1 url 實際目的地地址或id
.... receiver 0..1 Reference(TW Core Practitioner | TW Core PractitionerRole | TW Core Organization) 資料應該被發送給在現實生活中真正需要這些資訊的個人或機構
... sender S 0..1 Reference(TW Core Practitioner | TW Core PractitionerRole | TW Core Organization) 訊息的實際發送端
... enterer 0..1 Reference(TW Core Practitioner | TW Core PractitionerRole) 資料輸入的來源
... author 0..1 Reference(TW Core Practitioner | TW Core PractitionerRole) 決策的來源
... source 1..1 BackboneElement 訊息來源應用程式
.... name 0..1 string 系統的名稱
.... software 0..1 string 運行系統的軟體名稱
.... version 0..1 string 軟體運行的版本
.... contact 0..1 ContactPoint 提供人工聯絡途徑以處理問題
.... endpoint 1..1 url 實際訊息來源地址或ID
... responsible 0..1 Reference(TW Core Practitioner | TW Core PractitionerRole | TW Core Organization) 事件的最終責任
... reason 0..1 CodeableConcept 事件的原因
Binding: ExampleMessageReasonCodes (example): 可參考所綁定值集,但此值集只是針對這個欄位的一個可能值的範例,不預期也不鼓勵使用者一定要使用此值集的代碼。

... response 0..1 BackboneElement 這是對先前訊息的回應
.... identifier 1..1 id 原始訊息的Id
.... code 1..1 code ok | transient-error | fatal-error
Binding: ResponseType (required): 訊息回應類型;應填入所綁定值集中的其中一個代碼。

.... details 0..1 Reference(OperationOutcome) 特定的提示/警告/錯誤清單
... focus S 0..* Reference(Resource) 訊息的實際內容
... definition 0..1 canonical(MessageDefinition) 這個訊息的定義連結

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
MessageHeader.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
MessageHeader.event[x]exampleMessageEvent
http://hl7.org/fhir/ValueSet/message-events
from the FHIR Standard
MessageHeader.reasonexampleExampleMessageReasonCodes
http://hl7.org/fhir/ValueSet/message-reason-encounter
from the FHIR Standard
MessageHeader.response.coderequiredResponseType
http://hl7.org/fhir/ValueSet/response-code|4.0.1
from the FHIR Standard
NameFlagsCard.TypeDescription & Constraintsdoco
.. MessageHeader 0..* MessageHeader 描述系統間交換的訊息的resources
... id Σ 0..1 id 不重複的ID用以識別儲存在特定FHIR Server中的DocumentReference紀錄,通常又稱為邏輯性ID。
... meta Σ 0..1 Meta 此DocumentReference Resource的metadata
... implicitRules ?!Σ 0..1 uri 創建此內容所依據的一組規則
... text 0..1 Narrative DocumentReference Resource之內容摘要以供人閱讀
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... event[x] Σ 1..1 此訊息代表的事件的代碼或連結到事件定義
Binding: MessageEvent (example): 可參考所綁定值集,但此值集只是針對這個欄位的一個可能值的範例,不預期也不鼓勵使用者一定要使用此值集的代碼。

.... eventCoding Coding
.... eventUri uri
... destination Σ 0..* BackboneElement 訊息目的地應用程式
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... name Σ 0..1 string 系統的名稱
.... target Σ 0..1 Reference(Device) 在訊息或資料發送的目的地中,指定一個具體的接收點。
.... endpoint Σ 1..1 url 實際目的地地址或id
.... receiver Σ 0..1 Reference(TW Core Practitioner | TW Core PractitionerRole | TW Core Organization) 資料應該被發送給在現實生活中真正需要這些資訊的個人或機構
... sender SΣ 0..1 Reference(TW Core Practitioner | TW Core PractitionerRole | TW Core Organization) 訊息的實際發送端
... enterer Σ 0..1 Reference(TW Core Practitioner | TW Core PractitionerRole) 資料輸入的來源
... author Σ 0..1 Reference(TW Core Practitioner | TW Core PractitionerRole) 決策的來源
... source Σ 1..1 BackboneElement 訊息來源應用程式
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... name Σ 0..1 string 系統的名稱
.... software Σ 0..1 string 運行系統的軟體名稱
.... version Σ 0..1 string 軟體運行的版本
.... contact Σ 0..1 ContactPoint 提供人工聯絡途徑以處理問題
.... endpoint Σ 1..1 url 實際訊息來源地址或ID
... responsible Σ 0..1 Reference(TW Core Practitioner | TW Core PractitionerRole | TW Core Organization) 事件的最終責任
... reason Σ 0..1 CodeableConcept 事件的原因
Binding: ExampleMessageReasonCodes (example): 可參考所綁定值集,但此值集只是針對這個欄位的一個可能值的範例,不預期也不鼓勵使用者一定要使用此值集的代碼。

... response Σ 0..1 BackboneElement 這是對先前訊息的回應
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... identifier Σ 1..1 id 原始訊息的Id
.... code Σ 1..1 code ok | transient-error | fatal-error
Binding: ResponseType (required): 訊息回應類型;應填入所綁定值集中的其中一個代碼。

.... details Σ 0..1 Reference(OperationOutcome) 特定的提示/警告/錯誤清單
... focus SΣ 0..* Reference(Resource) 訊息的實際內容
... definition Σ 0..1 canonical(MessageDefinition) 這個訊息的定義連結

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
MessageHeader.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
MessageHeader.event[x]exampleMessageEvent
http://hl7.org/fhir/ValueSet/message-events
from the FHIR Standard
MessageHeader.reasonexampleExampleMessageReasonCodes
http://hl7.org/fhir/ValueSet/message-reason-encounter
from the FHIR Standard
MessageHeader.response.coderequiredResponseType
http://hl7.org/fhir/ValueSet/response-code|4.0.1
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorMessageHeaderIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorMessageHeaderIf 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-4errorMessageHeaderIf 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-5errorMessageHeaderIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceMessageHeaderA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
NameFlagsCard.TypeDescription & Constraintsdoco
.. MessageHeader 0..* MessageHeader 描述系統間交換的訊息的resources
... id Σ 0..1 id 不重複的ID用以識別儲存在特定FHIR Server中的DocumentReference紀錄,通常又稱為邏輯性ID。
... meta Σ 0..1 Meta 此DocumentReference Resource的metadata
... implicitRules ?!Σ 0..1 uri 創建此內容所依據的一組規則
... text 0..1 Narrative DocumentReference Resource之內容摘要以供人閱讀
... contained 0..* Resource Contained, inline Resources
... extension 0..* Extension Additional content defined by implementations
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... event[x] Σ 1..1 此訊息代表的事件的代碼或連結到事件定義
Binding: MessageEvent (example): 可參考所綁定值集,但此值集只是針對這個欄位的一個可能值的範例,不預期也不鼓勵使用者一定要使用此值集的代碼。

.... eventCoding Coding
.... eventUri uri
... destination Σ 0..* BackboneElement 訊息目的地應用程式
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... name Σ 0..1 string 系統的名稱
.... target Σ 0..1 Reference(Device) 在訊息或資料發送的目的地中,指定一個具體的接收點。
.... endpoint Σ 1..1 url 實際目的地地址或id
.... receiver Σ 0..1 Reference(TW Core Practitioner | TW Core PractitionerRole | TW Core Organization) 資料應該被發送給在現實生活中真正需要這些資訊的個人或機構
... sender SΣ 0..1 Reference(TW Core Practitioner | TW Core PractitionerRole | TW Core Organization) 訊息的實際發送端
... enterer Σ 0..1 Reference(TW Core Practitioner | TW Core PractitionerRole) 資料輸入的來源
... author Σ 0..1 Reference(TW Core Practitioner | TW Core PractitionerRole) 決策的來源
... source Σ 1..1 BackboneElement 訊息來源應用程式
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... name Σ 0..1 string 系統的名稱
.... software Σ 0..1 string 運行系統的軟體名稱
.... version Σ 0..1 string 軟體運行的版本
.... contact Σ 0..1 ContactPoint 提供人工聯絡途徑以處理問題
.... endpoint Σ 1..1 url 實際訊息來源地址或ID
... responsible Σ 0..1 Reference(TW Core Practitioner | TW Core PractitionerRole | TW Core Organization) 事件的最終責任
... reason Σ 0..1 CodeableConcept 事件的原因
Binding: ExampleMessageReasonCodes (example): 可參考所綁定值集,但此值集只是針對這個欄位的一個可能值的範例,不預期也不鼓勵使用者一定要使用此值集的代碼。

... response Σ 0..1 BackboneElement 這是對先前訊息的回應
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... identifier Σ 1..1 id 原始訊息的Id
.... code Σ 1..1 code ok | transient-error | fatal-error
Binding: ResponseType (required): 訊息回應類型;應填入所綁定值集中的其中一個代碼。

.... details Σ 0..1 Reference(OperationOutcome) 特定的提示/警告/錯誤清單
... focus SΣ 0..* Reference(Resource) 訊息的實際內容
... definition Σ 0..1 canonical(MessageDefinition) 這個訊息的定義連結

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
MessageHeader.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
MessageHeader.event[x]exampleMessageEvent
http://hl7.org/fhir/ValueSet/message-events
from the FHIR Standard
MessageHeader.reasonexampleExampleMessageReasonCodes
http://hl7.org/fhir/ValueSet/message-reason-encounter
from the FHIR Standard
MessageHeader.response.coderequiredResponseType
http://hl7.org/fhir/ValueSet/response-code|4.0.1
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorMessageHeaderIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorMessageHeaderIf 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-4errorMessageHeaderIf 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-5errorMessageHeaderIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceMessageHeaderA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

Differential View

This structure is derived from MessageHeader

NameFlagsCard.TypeDescription & Constraintsdoco
.. MessageHeader 0..* MessageHeader 描述系統間交換的訊息的resources
... id 0..1 id 不重複的ID用以識別儲存在特定FHIR Server中的DocumentReference紀錄,通常又稱為邏輯性ID。
... meta 0..1 Meta 此DocumentReference Resource的metadata
... implicitRules 0..1 uri 創建此內容所依據的一組規則
... text 0..1 Narrative DocumentReference Resource之內容摘要以供人閱讀
... event[x] 1..1 Coding, uri 此訊息代表的事件的代碼或連結到事件定義
Binding: MessageEvent (example): 可參考所綁定值集,但此值集只是針對這個欄位的一個可能值的範例,不預期也不鼓勵使用者一定要使用此值集的代碼。

... destination 0..* BackboneElement 訊息目的地應用程式
.... name 0..1 string 系統的名稱
.... target 0..1 Reference(Device) 在訊息或資料發送的目的地中,指定一個具體的接收點。
.... endpoint 1..1 url 實際目的地地址或id
.... receiver 0..1 Reference(TW Core Practitioner | TW Core PractitionerRole | TW Core Organization) 資料應該被發送給在現實生活中真正需要這些資訊的個人或機構
... sender S 0..1 Reference(TW Core Practitioner | TW Core PractitionerRole | TW Core Organization) 訊息的實際發送端
... enterer 0..1 Reference(TW Core Practitioner | TW Core PractitionerRole) 資料輸入的來源
... author 0..1 Reference(TW Core Practitioner | TW Core PractitionerRole) 決策的來源
... source 1..1 BackboneElement 訊息來源應用程式
.... name 0..1 string 系統的名稱
.... software 0..1 string 運行系統的軟體名稱
.... version 0..1 string 軟體運行的版本
.... contact 0..1 ContactPoint 提供人工聯絡途徑以處理問題
.... endpoint 1..1 url 實際訊息來源地址或ID
... responsible 0..1 Reference(TW Core Practitioner | TW Core PractitionerRole | TW Core Organization) 事件的最終責任
... reason 0..1 CodeableConcept 事件的原因
Binding: ExampleMessageReasonCodes (example): 可參考所綁定值集,但此值集只是針對這個欄位的一個可能值的範例,不預期也不鼓勵使用者一定要使用此值集的代碼。

... response 0..1 BackboneElement 這是對先前訊息的回應
.... identifier 1..1 id 原始訊息的Id
.... code 1..1 code ok | transient-error | fatal-error
Binding: ResponseType (required): 訊息回應類型;應填入所綁定值集中的其中一個代碼。

.... details 0..1 Reference(OperationOutcome) 特定的提示/警告/錯誤清單
... focus S 0..* Reference(Resource) 訊息的實際內容
... definition 0..1 canonical(MessageDefinition) 這個訊息的定義連結

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
MessageHeader.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
MessageHeader.event[x]exampleMessageEvent
http://hl7.org/fhir/ValueSet/message-events
from the FHIR Standard
MessageHeader.reasonexampleExampleMessageReasonCodes
http://hl7.org/fhir/ValueSet/message-reason-encounter
from the FHIR Standard
MessageHeader.response.coderequiredResponseType
http://hl7.org/fhir/ValueSet/response-code|4.0.1
from the FHIR Standard

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. MessageHeader 0..* MessageHeader 描述系統間交換的訊息的resources
... id Σ 0..1 id 不重複的ID用以識別儲存在特定FHIR Server中的DocumentReference紀錄,通常又稱為邏輯性ID。
... meta Σ 0..1 Meta 此DocumentReference Resource的metadata
... implicitRules ?!Σ 0..1 uri 創建此內容所依據的一組規則
... text 0..1 Narrative DocumentReference Resource之內容摘要以供人閱讀
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... event[x] Σ 1..1 此訊息代表的事件的代碼或連結到事件定義
Binding: MessageEvent (example): 可參考所綁定值集,但此值集只是針對這個欄位的一個可能值的範例,不預期也不鼓勵使用者一定要使用此值集的代碼。

.... eventCoding Coding
.... eventUri uri
... destination Σ 0..* BackboneElement 訊息目的地應用程式
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... name Σ 0..1 string 系統的名稱
.... target Σ 0..1 Reference(Device) 在訊息或資料發送的目的地中,指定一個具體的接收點。
.... endpoint Σ 1..1 url 實際目的地地址或id
.... receiver Σ 0..1 Reference(TW Core Practitioner | TW Core PractitionerRole | TW Core Organization) 資料應該被發送給在現實生活中真正需要這些資訊的個人或機構
... sender SΣ 0..1 Reference(TW Core Practitioner | TW Core PractitionerRole | TW Core Organization) 訊息的實際發送端
... enterer Σ 0..1 Reference(TW Core Practitioner | TW Core PractitionerRole) 資料輸入的來源
... author Σ 0..1 Reference(TW Core Practitioner | TW Core PractitionerRole) 決策的來源
... source Σ 1..1 BackboneElement 訊息來源應用程式
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... name Σ 0..1 string 系統的名稱
.... software Σ 0..1 string 運行系統的軟體名稱
.... version Σ 0..1 string 軟體運行的版本
.... contact Σ 0..1 ContactPoint 提供人工聯絡途徑以處理問題
.... endpoint Σ 1..1 url 實際訊息來源地址或ID
... responsible Σ 0..1 Reference(TW Core Practitioner | TW Core PractitionerRole | TW Core Organization) 事件的最終責任
... reason Σ 0..1 CodeableConcept 事件的原因
Binding: ExampleMessageReasonCodes (example): 可參考所綁定值集,但此值集只是針對這個欄位的一個可能值的範例,不預期也不鼓勵使用者一定要使用此值集的代碼。

... response Σ 0..1 BackboneElement 這是對先前訊息的回應
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... identifier Σ 1..1 id 原始訊息的Id
.... code Σ 1..1 code ok | transient-error | fatal-error
Binding: ResponseType (required): 訊息回應類型;應填入所綁定值集中的其中一個代碼。

.... details Σ 0..1 Reference(OperationOutcome) 特定的提示/警告/錯誤清單
... focus SΣ 0..* Reference(Resource) 訊息的實際內容
... definition Σ 0..1 canonical(MessageDefinition) 這個訊息的定義連結

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
MessageHeader.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
MessageHeader.event[x]exampleMessageEvent
http://hl7.org/fhir/ValueSet/message-events
from the FHIR Standard
MessageHeader.reasonexampleExampleMessageReasonCodes
http://hl7.org/fhir/ValueSet/message-reason-encounter
from the FHIR Standard
MessageHeader.response.coderequiredResponseType
http://hl7.org/fhir/ValueSet/response-code|4.0.1
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorMessageHeaderIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorMessageHeaderIf 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-4errorMessageHeaderIf 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-5errorMessageHeaderIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceMessageHeaderA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. MessageHeader 0..* MessageHeader 描述系統間交換的訊息的resources
... id Σ 0..1 id 不重複的ID用以識別儲存在特定FHIR Server中的DocumentReference紀錄,通常又稱為邏輯性ID。
... meta Σ 0..1 Meta 此DocumentReference Resource的metadata
... implicitRules ?!Σ 0..1 uri 創建此內容所依據的一組規則
... text 0..1 Narrative DocumentReference Resource之內容摘要以供人閱讀
... contained 0..* Resource Contained, inline Resources
... extension 0..* Extension Additional content defined by implementations
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... event[x] Σ 1..1 此訊息代表的事件的代碼或連結到事件定義
Binding: MessageEvent (example): 可參考所綁定值集,但此值集只是針對這個欄位的一個可能值的範例,不預期也不鼓勵使用者一定要使用此值集的代碼。

.... eventCoding Coding
.... eventUri uri
... destination Σ 0..* BackboneElement 訊息目的地應用程式
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... name Σ 0..1 string 系統的名稱
.... target Σ 0..1 Reference(Device) 在訊息或資料發送的目的地中,指定一個具體的接收點。
.... endpoint Σ 1..1 url 實際目的地地址或id
.... receiver Σ 0..1 Reference(TW Core Practitioner | TW Core PractitionerRole | TW Core Organization) 資料應該被發送給在現實生活中真正需要這些資訊的個人或機構
... sender SΣ 0..1 Reference(TW Core Practitioner | TW Core PractitionerRole | TW Core Organization) 訊息的實際發送端
... enterer Σ 0..1 Reference(TW Core Practitioner | TW Core PractitionerRole) 資料輸入的來源
... author Σ 0..1 Reference(TW Core Practitioner | TW Core PractitionerRole) 決策的來源
... source Σ 1..1 BackboneElement 訊息來源應用程式
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... name Σ 0..1 string 系統的名稱
.... software Σ 0..1 string 運行系統的軟體名稱
.... version Σ 0..1 string 軟體運行的版本
.... contact Σ 0..1 ContactPoint 提供人工聯絡途徑以處理問題
.... endpoint Σ 1..1 url 實際訊息來源地址或ID
... responsible Σ 0..1 Reference(TW Core Practitioner | TW Core PractitionerRole | TW Core Organization) 事件的最終責任
... reason Σ 0..1 CodeableConcept 事件的原因
Binding: ExampleMessageReasonCodes (example): 可參考所綁定值集,但此值集只是針對這個欄位的一個可能值的範例,不預期也不鼓勵使用者一定要使用此值集的代碼。

... response Σ 0..1 BackboneElement 這是對先前訊息的回應
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... identifier Σ 1..1 id 原始訊息的Id
.... code Σ 1..1 code ok | transient-error | fatal-error
Binding: ResponseType (required): 訊息回應類型;應填入所綁定值集中的其中一個代碼。

.... details Σ 0..1 Reference(OperationOutcome) 特定的提示/警告/錯誤清單
... focus SΣ 0..* Reference(Resource) 訊息的實際內容
... definition Σ 0..1 canonical(MessageDefinition) 這個訊息的定義連結

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
MessageHeader.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
MessageHeader.event[x]exampleMessageEvent
http://hl7.org/fhir/ValueSet/message-events
from the FHIR Standard
MessageHeader.reasonexampleExampleMessageReasonCodes
http://hl7.org/fhir/ValueSet/message-reason-encounter
from the FHIR Standard
MessageHeader.response.coderequiredResponseType
http://hl7.org/fhir/ValueSet/response-code|4.0.1
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorMessageHeaderIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorMessageHeaderIf 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-4errorMessageHeaderIf 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-5errorMessageHeaderIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceMessageHeaderA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

 

Other representations of profile: CSV, Excel, Schematron

Notes:

以下概述了此Profile所需的RESTful FHIR互動功能。有關TW Core IG支援的RESTful互動功能的完整清單,請參閱TW Core Server能力聲明

建議應該支援以下查詢參數:

  1. 建議應該(SHOULD) 支援透過查詢參數 _id 查詢所有MessageHeader:
    (如何透過token查詢)
    GET [base]/MessageHeader?_id=[id]
    GET [base]/MessageHeader/[id]

    例子:
    (1) GET [base]/MessageHeader?_id=mes-example

  2. 建議應該(SHOULD) 支援透過查詢參數 author 查詢所有MessageHeader:
    (如何透過reference查詢)
    GET [base]/MessageHeader?author={Type/}[id]

    例子:
    (1) GET [base]/MessageHeader?author= https://twcore.mohw.gov.tw/ig/twcore/Practitioner-pra-example

  3. 建議應該(SHOULD) 支援透過查詢參數 sender 查詢所有MessageHeader:
    (如何透過reference查詢)
    GET [base]/MessageHeader?sender={Type/}[id]

    例子:
    (1) GET [base]/MessageHeader?sender= https://twcore.mohw.gov.tw/ig/twcore/org-hosp-example

實作注意事項

  • 當我們發送一個訊息 bundle 時,我們可以選擇是否要把跟訊息有關的資訊(比如由誰輸入的、誰是作者、誰是負責這項工作的人的訊息)一起打包發送,但如果接收者(或其他中介軟體)能夠定位或解析這些參照的resources資訊,我們就可以選擇不把它們包含在訊息裡。把所有訊息都打包發送比較適合那些系統間連接不那麼緊密的情況;而對於那些系統間連接很緊密的情況,可以不用這麼做。傳送訊息的規格及系統存取能力都定義在結構定義(Structure Definition),我們可以透過它了解如何進行選擇。
  • 訊息中特別關注的部分(例如:是關於哪一件事的訊息,我們稱之為 focus resources - 焦點 resources)和它具體包含哪些訊息,是根據每次發送的訊息事件所決定的(可以參考傳送訊息事件說明),這部分訊息總是會被包含在訊息的bundle中。
  • 如果MessageHeader裡面的source.endpointdestination.endpoint是實際可存取的網址,那麼它們應該指向訊息可以被送達的地方。如果這些地址是邏輯上的(也就是說你不能直接用網路存取),那麼負責傳遞訊息的中介軟體必須知道怎麼把訊息正確送到目的地。
  • 訊息發生的具體時間會記錄在 focus resource 裡,而訊息發送的時間則會記錄在Bundle.timestamp
  • 訊息的作者和接收者並不是指實際操作系統的技術設備,而是使用這些技術設備的人或機構。
  • 即使一條訊息沒有明確指出接收者是誰,接收方也沒有義務拒絕這條訊息。例如:一個追蹤系統可能會收到本來發給別的系統的訊息。
  • MessageEvent 值集是由那些定義事件的 resources 的作者所填寫的。