$member-add HealthLake の オペレーション - AWS HealthLake

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

$member-add HealthLake の オペレーション

FHIR $member-addオペレーションは、メンバー (患者) をグループリソース、特にメンバー属性リストに追加します。このオペレーションは DaVinci メンバー属性実装ガイドの一部であり、メンバー属性を管理するための調整プロセスをサポートしています。

オペレーションエンドポイント

POST [base]/datastore/{datastoreId}/r4/Group/{groupId}/$member-add Content-Type: application/json

パラメータ

オペレーションは、以下のパラメータの組み合わせを持つ FHIR Parameters リソースを受け入れます。

パラメータオプション

次のいずれかのパラメータの組み合わせを使用できます。

オプション 1: メンバー ID + プロバイダー NPI

memberId + providerNpi

memberId + providerNpi + attributionPeriod

オプション 2: 患者リファレンス + プロバイダーリファレンス

patientReference + providerReference

patientReference + providerReference + attributionPeriod

パラメータの詳細

memberId (オプション)

グループに追加するメンバーの識別子。

タイプ: Identifier

システム: 患者識別子システム

{ "name": "memberId", "valueIdentifier": { "system": "http://example.org/patient-id", "value": "patient-new" } }
providerNpi (オプション)

属性プロバイダーの国民プロバイダー識別子 (NPI)。

タイプ: Identifier

システム: http://terminology.hl7.org/CodeSystem/NPI

{ "name": "providerNpi", "valueIdentifier": { "system": "http://terminology.hl7.org/CodeSystem/NPI", "value": "1234567890" } }
patientReference (オプション)

追加する患者リソースへの直接参照。

タイプ: リファレンス

{ "name": "patientReference", "valueReference": { "reference": "Patient/patient-123" } }
providerReference (オプション)

プロバイダーリソースへの直接参照。

タイプ: リファレンス

{ "name": "providerReference", "valueReference": { "reference": "Practitioner/provider-456" } }
attributionPeriod (オプション)

患者がプロバイダーに属している期間。

タイプ: Period

{ "name": "attributionPeriod", "valuePeriod": { "start": "2024-07-15", "end": "2025-07-14" } }

リクエストの例

メンバー ID とプロバイダー NPI の使用

{ "resourceType": "Parameters", "parameter": [ { "name": "memberId", "valueIdentifier": { "system": "http://example.org/patient-id", "value": "patient-new" } }, { "name": "providerNpi", "valueIdentifier": { "system": "http://terminology.hl7.org/CodeSystem/NPI", "value": "1234567890" } }, { "name": "attributionPeriod", "valuePeriod": { "start": "2024-07-15", "end": "2025-07-14" } } ] }

患者とプロバイダーのリファレンスの使用

{ "resourceType": "Parameters", "parameter": [ { "name": "patientReference", "valueReference": { "reference": "Patient/patient-123" } }, { "name": "providerReference", "valueReference": { "reference": "Practitioner/provider-456" } }, { "name": "attributionPeriod", "valuePeriod": { "start": "2024-07-15", "end": "2025-07-14" } } ] }

レスポンスの形式

追加レスポンスの成功

HTTP Status: 200 OK Content-Type: application/fhir+json { "resourceType": "OperationOutcome", "issue": [ { "severity": "success", "code": "informational", "details": { "text": "Member Patient/patient-new successfully added to the Member Attribution List." } } ] }

エラーレスポンス

無効なリクエスト構文

HTTP ステータス: 400 Bad Request

{ "resourceType": "OperationOutcome", "issue": [ { "severity": "error", "code": "invalid", "details": { "text": "Invalid parameter combination provided" } } ] }
リソースが見つかりません

HTTP ステータス: 404 Not Found

{ "resourceType": "OperationOutcome", "issue": [ { "severity": "error", "code": "not-found", "details": { "text": "Resource not found." } } ] }
バージョンの競合

HTTP ステータス: 409 競合

{ "resourceType": "OperationOutcome", "issue": [ { "severity": "error", "code": "conflict", "details": { "text": "Resource version conflict detected" } } ] }
無効な属性ステータス

HTTP ステータス: 422 Unprocessable Entity

{ "resourceType": "OperationOutcome", "issue": [ { "severity": "error", "code": "business-rule", "details": { "text": "Cannot add member to Attribution List with status 'final'. Status must be 'draft' or 'open'." } } ] }

ビジネスルール

属性ステータスの検証

オペレーションは、グループの属性ステータスが次の場合にのみ実行できます。

  • draft

  • open

ステータスが の場合、オペレーションは許可されませんfinal

重複メンバーの防止

システムは、次の一意の組み合わせに基づいて重複したメンバーを追加しないようにします。

  • メンバー識別子

  • 支払者識別子

  • カバレッジ識別子

カバレッジ期間の検証

attributionPeriod を指定する場合、メンバーのカバレッジ期間の範囲内にある必要があります。システムは以下を行います。

  • メンバーのカバレッジリソースを検索する

  • 複数の が存在する場合は、最新のカバレッジ (最高の versionId) を使用する

  • 帰属期間がカバレッジ期間を超えないことを確認する

リファレンスの検証

ID と参照の両方が同じリソース (患者またはプロバイダー) に提供されると、システムはそれらが同じリソースに対応していることを検証します。

ID フィールドと reference.identifier フィールドの両方が同じリソース (患者またはプロバイダー) に提供されると、エラーがスローされます。

認証と認可

オペレーションでは、以下に対して SMART on FHIR 認可が必要です。

  • 読み取りアクセス許可 - 患者、プロバイダー、グループのリソースを検証するには

  • 検索アクセス許可 - 識別子でリソースを検索するには

  • アクセス許可を更新する - グループリソースを変更するには

運用上の動作

リソースの更新
  • グループリソースバージョン ID を更新します。

  • オペレーションの前に、元のリソース状態の履歴エントリを作成します。

  • 以下を使用して Group.member 配列にメンバー情報を追加します。

    • entity.reference での患者リファレンス

    • 期間の属性期間

    • 拡張フィールドのカバレッジとプロバイダー情報

検証ステップ
  • パラメータの検証 - 有効なパラメータの組み合わせを確認します

  • リソースの存在 - 患者、プロバイダー、グループリソースが存在することを確認します

  • 属性ステータス - グループステータスが変更を許可することを確認します

  • 重複チェック - 既存のメンバーの追加を防止

  • カバレッジ検証 - アトリビューション期間がカバレッジ範囲内であることを確認します

制限

  • 参照されるすべてのリソースは、同じデータストア内に存在する必要があります

  • オペレーションはメンバー属性リストグループのリソースでのみ機能します

  • アトリビューション期間はカバレッジ範囲内である必要があります

  • 「最終」ステータスのグループは変更できません