相互作用
相互作用
HL7® FHIR® 相互作用Opens in a new tabは、FHIR クライアントがリソースで実行できる一連のアクションです。これらの相互作用は、インスタンス、タイプ、またはシステム全体のどれに対して作用するのかに応じて、グループ化されます。インスタンスとは、リソースの特定のインスタンスのことであり、例えば、Patient/1 は、id が 1 の Patient リソースのインスタンスを意味します。タイプは、Patient や Observation など、特定の FHIR リソースを表します。
以下の表は、リソース・リポジトリ、あるいは、リソース・リポジトリを拡張したカスタム FHIR サーバの FHIR 相互作用のサポート概要を示しています。相互作用をクリックすると、その相互作用が HL7 REST API でどのように定義されているかと、その使用方法を参照できます。
相互作用 | サポート・レベル |
---|---|
createOpens in a new tab | 条件付き作成を含め、完全にサポートされています。 |
readOpens in a new tab |
条件付き読み取りはサポートされていません。 |
vreadOpens in a new tab |
条件付き読み取りはサポートされていません。 |
updateOpens in a new tab | 条件付き更新を含め、完全にサポートされています。 |
patchOpens in a new tab | JSON パッチ・ドキュメントでのみサポートされています。条件付きパッチがサポートされます。 |
deleteOpens in a new tab | 条件付き削除を含め、完全にサポートされています。 |
historyOpens in a new tab |
インスタンスの相互作用のみサポートされています。タイプやシステムはサポートされていません。例えば、GET [baseURL]/Patient/1/_history はサポートされていますが、GET [baseURL]/Patient/_history や GET [baseURL]/_history はサポートされていません。 _count および _at パラメータはサポートされていません。 ページングはサポートされていません。 |
batchOpens in a new tab | 完全にサポートされています。 |
transactionOpens in a new tab | バンドル内の循環参照はサポートされていません。 |
search | 一部制限付きでサポートされています。詳細は、"search 相互作用" を参照してください。 |
search 相互作用
FHIR クライアントは、search 相互作用を使用して、リソース・リポジトリからリソースを取得します。search 相互作用の詳細は、FHIR 仕様Opens in a new tabを参照してください。このセクションでは、FHIR サーバがリソース・リポジトリを使用または拡張している場合の、search 相互作用に対する既定のサポートの概要を説明します。
2024.1 より前のバージョンでは、リソース・リポジトリの search 相互作用は別の検索方法を使用して実装されていました。この従来の方法は、このバージョンでも引き続きサポートされます。ただし、このドキュメントで説明する現在の方法と比べ、提供される機能セットが限定されます。
既存のリソース・リポジトリを含むインスタンスを 2024.1 より前にバージョンからこのバージョンにアップグレードした場合、サポートされる機能の比較、および従来の方法から最新の方法にリソース・リポジトリをアップグレードする手順については、"JSON Advanced SQL への従来のリポジトリのアップグレード" を参照してください。
サポートに関する一般的な注意
リソース・リポジトリを使用または拡張する FHIR サーバでは、以下の点に留意してください。
-
コンパートメントをまたぐ複数のリソース・タイプにわたる検索はサポートされていません。例えば、GET [base]?_id=1 はサポートされていません。
-
ワイルドカード文字 (*) を使用した、1 つのコンパートメント内の複数のリソース・タイプにわたる検索はサポートされています。例えば、GET [base]/Patient/100000001/* はサポートされています。1 つのコンパートメント内の検索では、ワイルドカードと、検索対象のすべてのリソース・タイプに共通する任意の検索パラメータを組み合わせて使用できます。これは、_type パラメータを使用する場合に特に便利です。例えば、Observation リソース・タイプと DiagnosticReport リソース・タイプの両方に status 要素が含まれるため、GET [base]/Patient/100000001/*?status=final&_type=Observation,DiagnosticReport はサポートされます。
Note:ワイルドカード構文では、$everything オペレーションとは異なる結果が得られます。GET [base]/Patient/100000001/* は、Patient の DiagnosticReport リソースなどを含め、指定した Patient に関連付けられているすべてのリソースを返します。これに対し、GET [base]/Patient/100000001/$everything は、Patient リソースに関連付けられているすべてのリソースと、それらのリソースに関連付けられているリソースを返します。前の検索と比べて、この検索には Patient の DiagnosticReport リソースに関連付けられている Practitioner リソースも含まれます。
検索パラメータ・タイプ
各検索パラメータには、パラメータの動作方法を決定する検索パラメータ・タイプOpens in a new tabがあります。
パラメータのタイプ | サポート・レベル |
---|---|
compositeOpens in a new tab | サポート対象外です。 |
dateOpens in a new tab | 完全にサポートされています。 |
numberOpens in a new tab | 完全にサポートされています。 |
quantityOpens in a new tab | 完全にサポートされています。 |
referenceOpens in a new tab | 完全にサポートされています。* |
stringOpens in a new tab | 完全にサポートされています。 |
tokenOpens in a new tab | 完全にサポートされています。 |
uriOpens in a new tab | 完全にサポートされています。 |
* キャノニック形式の参照では、連鎖検索はサポートされません。キャノニック形式の参照での検索結果パラメータ _include および _revinclude の使用もサポートされません。
パラメータ
以下に、リソース・リポジトリからリソースを取得する場合の、標準の検索パラメータOpens in a new tabに対する FHIR サーバのサポートの概要を示します。
パラメータ | サポート・レベル |
---|---|
_content | サポート対象外です。 |
_filter | サポート対象外です。 |
_has | 正式な仕様Opens in a new tabの説明にあるとおり、完全にサポートされています。 |
_id | 正式な仕様Opens in a new tabの説明にあるとおり、完全にサポートされています。 |
_lastUpdated | 正式な仕様Opens in a new tabの説明にあるとおり、完全にサポートされています。 |
_list | サポート対象外です。 |
_profile | 正式な仕様Opens in a new tabの説明にあるとおり、完全にサポートされています。 |
_query | サポート対象外です。 |
_security | 正式な仕様Opens in a new tabの説明にあるとおり、完全にサポートされています。 |
_source | 完全にサポートされています。 |
_tag | 正式な仕様Opens in a new tabの説明にあるとおり、完全にサポートされています。 |
_text | サポート対象外です。 |
_type | 完全にサポートされています。 |
修飾子
修飾子Opens in a new tabをパラメータの末尾に追加して、検索結果に影響を及ぼすことができます。
修飾子 | サポート・レベル |
---|---|
:above | URI でサポートされています。 |
:below | URI でサポートされています。 |
:code-text | サポート対象外です。 |
:contains | 完全にサポートされています (文字列と URI)。 |
:exact | 完全にサポートされています。 |
:identifier | 完全にサポートされています。 |
:in | サポート対象外です。 |
:iterate | 完全にサポートされています。 |
:missing | サポート対象外です。 |
:not | サポート対象外です。 |
:not-in | サポート対象外です。 |
:of-type | 完全にサポートされています。 |
:text | 参照とトークンでサポートされています。文字列ではサポートされていません。 |
:text-advanced | サポート対象外です。 |
:[type] | 完全にサポートされています。 |
接頭語
タイプが number、date、quantity の検索パラメータを使用する場合は、接頭語Opens in a new tabをパラメータの値に追加して、検索に一致するリソースに影響を及ぼすことができます。例えば、[parameter]=le100 は 100 以下の値を返します。
接頭語 | サポート・レベル |
---|---|
eq | 完全にサポートされています。 |
ne | 完全にサポートされています。 |
gt | 完全にサポートされています。 |
lt | 完全にサポートされています。 |
ge | 完全にサポートされています。 |
le | 完全にサポートされています。 |
sa | 完全にサポートされています。 |
eb | 完全にサポートされています。 |
ap | 完全にサポートされています。 |
検索結果パラメータ
検索結果パラメータOpens in a new tabは、検索から返されるリソースの管理に役立ちます。
検索結果パラメータ | サポート・レベル |
---|---|
_contained | サポート対象外です。 |
_containedType | サポート対象外です。 |
_count | 正式な仕様Opens in a new tabの説明にあるとおり、完全にサポートされています。 |
_elements | 正式な仕様Opens in a new tabの説明にあるとおり、完全にサポートされています。 |
_graph | サポート対象外です。 |
_include | 正式な仕様Opens in a new tabの説明にあるとおり、完全にサポートされています。 |
_maxresults | サポート対象外です。 |
_revinclude | 正式な仕様Opens in a new tabの説明にあるとおり、完全にサポートされています。 |
_score | サポート対象外です。 |
_sort | 正式な仕様Opens in a new tabの説明にあるとおり、完全にサポートされています。 |
_summary | _summary=count、_summary=data、および _summary=text をサポートしています。詳細は、正式な仕様Opens in a new tabを参照してください。 |
_total | サポート対象外です。 |