Skip to content

Commit e1169f9

Browse files
committed
markdown and editorial updates
1 parent 37f3fbb commit e1169f9

File tree

3 files changed

+28
-27
lines changed

3 files changed

+28
-27
lines changed

articles/healthcare-apis/fhir/overview.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -34,11 +34,11 @@ The healthcare industry is rapidly adopting [FHIR®](https://hl7.org/fhir) as th
3434

3535
### Securely manage health data in the cloud
3636

37-
The FHIR service in Azure Health Data Services makes FHIR data available to clients through a RESTful API. This API is an implementation of the HL7 FHIR API specification. As a managed PaaS offering in Azure, the FHIR service gives organizations a scalable and secure environment for the storage and exchange of Protected Health Information (PHI) in the native FHIR format.
37+
The FHIR service in Azure Health Data Services makes FHIR data available to clients through a RESTful API. This API is an implementation of the HL7 FHIR API specification. As a managed PaaS offering in Azure, the FHIR service gives organizations a scalable and secure environment for the storage and exchange of PHI in the native FHIR format.
3838

3939
### Free up resources to innovate
4040

41-
Although you can build and maintain your own FHIR server, with the FHIR service in Azure Health Data Services Microsoft handles setting up server components, ensuring all compliance requirements are met so you can focus on building innovative solutions.
41+
You can build and maintain your own FHIR server. However, with the FHIR service in Azure Health Data Services, Microsoft handles setting up server components, and ensuring all compliance requirements are met, so you can focus on building innovative solutions.
4242

4343
### Enable interoperability
4444

@@ -54,19 +54,19 @@ Because it belongs to the Azure family of services, the FHIR service protects yo
5454

5555
## Use cases for the FHIR service
5656

57-
FHIR servers are essential for interoperability of health data. The FHIR service is designed as a managed FHIR server with a RESTful API for connecting to a broad range of client systems and applications. Some of the key use cases for the FHIR service are:
57+
FHIR servers are essential for interoperability of health data. The FHIR service is designed as a managed FHIR server with a RESTful API for connecting to a broad range of client systems and applications. Some of the key use cases for the FHIR service are as follows.
5858

5959
- **Startup app development:** Customers developing a patient- or provider-centric app (mobile or web) can use the FHIR service as a fully managed backend for health data transactions. The FHIR service enables secure transfer of PHI. With SMART on FHIR, app developers can take advantage of the robust identities management in Microsoft Entra ID for authorization of FHIR RESTful API actions.
6060

61-
- **Healthcare ecosystems:** Although EHRs are the primary source of truth in many clinical settings, it's common for providers to have multiple databases that aren’t connected to each other (often because the data is stored in different formats). By using the FHIR service as a conversion layer between these systems, organizations can standardize data in the FHIR format. Ingesting and persisting in FHIR format enables health data querying and exchange across multiple disparate systems.
61+
- **Healthcare ecosystems:** Although EHRs are the primary source of truth in many clinical settings, it's common for providers to have multiple databases that aren’t connected to each other (often because the data is stored in different formats). Using the FHIR service as a conversion layer between these systems, organizations can standardize data in the FHIR format. Ingesting and persisting in FHIR format enables health data querying and exchange across multiple disparate systems.
6262

63-
- **Research:** Health researchers use the FHIR standard because it gives the community a shared data model and removes barriers to assembling large datasets for machine learning and analytics. With the data conversion and PHI deidentification capabilities in the FHIR service, researchers can prepare HIPAA-compliant data for secondary use before sending the data to Azure Machine Learning and analytics pipelines. The FHIR service's audit logging and alert mechanisms also play an important role in research workflows.
63+
- **Research:** Health researchers use the FHIR standard because it gives the community a shared data model and removes barriers to assembling large datasets for machine learning and analytics. With the data conversion and PHI de-identification capabilities in the FHIR service, researchers can prepare HIPAA-compliant data for secondary use before sending the data to Azure Machine Learning and analytics pipelines. The FHIR service's audit logging and alert mechanisms also play an important role in research workflows.
6464

6565
## FHIR platforms from Microsoft
6666

6767
FHIR capabilities from Microsoft are available in three configurations:
6868

69-
- The **FHIR service** is a managed platform as a service (PaaS) that operates as part of Azure Health Data Services. In addition to the FHIR service, Azure Health Data Services includes managed services for other types of health data, such as the DICOM service for medical imaging data and the MedTech service for medical IoT data. All services (FHIR service, DICOM service, and MedTech service) can be connected and administered within an Azure Health Data Services workspace.
69+
- The **FHIR service** is a managed PaaS that operates as part of Azure Health Data Services. In addition to the FHIR service, Azure Health Data Services includes managed services for other types of health data, such as the DICOM service for medical imaging data, and the MedTech service for medical IoT data. All services (FHIR service, DICOM service, and MedTech service) can be connected and administered within an Azure Health Data Services workspace.
7070

7171
- **Azure API for FHIR** is a managed FHIR server offered as a PaaS in Azure and is easily deployed in the Azure portal. Azure API for FHIR isn't part of Azure Health Data Services and lacks some of the features of the FHIR service.
7272

articles/healthcare-apis/fhir/patient-everything.md

Lines changed: 20 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ ms.author: kesheth
1212

1313
# Using Patient-everything in FHIR service
1414

15-
The [Patient-everything](https://www.hl7.org/fhir/patient-operation-everything.html) operation is used to provide a view of all resources related to a patient. This operation can be useful to give patients' access to their entire record or for a provider or other user to perform a bulk data download related to a patient. According to the Fast Healthcare Interoperability Resources (FHIR®) specification, Patient-everything returns all the information related to one or more patients described in the resource or context on which this operation is invoked. In the FHIR service in Azure Health Data Services(hereby called FHIR service), Patient-everything is available to pull data related to a specific patient.
15+
The [Patient-everything](https://www.hl7.org/fhir/patient-operation-everything.html) operation is used to provide a view of all resources related to a patient. This operation can be useful to give patients' access to their entire record, or for a provider or other user to perform a bulk data download related to a patient. According to the Fast Healthcare Interoperability Resources (FHIR®) specification, Patient-everything returns all the information related to one or more patients described in the resource or context on which this operation is invoked. In the FHIR® service in Azure Health Data Services, Patient-everything is available to pull data related to a specific patient.
1616

1717
## Use Patient-everything
1818
To call Patient-everything, use the following command:
@@ -24,27 +24,27 @@ GET {FHIRURL}/Patient/{ID}/$everything
2424
> [!Note]
2525
> You must specify an ID for a specific patient. If you need all data for all patients, see [$export](../data-transformation/export-data.md).
2626
27-
FHIR service validates that it can find the patient matching the provided patient ID. If a result is found, the response will be a bundle of type `searchset` with the following information:
27+
FHIR service validates that it can find the patient matching the provided patient ID. If a result is found, the response is a bundle of type `searchset` with the following information:
2828

2929
* [Patient resource](https://www.hl7.org/fhir/patient.html).
3030
* Resources that are directly referenced by the patient resource, except [link](https://www.hl7.org/fhir/patient-definitions.html#Patient.link) references that aren't of [see also](https://www.hl7.org/fhir/codesystem-link-type.html#content) or if the `seealso` link references a `RelatedPerson`.
31-
* If there are `seealso` link reference(s) to other patient(s), the results will include Patient-everything operation against the `seealso` patient(s) listed.
31+
* If there are `seealso` link references to other patients, the results include Patient-everything operation against the `seealso` patients listed.
3232
* Resources in the [Patient Compartment](https://www.hl7.org/fhir/compartmentdefinition-patient.html).
3333
* [Device resources](https://www.hl7.org/fhir/device.html) that reference the patient resource.
3434

3535
> [!Note]
36-
> If the patient has more than 100 devices linked to them, only 100 will be returned.
36+
> Up to the first 100 devices linked to a patient will be returned.
3737
3838

3939
## Patient-everything parameters
40-
FHIR service supports the following query parameters. All of these parameters are optional:
40+
FHIR service supports the following query parameters. All of these parameters are optional.
4141

4242
|Query parameter | Description|
4343
|-----------------------|------------|
4444
| \_type | Allows you to specify which types of resources will be included in the response. For example, \_type=Encounter would return only `Encounter` resources associated with the patient. |
4545
| \_since | Will return only resources that have been modified since the time provided. |
4646
| start | Specifying the start date will pull in resources where their clinical date is after the specified start date. If no start date is provided, all records before the end date are in scope. |
47-
| end | Specifying the end date will pull in resources where their clinical date is before the specified end date. If no end date is provided, all records after the start date are in scope. |
47+
| end | Specifying the end date pulls in resources where their clinical date is before the specified end date. If no end date is provided, all records after the start date are in scope. |
4848

4949
> [!Note]
5050
> This implementation of Patient-everything does not support the _count parameter.
@@ -53,7 +53,7 @@ FHIR service supports the following query parameters. All of these parameters ar
5353

5454
On a patient resource, there's an element called link, which links a patient to other patients or related persons. These linked patients help give a holistic view of the original patient. The link reference can be used when a patient is replacing another patient or when two patient resources have complementary information. One use case for links is when an ADT 38 or 39 HL7v2 message comes. It describes an update to a patient. This update can be stored as a reference between two patients in the link element.
5555

56-
The FHIR specification has a detailed overview of the different types of [patient links](https://www.hl7.org/fhir/valueset-link-type.html#expansion), but we've include a high-level summary:
56+
The FHIR specification has a detailed overview of the different types of [patient links](https://www.hl7.org/fhir/valueset-link-type.html#expansion), but here we include a high-level summary:
5757

5858
* [replaces](https://www.hl7.org/fhir/codesystem-link-type.html#link-type-replaces) - The Patient resource replaces a different Patient.
5959
* [refer](https://www.hl7.org/fhir/codesystem-link-type.html#link-type-refer) - Patient is valid, but it's not considered the main source of information. Points to another patient to retrieve additional information.
@@ -69,16 +69,16 @@ The Patient-everything operation in the FHIR service processes patient links in
6969
7070
Right now, [replaces](https://www.hl7.org/fhir/codesystem-link-type.html#link-type-replaces) and [refer](https://www.hl7.org/fhir/codesystem-link-type.html#link-type-refer) links are ignored by the Patient-everything operation, and the linked patient isn't returned in the bundle.
7171

72-
As described, [seealso](https://www.hl7.org/fhir/codesystem-link-type.html#link-type-seealso) links reference another patient that's considered equally valid to the original. After the Patient-everything operation is run, if the patient has `seealso` links to other patients, the operation runs Patient-everything on each `seealso` link. This means if a patient links to five other patients with a type `seealso` link, we'll run Patient-everything on each of those five patients.
72+
As described, [seealso](https://www.hl7.org/fhir/codesystem-link-type.html#link-type-seealso) links reference another patient that's considered equally valid to the original. After the Patient-everything operation is run, if the patient has `seealso` links to other patients, the operation runs Patient-everything on each `seealso` link. This means if a patient links to five other patients with a type `seealso` link, we run Patient-everything on each of those five patients.
7373

7474
> [!Note]
7575
> This is set up to only follow `seealso` links one layer deep. It doesn't process a `seealso` link's `seealso` links.
7676
7777
[![See also flow diagram.](media/patient-everything/see-also-flow.png)](media/patient-everything/see-also-flow.png#lightbox)
7878

79-
The final link type is [replaced-by](https://www.hl7.org/fhir/codesystem-link-type.html#link-type-replaced-by). In this case, the original patient resource is no longer being used and the `replaced-by` link points to the patient that should be used. This implementation of `Patient-everything` will include by default an operation outcome at the start of the bundle with a warning that the patient is no longer valid. This will also be the behavior when the `Prefer` header is set to `handling=lenient`.
79+
The final link type is [replaced-by](https://www.hl7.org/fhir/codesystem-link-type.html#link-type-replaced-by). In this case, the original patient resource is no longer being used and the `replaced-by` link points to the patient that should be used. This implementation of `Patient-everything` by default includes an operation outcome at the start of the bundle with a warning that the patient is no longer valid. This will also be the behavior when the `Prefer` header is set to `handling=lenient`.
8080

81-
In addition, you can set the `Prefer` header to `handling=strict` to throw an error instead. In this case, a return of error code 301 `MovedPermanently` indicates that the current patient is out of date and returns the ID for the correct patient that's included in the link. The `ContentLocation` header of the returned error will point to the correct and up-to-date request.
81+
In addition, you can set the `Prefer` header to `handling=strict` to throw an error instead. In this case, a return of error code 301 `MovedPermanently` indicates that the current patient is out of date and returns the ID for the correct patient that's included in the link. The `ContentLocation` header of the returned error points to the correct and up-to-date request.
8282

8383
> [!Note]
8484
> If a `replaced-by` link is present, `Prefer: handling=lenient` and results are returned asynchronously in multiple bundles, only an operation outcome is returned in one bundle.
@@ -87,36 +87,37 @@ In addition, you can set the `Prefer` header to `handling=strict` to throw an er
8787

8888
The Patient-everything operation returns results in phases:
8989

90-
1. Phase 1 returns the `Patient` resource itself in addition to any `generalPractitioner` and `managingOrganization` resources ir references.
90+
1. Phase 1 returns the `Patient` resource itself in addition to any `generalPractitioner` and `managingOrganization` resources it references.
9191
1. Phase 2 and 3 both return resources in the patient compartment. If the `start` or `end` query parameters are specified, Phase 2 returns resources from the compartment that can be filtered by their clinical date, and Phase 3 returns resources from the compartment that can't be filtered by their clinical date. If neither of these parameters are specified, Phase 2 is skipped and Phase 3 returns all patient-compartment resources.
92-
1. Phase 4 will return any devices that reference the patient.
92+
1. Phase 4 returns any devices that reference the patient.
9393

94-
Each phase will return results in a bundle. If the results span multiple pages, the next link in the bundle will point to the next page of results for that phase. After all results from a phase are returned, the next link in the bundle will point to the call to initiate the next phase.
94+
Each phase returns results in a bundle. If the results span multiple pages, the next link in the bundle will point to the next page of results for that phase. After all results from a phase are returned, the next link in the bundle will point to the call to initiate the next phase.
9595

9696
If the original patient has any `seealso` links, phases 1 through 4 will be repeated for each of those patients.
9797

9898
## Examples of Patient-everything
9999

100-
Here are some examples of using the Patient-everything operation. In addition to these examples, we have a [sample REST file](https://github.com/microsoft/fhir-server/blob/main/docs/rest/PatientEverythingLinks.http) that illustrates how the `seealso` and `replaced-by` behavior works.
100+
Following are some examples of using the Patient-everything operation. In addition to these examples, we have a [sample REST file](https://github.com/microsoft/fhir-server/blob/main/docs/rest/PatientEverythingLinks.http) that illustrates how the `seealso` and `replaced-by` behavior works.
101101

102-
To use Patient-everything to query a patient's "everything" between 2010 and 2020, use the following call:
102+
To use Patient-everything to query a patient's "everything" between 2010 and 2020, use the following call.
103103

104104
```json
105105
GET {FHIRURL}/Patient/{ID}/$everything?start=2010&end=2020
106106
```
107107

108-
To use Patient-everything to query a patient's Observation and Encounter, use the following call:
108+
To use Patient-everything to query a patient's Observation and Encounter, use the following call.
109+
109110
```json
110111
GET {FHIRURL}/Patient/{ID}/$everything?_type=Observation,Encounter
111112
```
112113

113-
To use Patient-everything to query a patient's "everything" since 2021-05-27T05:00:00Z, use the following call:
114+
To use Patient-everything to query a patient's "everything" since 2021-05-27T05:00:00Z, use the following call.
114115

115116
```json
116117
GET {FHIRURL}/Patient/{ID}/$everything?_since=2021-05-27T05:00:00Z
117118
```
118119

119-
If a patient is found for each of these calls, you'll get back a 200 response with a `Bundle` of the corresponding resources.
120+
If a patient is found for each of these calls, you'll get a 200 response with a `Bundle` of the corresponding resources.
120121

121122
## Next steps
122123

@@ -125,4 +126,4 @@ Now that you know how to use the Patient-everything operation, you can learn abo
125126
>[!div class="nextstepaction"]
126127
>[Overview of FHIR search](overview-of-search.md)
127128
128-
FHIR® is a registered trademark of [HL7](https://hl7.org/fhir/) and is used with the permission of HL7.
129+
[!INCLUDE [FHIR trademark statement](../includes/healthcare-apis-fhir-trademark.md)]

0 commit comments

Comments
 (0)