Cloud Healthcare API 中的 FHIR 儲存庫支援 Health Level 7 International (HL7) 發布的快速醫療照護互通資源 (FHIR) 規格多個版本。
v1 API 支援下列版本:
- R5 5.0.0 版 (第 5 版)
- R4 4.0.1 版 (第 4 版)
- STU3 3.0.1 版 (第 3 版 - 試用版標準)
- DSTU2 1.0.2 版 (Draft Standard for Trial Use)
建立 FHIR 儲存庫時,您會將 FHIR 版本指定為 fhirStores.create
方法的參數。建立儲存庫後,您就無法變更 FHIR 版本。
每個儲存庫的 API 介面都符合該儲存庫的 FHIR 版本。舉例來說,DSTU2 conformance
互動與 STU3 capabilities
互動不同,但兩者都共用 /fhir/metadata
REST 路徑,因此該路徑會根據儲存庫的 FHIR 版本傳回不同的回應。
後續 FHIR 版本新增的功能,如果不會造成不相容,則可在使用早期 FHIR 版本的儲存庫中使用。舉例來說,即使 patch
互動僅在 STU3 之後定義,但 DSTU2 商店仍可使用這項互動。
依 FHIR 版本說明 v1 API 支援的功能
R5
伺服器的能力聲明會指出所支援的規格部分。
- 儲存及擷取所有 R5 資源,包括支援擴充元素。這個 API 會接受、儲存及傳回任何資料元素的擴充資料。
- 系統支援 RESTful API 中所有使用 JSON 內容類型的函式,但以下例外:
- 支援Profile 驗證和強制執行。
- v1beta1 API 支援使用者定義的搜尋參數,包括擴充功能元素的搜尋。
支援所有搜尋功能,但下列功能除外:
- 系統不支援搜尋參數
Group-characteristic-value
、Location-near
、Location-contains
、DocumentReference-relationship
、Bundle-composition
、Bundle-message
、Observation-component-value-canonical
、Observation-value-canonical
、QuestionnaireResponse-item-subject
和Composition-section-text
。 - 系統不支援執行音譯比對的搜尋參數。
- 不支援搜尋結果參數
_contained
、_containedType
、_summary=count
和_summary=true
。 - 特殊搜尋參數
_content
會搜尋搜尋參數參照的資源的所有欄位。它會排除無法搜尋的欄位。不支援明確的AND
(字詞會隱含地與AND
結合) 或括號。 - 系統不支援特殊搜尋參數
Resource-query
、Resource-filter
、Resource-language
、Resource-in
和Resource-list
。 - 當
_sort
參數用於含有重複元素的欄位時,會依據第一個元素進行排序,這與規格不同。_sort
支援number
、data
、string
、token
和quantity
類型的搜尋參數。 - 系統不支援符記搜尋修飾符
:of-type
、:code-text
、text-advanced
和:text
,也不支援參照搜尋修飾符:identifier
、not-in
、text-advanced
和:code-text
。不支援 URI 搜尋的contains
修飾符。 - 系統不支援標準參照搜尋。系統會將標準參照視為一般參照。不支援
above
和below
修飾符。 - 使用
_type
參數時,只能使用常見的 (所有資源) 搜尋參數,而不能使用指定資源類型的交集。 系統支援下列複合搜尋參數子集:
Observation-code-value-concept
Observation-code-value-date
Observation-code-value-quantity
Observation-code-value-string
Observation-combo-code-value-concept
Observation-combo-code-value-quantity
Observation-component-code-value-concept
Observation-component-code-value-quantity
我們不支援其他複合搜尋參數。
使用
POST
方法進行搜尋時,系統不會接受要求主體中的application/x-www-form-urlencoded
參數。_include
支援萬用字元 (*
),但_revinclude
不支援。
- 系統不支援搜尋參數
不支援的地區包括:
- 系統不支援 XML 內容類型。
- 修補作業不支援 XML 修補或
FHIRPath
修補。 - 不支援 HTTP HEAD 要求。
由於先前 FHIR 版本的回溯相容性,API 的某些部分與 FHIR 規格有所出入。這些問題已在 R5 中修正:
- 啟用必填欄位驗證功能後,系統會拒絕
null
欄位和空白欄位 (例如{}
)。 - 我們不再支援 JSON 中的資源欄位使用 UpperCamelCase。
- 無論是否停用參照完整性,批次組合都不允許使用
urn:uuid
參照。批次套件絕不會重寫參照。 - 交易套件會比以往更嚴格地重寫參照,並根據規格定義,針對項目中的無效 FullUrl 發生錯誤:https://www.hl7.org/fhir/bundle.html#references。
- 類似資源參照的參照項目必須具備有效的 ID。
- 為 PATCH 要求啟用基本設定檔驗證。
R4
伺服器的能力聲明會指出所支援的規格部分。
- 儲存及擷取所有 R4 資源,包括支援擴充元素。這個 API 會接受、儲存及傳回任何資料元素的擴充資料。
- 系統支援 RESTful API 中所有使用 JSON 內容類型的函式,但以下例外:
- 支援Profile 驗證和強制執行。
- v1beta1 API 支援使用者定義的搜尋參數,包括擴充功能元素的搜尋。
支援所有搜尋功能,但下列功能除外:
- 不支援搜尋參數
Group-characteristic-value
、Location-near
、Bundle-composition
和Bundle-message
。 - 系統不支援執行音譯比對的搜尋參數。
- 不支援搜尋結果參數
_contained
、_containedType
、_summary=count
和_summary=true
。 - 特殊搜尋參數
_content
會搜尋搜尋參數參照的資源的所有欄位。它會排除無法搜尋的欄位。不支援明確的AND
(字詞會隱含地與AND
結合) 或括號。 - 系統不支援特殊搜尋參數
_query
、_filter
和_list
。 - 當
_sort
參數用於含有重複元素的欄位時,會依據第一個元素進行排序,這與規格不同。_sort
支援number
、data
、string
、token
和quantity
類型的搜尋參數。 - 不支援符記搜尋修飾符
:of-type
和參照搜尋修飾符:identifier
。 - 系統不支援標準參照搜尋。系統會將標準參照視為一般參照。
- 使用
_type
參數時,只能使用常見的 (所有資源) 搜尋參數,而非指定資源類型的交集。 系統支援下列複合搜尋參數子集:
DocumentReference-relationship
Observation-code-value-concept
Observation-code-value-date
Observation-code-value-quantity
Observation-code-value-string
Observation-combo-code-value-concept
Observation-combo-code-value-quantity
Observation-component-code-value-concept
Observation-component-code-value-quantity
我們不支援其他複合搜尋參數。
使用
POST
方法進行搜尋時,系統不會接受要求主體中的application/x-www-form-urlencoded
參數。_include
支援萬用字元 (*
),但_revinclude
不支援。
- 不支援搜尋參數
不支援的地區包括:
- 大部分的擴充作業並未實作。
- 系統不支援 XML 內容類型。
- 修補作業不支援 XML 修補或
FHIRPath
修補。 - 不支援 HTTP HEAD 要求。
為了兼顧回溯相容性,API 與 FHIR 規格有以下差異:
- 可在必填欄位中使用
null
- 系統可接受空白代碼,用於必填欄位
- 停用參照完整性時,批次組合可使用
urn:uuid
參照。
STU3
伺服器的能力聲明會指出所支援的規格部分。
- 系統支援儲存和擷取所有 STU3 資源,包括支援擴充元素。這個 API 會接受、儲存及傳回任何資料元素的擴充資料。
系統支援 RESTful API 中所有使用 JSON 內容類型的函式,但以下例外:
支援設定檔驗證和強制執行。
v1beta1 API 支援使用者定義的搜尋參數,包括擴充功能元素的搜尋。
支援所有搜尋功能,但下列功能除外:
- 不支援搜尋參數
Group-characteristic-value
、Sequence-coordinate
、Location-near
、Location-near-distance
、Bundle-composition
和Bundle-message
。 - 系統不支援執行音譯比對的搜尋參數。
- 不支援搜尋結果參數
_contained
、_containedType
、_summary=count
和_summary=true
。 - 特殊搜尋參數
_content
會搜尋搜尋參數參照的資源的所有欄位。它會排除無法搜尋的欄位。不支援明確的AND
(字詞會隱含地與 AND 結合) 或括號。 - 系統不支援特殊搜尋參數
_query
、_filter
和_list
。 - 當
_sort
參數用於含有重複元素的欄位時,會依據第一個元素進行排序,這與規格不同。_sort
支援number
、data
、string
、token
和quantity
類型的搜尋參數。 - 使用
POST
方法進行搜尋時,系統不會接受要求主體中的application/x-www-form-urlencoded
參數。 _include
支援萬用字元 (*
),但_revinclude
不支援。
- 不支援搜尋參數
不支援的地區包括:
- 大部分的擴充作業並未實作。
- 系統不支援 XML 內容類型。
- 修補作業不支援 XML 修補或 FHIRPath 修補。
為了兼顧回溯相容性,API 與 FHIR 規格有以下差異:
- 可在必填欄位中使用
null
- 系統可接受空白代碼,用於必填欄位
- 停用參照完整性時,批次組合可允許
urn:uuid
參照。
DSTU2
伺服器的相容性聲明會指出所支援的規格部分。
- 系統支援儲存和擷取所有 DSTU2 資源,包括支援擴充元素。這個 API 會接受、儲存及傳回任何資料元素的擴充資料。
- 系統支援 RESTful API 中所有使用 JSON 內容類型的函式,但以下例外:
- 支援Profile 驗證和強制執行。
- 支援所有搜尋功能,但下列功能除外:
- 不支援搜尋參數
Group-characteristic-value
、Location-near
、Location-near-distance
、Bundle-composition
、Bundle-message
、Coverage-dependent
和Coverage-sequence
。 - 不支援在擴充功能元素中定義的搜尋參數。
- 系統不支援執行音譯比對的搜尋參數。
- 不支援搜尋結果參數
_contained
、_containedType
、_summary=count
和_summary=true
。 - 特殊搜尋參數
_content
會搜尋搜尋參數參照的資源的所有欄位。它會排除無法搜尋的欄位。不支援明確的AND
(字詞會隱含地與 AND 結合) 或括號。 - 系統不支援特殊搜尋參數
_query
、_filter
和_list
。 - 當
_sort
參數用於含有重複元素的欄位時,會依據第一個元素進行排序,這與規格不同。_sort
支援number
、data
、string
、token
和quantity
類型的搜尋參數。 - 使用
POST
方法進行搜尋時,系統不會接受要求主體中的application/x-www-form-urlencoded
參數。 _include
支援萬用字元 (*
),但_revinclude
不支援。
- 不支援搜尋參數
不支援的地區包括:
- 大部分的擴充作業並未實作。
- DSTU2 不支援使用者定義的搜尋參數。
- 系統不支援 XML 內容類型。
為了兼顧回溯相容性,API 與 FHIR 規格有以下差異:
- 可在必填欄位中使用
null
- 系統可接受空白代碼,用於必填欄位
- 停用參照完整性時,批次組合可使用
urn:uuid
參照。
已發布規格以外的作業詳細資料
- FHIR 儲存庫設定包含一個選項,可針對儲存庫中資源的所有變更通知使用者指定的 Pub/Sub 主題。這個通知機制適用於所有 Cloud Healthcare API 商店,並非用來取代 FHIR 訂閱 (DSTU2、STU3、R4 和 R5) 功能。
- 將 FHIR 儲存庫匯出至 Cloud Storage 目的地的作業,只會提供整個儲存庫的大量匯出作業。這並非 FHIR 大量資料草稿規格的實作項目。
- 規格中未定義 FHIR 儲存庫匯入作業。
- 規格中未定義移除資源舊版的
Resource-purge
作業。如果標準程序或其他 FHIR 實作方式針對此用途採用不同的 API 方法,這個 API 可能會在未來有所變動。 ExecuteBundle
端點會接受 v1beta1 中的history
套件,以便建立資源的歷史版本。