

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

# `$member-remove` HealthLake の オペレーション
<a name="reference-fhir-operations-member-remove"></a>

`$member-remove` オペレーションでは、FHIR メンバー属性リスト (グループリソース) からメンバーを削除できます AWS HealthLake。このオペレーションは DaVinci メンバー属性実装ガイドの一部であり、メンバー属性を管理するための調整プロセスをサポートしています。

## 前提条件
<a name="member-remove-prerequisites"></a>
+ AWS HealthLake FHIR データストア
+ HealthLake オペレーションの適切な IAM アクセス許可
+ ドラフトステータスまたはオープンステータスのメンバー属性リスト (グループリソース)

## オペレーションの詳細
<a name="member-remove-endpoint"></a>

Endpoint  
`POST /Group/{id}/$member-remove`

コンテンツタイプ  
`application/fhir+json`

## パラメータ
<a name="member-remove-parameters"></a>

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


| パラメータ | カーディナリティ | 型 | 説明 | 
| --- | --- | --- | --- | 
| memberId | 0..1 | 識別子 | 削除するメンバーのビジネス識別子 | 
| providerNpi | 0..1 | 識別子 | 属性プロバイダーの NPI | 
| patientReference | 0..1 | リファレンス | 患者リソースへの直接参照 | 
| providerReference | 0..1 | リファレンス | プロバイダーリソース (Practitioner、PractitionerRole、または Organization) への直接参照 | 
| coverageReference | 0..1 | リファレンス | カバレッジリソースへの参照 | 

### サポートされているパラメータの組み合わせ
<a name="member-remove-parameter-combinations"></a>

以下のパラメータの組み合わせがサポートされています。
+ `memberId` only - 指定されたメンバーのすべての属性を削除します
+ `memberId` \$1 `providerNpi` - 特定のメンバーとプロバイダーの組み合わせの属性を削除します
+ `patientReference` のみ - 指定された患者のすべての属性を削除します
+ `patientReference` \$1 `providerReference` - 特定の患者とプロバイダーの組み合わせの属性を削除します
+ `patientReference` \$1 `providerReference` \$1 `coverageReference` - 患者、プロバイダー、カバレッジに基づいて特定の属性を削除します

## リクエストの例
<a name="member-remove-examples"></a>

```
{
  "resourceType": "Parameters",
  "parameter": [
    {
      "name": "patientReference",
      "valueReference": {
        "reference": "Patient/12345"
      }
    },
    {
      "name": "providerReference",
      "valueReference": {
        "reference": "Practitioner/67890"
      }
    }
  ]
}
```

## 応答
<a name="member-remove-response"></a>

### 成功したレスポンス
<a name="member-remove-success-response"></a>

```
{
  "resourceType": "Parameters",
  "parameter": [
    {
      "name": "result",
      "valueBoolean": true
    },
    {
      "name": "effectiveDate",
      "valueDate": "2024-06-30"
    },
    {
      "name": "status",
      "valueCode": "inactive"
    },
    {
      "name": "message",
      "valueString": "Member successfully removed from attribution list"
    }
  ]
}
```

## 行動
<a name="member-remove-behavior"></a>

ステータス要件  
オペレーションは、ステータスが `draft`または の属性リストでのみ機能します。 `open`  
`final` ステータスが のリストは、422 エラーのオペレーションを拒否します。

メンバーの削除プロセス  
*ステータスリストのドラフト*: メンバーは非アクティブ (`inactive: true`) としてマークされ、`changeType`拡張機能は に更新されます `changed`  
*オープンステータスリスト*: ドラフトステータスと同様の動作  
*最終ステータスリスト*: オペレーションが拒否されました

検証  
リファレンスはHealthLake データストアに存在することを確認するために検証されます。  
識別子と参照の両方が同じリソースタイプに提供される場合、それらは同じリソースに対応する必要があります  
パラメータの組み合わせは、サポートされているパターンに従って検証されます。

## エラー処理
<a name="member-remove-error-handling"></a>

### 一般的なエラーレスポンス
<a name="member-remove-common-errors"></a>

リソースが見つかりません (404)  

```
{
  "resourceType": "OperationOutcome",
  "issue": [
    {
      "severity": "error",
      "code": "not-found",
      "details": {
        "text": "Patient with identifier 'http://example.org/fhir/identifiers|99999' not found in system"
      },
      "diagnostics": "Cannot remove member from attribution list. Verify patient identifier and try again.",
      "expression": ["memberId"]
    }
  ]
}
```

属性リストの最終ステータス (422)  

```
{
  "resourceType": "OperationOutcome",
  "issue": [
    {
      "severity": "error",
      "code": "business-rule",
      "details": {
        "coding": [
          {
            "system": "http://hl7.org/fhir/us/davinci-atr/CodeSystem/atr-error-codes",
            "code": "list-final",
            "display": "Attribution list is final and cannot be modified"
          }
        ]
      },
      "diagnostics": "Cannot modify attribution list with status 'final'. List modifications are not permitted after finalization.",
      "expression": ["Group.status"]
    }
  ]
}
```

無効なオペレーション (400)  
パラメータの組み合わせが無効または形式が正しくない場合に返されます。

複数の一致が見つかりました (412)  
指定されたパラメータが属性リスト内の複数のメンバーと一致する場合に返されます。  

```
{
  "resourceType": "OperationOutcome",
  "issue": [
    {
      "severity": "error",
      "code": "processing",
      "diagnostics": "Multiple members found matching the criteria"
    }
  ]
}
```

## ベストプラクティス
<a name="member-remove-best-practices"></a>
+ *特定のパラメータを使用する*: 可能な場合は、最も具体的なパラメータの組み合わせを使用して、意図しない削除を回避します。
+ *リストステータスのチェック*: 削除を試みる前に属性リストのステータスを確認します
+ *エラーを適切に処理する*: 考えられるすべてのエラー条件に対して適切なエラー処理を実装する
+ *リファレンスの検証*: リクエストを行う前に、参照されるすべてのリソースが存在することを確認します。