

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# `$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>

엔드포인트  
`POST /Group/{id}/$member-remove`

콘텐츠 유형  
`application/fhir+json`

## Parameters
<a name="member-remove-parameters"></a>

작업은 다음과 같은 선택적 파라미터가 있는 FHIR 파라미터 리소스를 수락합니다.


| 파라미터 | 카디널리티 | Type | 설명 | 
| --- | --- | --- | --- | 
| 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` 전용 - 지정된 멤버에 대한 모든 어트리뷰션을 제거합니다.
+ `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>
+ *특정 파라미터 사용*: 가능하면 가장 구체적인 파라미터 조합을 사용하여 의도하지 않은 제거를 방지합니다.
+ *확인 목록 상태*: 제거를 시도하기 전에 어트리뷰션 목록 상태 확인
+ *오류 정상 처리*: 가능한 모든 오류 조건에 적절한 오류 처리 구현
+ *참조 검증*: 요청하기 전에 참조된 모든 리소스가 존재하는지 확인합니다.