FHIR 符合聲明

Cloud Healthcare API 中的 FHIR 儲存庫支援 Health Level 7 International (HL7) 發布的快速醫療照護互通資源 (FHIR) 規格多個版本。

v1 API 支援下列版本:

建立 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 內容類型的函式,但以下例外:
    • 系統不支援類型層級和系統層級的 history 互動,這類互動會在多個資源中擷取歷史記錄。您一次只能擷取一項資源的資源歷程記錄。
    • 批次/交易互動不支援套件中的搜尋作業。
  • 支援Profile 驗證和強制執行。
  • v1beta1 API 支援使用者定義的搜尋參數,包括擴充功能元素的搜尋。
  • 支援所有搜尋功能,但下列功能除外:

    • 系統不支援搜尋參數 Group-characteristic-valueLocation-nearLocation-containsDocumentReference-relationshipBundle-compositionBundle-messageObservation-component-value-canonicalObservation-value-canonicalQuestionnaireResponse-item-subjectComposition-section-text
    • 系統不支援執行音譯比對的搜尋參數。
    • 不支援搜尋結果參數 _contained_containedType_summary=count_summary=true
    • 特殊搜尋參數 _content 會搜尋搜尋參數參照的資源的所有欄位。它會排除無法搜尋的欄位。不支援明確的 AND (字詞會隱含地與 AND 結合) 或括號。
    • 系統不支援特殊搜尋參數 Resource-queryResource-filterResource-languageResource-inResource-list
    • _sort 參數用於含有重複元素的欄位時,會依據第一個元素進行排序,這與規格不同。_sort 支援 numberdatastringtokenquantity 類型的搜尋參數。
    • 系統不支援符記搜尋修飾符 :of-type:code-texttext-advanced:text,也不支援參照搜尋修飾符 :identifiernot-intext-advanced:code-text。不支援 URI 搜尋的 contains 修飾符。
    • 系統不支援標準參照搜尋。系統會將標準參照視為一般參照。不支援 abovebelow 修飾符。
    • 使用 _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 內容類型的函式,但以下例外:
    • 系統不支援類型層級和系統層級的 history 互動,這類互動會在多個資源中擷取歷史記錄。您一次只能擷取一項資源的資源歷程記錄。
    • 批次/交易互動不支援套件中的搜尋作業。
  • 支援Profile 驗證和強制執行。
  • v1beta1 API 支援使用者定義的搜尋參數,包括擴充功能元素的搜尋。
  • 支援所有搜尋功能,但下列功能除外:

    • 不支援搜尋參數 Group-characteristic-valueLocation-nearBundle-compositionBundle-message
    • 系統不支援執行音譯比對的搜尋參數。
    • 不支援搜尋結果參數 _contained_containedType_summary=count_summary=true
    • 特殊搜尋參數 _content 會搜尋搜尋參數參照的資源的所有欄位。它會排除無法搜尋的欄位。不支援明確的 AND (字詞會隱含地與 AND 結合) 或括號。
    • 系統不支援特殊搜尋參數 _query_filter_list
    • _sort 參數用於含有重複元素的欄位時,會依據第一個元素進行排序,這與規格不同。_sort 支援 numberdatastringtokenquantity 類型的搜尋參數。
    • 不支援符記搜尋修飾符 :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 內容類型的函式,但以下例外:

    • 系統不支援類型層級和系統層級的 history 互動,這類互動會在多個資源中擷取歷史記錄。您一次只能擷取一項資源的資源歷程記錄。
    • 批次/交易互動不支援套件中的搜尋作業。
  • 支援設定檔驗證和強制執行。

  • v1beta1 API 支援使用者定義的搜尋參數,包括擴充功能元素的搜尋。

  • 支援所有搜尋功能,但下列功能除外:

    • 不支援搜尋參數 Group-characteristic-valueSequence-coordinateLocation-nearLocation-near-distanceBundle-compositionBundle-message
    • 系統不支援執行音譯比對的搜尋參數。
    • 不支援搜尋結果參數 _contained_containedType_summary=count_summary=true
    • 特殊搜尋參數 _content 會搜尋搜尋參數參照的資源的所有欄位。它會排除無法搜尋的欄位。不支援明確的 AND (字詞會隱含地與 AND 結合) 或括號。
    • 系統不支援特殊搜尋參數 _query_filter_list
    • _sort 參數用於含有重複元素的欄位時,會依據第一個元素進行排序,這與規格不同。_sort 支援 numberdatastringtokenquantity 類型的搜尋參數。
    • 使用 POST 方法進行搜尋時,系統不會接受要求主體中的 application/x-www-form-urlencoded 參數。
    • _include 支援萬用字元 (*),但 _revinclude 不支援。

不支援的地區包括:

  • 大部分的擴充作業並未實作。
  • 系統不支援 XML 內容類型。
  • 修補作業不支援 XML 修補或 FHIRPath 修補。

為了兼顧回溯相容性,API 與 FHIR 規格有以下差異:

  • 可在必填欄位中使用 null
  • 系統可接受空白代碼,用於必填欄位
  • 停用參照完整性時,批次組合可允許 urn:uuid 參照。

DSTU2

伺服器的相容性聲明會指出所支援的規格部分。

  • 系統支援儲存和擷取所有 DSTU2 資源,包括支援擴充元素。這個 API 會接受、儲存及傳回任何資料元素的擴充資料。
  • 系統支援 RESTful API 中所有使用 JSON 內容類型的函式,但以下例外:
    • 系統不支援類型層級和系統層級的 history 互動,這類互動會在多個資源中擷取歷史記錄。您一次只能擷取一項資源的資源歷程記錄。
    • 批次/交易互動不支援套件中的搜尋作業。
  • 支援Profile 驗證和強制執行。
  • 支援所有搜尋功能,但下列功能除外:
    • 不支援搜尋參數 Group-characteristic-valueLocation-nearLocation-near-distanceBundle-compositionBundle-messageCoverage-dependentCoverage-sequence
    • 不支援在擴充功能元素中定義的搜尋參數。
    • 系統不支援執行音譯比對的搜尋參數。
    • 不支援搜尋結果參數 _contained_containedType_summary=count_summary=true
    • 特殊搜尋參數 _content 會搜尋搜尋參數參照的資源的所有欄位。它會排除無法搜尋的欄位。不支援明確的 AND (字詞會隱含地與 AND 結合) 或括號。
    • 系統不支援特殊搜尋參數 _query_filter_list
    • _sort 參數用於含有重複元素的欄位時,會依據第一個元素進行排序,這與規格不同。_sort 支援 numberdatastringtokenquantity 類型的搜尋參數。
    • 使用 POST 方法進行搜尋時,系統不會接受要求主體中的 application/x-www-form-urlencoded 參數。
    • _include 支援萬用字元 (*),但 _revinclude 不支援。

不支援的地區包括:

  • 大部分的擴充作業並未實作。
  • DSTU2 不支援使用者定義的搜尋參數。
  • 系統不支援 XML 內容類型。

為了兼顧回溯相容性,API 與 FHIR 規格有以下差異:

  • 可在必填欄位中使用 null
  • 系統可接受空白代碼,用於必填欄位
  • 停用參照完整性時,批次組合可使用 urn:uuid 參照。

已發布規格以外的作業詳細資料

  • FHIR 儲存庫設定包含一個選項,可針對儲存庫中資源的所有變更通知使用者指定的 Pub/Sub 主題。這個通知機制適用於所有 Cloud Healthcare API 商店,並非用來取代 FHIR 訂閱 (DSTU2STU3R4R5) 功能。
  • 將 FHIR 儲存庫匯出至 Cloud Storage 目的地的作業,只會提供整個儲存庫的大量匯出作業。這並非 FHIR 大量資料草稿規格的實作項目。
  • 規格中未定義 FHIR 儲存庫匯入作業。
  • 規格中未定義移除資源舊版的 Resource-purge 作業。如果標準程序或其他 FHIR 實作方式針對此用途採用不同的 API 方法,這個 API 可能會在未來有所變動。
  • ExecuteBundle 端點會接受 v1beta1 中的 history 套件,以便建立資源的歷史版本。