FHIR R4 操作适用于 $davinci-data-export HealthLake - AWS HealthLake

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

FHIR R4 操作适用于 $davinci-data-export HealthLake

$davinci-data-export操作是一种异步 FHIR 操作,允许从 AWS HealthLake中导出成员归因列表数据。此操作是标准 FHIR $export 操作的专业版本,专为满足《 DaVinci 成员归因 (ATR) 列表实施指南》的要求而设计。

主要功能

  • 异步处理:遵循标准的 FHIR 异步请求模式

  • 群组级导出:导出特定归因列表(群组)内成员的数据

  • 专业资源处理:专注于与归因相关的资源

  • 灵活筛选:支持按患者、资源类型和时间范围进行筛选

  • NDJSON 输出:以换行符分隔的 JSON 格式提供数据

操作端点

GET [base]/Group/[id]/$davinci-data-export POST [base]/Group/[id]/$davinci-data-export

请求参数

参数 基数 描述
病人 0。。 * 应导出其数据的特定成员。省略时,将导出群组中的所有成员
_type 0.. 1 要导出的 FHIR 资源类型列表(以逗号分隔)
_以来 0.. 1 仅包括在此日期/时间之后更新的资源
导出类型 0.. 1 要执行的导出类型(默认值:hl7.fhir.us.davinci-atr)

支持的资源类型

使用_type参数时,仅支持以下资源类型:

  • Group

  • 病人

  • 涵盖

  • RelatedPerson

  • 从业者

  • PractitionerRole

  • Organization(组织)

  • 位置

示例请求

启动导出 Job

GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Group/example-group/$davinci-data-export?_type=Group,Patient,Coverage&exportType=hl7.fhir.us.davinci-atr or POST https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Group/example-group/$davinci-data-export?_type=Group,Patient,Coverage&exportType=hl7.fhir.us.davinci-atr Content-Type: application/json { "DataAccessRoleArn": "arn:aws:iam::444455556666:role/your-healthlake-service-role", "JobName": "attribution-export-job", "OutputDataConfig": { "S3Configuration": { "S3Uri": "s3://your-export-bucket/EXPORT-JOB", "KmsKeyId": "arn:aws:kms:region:444455556666:key/1234abcd-12ab-34cd-56ef-1234567890ab" } } }

示例响应

{ "datastoreId": "eaee622d8406b41eb86c0f4741201ff9", "jobStatus": "SUBMITTED", "jobId": "48d7b91dae4a64d00d54b70862f33f61" }

资源关系

该操作根据资源在成员归因列表中的关系导出资源:

Group (Attribution List) ├── Patient (Members) ├── Coverage → RelatedPerson (Subscribers) ├── Practitioner (Attributed Providers) ├── PractitionerRole → Location └── Organization (Attributed Providers)

资源来源

资源 来源位置 描述
病人 群组成员实体 属于归因列表成员的患者
涵盖 Group.member.extension: co 导致患者会员资格的承保范围
Organization(组织) Group.member.extensions: 患者归因于 Organization
从业者 Group.member.extensions: 个体从业者患者归因于
PractitionerRole Group.member.extensions: 患者所扮演的从业者角色
RelatedPerson 报道。订阅者 报道的订阅者
位置 PractitionerRole. 位置 与从业者角色相关的地点
Group 输入端点 归因列表本身

Job 管理

查看 Job 状态

GET [base]/export/[job-id]

取消作业

DELETE [base]/export/[job-id]

作业生命周期

  • SUBMITTED-已接收 Job 并已排队

  • IN_PROGRESS-Job 正在处理中

  • COMPLETED-Job 成功完成,文件可供下载

  • FAILED-Job 遇到了错误

输出格式

  • 文件格式:NDJSON(以换行符分隔的 JSON)

  • 文件组织:每种资源类型都有单独的文件

  • 文件扩展名:.ndjson

  • 位置:指定的 S3 存储桶和路径

错误处理

OperationOutcome 对于以下情况,该操作会返回 HTTP 400 错误请求,其中包含一个:

授权错误
  • 数据访问权限无效或不足

  • S3 存储桶访问问题

  • KMS 密钥访问问题

参数验证错误
  • patient参数未格式化为 “Patient/id,Patient/id,...”

  • 患者推荐人无效或患者不属于本组

  • exportTypehl7.fhir.us.davinci-atr 以外的值

  • _type包含不支持的资源类型的参数

  • _type参数缺少 hl7.fhir.us.davinci-atr 的 exportType 所需的最小类型(群组、患者、承保范围)

资源验证错误
  • 请求的群组资源不存在

  • 群组的成员列表为空

  • 小组成员未引用有效的患者资源

安全和授权

  • 适用标准的 FHIR 授权机制

  • 客户必须对群组和相关资源拥有适当的读取权限

  • 输出位置需要 S3 存储桶写入权限

  • 如果指定了加密,则需要 KMS 密钥权限

最佳实践

  • 资源类型选择:仅请求所需的资源类型,以最大限度地减少导出大小和处理时间

  • 基于时间的筛选:使用_since参数进行增量导出

  • 患者筛选:当您只需要特定成员的数据时,请使用patient参数

  • Job 监控:定期检查大宗出口的任务状态

  • 错误处理:为失败的作业实现正确的重试逻辑

限制

  • patient参数中最多可以指定 512 名患者

  • 导出仅限于组级操作

  • 仅支持预定义的一组与归因相关的资源类型

  • 输出始终采用 NDJSON 格式