

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

# FHIR R4 操作适用于 `$davinci-data-export` HealthLake
<a name="reference-fhir-operations-davinci-data-export"></a>

该`$davinci-data-export`操作是一种异步 FHIR 操作，可用于从中 AWS HealthLake导出医疗保健数据。此操作支持多种导出类型，包括成员归因 (ATR)、 PDex 提供商访问和成员访问权限 APIs。 Payer-to-Payer它是标准 FHIR `$export` 操作的专用版本，旨在满足 DaVinci 实施指南的要求。

## 主要功能
<a name="davinci-data-export-features"></a>
+ *异步处理*：遵循标准的 FHIR 异步请求模式
+ *组级导出：导*出特定群组资源内成员的数据
+ *多种导出类型*：支持 ATR（成员归因）、 PDex 提供商访问和成员访问权限 Payer-to-Payer APIs
+ *全面的配置文件支持*：包括美国核心、CARIN Blue Button 和 PDex 配置文件
+ *灵活筛选*：支持按患者、资源类型和时间范围进行筛选
+ *NDJSON 输出*：以换行符分隔的 JSON 格式提供数据

## 操作终端节点
<a name="davinci-data-export-endpoint"></a>

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

## 请求参数
<a name="davinci-data-export-parameters"></a>


| 参数 | 基数 | 说明 | 
| --- | --- | --- | 
| patient | 0。。 \$1 | 要导出其数据的特定成员。如果省略，则导出组中的所有成员。 | 
| \$1type | 0.. 1 | 要导出的 FHIR 资源类型列表，以逗号分隔。 | 
| \$1since | 0.. 1 | 仅包括在此日期和时间之后更新的资源。 | 
| \$1until | 0.. 1 | 仅包括在此日期和时间之前更新的资源。 | 
| exportType | 0.. 1 | 要执行的导出类型。有效值：hl7.fhir.us.davinci-atr、hl7.fhir.us.davinci-pdex、hl7.fhir.us.davinci-pdex.p2p、hl7.fhir.us.davinci-pdex.member。默认值：hl7.fhir.us.davinci-atr。 | 
| \$1includeEOB2xWoFinancial | 0.. 1 | 指定是否包含已删除财务数据的 CARIN BB 2.x ExplanationOfBenefit 资源。默认值：false。 | 

### 支持的资源类型
<a name="davinci-data-export-supported-resources"></a>

支持的资源类型取决于您指定的导出类型。对于 ATR 导出，支持以下资源类型：
+ `Group`
+ `Patient`
+ `Coverage`
+ `RelatedPerson`
+ `Practitioner`
+ `PractitionerRole`
+ `Organization`
+ `Location`

对于 PDex 导出（提供者访问权限和成员访问权限），除了上述类型外，还支持所有临床和索赔资源类型。 Payer-to-Payer有关支持的资源类型的完整列表，请参阅《[美国核心实施指南》(STU 6.1)](https://hl7.org/fhir/us/core/STU6.1/)、《C [ARIN Blue Button 实施指南》](https://hl7.org/fhir/us/carin-bb/)和《[达芬奇事先授权支持](https://hl7.org/fhir/us/davinci-pas/)实施指南》。

## 导出类型
<a name="davinci-data-export-types"></a>

该`$davinci-data-export`操作支持以下导出类型。您可以使用`exportType`参数指定导出类型。


| 导出类型 | 用途 | 数据范围 | 时间限制 | 
| --- | --- | --- | --- | 
| hl7.fhir.us.davinci-atr | 成员归因列表 | 与归因相关的资源 | 无 | 
| hl7.fhir.us.davinci-pdex | 提供商访问权限 API | 归因患者的临床和索赔数据 | 5 年 | 
| hl7.fhir.us.davinci-pdex.p2p | Payer-to-Payer 交易所 | 保险过渡的成员历史数据 | 5 年 | 
| hl7.fhir.us.davinci-pdex.member | 成员访问权限 API | 会员自己的健康数据 | 5 年 | 

**注意**  
对于 PDex 出口，5 年期限不适用于 ATR 资源类型（`Group`、、`Patient`、、`Coverage`、`RelatedPerson`、`Practitioner`、`PractitionerRole``Organization`、`Location`）。无论年龄大小，这些资源始终包括在内。

### ATR (hl7.fhir.us.davinci-atr)
<a name="davinci-data-export-type-atr"></a>

使用 ATR 导出类型，您可以导出成员归因列表数据。使用此导出类型为群组中的成员检索与归因相关的资源。欲了解更多信息，请参阅[达芬奇 ATR 出口业务](https://build.fhir.org/ig/HL7/davinci-atr/OperationDefinition-davinci-data-export.html)。

支持的资源类型  
`Group`, `Patient`, `Coverage`, `RelatedPerson`, `Practitioner`, `PractitionerRole`, `Organization`, `Location`

时间过滤  
不应用任何时间过滤。无论日期如何，都会导出所有匹配的资源。

### PDex 导出类型
<a name="davinci-data-export-type-pdex"></a>

所有 PDex 导出类型都使用相同的支持的配置文件和筛选逻辑。有关更多信息，请参阅 [Da Vinci PDex 提供商访问权限 API](https://build.fhir.org/ig/HL7/davinci-epdx/provider-access-api.html)。支持以下配置文件：
+ 美国核心 3.1.1、6.1.0 和 7.0.0
+ PDex 事先授权（不支持会员访问）
+ CARIN BB 2.x 基本概况：住院机构、门诊机构、专业、口腔 NonClinician、药房

提供商访问权限 (`hl7.fhir.us.davinci-pdex`)  
使网络内提供者能够检索归因患者的患者数据。

Payer-to-Payer (`hl7.fhir.us.davinci-pdex.p2p`)  
当患者更换保险时，允许付款人之间进行数据交换。

成员访问权限 (`hl7.fhir.us.davinci-pdex.member`)  
允许成员访问自己的健康数据。这种导出类型可能包括索赔资源中的财务数据。

## 个人资料 Support 和包含逻辑
<a name="davinci-data-export-profile-support"></a>

对于 PDex 导出，该`$davinci-data-export`操作使用`meta.profile`元素中的配置文件声明来确定要在导出中包含哪些资源。

### ExplanationOfBenefit 资源处理
<a name="davinci-data-export-carin-handling"></a>

`ExplanationOfBenefit`(EOB) 资源根据其`meta.profile`申报被纳入或排除在 PDex 出口之外：
+ ExplanationOfBenefit 带有 CARIN BB 1.x 配置文件的资源不包括在导出范围内。
+ ExplanationOfBenefit 未`meta.profile`设置的资源将从导出中排除。
+ ExplanationOfBenefit 始终包含具有 CARIN BB 2.x Basis 配置文件的资源。
+ ExplanationOfBenefit 默认情况下，不包括包含财务数据的 CARIN BB 2.x 配置文件的资源。设置后`_includeEOB2xWoFinancial=true`，它们将包含在去除的财务数据中，并将资源转换为相应的 Basis 配置文件。
+ ExplanationOfBenefit 带有 “ PDex 事先授权” 配置文件的资源始终包括在内。

### 财务数据转换
<a name="davinci-data-export-financial-transformation"></a>

设置后`_includeEOB2xWoFinancial=true`，操作会通过删除财务数据将 [CARIN BB 2.x](https://hl7.org/fhir/us/carin-bb/) ExplanationOfBenefit 资源转换为相应的 Basis 配置文件。例如，将`C4BB ExplanationOfBenefit Oral`资源转换为`C4BB ExplanationOfBenefit Oral Basis`，这会根据 FHIR 规范从记录中删除财务数据。

转换期间会移除以下财务数据元素：
+ 对元素进行所有切片 `total`
+ 所有带`amounttype`切片的`adjudication`元素
+ 所有`item.adjudication`包含金额信息的元素

该操作还会在转换过程中更新配置文件元数据：
+ `meta.profile`已更新为 Basis 配置文件规范 URL
+ 版本已更新至 CARIN BB 2.x Basis 版本
+ 数据存储中的现有资源未被修改
+ 导出的资源不会保留回数据存储中

### 配置文件检测规则
<a name="davinci-data-export-profile-detection"></a>

该操作使用以下规则来检测和验证配置文件：
+ 版本检测基于规`meta.profile`范 URLs
+ 如果资源声明的任何配置文件符合导出标准，则包含该资源
+ 配置文件验证是在导出处理过程中进行的

## 为期五年的 PDex 出口时间过滤
<a name="davinci-data-export-temporal-filtering"></a>

对于所有 PDex 导出类型，根据资源上次更新时间 HealthLake 应用 5 年时间过滤器。时间过滤器适用于除以下核心归因资源类型之外的所有资源，这些资源无论使用年限如何，都将始终导出：
+ `Patient`
+ `Coverage`
+ `Organization`
+ `Practitioner`
+ `PractitionerRole`
+ `RelatedPerson`
+ `Location`
+ `Group`

这些管理和人口资源是免税的，因为它们为导出的数据提供了基本的背景信息。ATR 导出不受任何时间筛选。

## 示例请求
<a name="davinci-data-export-examples"></a>

以下示例说明如何启动不同导出类型的导出任务。

*ATR 导出*

```
GET https://healthlake.{region}.amazonaws.com/datastore/{datastoreId}/r4/Group/example-group/$davinci-data-export?_type=Group,Patient,Coverage,Practitioner,Organization&exportType=hl7.fhir.us.davinci-atr

POST https://healthlake.{region}.amazonaws.com/datastore/{datastoreId}/r4/Group/example-group/$davinci-data-export?_type=Group,Patient,Coverage,Practitioner,Organization&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"
    }
  }
}
```

*提供商访问导出并删除 ExplanationOfBenefit 财务数据*

```
GET https://healthlake.{region}.amazonaws.com/datastore/{datastoreId}/r4/Group/example-group/$davinci-data-export?_type=Patient,Observation,Condition,MedicationRequest,ExplanationOfBenefit&exportType=hl7.fhir.us.davinci-pdex&_includeEOB2xWoFinancial=true
```

*Payer-to-Payer 出口*

```
GET https://healthlake.{region}.amazonaws.com/datastore/{datastoreId}/r4/Group/example-group/$davinci-data-export?_type=Patient,Coverage,ExplanationOfBenefit,Condition,Procedure&exportType=hl7.fhir.us.davinci-pdex.p2p&_includeEOB2xWoFinancial=true
```

*导出特定患者的成员访问权限*

```
GET https://healthlake.{region}.amazonaws.com/datastore/{datastoreId}/r4/Group/example-group/$davinci-data-export?_type=Patient,Observation,Condition,ExplanationOfBenefit,MedicationRequest&exportType=hl7.fhir.us.davinci-pdex.member&patient=Patient/example-patient-id
```

## 示例响应
<a name="davinci-data-export-sample-response"></a>

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

## 资源关系
<a name="davinci-data-export-resource-relationships"></a>

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

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

### 资源来源
<a name="davinci-data-export-resource-sources"></a>


| 资源 | 来源位置 | 说明 | 
| --- | --- | --- | 
| Patient | Group.member.entity | 属于归因列表成员的患者 | 
| Coverage | Group.member.extension:coverageReference | 导致患者会员资格的承保范围 | 
| Organization | Group.member.extension:attributedProvider | 患者归因于的组织 | 
| Practitioner | Group.member.extension:attributedProvider | 患者归因于的个人从业者 | 
| PractitionerRole | Group.member.extension:attributedProvider | 患者所扮演的从业者角色 | 
| RelatedPerson | Coverage.subscriber | 报道的订阅者 | 
| Location | PractitionerRole.location | 与从业者角色相关的地点 | 
| Group | 输入端点 | 归因列表本身 | 

## Job 管理
<a name="davinci-data-export-job-management"></a>

查看 Job 状态  
`GET [base]/export/[job-id]`

取消作业  
`DELETE [base]/export/[job-id]`

### 作业生命周期
<a name="davinci-data-export-job-lifecycle"></a>
+ `SUBMITTED`-已接收 Job 并已排队
+ `IN_PROGRESS`-Job 正在处理中
+ `COMPLETED`-Job 成功完成，文件可供下载
+ `FAILED`-Job 遇到了错误

## 输出格式
<a name="davinci-data-export-output-format"></a>
+ *文件格式*：NDJSON（以换行符分隔的 JSON）
+ *文件组织*：每种资源类型都有单独的文件
+ *文件扩展名*：.ndjson
+ *位置*：指定的 S3 存储桶和路径

## 错误处理
<a name="davinci-data-export-error-handling"></a>

如果出现以下情况，该操作会返回 HTTP 400 错误请求： OperationOutcome 

授权错误  
中指定的 IAM 角色`DataAccessRoleArn`没有足够的权限来执行导出操作。有关所需的 S3 和 KMS 权限的完整列表，请参阅[为导出任务设置权限](getting-started-setting-up.md#setting-up-export-permissions)。

参数验证错误  
+ 该`patient`参数的格式未设置为 `Patient/id,Patient/id,...`
+ 一个或多个患者推荐无效或不属于指定群体
+ `exportType`参数值不是支持的导出类型
+ 该`_type`参数包含指定导出类型不支持的资源类型
+ `_type`参数缺少`hl7.fhir.us.davinci-atr`导出类型所需的资源类型 (`Group``Patient`、、`Coverage`)
+ `_includeEOB2xWoFinancial`参数值不是有效的布尔值

资源验证错误  
+ 数据存储中不存在指定的组资源
+ 指定的群组资源没有成员
+ 一个或多个小组成员引用数据存储中不存在的患者资源

## 安全和授权
<a name="davinci-data-export-security"></a>
+ 适用标准的 FHIR 授权机制
+ 数据访问角色必须具有 S3 和 KMS 操作所需的 IAM 权限。有关所需权限的完整列表，请参阅[为导出任务设置权限](getting-started-setting-up.md#setting-up-export-permissions)。

## 最佳实践
<a name="davinci-data-export-best-practices"></a>
+ *资源类型选择*：仅请求所需的资源类型，以最大限度地减少导出大小和处理时间
+ *基于时间的筛选*：使用`_since`参数进行增量导出
+ *患者筛选*：当您只需要特定成员的数据时，请使用该`patient`参数
+ *Job 监控*：定期检查大宗出口的任务状态
+ *错误处理*：为失败的作业实现正确的重试逻辑
+ *时间过滤器感知*：对于 PDex 导出，在选择资源类型时，请考虑使用 5 年时间过滤器
+ *删除财务数据*：`_includeEOB2xWoFinancial=true`当您需要不包含财务信息的索赔数据时使用
+ *配置文件管理*：确保资源具有适当的配置文件声明，在摄取之前根据目标配置文件进行验证，并使用配置文件版本控制导出行为

## 限制
<a name="davinci-data-export-limitations"></a>
+ `patient`参数中最多可以指定 500 名患者
+ 导出仅限于组级操作
+ 仅支持每种导出类型的预定义资源类型集
+ 输出始终采用 NDJSON 格式
+ PDex 出口仅限于 5 年的临床和索赔数据
+ 财务数据转换仅适用于 CARIN BB 2.x 配置文件 ExplanationOfBenefit 

## 其他资源
<a name="davinci-data-export-additional-resources"></a>
+ [达芬奇会员归因列表 IG](https://build.fhir.org/ig/HL7/davinci-atr/)
+ [Da Vinci Payer Data Exchange IG](https://hl7.org/fhir/us/davinci-pdex/)
+ [CARIN 消费者导向付款人 Data Exchange IG](https://build.fhir.org/ig/HL7/carin-bb/)
+ [美国核心实施指南](https://www.hl7.org/fhir/us/core/)
+ [FHIR 批量数据访问规范](https://hl7.org/fhir/uv/bulkdata/)