翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
FHIR リソースの削除
FHIR deleteインタラクションは、HealthLake データストアから既存の FHIR リソースを削除します。詳細については、FHIR R4 RESTful API ドキュメントdelete
FHIR リソースを削除するには
-
HealthLake
regionとdatastoreIdの値を収集します。詳細については、「データストアのプロパティの取得」を参照してください。 -
削除する FHIR のタイプを決定し
Resource、関連するid値を収集します。詳細については、「リソースタイプ」を参照してください。 -
HealthLake
regionと の収集された値を使用して、リクエストの URL を作成しますdatastoreId。FHIRResourceタイプとそれに関連する も含めますid。次の例の URL パス全体を表示するには、コピーボタンをスクロールします。DELETE https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Resource/id -
リクエストを送信します。FHIR
deleteインタラクションは、AWS 署名バージョン 4 または SMART on FHIR 認可のいずれかのDELETEリクエストを使用します。次の のcurl例では、HealthLake データストアから既存の FHIRPatientリソースを削除します。例全体を表示するには、コピーボタンをスクロールします。
条件に基づく FHIR リソースの削除
条件付き削除は、特定の FHIR リソース ID がわからないが、削除するリソースに関するその他の識別情報がある場合に特に便利です。
条件付き削除を使用すると、論理 FHIR ID ではなく検索条件に基づいて既存のリソースを削除できます。サーバーが削除リクエストを処理すると、リソースタイプの標準検索機能を使用して検索を実行し、リクエストの単一の論理 ID を解決します。
条件付き削除の仕組み
サーバーのアクションは、見つかった一致の数によって異なります。
-
一致なし: サーバーは通常の削除を試みて適切に応答します (存在しないリソースの場合は 404 Not Found、既に削除されているリソースの場合は 204 No Content)
-
1 つの一致: サーバーは、一致するリソースに対して通常の削除を実行します。
-
複数の一致: クライアントの基準が十分に選択されていないことを示す 412 Precondition Failed エラーを返します
対応シナリオ
AWS HealthLake は、次のレスポンスパターンで条件付き削除オペレーションを処理します。
正常なオペレーション
-
検索条件によって 1 つのアクティブなリソースが正常に識別されると、システムは標準の削除オペレーションと同様に、削除の完了後に 204 No Content を返します。
ID ベースの条件付き削除
追加のパラメータ (createdAt、tag、または _lastUpdated) idを使用して に基づいて条件付き削除を実行する場合:
-
204 コンテンツなし: リソースは既に削除されています
-
404 Not Found: リソースが存在しません
-
409 競合: ID が一致するが、他のパラメータが一致しない
Non-ID-Based条件付き削除
が指定されidていない場合、または createdAt、tag、または 以外のパラメータを使用する場合_lastUpdated:
-
404 Not Found: 一致が見つかりません
競合状況
いくつかのシナリオでは、412 Precondition Failed レスポンスが発生します。
-
検索条件に一致するリソースが複数ある (基準が十分に具体的ではない)
-
で ETag ヘッダーを使用する場合のバージョン競合
If-Match -
検索オペレーションと削除オペレーションの間で発生するリソースの更新
条件付き削除が成功した例
次の の例では、特定の基準に基づいて患者リソースを削除します。
DELETE https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient?name=peter&birthdate=2000-01-01&phone=1234567890
このリクエストは、次の場合に患者リソースを削除します。
名前は「peter」です
生年月日は 2000 年 1 月 1 日です
電話番号は 1234567890 です
ベストプラクティス
-
特定の検索条件を使用して、複数の一致を回避し、412 エラーを防止します。
-
同時変更を処理するために必要な場合は、バージョン管理に ETag ヘッダーを検討してください。
-
エラーレスポンスを適切に処理します。
404 の場合: 検索条件を絞り込む
412 の場合: 条件をより具体的にするか、バージョン競合を解決する
-
検索操作と削除操作の間でリソースが変更される可能性のある、同時実行性の高い環境でのタイミングの競合に備えます。