Da Vinci Clinical Data Exchange (CDex), published by HL7 International / Payer/Provider Information Exchange Work Group. This guide is not an authorized publication; it is the continuous build for version 2.1.0-preview built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/davinci-ecdx/ and changes regularly. See the Directory of published versions
Page standards status: Informative |
For Direct Query, the Data Consumer directly queries the Data Source for specific data using the standard FHIR RESTful search. The base FHIR specification and the Da Vinci HRex Implementation Guide document this interaction. Refer to the US Core 3.1.1 or US Core 6.1.0 Implementation guide for accessing the set of health data classes and data elements defined by the ONC United States Core Data for Interoperability (USCDI).
The sequence diagram in Figure 6 below outlines a successful interaction between the Data Consumer and Data Source to query and retrieve the requested data using a direct query:
In addition to using a patient business identifier such as an MRN or Member ID, the FHIR Patient.id is often a prerequisite to performing FHIR RESTful Direct Queries and other transactions described in this guide. However, there is no requirement that the requester knows the FHIR Patient.id in advance of the exchange. This section describes the recommended methods to determine the FHIR Patient.id on the server.
Performing the Patient Match operation by providing sufficient demographic information to match a single patient. CDex Data Source servers SHOULD support the patient match operation and declare it in their CapabilityStatement.
Search the Patient resource using a combination of identifiers known by the Data Consumer. For example, a Payer may use a member_id and patient demographics.
`Get /Patient?identifier=[member_id]&birthdate=[date]&name=[name]&gender=[gender]`
CDex Data Source servers SHALL support resolving logical identifiers for the Patient resource.
The following example transactions show scenarios of using direct query to get clinical data from a Data Source(HIT).
Payer A Seeks Insured Person/Patient B’s Active Conditions from Provider C to support a claims audit.
Preconditions and Assumptions:
Following the guidance in US Core, a search for all active conditions uses the combination of the patient and clinical-status search parameters:
GET [base]/Condition?patient=[FHIR id]&clinical-status=active,recurrance,remission
Request
GET [base]/Condition?patient=06e1f0dd-5fbe-4480-9bb4-6b54ec02d31b&clinical-status=active,recurrance,remission
Request Headers
Accept: application/fhir+json
Content-Type: application/fhir+json
...(other headers)
Response Headers
HTTP/1.1 200 OK
Server: nginx/1.14.0 (Ubuntu)
Date: Fri, 23 Oct 2020 04:54:56 GMT
Content-Type: application/fhir+json;charset=utf-8
...(other headers)
Response Body
{
"resourceType" : "Bundle",
"id" : "cdex-searchbundle-scenario1-example",
"meta" : {
"extension" : [{
"url" : "http://hl7.org/fhir/StructureDefinition/instance-name",
"valueString" : "Direct Query for Patient's Active Conditions"
},
{
"url" : "http://hl7.org/fhir/StructureDefinition/instance-description",
"valueMarkdown" : "Bundle example used in direct query transactions [scenario 1](direct-query.html#scenario-1) and in task based transactions - for example, [scenario 1a](task-based-approach.html#scenario-1)."
}],
"lastUpdated" : "2020-10-23T04:54:56.048+00:00"
},
"type" : "searchset",
"total" : 1,
"link" : [{
"relation" : "self",
"url" : "http://hapi.fhir.org/baseR4/Condition?patient=06e1f0dd-5fbe-4480-9bb4-6b54ec02d31b&clinical-status=active,recurrance,remission"
}],
"entry" : [{
"fullUrl" : "http://hapi.fhir.org/baseR4/Condition/4ac41715-fcbd-421c-8796-9b2c9706dd3f",
"resource" : {
"resourceType" : "Condition",
"id" : "4ac41715-fcbd-421c-8796-9b2c9706dd3f",
"meta" : {
"versionId" : "10",
"lastUpdated" : "2020-04-28T20:28:00.008+00:00",
"source" : "#cabiJIK51sD2iz4N",
"profile" : ["http://hl7.org/fhir/us/core/StructureDefinition/us-core-condition|3.1.1",
"http://hl7.org/fhir/us/core/StructureDefinition/us-core-condition-encounter-diagnosis|6.1.0"]
},
"text" : {
"status" : "generated",
"div" : "<div xmlns=\"http://www.w3.org/1999/xhtml\"><a name=\"Condition_4ac41715-fcbd-421c-8796-9b2c9706dd3f\"> </a><p><b>Generated Narrative: Condition</b><a name=\"4ac41715-fcbd-421c-8796-9b2c9706dd3f\"> </a><a name=\"hc4ac41715-fcbd-421c-8796-9b2c9706dd3f\"> </a></p><div style=\"display: inline-block; background-color: #d9e0e7; padding: 6px; margin: 4px; border: 1px solid #8da1b4; border-radius: 5px; line-height: 60%\"><p style=\"margin-bottom: 0px\">ResourceCondition "4ac41715-fcbd-421c-8796-9b2c9706dd3f" Version "10" Updated "2020-04-28 20:28:00+0000" </p><p style=\"margin-bottom: 0px\">Information Source: #cabiJIK51sD2iz4N!</p><p style=\"margin-bottom: 0px\">Profiles: <a href=\"http://hl7.org/fhir/us/core/STU3.1.1/StructureDefinition-us-core-condition.html\">US Core Condition Profile (version 3.1.1)</a>, <a href=\"http://hl7.org/fhir/us/core/STU6.1/StructureDefinition-us-core-condition-encounter-diagnosis.html\">US Core Condition Encounter Diagnosis Profile (version 6.1.0)</a></p></div><p><b>clinicalStatus</b>: Active <span style=\"background: LightGoldenRodYellow; margin: 4px; border: 1px solid khaki\"> (<a href=\"http://terminology.hl7.org/5.5.0/CodeSystem-condition-clinical.html\">Condition Clinical Status Codes</a>#active)</span></p><p><b>verificationStatus</b>: Confirmed <span style=\"background: LightGoldenRodYellow; margin: 4px; border: 1px solid khaki\"> (<a href=\"http://terminology.hl7.org/5.5.0/CodeSystem-condition-ver-status.html\">ConditionVerificationStatus</a>#confirmed)</span></p><p><b>category</b>: Encounter Diagnosis <span style=\"background: LightGoldenRodYellow; margin: 4px; border: 1px solid khaki\"> (<a href=\"http://terminology.hl7.org/5.5.0/CodeSystem-condition-category.html\">Condition Category Codes</a>#encounter-diagnosis)</span></p><p><b>code</b>: Hammer Toe <span style=\"background: LightGoldenRodYellow; margin: 4px; border: 1px solid khaki\"> (<a href=\"https://browser.ihtsdotools.org/\">SNOWMED CT</a>#122481008 "Hammer toe (disorder)")</span></p><p><b>subject</b>: <a href=\"https://simplifier.net/resolve?scope=hl7.fhir.us.core.3.1.1@3.1.1&canonical=http://hl7.org/fhir/us/core/Patient/06e1f0dd-5fbe-4480-9bb4-6b54ec02d31b\">Patient/06e1f0dd-5fbe-4480-9bb4-6b54ec02d31b</a></p><p><b>encounter</b>: <a href=\"https://simplifier.net/resolve?scope=hl7.fhir.us.core.3.1.1@3.1.1&canonical=http://hl7.org/fhir/us/core/Encounter/5fe62cd5-bfcf-4d3b-a1e9-80d6f75d6f82\">Encounter/5fe62cd5-bfcf-4d3b-a1e9-80d6f75d6f82</a></p><p><b>onset</b>: 2018-10-21 21:22:15-0700</p><p><b>recordedDate</b>: 2018-10-21 21:22:15-0700</p></div>"
},
"clinicalStatus" : {
"coding" : [{
"system" : "http://terminology.hl7.org/CodeSystem/condition-clinical",
"code" : "active"
}]
},
"verificationStatus" : {
"coding" : [{
"system" : "http://terminology.hl7.org/CodeSystem/condition-ver-status",
"code" : "confirmed"
}]
},
"category" : [{
"coding" : [{
"system" : "http://terminology.hl7.org/CodeSystem/condition-category",
"code" : "encounter-diagnosis",
"display" : "Encounter Diagnosis"
}]
}],
"code" : {
"coding" : [{
"system" : "http://snomed.info/sct",
"code" : "122481008",
"display" : "Hammer toe (disorder)"
}],
"text" : "Hammer Toe"
},
"subject" : {
"reference" : "Patient/06e1f0dd-5fbe-4480-9bb4-6b54ec02d31b"
},
"encounter" : {
"reference" : "Encounter/5fe62cd5-bfcf-4d3b-a1e9-80d6f75d6f82"
},
"onsetDateTime" : "2018-10-21T21:22:15-07:00",
"recordedDate" : "2018-10-21T21:22:15-07:00"
},
"search" : {
"mode" : "match"
}
}]
}
Payer A Seeks Insured Person/Patient B’s glycated hemoglobin (HbA1c) test results after 2020-01-01 from Provider C for Quality reporting requirements and quality care scoring.
Preconditions and Assumptions:
Following the guidance in US Core searches for all HbA1c test results by a date range using the combination of the patient and code and date search parameters:
GET [base]/Observation?patient=[FHIR id]&code=[code]&date=gt[date]
Request
GET [base]/Observation?patient=06e1f0dd-5fbe-4480-9bb4-6b54ec02d31b&code=4548-4&date=gt2020-01-01
Request Headers
Accept: application/fhir+json
Content-Type: application/fhir+json
...(other headers)
Response Headers
HTTP/1.1 200 OK
Server: nginx/1.14.0 (Ubuntu)
Date: Fri, 23 Oct 2020 18:22:45 GMT
Content-Type: application/fhir+json;charset=utf-8
...(other headers)
Response Body
{
"resourceType" : "Bundle",
"id" : "cdex-searchbundle-scenario2-example",
"meta" : {
"extension" : [{
"url" : "http://hl7.org/fhir/StructureDefinition/instance-name",
"valueString" : "Direct Query for Patient's HbA1c Test Results"
},
{
"url" : "http://hl7.org/fhir/StructureDefinition/instance-description",
"valueMarkdown" : "Bundle example used in direct query [scenario 2](direct-query.html#scenario-2). Payer Seeks Insured Person/Patient HbA1c Test Results from Provider for quality reporting requirements and quality care scoring."
}],
"lastUpdated" : "2020-10-23T18:22:45.274+00:00"
},
"type" : "searchset",
"total" : 4,
"link" : [{
"relation" : "self",
"url" : "http://hapi.fhir.org/baseR4/Observation?code=4548-4&date=gt2020-01-01&patient=06e1f0dd-5fbe-4480-9bb4-6b54ec02d31b"
}],
"entry" : [{
"fullUrl" : "http://hapi.fhir.org/baseR4/Observation/cdex-2020-01-23-hba1c-example",
"resource" : {
"resourceType" : "Observation",
"id" : "cdex-2020-01-23-hba1c-example",
"meta" : {
"versionId" : "1",
"lastUpdated" : "2020-10-23T18:18:25.154+00:00",
"source" : "#ObC36PK40pQM6y5M",
"profile" : ["http://hl7.org/fhir/us/core/StructureDefinition/us-core-observation-lab|3.1.1",
"http://hl7.org/fhir/us/core/StructureDefinition/us-core-observation-lab|6.1.0"]
},
"text" : {
"status" : "generated",
"div" : "<div xmlns=\"http://www.w3.org/1999/xhtml\"><a name=\"Observation_cdex-2020-01-23-hba1c-example\"> </a><p><b>Generated Narrative: Observation</b><a name=\"cdex-2020-01-23-hba1c-example\"> </a><a name=\"hccdex-2020-01-23-hba1c-example\"> </a></p><div style=\"display: inline-block; background-color: #d9e0e7; padding: 6px; margin: 4px; border: 1px solid #8da1b4; border-radius: 5px; line-height: 60%\"><p style=\"margin-bottom: 0px\">ResourceObservation "cdex-2020-01-23-hba1c-example" Version "1" Updated "2020-10-23 18:18:25+0000" </p><p style=\"margin-bottom: 0px\">Information Source: #ObC36PK40pQM6y5M!</p><p style=\"margin-bottom: 0px\">Profiles: <a href=\"http://hl7.org/fhir/us/core/STU3.1.1/StructureDefinition-us-core-observation-lab.html\">US Core Laboratory Result Observation Profile (version 3.1.1)</a>, <a href=\"http://hl7.org/fhir/us/core/STU6.1/StructureDefinition-us-core-observation-lab.html\">US Core Laboratory Result Observation Profile (version 6.1.0)</a></p></div><p><b>status</b>: final</p><p><b>category</b>: Laboratory <span style=\"background: LightGoldenRodYellow; margin: 4px; border: 1px solid khaki\"> (<a href=\"http://terminology.hl7.org/5.5.0/CodeSystem-observation-category.html\">Observation Category Codes</a>#laboratory)</span></p><p><b>code</b>: glycated hemoglobin (HbA1c) <span style=\"background: LightGoldenRodYellow; margin: 4px; border: 1px solid khaki\"> (<a href=\"https://loinc.org/\">LOINC</a>#4548-4 "Hemoglobin A1c/Hemoglobin.total in Blood"; <a href=\"http://terminology.hl7.org/5.3.0/CodeSystem-CPT.html\">Current Procedural Terminology (CPT®)</a>#83036 "Hemoglobin; glycosylated (A1c)"; lab-results#HBA1C "Glycated hemoglobin (HbA1c)")</span></p><p><b>subject</b>: <a href=\"https://simplifier.net/resolve?scope=hl7.fhir.us.core.3.1.1@3.1.1&canonical=http://hl7.org/fhir/us/core/Patient/06e1f0dd-5fbe-4480-9bb4-6b54ec02d31b\">Patient/06e1f0dd-5fbe-4480-9bb4-6b54ec02d31b: Elden718 Halvorson124</a></p><p><b>effective</b>: 2020-01-23 10:21:08-0700</p><p><b>performer</b>: <a href=\"https://simplifier.net/resolve?scope=hl7.fhir.us.core.3.1.1@3.1.1&canonical=http://hl7.org/fhir/us/core/Practitioner/min\">Practitioner/min: Dr. John Doe</a></p><p><b>value</b>: 6 %<span style=\"background: LightGoldenRodYellow\"> (Details: UCUM code % = '%')</span></p></div>"
},
"status" : "final",
"category" : [{
"coding" : [{
"system" : "http://terminology.hl7.org/CodeSystem/observation-category",
"code" : "laboratory",
"display" : "Laboratory"
}],
"text" : "Laboratory"
}],
"code" : {
"coding" : [{
"system" : "http://loinc.org",
"code" : "4548-4",
"display" : "Hemoglobin A1c/Hemoglobin.total in Blood"
},
{
"system" : "http://www.ama-assn.org/go/cpt",
"code" : "83036",
"display" : "Hemoglobin; glycosylated (A1c)"
},
{
"system" : "http://example.org/lab-results",
"code" : "HBA1C",
"display" : "Glycated hemoglobin (HbA1c)"
}],
"text" : "glycated hemoglobin (HbA1c)"
},
"subject" : {
"reference" : "Patient/06e1f0dd-5fbe-4480-9bb4-6b54ec02d31b",
"display" : "Elden718 Halvorson124"
},
"effectiveDateTime" : "2020-01-23T10:21:08-07:00",
"performer" : [{
"reference" : "Practitioner/min",
"display" : "Dr. John Doe"
}],
"valueQuantity" : {
"value" : 6,
"unit" : "%",
"system" : "http://unitsofmeasure.org",
"code" : "%"
}
},
"search" : {
"mode" : "match"
}
},
{
"fullUrl" : "http://hapi.fhir.org/baseR4/Observation/cdex-2020-04-23-hba1c-example",
"resource" : {
"resourceType" : "Observation",
"id" : "cdex-2020-04-23-hba1c-example",
"meta" : {
"versionId" : "1",
"lastUpdated" : "2020-10-23T18:17:49.885+00:00",
"source" : "#n7aoEe76sAQUBlns",
"profile" : ["http://hl7.org/fhir/us/core/StructureDefinition/us-core-observation-lab|3.1.1",
"http://hl7.org/fhir/us/core/StructureDefinition/us-core-observation-lab|6.1.0"]
},
"text" : {
"status" : "generated",
"div" : "<div xmlns=\"http://www.w3.org/1999/xhtml\"><a name=\"Observation_cdex-2020-04-23-hba1c-example\"> </a><p><b>Generated Narrative: Observation</b><a name=\"cdex-2020-04-23-hba1c-example\"> </a><a name=\"hccdex-2020-04-23-hba1c-example\"> </a></p><div style=\"display: inline-block; background-color: #d9e0e7; padding: 6px; margin: 4px; border: 1px solid #8da1b4; border-radius: 5px; line-height: 60%\"><p style=\"margin-bottom: 0px\">ResourceObservation "cdex-2020-04-23-hba1c-example" Version "1" Updated "2020-10-23 18:17:49+0000" </p><p style=\"margin-bottom: 0px\">Information Source: #n7aoEe76sAQUBlns!</p><p style=\"margin-bottom: 0px\">Profiles: <a href=\"http://hl7.org/fhir/us/core/STU3.1.1/StructureDefinition-us-core-observation-lab.html\">US Core Laboratory Result Observation Profile (version 3.1.1)</a>, <a href=\"http://hl7.org/fhir/us/core/STU6.1/StructureDefinition-us-core-observation-lab.html\">US Core Laboratory Result Observation Profile (version 6.1.0)</a></p></div><p><b>status</b>: final</p><p><b>category</b>: Laboratory <span style=\"background: LightGoldenRodYellow; margin: 4px; border: 1px solid khaki\"> (<a href=\"http://terminology.hl7.org/5.5.0/CodeSystem-observation-category.html\">Observation Category Codes</a>#laboratory)</span></p><p><b>code</b>: glycated hemoglobin (HbA1c) <span style=\"background: LightGoldenRodYellow; margin: 4px; border: 1px solid khaki\"> (<a href=\"https://loinc.org/\">LOINC</a>#4548-4 "Hemoglobin A1c/Hemoglobin.total in Blood"; <a href=\"http://terminology.hl7.org/5.3.0/CodeSystem-CPT.html\">Current Procedural Terminology (CPT®)</a>#83036 "Hemoglobin; glycosylated (A1c)"; lab-results#HBA1C "Glycated hemoglobin (HbA1c)")</span></p><p><b>subject</b>: <a href=\"https://simplifier.net/resolve?scope=hl7.fhir.us.core.3.1.1@3.1.1&canonical=http://hl7.org/fhir/us/core/Patient/06e1f0dd-5fbe-4480-9bb4-6b54ec02d31b\">Patient/06e1f0dd-5fbe-4480-9bb4-6b54ec02d31b: Elden718 Halvorson124</a></p><p><b>effective</b>: 2020-04-23 10:21:08-0700</p><p><b>performer</b>: <a href=\"https://simplifier.net/resolve?scope=hl7.fhir.us.core.3.1.1@3.1.1&canonical=http://hl7.org/fhir/us/core/Practitioner/min\">Practitioner/min: Dr. John Doe</a></p><p><b>value</b>: 7.2 %<span style=\"background: LightGoldenRodYellow\"> (Details: UCUM code % = '%')</span></p></div>"
},
"status" : "final",
"category" : [{
"coding" : [{
"system" : "http://terminology.hl7.org/CodeSystem/observation-category",
"code" : "laboratory",
"display" : "Laboratory"
}],
"text" : "Laboratory"
}],
"code" : {
"coding" : [{
"system" : "http://loinc.org",
"code" : "4548-4",
"display" : "Hemoglobin A1c/Hemoglobin.total in Blood"
},
{
"system" : "http://www.ama-assn.org/go/cpt",
"code" : "83036",
"display" : "Hemoglobin; glycosylated (A1c)"
},
{
"system" : "http://example.org/lab-results",
"code" : "HBA1C",
"display" : "Glycated hemoglobin (HbA1c)"
}],
"text" : "glycated hemoglobin (HbA1c)"
},
"subject" : {
"reference" : "Patient/06e1f0dd-5fbe-4480-9bb4-6b54ec02d31b",
"display" : "Elden718 Halvorson124"
},
"effectiveDateTime" : "2020-04-23T10:21:08-07:00",
"performer" : [{
"reference" : "Practitioner/min",
"display" : "Dr. John Doe"
}],
"valueQuantity" : {
"value" : 7.2,
"unit" : "%",
"system" : "http://unitsofmeasure.org",
"code" : "%"
}
},
"search" : {
"mode" : "match"
}
},
{
"fullUrl" : "http://hapi.fhir.org/baseR4/Observation/cdex-2020-10-23-hba1c-example",
"resource" : {
"resourceType" : "Observation",
"id" : "cdex-2020-10-23-hba1c-example",
"meta" : {
"versionId" : "1",
"lastUpdated" : "2020-10-23T18:16:54.549+00:00",
"source" : "#fuIEQP7SJ9NfAlPN",
"profile" : ["http://hl7.org/fhir/us/core/StructureDefinition/us-core-observation-lab|3.1.1",
"http://hl7.org/fhir/us/core/StructureDefinition/us-core-observation-lab|6.1.0"]
},
"text" : {
"status" : "generated",
"div" : "<div xmlns=\"http://www.w3.org/1999/xhtml\"><a name=\"Observation_cdex-2020-10-23-hba1c-example\"> </a><p><b>Generated Narrative: Observation</b><a name=\"cdex-2020-10-23-hba1c-example\"> </a><a name=\"hccdex-2020-10-23-hba1c-example\"> </a></p><div style=\"display: inline-block; background-color: #d9e0e7; padding: 6px; margin: 4px; border: 1px solid #8da1b4; border-radius: 5px; line-height: 60%\"><p style=\"margin-bottom: 0px\">ResourceObservation "cdex-2020-10-23-hba1c-example" Version "1" Updated "2020-10-23 18:16:54+0000" </p><p style=\"margin-bottom: 0px\">Information Source: #fuIEQP7SJ9NfAlPN!</p><p style=\"margin-bottom: 0px\">Profiles: <a href=\"http://hl7.org/fhir/us/core/STU3.1.1/StructureDefinition-us-core-observation-lab.html\">US Core Laboratory Result Observation Profile (version 3.1.1)</a>, <a href=\"http://hl7.org/fhir/us/core/STU6.1/StructureDefinition-us-core-observation-lab.html\">US Core Laboratory Result Observation Profile (version 6.1.0)</a></p></div><p><b>status</b>: final</p><p><b>category</b>: Laboratory <span style=\"background: LightGoldenRodYellow; margin: 4px; border: 1px solid khaki\"> (<a href=\"http://terminology.hl7.org/5.5.0/CodeSystem-observation-category.html\">Observation Category Codes</a>#laboratory)</span></p><p><b>code</b>: glycated hemoglobin (HbA1c) <span style=\"background: LightGoldenRodYellow; margin: 4px; border: 1px solid khaki\"> (<a href=\"https://loinc.org/\">LOINC</a>#4548-4 "Hemoglobin A1c/Hemoglobin.total in Blood"; <a href=\"http://terminology.hl7.org/5.3.0/CodeSystem-CPT.html\">Current Procedural Terminology (CPT®)</a>#83036 "Hemoglobin; glycosylated (A1c)"; lab-results#HBA1C "Glycated hemoglobin (HbA1c)")</span></p><p><b>subject</b>: <a href=\"https://simplifier.net/resolve?scope=hl7.fhir.us.core.3.1.1@3.1.1&canonical=http://hl7.org/fhir/us/core/Patient/06e1f0dd-5fbe-4480-9bb4-6b54ec02d31b\">Patient/06e1f0dd-5fbe-4480-9bb4-6b54ec02d31b: Elden718 Halvorson124</a></p><p><b>effective</b>: 2020-10-23 10:21:08-0700</p><p><b>performer</b>: <a href=\"https://simplifier.net/resolve?scope=hl7.fhir.us.core.3.1.1@3.1.1&canonical=http://hl7.org/fhir/us/core/Practitioner/min\">Practitioner/min: Dr. John Doe</a></p><p><b>value</b>: 7 %<span style=\"background: LightGoldenRodYellow\"> (Details: UCUM code % = '%')</span></p></div>"
},
"status" : "final",
"category" : [{
"coding" : [{
"system" : "http://terminology.hl7.org/CodeSystem/observation-category",
"code" : "laboratory",
"display" : "Laboratory"
}],
"text" : "Laboratory"
}],
"code" : {
"coding" : [{
"system" : "http://loinc.org",
"code" : "4548-4",
"display" : "Hemoglobin A1c/Hemoglobin.total in Blood"
},
{
"system" : "http://www.ama-assn.org/go/cpt",
"code" : "83036",
"display" : "Hemoglobin; glycosylated (A1c)"
},
{
"system" : "http://example.org/lab-results",
"code" : "HBA1C",
"display" : "Glycated hemoglobin (HbA1c)"
}],
"text" : "glycated hemoglobin (HbA1c)"
},
"subject" : {
"reference" : "Patient/06e1f0dd-5fbe-4480-9bb4-6b54ec02d31b",
"display" : "Elden718 Halvorson124"
},
"effectiveDateTime" : "2020-10-23T10:21:08-07:00",
"performer" : [{
"reference" : "Practitioner/min",
"display" : "Dr. John Doe"
}],
"valueQuantity" : {
"value" : 7,
"unit" : "%",
"system" : "http://unitsofmeasure.org",
"code" : "%"
}
},
"search" : {
"mode" : "match"
}
},
{
"fullUrl" : "http://hapi.fhir.org/baseR4/Observation/cdex-2020-07-23-hba1c-example",
"resource" : {
"resourceType" : "Observation",
"id" : "cdex-2020-07-23-hba1c-example",
"meta" : {
"versionId" : "1",
"lastUpdated" : "2020-10-23T18:16:17.687+00:00",
"source" : "#X2hXINwPYymTmEJc",
"profile" : ["http://hl7.org/fhir/us/core/StructureDefinition/us-core-observation-lab|3.1.1",
"http://hl7.org/fhir/us/core/StructureDefinition/us-core-observation-lab|6.1.0"]
},
"text" : {
"status" : "generated",
"div" : "<div xmlns=\"http://www.w3.org/1999/xhtml\"><a name=\"Observation_cdex-2020-07-23-hba1c-example\"> </a><p><b>Generated Narrative: Observation</b><a name=\"cdex-2020-07-23-hba1c-example\"> </a><a name=\"hccdex-2020-07-23-hba1c-example\"> </a></p><div style=\"display: inline-block; background-color: #d9e0e7; padding: 6px; margin: 4px; border: 1px solid #8da1b4; border-radius: 5px; line-height: 60%\"><p style=\"margin-bottom: 0px\">ResourceObservation "cdex-2020-07-23-hba1c-example" Version "1" Updated "2020-10-23 18:16:17+0000" </p><p style=\"margin-bottom: 0px\">Information Source: #X2hXINwPYymTmEJc!</p><p style=\"margin-bottom: 0px\">Profiles: <a href=\"http://hl7.org/fhir/us/core/STU3.1.1/StructureDefinition-us-core-observation-lab.html\">US Core Laboratory Result Observation Profile (version 3.1.1)</a>, <a href=\"http://hl7.org/fhir/us/core/STU6.1/StructureDefinition-us-core-observation-lab.html\">US Core Laboratory Result Observation Profile (version 6.1.0)</a></p></div><p><b>status</b>: final</p><p><b>category</b>: Laboratory <span style=\"background: LightGoldenRodYellow; margin: 4px; border: 1px solid khaki\"> (<a href=\"http://terminology.hl7.org/5.5.0/CodeSystem-observation-category.html\">Observation Category Codes</a>#laboratory)</span></p><p><b>code</b>: glycated hemoglobin (HbA1c) <span style=\"background: LightGoldenRodYellow; margin: 4px; border: 1px solid khaki\"> (<a href=\"https://loinc.org/\">LOINC</a>#4548-4 "Hemoglobin A1c/Hemoglobin.total in Blood"; <a href=\"http://terminology.hl7.org/5.3.0/CodeSystem-CPT.html\">Current Procedural Terminology (CPT®)</a>#83036 "Hemoglobin; glycosylated (A1c)"; lab-results#HBA1C "Glycated hemoglobin (HbA1c)")</span></p><p><b>subject</b>: <a href=\"https://simplifier.net/resolve?scope=hl7.fhir.us.core.3.1.1@3.1.1&canonical=http://hl7.org/fhir/us/core/Patient/06e1f0dd-5fbe-4480-9bb4-6b54ec02d31b\">Patient/06e1f0dd-5fbe-4480-9bb4-6b54ec02d31b: Elden718 Halvorson124</a></p><p><b>effective</b>: 2020-07-23 10:21:08-0700</p><p><b>performer</b>: <a href=\"https://simplifier.net/resolve?scope=hl7.fhir.us.core.3.1.1@3.1.1&canonical=http://hl7.org/fhir/us/core/Practitioner/min\">Practitioner/min: Dr. John Doe</a></p><p><b>value</b>: 7 %<span style=\"background: LightGoldenRodYellow\"> (Details: UCUM code % = '%')</span></p></div>"
},
"status" : "final",
"category" : [{
"coding" : [{
"system" : "http://terminology.hl7.org/CodeSystem/observation-category",
"code" : "laboratory",
"display" : "Laboratory"
}],
"text" : "Laboratory"
}],
"code" : {
"coding" : [{
"system" : "http://loinc.org",
"code" : "4548-4",
"display" : "Hemoglobin A1c/Hemoglobin.total in Blood"
},
{
"system" : "http://www.ama-assn.org/go/cpt",
"code" : "83036",
"display" : "Hemoglobin; glycosylated (A1c)"
},
{
"system" : "http://example.org/lab-results",
"code" : "HBA1C",
"display" : "Glycated hemoglobin (HbA1c)"
}],
"text" : "glycated hemoglobin (HbA1c)"
},
"subject" : {
"reference" : "Patient/06e1f0dd-5fbe-4480-9bb4-6b54ec02d31b",
"display" : "Elden718 Halvorson124"
},
"effectiveDateTime" : "2020-07-23T10:21:08-07:00",
"performer" : [{
"reference" : "Practitioner/min",
"display" : "Dr. John Doe"
}],
"valueQuantity" : {
"value" : 7,
"unit" : "%",
"system" : "http://unitsofmeasure.org",
"code" : "%"
}
},
"search" : {
"mode" : "match"
}
}]
}
Payer A Seeks Insured Person/Patient B’s latest Progress notes from Provider C to support a claim submission.
Preconditions and Assumptions:
_search
and _count
(if this is not the case, then the Payer can search using the date parameter and select the most recent Progress notes for the query results.)Getting the latest Progress note is typically a two-step process:
Following the US Core Clinical Notes Guidance section, the Payer searches for the Progress note C-CDA documents using the combination of the patient and type search parameters. In addition, the combination of _sort
and _count
is used to return only the latest resource that meets particular criteria. For example, with _sort=-period
(sort by the date
parameter in descending order) and _count=1
, the query returns the most current matching resource.
GET [base]/DocumentReference?patient=[FHIR id]&type=[type-code]&_sort=-period&_count=1
The DocumentReference.content.attachment.url
element references the actual CCDA document, and the Payer fetches it using a RESTful GET.
GET [base]/[url]
Step 1 - Search for DocumentReference
Request
GET [base]/DocumentReference?patient=06e1f0dd-5fbe-4480-9bb4-6b54ec02d31b&type=34117-2&_sort=-period&_count=1`
Request Headers
Accept: application/fhir+json
Content-Type: application/fhir+json
...(other headers)
Response Headers
HTTP/1.1 200 OK
Server: nginx/1.14.0 (Ubuntu)
Date: Fri, 23 Oct 2020 18:22:45 GMT
Content-Type: application/fhir+json;charset=utf-8
...(other headers)
Response Body
{
"resourceType" : "Bundle",
"id" : "cdex-searchbundle-scenario3-example",
"meta" : {
"extension" : [{
"url" : "http://hl7.org/fhir/StructureDefinition/instance-name",
"valueString" : "Direct Query for Patient's Progress Notes"
},
{
"url" : "http://hl7.org/fhir/StructureDefinition/instance-description",
"valueMarkdown" : "Bundle example used in direct query [scenario 3](direct-query.html#scenario-3). Payer Seeks Insured Person/Patient Progress Notes from Provider to support a claim submission."
}],
"lastUpdated" : "2020-10-23T20:29:25.663+00:00"
},
"type" : "searchset",
"total" : 1,
"link" : [{
"relation" : "self",
"url" : "http://hapi.fhir.org/baseR4/DocumentReference?_count=1&_sort=-period&patient=06e1f0dd-5fbe-4480-9bb4-6b54ec02d31b&type=34117-2"
}],
"entry" : [{
"fullUrl" : "http://hapi.fhir.org/baseR4/DocumentReference/cdex-HP-example1",
"resource" : {
"resourceType" : "DocumentReference",
"id" : "cdex-HP-example1",
"meta" : {
"versionId" : "1",
"lastUpdated" : "2020-10-23T20:27:18.976+00:00",
"source" : "#XOrE2IwfLwl5C1RV",
"profile" : ["http://hl7.org/fhir/us/core/StructureDefinition/us-core-documentreference"]
},
"text" : {
"status" : "generated",
"div" : "<div xmlns=\"http://www.w3.org/1999/xhtml\"><a name=\"DocumentReference_cdex-HP-example1\"> </a><p><b>Generated Narrative: DocumentReference</b><a name=\"cdex-HP-example1\"> </a><a name=\"hccdex-HP-example1\"> </a></p><div style=\"display: inline-block; background-color: #d9e0e7; padding: 6px; margin: 4px; border: 1px solid #8da1b4; border-radius: 5px; line-height: 60%\"><p style=\"margin-bottom: 0px\">ResourceDocumentReference "cdex-HP-example1" Version "1" Updated "2020-10-23 20:27:18+0000" </p><p style=\"margin-bottom: 0px\">Information Source: #XOrE2IwfLwl5C1RV!</p><p style=\"margin-bottom: 0px\">Profile: <a href=\"http://hl7.org/fhir/us/core/STU6.1/StructureDefinition-us-core-documentreference.html\">US Core DocumentReference Profile</a></p></div><p><b>identifier</b>: <a href=\"http://terminology.hl7.org/5.3.0/NamingSystem-uri.html\" title=\"As defined by RFC 3986 (http://www.ietf.org/rfc/rfc3986.txt)(with many schemes defined in many RFCs). For OIDs and UUIDs, use the URN form (urn:oid:(note: lowercase) and urn:uuid:). See http://www.ietf.org/rfc/rfc3001.txt and http://www.ietf.org/rfc/rfc4122.txt \r\n\r\nThis oid is used as an identifier II.root to indicate the the extension is an absolute URI (technically, an IRI). Typically, this is used for OIDs and GUIDs. Note that when this OID is used with OIDs and GUIDs, the II.extension should start with urn:oid or urn:uuid: \r\n\r\nNote that this OID is created to aid with interconversion between CDA and FHIR - FHIR uses urn:ietf:rfc:3986 as equivalent to this OID. URIs as identifiers appear more commonly in FHIR.\r\n\r\nThis OID may also be used in CD.codeSystem.\">Uniform Resource Identifier (URI)</a>/urn:oid:2.16.840.1.113883.19.5.99999.2</p><p><b>status</b>: current</p><p><b>type</b>: History and physical note <span style=\"background: LightGoldenRodYellow; margin: 4px; border: 1px solid khaki\"> (<a href=\"https://loinc.org/\">LOINC</a>#34117-2)</span></p><p><b>category</b>: Clinical Note <span style=\"background: LightGoldenRodYellow; margin: 4px; border: 1px solid khaki\"> (<a href=\"http://hl7.org/fhir/us/core/STU6.1/CodeSystem-us-core-documentreference-category.html\">US Core DocumentReferences Category Codes</a>#clinical-note)</span></p><p><b>subject</b>: <a href=\"https://simplifier.net/resolve?scope=hl7.fhir.us.core.3.1.1@3.1.1&canonical=http://hl7.org/fhir/us/core/Patient/06e1f0dd-5fbe-4480-9bb4-6b54ec02d31b\">Patient/06e1f0dd-5fbe-4480-9bb4-6b54ec02d31b: Elden718 Halvorson124</a></p><p><b>date</b>: Oct 23, 2020, 5:21:08\u202fPM</p><p><b>author</b>: <a href=\"https://simplifier.net/resolve?scope=hl7.fhir.us.core.3.1.1@3.1.1&canonical=http://hl7.org/fhir/us/core/Practitioner/0000016f-57cb-cdac-0000-00000000014a\">Practitioner/0000016f-57cb-cdac-0000-00000000014a: Janeth814 Jakubowski832, MD</a></p><p><b>description</b>: Pulmonology clinic acute visit</p><blockquote><p><b>content</b></p><h3>Attachments</h3><table class=\"grid\"><tr><td style=\"display: none\">-</td><td><b>ContentType</b></td><td><b>Url</b></td><td><b>Title</b></td></tr><tr><td style=\"display: none\">*</td><td>text/plain</td><td><code>/Binary/cdex-example-hpnote</code></td><td>Uri where the data can be found: [base]/Binary/1-note</td></tr></table><p><b>format</b>: Documents following C-CDA constraints using a structured body (Details: unknown code urn:hl7-org:sdwg:ccda-structuredBody:2.1 = 'urn:hl7-org:sdwg:ccda-structuredBody:2.1', stated as 'Documents following C-CDA constraints using a structured body')</p></blockquote><h3>Contexts</h3><table class=\"grid\"><tr><td style=\"display: none\">-</td><td><b>Period</b></td></tr><tr><td style=\"display: none\">*</td><td>2020-10-23 10:21:06-0700 --> 2020-10-23 10:21:08-0700</td></tr></table></div>"
},
"identifier" : [{
"system" : "urn:ietf:rfc:3986",
"value" : "urn:oid:2.16.840.1.113883.19.5.99999.2"
}],
"status" : "current",
"type" : {
"coding" : [{
"system" : "http://loinc.org",
"code" : "34117-2",
"display" : "History and physical note"
}],
"text" : "History and physical note"
},
"category" : [{
"coding" : [{
"system" : "http://hl7.org/fhir/us/core/CodeSystem/us-core-documentreference-category",
"code" : "clinical-note",
"display" : "Clinical Note"
}],
"text" : "Clinical Note"
}],
"subject" : {
"reference" : "Patient/06e1f0dd-5fbe-4480-9bb4-6b54ec02d31b",
"display" : "Elden718 Halvorson124"
},
"date" : "2020-10-23T10:21:08-07:00",
"author" : [{
"reference" : "Practitioner/0000016f-57cb-cdac-0000-00000000014a",
"display" : "Janeth814 Jakubowski832, MD"
}],
"description" : "Pulmonology clinic acute visit",
"content" : [{
"attachment" : {
"contentType" : "text/plain",
"url" : "/Binary/cdex-example-hpnote",
"title" : "Uri where the data can be found: [base]/Binary/1-note"
},
"format" : {
"system" : "urn:oid:1.3.6.1.4.1.19376.1.2.3",
"code" : "urn:hl7-org:sdwg:ccda-structuredBody:2.1",
"display" : "Documents following C-CDA constraints using a structured body"
}
}],
"context" : {
"period" : {
"start" : "2020-10-23T10:21:06-07:00",
"end" : "2020-10-23T10:21:08-07:00"
}
}
},
"search" : {
"mode" : "match"
}
}]
}
Step 2 - Fetch Document
Request
GET [base]/Binary/cdex-example-hpnote`
Request Headers
...(other headers)
Response Headers
HTTP/1.1 200 OK
Server: nginx/1.14.0 (Ubuntu)
Date: Fri, 23 Oct 2020 22:02:15 GMT
Content-Type: application/pdf
...(other headers)
Response Body = PDF
To the extent that the Data Source keeps a record of the provenance of the data, the FHIR Provenance Resource can be requested as documented on US Core’s Basic Provenance page. When returning provenance, they should use the HRex Provenance Profile. The following example illustrates this transaction.
This example is the same as Scenario 1 above, except that it includes the corresponding Provenance records.
GET [base]/Condition?patient=[FHIR id]&clinical-status=active,recurrance,remission&_revinclude=Provenance:target
Request
GET [base]/Condition?patient=06e1f0dd-5fbe-4480-9bb4-6b54ec02d31b&clinical-status=active,recurrance,remission&_revinclude=Provenance:target
Request Headers
Accept: application/fhir+json
Content-Type: application/fhir+json
...(other headers)
Response Headers
HTTP/1.1 200 OK
Server: nginx/1.14.0 (Ubuntu)
Date: Fri, 23 Oct 2020 04:54:56 GMT
Content-Type: application/fhir+json;charset=utf-8
...(other headers)
Response Body
{
"resourceType" : "Bundle",
"id" : "cdex-searchbundle-provenance-example",
"meta" : {
"extension" : [{
"url" : "http://hl7.org/fhir/StructureDefinition/instance-name",
"valueString" : "Direct Query Response Including Provenance"
},
{
"url" : "http://hl7.org/fhir/StructureDefinition/instance-description",
"valueMarkdown" : "Bundle example used in the [direct query scenario](direct-query.html#provenance) that includes the corresponding Provenance records. Payer Seeks Insured Person/Patient Active Conditions from Provider to support a claims audit."
}],
"lastUpdated" : "2020-10-23T04:54:56.048+00:00"
},
"type" : "searchset",
"total" : 1,
"link" : [{
"relation" : "self",
"url" : "http://hapi.fhir.org/baseR4/Condition?patient=06e1f0dd-5fbe-4480-9bb4-6b54ec02d31b&clinical-status=active,recurrance,remission&_revinclude=Provenance:target"
}],
"entry" : [{
"fullUrl" : "http://hapi.fhir.org/baseR4/Condition/4ac41715-fcbd-421c-8796-9b2c9706dd3f",
"resource" : {
"resourceType" : "Condition",
"id" : "4ac41715-fcbd-421c-8796-9b2c9706dd3f",
"meta" : {
"versionId" : "10",
"lastUpdated" : "2020-04-28T20:28:00.008+00:00",
"source" : "#cabiJIK51sD2iz4N",
"profile" : ["http://hl7.org/fhir/us/core/StructureDefinition/us-core-condition|3.1.1",
"http://hl7.org/fhir/us/core/StructureDefinition/us-core-condition-encounter-diagnosis|6.1.0"]
},
"text" : {
"status" : "generated",
"div" : "<div xmlns=\"http://www.w3.org/1999/xhtml\"><a name=\"Condition_4ac41715-fcbd-421c-8796-9b2c9706dd3f\"> </a><p><b>Generated Narrative: Condition</b><a name=\"4ac41715-fcbd-421c-8796-9b2c9706dd3f\"> </a><a name=\"hc4ac41715-fcbd-421c-8796-9b2c9706dd3f\"> </a></p><div style=\"display: inline-block; background-color: #d9e0e7; padding: 6px; margin: 4px; border: 1px solid #8da1b4; border-radius: 5px; line-height: 60%\"><p style=\"margin-bottom: 0px\">ResourceCondition "4ac41715-fcbd-421c-8796-9b2c9706dd3f" Version "10" Updated "2020-04-28 20:28:00+0000" </p><p style=\"margin-bottom: 0px\">Information Source: #cabiJIK51sD2iz4N!</p><p style=\"margin-bottom: 0px\">Profiles: <a href=\"http://hl7.org/fhir/us/core/STU3.1.1/StructureDefinition-us-core-condition.html\">US Core Condition Profile (version 3.1.1)</a>, <a href=\"http://hl7.org/fhir/us/core/STU6.1/StructureDefinition-us-core-condition-encounter-diagnosis.html\">US Core Condition Encounter Diagnosis Profile (version 6.1.0)</a></p></div><p><b>clinicalStatus</b>: Active <span style=\"background: LightGoldenRodYellow; margin: 4px; border: 1px solid khaki\"> (<a href=\"http://terminology.hl7.org/5.5.0/CodeSystem-condition-clinical.html\">Condition Clinical Status Codes</a>#active)</span></p><p><b>verificationStatus</b>: Confirmed <span style=\"background: LightGoldenRodYellow; margin: 4px; border: 1px solid khaki\"> (<a href=\"http://terminology.hl7.org/5.5.0/CodeSystem-condition-ver-status.html\">ConditionVerificationStatus</a>#confirmed)</span></p><p><b>category</b>: Encounter Diagnosis <span style=\"background: LightGoldenRodYellow; margin: 4px; border: 1px solid khaki\"> (<a href=\"http://terminology.hl7.org/5.5.0/CodeSystem-condition-category.html\">Condition Category Codes</a>#encounter-diagnosis)</span></p><p><b>code</b>: Hammer Toe <span style=\"background: LightGoldenRodYellow; margin: 4px; border: 1px solid khaki\"> (<a href=\"https://browser.ihtsdotools.org/\">SNOWMED CT</a>#122481008 "Hammer toe (disorder)")</span></p><p><b>subject</b>: <a href=\"https://simplifier.net/resolve?scope=hl7.fhir.us.core.3.1.1@3.1.1&canonical=http://hl7.org/fhir/us/core/Patient/06e1f0dd-5fbe-4480-9bb4-6b54ec02d31b\">Patient/06e1f0dd-5fbe-4480-9bb4-6b54ec02d31b</a></p><p><b>encounter</b>: <a href=\"https://simplifier.net/resolve?scope=hl7.fhir.us.core.3.1.1@3.1.1&canonical=http://hl7.org/fhir/us/core/Encounter/5fe62cd5-bfcf-4d3b-a1e9-80d6f75d6f82\">Encounter/5fe62cd5-bfcf-4d3b-a1e9-80d6f75d6f82</a></p><p><b>onset</b>: 2018-10-21 21:22:15-0700</p><p><b>recordedDate</b>: 2018-10-21 21:22:15-0700</p></div>"
},
"clinicalStatus" : {
"coding" : [{
"system" : "http://terminology.hl7.org/CodeSystem/condition-clinical",
"code" : "active"
}]
},
"verificationStatus" : {
"coding" : [{
"system" : "http://terminology.hl7.org/CodeSystem/condition-ver-status",
"code" : "confirmed"
}]
},
"category" : [{
"coding" : [{
"system" : "http://terminology.hl7.org/CodeSystem/condition-category",
"code" : "encounter-diagnosis",
"display" : "Encounter Diagnosis"
}]
}],
"code" : {
"coding" : [{
"system" : "http://snomed.info/sct",
"code" : "122481008",
"display" : "Hammer toe (disorder)"
}],
"text" : "Hammer Toe"
},
"subject" : {
"reference" : "Patient/06e1f0dd-5fbe-4480-9bb4-6b54ec02d31b"
},
"encounter" : {
"reference" : "Encounter/5fe62cd5-bfcf-4d3b-a1e9-80d6f75d6f82"
},
"onsetDateTime" : "2018-10-21T21:22:15-07:00",
"recordedDate" : "2018-10-21T21:22:15-07:00"
},
"search" : {
"mode" : "match"
}
},
{
"fullUrl" : "http://hapi.fhir.org/baseR4/Provenance/b2ce4584-b213-411b-bdc9-d515dc92eadf",
"resource" : {
"resourceType" : "Provenance",
"id" : "b2ce4584-b213-411b-bdc9-d515dc92eadf",
"meta" : {
"profile" : ["http://hl7.org/fhir/us/core/StructureDefinition/us-core-provenance|3.1.1",
"http://hl7.org/fhir/us/core/StructureDefinition/us-core-provenance|6.1.0"]
},
"text" : {
"status" : "generated",
"div" : "<div xmlns=\"http://www.w3.org/1999/xhtml\"><a name=\"Provenance_b2ce4584-b213-411b-bdc9-d515dc92eadf\"> </a><p><b>Generated Narrative: Provenance</b><a name=\"b2ce4584-b213-411b-bdc9-d515dc92eadf\"> </a><a name=\"hcb2ce4584-b213-411b-bdc9-d515dc92eadf\"> </a></p><div style=\"display: inline-block; background-color: #d9e0e7; padding: 6px; margin: 4px; border: 1px solid #8da1b4; border-radius: 5px; line-height: 60%\"><p style=\"margin-bottom: 0px\">ResourceProvenance "b2ce4584-b213-411b-bdc9-d515dc92eadf" </p><p style=\"margin-bottom: 0px\">Profiles: <a href=\"http://hl7.org/fhir/us/core/STU3.1.1/StructureDefinition-us-core-provenance.html\">US Core Provenance Profile (version 3.1.1)</a>, <a href=\"http://hl7.org/fhir/us/core/STU6.1/StructureDefinition-us-core-provenance.html\">US Core Provenance Profile (version 6.1.0)</a></p></div><p><b>target</b>: See on this page: Condition/4ac41715-fcbd-421c-8796-9b2c9706dd3f</p><p><b>recorded</b>: Oct 22, 2018, 4:22:15\u202fAM</p><h3>Agents</h3><table class=\"grid\"><tr><td style=\"display: none\">-</td><td><b>Type</b></td><td><b>Who</b></td><td><b>OnBehalfOf</b></td></tr><tr><td style=\"display: none\">*</td><td>Author <span style=\"background: LightGoldenRodYellow; margin: 4px; border: 1px solid khaki\"> (<a href=\"http://terminology.hl7.org/5.5.0/CodeSystem-provenance-participant-type.html\">Provenance participant type</a>#author)</span></td><td><a href=\"https://simplifier.net/resolve?scope=hl7.fhir.us.core.3.1.1@3.1.1&canonical=http://hl7.org/fhir/us/core/Practitioner/min\">Practitioner/min</a></td><td><a href=\"https://simplifier.net/resolve?scope=hl7.fhir.us.core.3.1.1@3.1.1&canonical=http://hl7.org/fhir/us/core/Organization/min\">Organization/min</a></td></tr></table></div>"
},
"target" : [{
"reference" : "Condition/4ac41715-fcbd-421c-8796-9b2c9706dd3f"
}],
"recorded" : "2018-10-21T21:22:15-07:00",
"agent" : [{
"type" : {
"coding" : [{
"system" : "http://terminology.hl7.org/CodeSystem/provenance-participant-type",
"code" : "author",
"display" : "Author"
}]
},
"who" : {
"reference" : "Practitioner/min"
},
"onBehalfOf" : {
"reference" : "Organization/min"
}
}]
},
"search" : {
"mode" : "include"
}
}]
}
This specification does not require signatures but supports the transmission of signatures if business agreements require them.
Some data consumers may require that the data they receive are signed. When signatures are required, the following general rules apply:
Bundle.signature
element on the FHIR search set Bundle is used to exchange the signature.* Consult with your Payer and your legal team for questions regarding legal liability associated with sharing and signing data.
Bundle.signature
element for the signature signed by the organization responding to the query.When signatures are required, the Data Consumer must use a FHIR RESTful search instead of FHIR RESTful read. There is no CDex support for signatures on a FHIR RESTful read because it fetches a single instance of a resource instead of a Bundle. If the Data Consumer attempts to fetch a resource with a read and a signature is required, the Data Source/Responder SHALL return an HTTP 400 Bad Request
and an OperationOutcome describing the business rule error. The following HTTP response and OperationOutcome illustrate this.
HTTP/1.1 400 Bad Request
[other headers]
{
"resourceType": "OperationOutcome",
"id": "cdex-signed-read-response",
"issue": [
{
"severity": "error",
"code": "business-rule",
"details": {
"text": "signed FHIR RESTful read response is not supported."
},
"diagnostics": "Resubmit the request as a FHIR RESTful search'"
}
]
}
This example is the same as Scenario 1 above, except that it includes a digital signature. See the Signatures page for a detailed explanation of how the signature was created and verified.
Preconditions and Assumptions:
GET [base]/Condition?patient=[FHIR id]&clinical-status=active,recurrance,remission
Request
GET [base]/Condition?patient=06e1f0dd-5fbe-4480-9bb4-6b54ec02d31b&clinical-status=active,recurrance,remission
Request Headers
Accept: application/fhir+json
Content-Type: application/fhir+json
...(other headers)
Response Headers
HTTP/1.1 200 OK
Server: nginx/1.14.0 (Ubuntu)
Date: Fri, 23 Oct 2020 04:54:56 GMT
Content-Type: application/fhir+json;charset=utf-8
...(other headers)
Response Body
{
"resourceType" : "Bundle",
"id" : "cdex-searchbundle-digital-sig-example",
"meta" : {
"extension" : [{
"url" : "http://hl7.org/fhir/StructureDefinition/instance-name",
"valueString" : "CDEX SearchSet Bundle with Digital Signature Example"
},
{
"url" : "http://hl7.org/fhir/StructureDefinition/instance-description",
"valueMarkdown" : "Digital signature example showing how it is used to sign a [search set Bundle](direct-query.html#signatures). The CDEX use case would be a response to a Direct Query where a digital signature was required."
}],
"profile" : ["http://hl7.org/fhir/us/davinci-cdex/StructureDefinition/cdex-signature-bundle"]
},
"type" : "searchset",
"total" : 1,
"link" : [{
"relation" : "self",
"url" : "http://hapi.fhir.org/baseR4/Condition?patient=06e1f0dd-5fbe-4480-9bb4-6b54ec02d31b"
}],
"entry" : [{
"fullUrl" : "http://hapi.fhir.org/baseR4/Condition/4ac41715-fcbd-421c-8796-9b2c9706dd3f",
"resource" : {
"resourceType" : "Condition",
"id" : "4ac41715-fcbd-421c-8796-9b2c9706dd3f",
"meta" : {
"versionId" : "10",
"lastUpdated" : "2020-04-28T20:28:00.008+00:00",
"source" : "#cabiJIK51sD2iz4N",
"profile" : ["http://hl7.org/fhir/us/core/StructureDefinition/us-core-condition|3.1.1",
"http://hl7.org/fhir/us/core/StructureDefinition/us-core-condition-encounter-diagnosis|6.1.0"]
},
"text" : {
"status" : "generated",
"div" : "<div xmlns=\"http://www.w3.org/1999/xhtml\"><a name=\"Condition_4ac41715-fcbd-421c-8796-9b2c9706dd3f\"> </a><p><b>Generated Narrative: Condition</b><a name=\"4ac41715-fcbd-421c-8796-9b2c9706dd3f\"> </a><a name=\"hc4ac41715-fcbd-421c-8796-9b2c9706dd3f\"> </a></p><div style=\"display: inline-block; background-color: #d9e0e7; padding: 6px; margin: 4px; border: 1px solid #8da1b4; border-radius: 5px; line-height: 60%\"><p style=\"margin-bottom: 0px\">ResourceCondition "4ac41715-fcbd-421c-8796-9b2c9706dd3f" Version "10" Updated "2020-04-28 20:28:00+0000" </p><p style=\"margin-bottom: 0px\">Information Source: #cabiJIK51sD2iz4N!</p><p style=\"margin-bottom: 0px\">Profiles: <a href=\"http://hl7.org/fhir/us/core/STU3.1.1/StructureDefinition-us-core-condition.html\">US Core Condition Profile (version 3.1.1)</a>, <a href=\"http://hl7.org/fhir/us/core/STU6.1/StructureDefinition-us-core-condition-encounter-diagnosis.html\">US Core Condition Encounter Diagnosis Profile (version 6.1.0)</a></p></div><p><b>clinicalStatus</b>: Active <span style=\"background: LightGoldenRodYellow; margin: 4px; border: 1px solid khaki\"> (<a href=\"http://terminology.hl7.org/5.5.0/CodeSystem-condition-clinical.html\">Condition Clinical Status Codes</a>#active)</span></p><p><b>verificationStatus</b>: Confirmed <span style=\"background: LightGoldenRodYellow; margin: 4px; border: 1px solid khaki\"> (<a href=\"http://terminology.hl7.org/5.5.0/CodeSystem-condition-ver-status.html\">ConditionVerificationStatus</a>#confirmed)</span></p><p><b>category</b>: Encounter Diagnosis <span style=\"background: LightGoldenRodYellow; margin: 4px; border: 1px solid khaki\"> (<a href=\"http://terminology.hl7.org/5.5.0/CodeSystem-condition-category.html\">Condition Category Codes</a>#encounter-diagnosis)</span></p><p><b>code</b>: Hammer Toe <span style=\"background: LightGoldenRodYellow; margin: 4px; border: 1px solid khaki\"> (<a href=\"https://browser.ihtsdotools.org/\">SNOWMED CT</a>#122481008 "Hammer toe (disorder)")</span></p><p><b>subject</b>: <a href=\"https://simplifier.net/resolve?scope=hl7.fhir.us.core.3.1.1@3.1.1&canonical=http://hl7.org/fhir/us/core/Patient/06e1f0dd-5fbe-4480-9bb4-6b54ec02d31b\">Patient/06e1f0dd-5fbe-4480-9bb4-6b54ec02d31b</a></p><p><b>encounter</b>: <a href=\"https://simplifier.net/resolve?scope=hl7.fhir.us.core.3.1.1@3.1.1&canonical=http://hl7.org/fhir/us/core/Encounter/5fe62cd5-bfcf-4d3b-a1e9-80d6f75d6f82\">Encounter/5fe62cd5-bfcf-4d3b-a1e9-80d6f75d6f82</a></p><p><b>onset</b>: 2018-10-21 21:22:15-0700</p><p><b>recordedDate</b>: 2018-10-21 21:22:15-0700</p></div>"
},
"clinicalStatus" : {
"coding" : [{
"system" : "http://terminology.hl7.org/CodeSystem/condition-clinical",
"code" : "active"
}]
},
"verificationStatus" : {
"coding" : [{
"system" : "http://terminology.hl7.org/CodeSystem/condition-ver-status",
"code" : "confirmed"
}]
},
"category" : [{
"coding" : [{
"system" : "http://terminology.hl7.org/CodeSystem/condition-category",
"code" : "encounter-diagnosis",
"display" : "Encounter Diagnosis"
}]
}],
"code" : {
"coding" : [{
"system" : "http://snomed.info/sct",
"code" : "122481008",
"display" : "Hammer toe (disorder)"
}],
"text" : "Hammer Toe"
},
"subject" : {
"reference" : "Patient/06e1f0dd-5fbe-4480-9bb4-6b54ec02d31b"
},
"encounter" : {
"reference" : "Encounter/5fe62cd5-bfcf-4d3b-a1e9-80d6f75d6f82"
},
"onsetDateTime" : "2018-10-21T21:22:15-07:00",
"recordedDate" : "2018-10-21T21:22:15-07:00"
},
"search" : {
"mode" : "match"
}
}],
"signature" : {
"type" : [{
"system" : "urn:iso-astm:E1762-95:2013",
"code" : "1.2.840.10065.1.12.1.5",
"display" : "Verification Signature"
}],
"when" : "2020-10-23T04:54:56.048+00:00",
"who" : {
"reference" : "Organization/min"
},
"data" : "ZXlKaGJHY2lPaUpTVXpJMU5pSXNJbXQwZVNJNklsSlRJaXdpZEhsd0lqb2lTbGRVSWl3aWRYTmxJam9pYzJsbklpd2llRFZqSWpwYklrMUpTVVV6ZWtORFFUQmxaMEYzU1VKQlowbEtRVTlMUmxsMlRYZFNLM2xSVFVFd1IwTlRjVWRUU1dJelJGRkZRa04zVlVGTlNVZE9UVkZ6ZDBOUldVUldVVkZIUlhkS1ZsVjZSVlJOUWtWSFFURlZSVU5CZDB0Uk1rWnpZVmRhZG1OdE5YQlpWRVZUVFVKQlIwRXhWVVZDZDNkS1ZUSkdNV015Um5OaFdGSjJUVkpWZDBWM1dVUldVVkZMUkVGNFNWcFhSbk5rUjJoc1VrZEdNRmxVUlhoR2VrRldRbWRPVmtKQlRVMUVhMVo1WVZkTloxTkhSbWhqZVhkblVrWmFUazFUVlhkSmQxbEtTMjlhU1doMlkwNUJVV3RDUm1oYWJHRkhSbWhqTUVKdldsZEdjMlJIYUd4YVIwWXdXVlJGZFdJelNtNU5RalJZUkZSSmVFMVVRWGxPZWtVelRrUkpkMDVHYjFoRVZFbDVUVlJCZVUxcVJUTk9SRWwzVGtadmQyZFpNSGhEZWtGS1FtZE9Wa0pCV1ZSQmJGWlVUVkpOZDBWUldVUldVVkZKUkVGd1JGbFhlSEJhYlRsNVltMXNhRTFTU1hkRlFWbEVWbEZSU0VSQmJGUlpXRlo2V1ZkNGNHUkhPSGhHVkVGVVFtZE9Wa0pCYjAxRVJXaHNXVmQ0TUdGSFZrVlpXRkpvVFZSRldFMUNWVWRCTVZWRlFYZDNUMUpZU25CWmVVSkpXVmRHZWt4RFFrVldhekI0U2xSQmFrSm5hM0ZvYTJsSE9YY3dRa05SUlZkR2JWWnZXVmRHZWxGSGFHeFpWM2d3WVVkV2ExbFlVbWhOVXpWMlkyMWpkMmRuUjJsTlFUQkhRMU54UjFOSllqTkVVVVZDUVZGVlFVRTBTVUpxZDBGM1oyZEhTMEZ2U1VKblVVUndTMk5UYTI5QlRUWnpWekl4SzNaWFZHVkpWazlIZURFd1RWZGhjMUY1TjFaSWFXUTJlbmx4V0VGQ1RTdDZibVpDYmxobGJubFZNR294UmxSMlVHMVNaazlFYjA5RVdGWjFVRlYzUkc5dGFFTklhQ3RpWTJ4WE9VdE5NbTgxTmpOamVGSkxSWFpDYm1GSWNuTnFkelY1VG0xNFR6Vlpha1ZTWW1oMFNHUlJaWEZyZEdSM00xWlpSVkpTT1VodmVFeFBNMFpyYzNwU01qa3lTRlJDTkhoWE0zbFhiRll6WjFSclRWRnZlbEJUWTBwTFNETmlSemhRY1hFMlFWbFFTamRETkZsQ1NXeFZVMlJDVFZac00zRnVaVVZtWnpkbWRYaHBSbVpZYjJaa1ZGWnROM0pOYVdsSE4xZzVlalF6VUdacGJIRmhaV2x6Wm0xMFVuaEJiRkozUlU1WWNrZ3pUM1pQUkZCNVREQnlWRzVIT0VOellrRllXVlpKVFcxa1pFaGxORnBHT1hCc2FEazFjMm8wY0UxVWFFeDBZMHBZTDI4NVdFaE1hbWczUlcxYWVXZEtTRmRGVVhFMFVIZEdkMXBrYldKalptaERiVTl5T0RoSU9FSmlWWEoxTHpkV05ucGljMGN4VGpGRFYyeHVaR3hpVm5wdVRDc3pTVTFQY2pocldHRklZMkZ1Y1daamEyZEdWalJGY201bWFrWktjVEZQU1dGQmJYTk5hamcxZUUxcmFubFlUSGxqVEV3dmRUVnVNbTgyUW1jNU15OVZVbVp4ZFU5dlUwbEhUME5TTWpWRVlWcDZjSGN5YXpOek4yOUZPV1JOZDBWWFdIUm1XR2RaZEdneVlteHFlVFYwUmtnd1IycHdUMnQ0TURkcU4xcFVOVWh1ZUc1c2MwTkJkMFZCUVdGT1FVMUVOSGRFUVZsRVZsSXdWRUpCVlhkQmQwVkNMM3BCVEVKblRsWklVVGhGUWtGTlEwSmxRWGRKVVZsRVZsSXdVa0pDYjNkSFNVbFhaRE5rTTB4dGFHeFpWM2d3WVVkV2ExbFlVbWhoVnpWcVRHMU9kbUpVUVU1Q1oydHhhR3RwUnpsM01FSkJVWE5HUVVGUFEwRlpSVUZEZFUxVlRuRTVZWGtySzJVMVdVTTNVVVpQT1RSeVpucDRSMUZ1UmpOSGEyeGFUa0ZZYlVseU4xQldSMlJwUjFreVIxUjRMemxTZEVoRGQxUkxlbXRNSzNsMlMyOXFaVm81WkZaTE9IZHlSMVpwVW10UEwycFZlVm9yUzJOWFVtOXJWV3B6TlRsdVkwcEhVazFUVTFKNGRHVkRVWFZxZERSb1pqSXJMM0ZXSzJZeWMwMVJkRVZ5ZDFCRk16QjJZbkZTV1ZWT1RrNUNWa1ZSY0dGUmVDOWhZMHBFVlhZNWRqZHpha2hwU2tSeFdIZFJLM0o2YWprMWFVaEJTV0ZsUlVoeFJpOU5jekl5Y0RKaVpWcDFjWFpKVVV0bFRXd3JjM1pXY1VoMGFYVjZWMjVHTkZVMlZrbHRjR3R5TkdKSWJEZGxaMVk1U0Rac05sUXlVMDFyYWpaeFJGVTFaVGxPWnpCYWJFeFVkRzl6YzJoQ1RHMXZjRVkzWlRkSWVYSlVSVUZ0Wms5UVMxRmxNRVZuT1VVeWRYSjZlSEZDZFVjMU5HczFNRWN5U2pCR2FWQnpVVXBCYUVacFRrZDNVMmMwVXpOSWVWWkVSemQxWlV0a01FdzVNM2RMVDA1UFdVZDJUVXRwZWtOSVFpdHdTM1pGVFVwdldqaDVPWFZwUWl0SVJsaGpjRGxTWVVweFNqazNTSEJhVkVWMksyeHBRM0F5VUZOWWVtTkxNSEl5TlZOamVXcEdObVJNYjNWTE1sTkNNekI0UVhaS09IUkZOVGcwSzJweFVUWkRSMlZqVlRsWWFuWnNRV3AxU21SRGNrUmxWbEJ6YW10dU4wOVFXRWNyT0ZoYVZUZDZjVWhhVG0xWVdERlpXVFJJTlhKblJVbzBPR3h5VlhKUU0wazRVaUpkZlEuLlN4eW5HX25kcFRaT09TeHJnWXo4YWpPQlZnYmd4dmIwMjJBaUdqenA3dEVWdWVvZ3A5R18yY3FKZEtYSDQ4bzdVUGJNSVhvQk56UWtkRnRhX1ZRamh5V1paS2t4djBCVG5Ra0xpUElvcTYxYkYybEFvXzJZbzFCd3AtSFF0Z0dud3JNckdaaWNqMVZpajBpMG82YlZOT1RKamo4WWlhR0Z2RUZrbEMxazRIcTVYbHlwb2NrNjBjREV5Qll6cDdva2tER0RYV0dsZ1FCRFdZR0hjeHphR0Z3T0ZRNnhaWjRVeU5FeUN3M3RSLVVIcEJfNnJBNGhZWERVVkpPdU96TEJmaW9HRU55Q09OMEV5QVZUVlZselE2V1JJM1M2OS01WkVNSjFxLUk2aUUxd29YQUNHaVY3M2FJdVNKb2hXUnNlUEpHUXgwQlZ1eFlTVk5Yejh0bnJoU3NDa24xNk5ZbXJDN19zV1dZSTE2dGlLZ1d5d0ZyaThfeExycENfTGc0LVpMVTQwYml1cFhZVXE1STRIdzZQNkZVSzVabXp6aVRQNXdyQ09MdkVCWTlLT29NTE12d08ySW93M0pQcTFTUmFlRFdKMWxvYkdxaEZPcVRWbVRvWDNwZzYzTWktMFBrZnRGN0F0dVVSMTUwYUhjWjJaSE1SQl9WczN0MVllbHAz"
}
}