기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
$member-add HealthLake에 대한 작업
FHIR $member-add 작업은 그룹 리소스, 특히 멤버 속성 목록에 멤버(환자)를 추가합니다. 이 작업은 DaVinci 멤버 속성 구현 가이드의 일부이며 멤버 속성을 관리하기 위한 조정 프로세스를 지원합니다.
작업 엔드포인트
POST [base]/datastore/{datastoreId}/r4/Group/{groupId}/$member-add Content-Type: application/json
Parameters
작업은 다음 파라미터 조합이 있는 FHIR 파라미터 리소스를 수락합니다.
파라미터 옵션
다음 파라미터 조합 중 하나를 사용할 수 있습니다.
- 옵션 1: 멤버 ID + 공급자 NPI
-
memberId+providerNpimemberId+providerNpi+attributionPeriod - 옵션 2: 환자 참조 + 공급자 참조
-
patientReference+providerReferencepatientReference+providerReference+attributionPeriod
파라미터 세부 정보
- memberId(선택 사항)
-
그룹에 추가할 멤버의 식별자입니다.
유형: 식별자
시스템: 환자 식별자 시스템
{ "name": "memberId", "valueIdentifier": { "system": "http://example.org/patient-id", "value": "patient-new" } } - providerNpi(선택 사항)
-
귀속된 공급자의 국가 공급자 식별자(NPI)입니다.
유형: 식별자
시스템: 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(선택 사항)
-
환자가 공급자에 귀속되는 기간입니다.
유형: 기간
{ "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 잘못된 요청
{ "resourceType": "OperationOutcome", "issue": [ { "severity": "error", "code": "invalid", "details": { "text": "Invalid parameter combination provided" } } ] } - 리소스를 찾을 수 없음
-
HTTP 상태: 404 찾을 수 없음
{ "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 처리 불가능한 엔터티
{ "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'." } } ] }
비즈니스 규칙
- 속성 상태 검증
-
그룹의 속성 상태가 다음과 같은 경우에만 작업을 수행할 수 있습니다.
draftopen
상태가 인 경우 작업이 허용되지 않습니다
final. - 중복 멤버 방지
-
시스템은 다음과 같은 고유한 조합을 기반으로 중복 멤버를 추가하는 것을 방지합니다.
멤버 식별자
지급인 식별자
적용 범위 식별자
- 적용 범위 기간 검증
-
attributionPeriod가 제공되면 멤버의 적용 기간 범위 내에 속해야 합니다. 시스템은 다음을 수행합니다.멤버의 적용 범위 리소스 검색
여러 개가 있는 경우 최신 적용 범위(가장 높은 versionId) 사용
어트리뷰션 기간이 적용 범위를 초과하지 않는지 확인합니다.
- 참조 검증
-
동일한 리소스(환자 또는 공급자)에 대해 ID와 참조가 모두 제공되는 경우 시스템은 ID와 참조가 동일한 리소스에 해당하는지 확인합니다.
동일한 리소스(환자 또는 공급자)에 대해 ID 및 reference.identifier 필드가 모두 제공되면 오류가 발생합니다.
인증 및 권한 부여
작업을 수행하려면 다음에 대한 FHIR 인증에서 SMART가 필요합니다.
읽기 권한 - 환자, 공급자 및 그룹 리소스를 검증하려면
검색 권한 - 식별자별로 리소스를 찾으려면
권한 업데이트 - 그룹 리소스를 수정하려면
운영 동작
- 리소스 업데이트
-
그룹 리소스 버전 ID를 업데이트합니다.
작업 전에 원래 리소스 상태로 기록 항목을 생성합니다.
다음을 사용하여 Group.member 배열에 멤버 정보를 추가합니다.
entity.reference의 환자 참조
기간의 속성 기간
확장 필드의 적용 범위 및 공급자 정보
- 검증 단계
-
파라미터 검증 - 유효한 파라미터 조합 확인
리소스 존재 - 환자, 공급자 및 그룹 리소스가 존재하는지 검증합니다.
속성 상태 - 그룹 상태가 수정을 허용하는지 확인합니다.
중복 검사 - 기존 멤버 추가 방지
적용 범위 검증 - 어트리뷰션 기간이 적용 범위 범위 범위 내에 있는지 확인합니다.
제한 사항
참조된 모든 리소스는 동일한 데이터 스토어 내에 있어야 합니다.
작업은 멤버 속성 목록 그룹 리소스에서만 작동합니다.
속성 기간은 적용 범위 범위 내에 있어야 합니다.
"최종" 상태의 그룹은 수정할 수 없습니다.