201605 Data Access Framework (DAF)

From HL7Wiki
Jump to navigation Jump to search

Return to May 2016 Proposals

Data Access FrameWork Background

In context of FHIR "DAF profiles created using FHIR resources and include both extensions and constraints on top of the base FHIR Resources. DAF profiles were created for each conceptual data element identified in the ONC 2014 Edition Standards and Certification Criteria (S&CC) related to Meaningful Use Stage 2 (MU2)"

  • Still need to be updated for the 2015 CCDS - STU3 update

DAF Use case

Patient, Provider, Research


Argonaut

Argonaut use case:

  1. Patient uses provider-approved web application to access health data
  2. Patient uses provider-approved mobile app to access health data
  3. Clinician uses provider-approved web application to access health data
  4. Clinician uses provider-approved mobile app to access health data

Argonaut further constrains DAF for core interoperability between Servers and Clients.


DAF Observation, DAF DiagnosticReport

Extend DAF connectathon to include retrieval of laboratory results supporting both provider and patient access. This connectathon will address the question whether accessing a patient's laboratory results using the DAF Observation resource the DAF DiagnosticReport resource as the 'entry' point to the information.

DAF Patient, DAF Condition, DAF MedicationStatement and DAF Allergies

This is a continuation of the first DAF connectathon in January.

Chat Channel for DAF Connectathon Tract

On Zulip (How to sign up for Zulip for FHIR)

Connectathon Tract

Pre-Requisites

This track should require minimal work in advance of the connectathon. If creating a server, advanced preparation will be required, but the scenarios listed below should limit the effort.


Review the FHIR Search API including:


Review U.S. Data Access Framework (DAF) FHIR Implementation Guide (IG) Including:

Submitting WG/Project/Implementer Group

Infrastructure and Messaging (I&M)

Orders and Observations (OO)

Justification

  • This is a logical next step to FHIR connectathon Track 1 - Patient access that conforms to a specific profile.
  • Its purpose is to provide a the next step for folks creating the simple FHIR client for accessing a patient. It is quite feasible to complete the client side of the track within a day with only knowledge of a development environment - no previous FHIR knowledge.
  • The Data Access Framework (DAF) profiles have been by the the Argonaut project as a basis for their work. This is another opportunity to use test the profiles, identify issues, and help progress the standard and profile to maturity.
  • The subsequent step is extending to accessing patient lab data and investigating how whether the DAF DiagnaosticReport Resource is needed for secondary access of lab data.

Proposed Track Lead

Coordinator: Nagesth Bahsyam (Dragon)

Track Lead: Eric Haas

Expected participants

The expected participants are those implementing DAF profiles, vendors planning to implement FHIR/DAF profiles for 2015 API certification criteria and participated in the Argonaut Sprints in the fall of 2015. This includes LIS Vendors, Large Labs, Application developers.

Roles

FHIR Client

Refer to the 2015 Edition Common Clinical Data Set for more information.

These requirements are intended to meet the 2015 Edition ONC Certification criterion Patient Selection 170.315(g)(7) and 170.315(g)(8).

  • Enable the retrieval of the DAF Patient
  • Enable the retrieval of all of a patient's Problems
  • Enable the retrieval of all of a patient's Allergies
  • Enable the retrieval of all of a patient's Medications
  • Enable the retrieval of all of a patient's Lab Results

FHIR Server

The server is capable of returning all the search requests listed above following the conformance requirements at http://hl7.org/fhir/dstu2/daf/conformance-daf-query-responder.html for servers.

Servers are expected to have some prepopulated for each of the resources specified with appropriate linking between resources. See Testscript Section below for source files for each of the scenarios listed below: This is a starting point and should be supported by each server.

Please add your system information here: DAF Participant Tracker

Scenarios

2. Search for a patient based on one or more parameters specified by DAF Responder conformance statement

Action: DAF Requestor (client) searches the patient Service for patients with at least 2 patient elements - for example last name and gender GET [base]/Patient?family=[string]&gender=[code]
Precondition: Patients with the search criteria have been created
Success Criteria: patients displayed in interface. (use browser query to confirm)

To get started sample patient data for a patient is provided here and as example resource files in the TestScripts Section below. This patient is used in other example resource listed below. The use of this data is not required for successfully completing this track. Participants can use their own data.

id name.last name.given[1] name.given[2] gender birthdate race ethnicity
dafpid-1001 Shaw Amy V. female 2007-03-20 White Non-Hipanic


3. Search for all Conditions or Medications or Allergies for a patient

Action: Client and Server support querying of:
  • DAF Condition for all of a patient's Problems including current as well as historical problems using GET /Condition?patient=[id].
  • DAF Allergy for all of a patient's Allergies using using GET /AllergyIntolerance?patient=[id].
  • DAF MedicationStatement for all of a patient's Medications: using GET /MedicationStatement?patient=[id]..
Precondition: There is a DAF Condition or DAF MedicationStatement or DAF Allergy resourcesthat has been created in the system.
Success Criteria: All DAF Condition or DAF MedicationStatement or DAF Allergy resource data for a patient are displayed in an interface.
Bonus point:
  • Client Server supports querying of DAF MedicationStatement based on patient.id and date period using GET [base]/MedicationStatement?patient=[id]&[eq|lt|gt|geyyyy-mm-dd{&eq|lt|gt|geyyyy-mm-dd}]
  • Client Server supports querying of DAF Condition, on patient.id and category="problems" using GET /Condition?patient=[id]&category=problem.


To get started sample data for the patient listed above is provided here and as example resource files in the TestScripts Section below. The use of this data is not required for successfully completing this track. Participants can use their own data.

Conditions SNOMED-condition Allergies SNOMED-allergies Medications RxNorm
Hypertensive disorder 38341003 none 160244002 lisinopril oral 206765
Hyperlipidemia 55822004 simvastatin oral 312961
Depressive disorder 35489007 sertraline (Zoloft) 208149

4. Search for all Laboratory Results for a patient

NOTE: This scenario is testing the assertion that laboratory tests and panels can be accessed using only the Observation resource instead of the DiagnosticReport resource. It will test whether the workflow based elements ( .request ) and report and display elements ( .codedDiagnosis, and .presentedForm ) in DiagnosticReport are needed for the DAF use cases.

Action: Server and Client support query of DAF-Results (Observation Resource) based on patient.id and category = "laboratory" using GET [base]/Observation?patient=[id]&category=laboratory
Precondition: DAF-Results have been created in the system.
Success Criteria: all lab results resource data is displayed in interface.
Bonus point:
  • Client and Server support date/period based querying of DAF-Results using GET [base]/Observation?patient=[id]&category=laboratory&[eq|lt|gt|geyyyy-mm-dd{&eq|lt|gt|geyyyy-mm-dd}]
  • Client and Server support for retrieving imaging data and anatomic pathology data. (one option would be to use the .valueAttachment element for images or formatted reports)

To get started sample data for the patient is provided below. The use of this data is not required for successfully completing this track. Participants can use their own data.

LOINC # Long Common Name UCUM Comment
58410-2 Complete blood count (hemogram) panel - Blood by Automated count Panel of Common Hematology Tests
718-7 Hemoglobin [Mass/volume] in Blood g/dL Quantitative Test, This is the the code included in the CBC auto. It is NOT obtained via the automated counting but uses a chemistry method just like most other hemoglobins
789-8 Erythrocytes [#/volume] in Blood by Automated count 10*6/uL Quantitative Test
786-4 Erythrocyte mean corpuscular hemoglobin concentration [Mass/volume] by Automated count g/dL Quantitative Test
785-6 Erythrocyte mean corpuscular hemoglobin [Entitic mass] by Automated count pg Quantitative Test
770-8 Neutrophils/100 leukocytes in Blood by Automated count % Quantitative Test, This cell type is counted by all modern automated differential machines; so most results will be reported under the LOINC code with method of automated count.
LOINC # Long Common Name UCUM Comment
24323-8 Comprehensive metabolic 2000 panel - Serum or Plasma Panel of Common Blood Chemistries
2160-0 Creatinine [Mass/volume] in Serum or Plasma mg/dL Quantitative Test
2823-3 Potassium [Moles/volume] in Serum or Plasma mmol/L Quantitative Test
2951-2 Sodium [Moles/volume] in Serum or Plasma mmol/L Quantitative Test
3094-0 Urea nitrogen [Mass/volume] in Serum or Plasma mg/dL Quantitative Test, Usually called BUN
2028-9 Carbon dioxide, total [Moles/volume] in Serum or Plasma mmol/L Quantitative Test
2075-0 Chloride [Moles/volume] in Serum or Plasma mmol/L Quantitative Test
17861-6 Calcium [Mass/volume] in Serum or Plasma mg/dL Quantitative Test
2339-0 Glucose [Mass/volume] in Blood mg/dL Quantitative Test
1975-2 Bilirubin.total [Mass/volume] in Serum or Plasma mg/dL Quantitative Test, Total bilirubin = direct + indirect.
LOINC # Long Common Name UCUM Comment
24356-8 Urinalysis complete panel - Urine Panel of Common Urine Tests
5778-6 Color of Urine Qualitative Test (Nominal)
32167-9 Clarity of Urine Qualitative Test (Nominal)
25428-4 Glucose [Presence] in Urine by Test strip Qualitative Test (Ordinal)
5770-3 Bilirubin.total [Presence] in Urine by Test strip Qualitative Test (Ordinal)
2514-8 Ketones [Presence] in Urine by Test strip Qualitative Test (Ordinal)
5811-5 Specific gravity of Urine by Test strip Quantitative Test
5803-2 pH of Urine by Test strip [pH] Quantitative Test
20454-5 Protein [Presence] in Urine by Test strip Qualitative Test (Ordinal)
20405-7 Urobilinogen [Mass/volume] in Urine by Test strip mg/dL Quantitative Test
5802-4 Nitrite [Presence] in Urine by Test strip Qualitative Test (Ordinal)
5794-3 Hemoglobin [Presence] in Urine by Test strip Qualitative Test (Ordinal)
5799-2 Leukocyte esterase [Presence] in Urine by Test strip Qualitative Test (Ordinal)
11279-7 Urine sediment comments by Light microscopy Narrative Narrative Test
25145-4 Bacteria [Presence] in Urine sediment by Light microscopy Qualitative Test (Ordinal)
5787-7 Epithelial cells [#/area] in Urine sediment by Microscopy high power field /[HPF] Semi-Quantitative Test. Although reported as a range this is probably an ordinal list ( e.g. 1-10, 10-40, 40+)
5821-4 Leukocytes [#/area] in Urine sediment by Microscopy high power field /[HPF] Semi-Quantitative Test Although reported as a range this is probably an ordinal list ( e.g. 1-10, 10-40, 40+)
13945-1 Erythrocytes [#/area] in Urine sediment by Microscopy high power field /[HPF] Semi-Quantitative Test Although reported as a range this is probably an ordinal list ( e.g. 1-10, 10-40, 40+)

Results

Servers

Epic

Cerner

CareEvolution

Helios

Test Servers


Clients

VA

CareEvolution

Qvera

Web Client tools

Testing

Aegis

Crucible

Discussion

  • Basic Search and Fetching demonstrated including resources beyond the cases in the track
  • Discussion on Observations v Diagnostic Report - no resolution
  • Looking at fetching the last n Observations
  • Clarity on server behavior when omitting the search parameter



Help Links

Here are some links to assist implementers:

TestScripts

The supporting TestScripts resources, corresponding test-case examples resources files, and test plan documents have been committed to the FHIR SVN repository at:

http://gforge.hl7.org/svn/fhir/trunk/connectathons/MontrealMay2016/Connectathon12/Track-06-DAF

>> Use an SVN browser such as Tortoise to view files

There are XML and SON TestScripts definitions for each of the tracks listed above:

  • Patient (Patient Resource)
  • Allergies (AllergyIntolerance Resource)
  • Condition (Condition(Problem Resource)
  • Medications (MedicationStatement Resource)
  • Lab Reslts (Observation Resource)

A list of the example resource files:

  1. AllergyIntolerance\resources\dafallerg-1001.xml
  2. Condition\resources\dafcond-1001.xml
  3. Condition\resources\dafcond-1002.xml
  4. Condition\resources\dafcond-1003.xml
  5. MedicationStatement\resources\dafmed-1001.xml
  6. MedicationStatement\resources\dafmed-1002.xml
  7. MedicationStatement\resources\dafmed-1003.xml
  8. Observation\resources\daflab-1001.xml
  9. Observation\resources\daflab-1002.xml
  10. Observation\resources\daflab-1003.xml
  11. Observation\resources\daflab-1004.xml
  12. Observation\resources\daflab-1005.xml
  13. Observation\resources\daflab-1006.xml
  14. Observation\resources\daflab-1007.xml
  15. Observation\resources\daflab-1008.xml
  16. Observation\resources\daflab-1009.xml
  17. Observation\resources\daflab-1010.xml
  18. Observation\resources\daflab-1011.xml
  19. Observation\resources\daflab-1012.xml
  20. Observation\resources\daflab-1013.xml
  21. Observation\resources\daflab-1014.xml
  22. Observation\resources\daflab-1015.xml
  23. Observation\resources\daflab-1016.xml
  24. Observation\resources\daflab-1017.xml
  25. Observation\resources\daflab-1018.xml
  26. Observation\resources\daflab-1019.xml
  27. Observation\resources\daflab-1020.xml
  28. Observation\resources\daflab-1021.xml
  29. Observation\resources\daflab-1022.xml
  30. Observation\resources\daflab-1023.xml
  31. Observation\resources\daflab-1024.xml
  32. Observation\resources\daflab-1025.xml
  33. Observation\resources\daflab-1026.xml
  34. Observation\resources\daflab-1027.xml
  35. Observation\resources\daflab-1028.xml
  36. Observation\resources\daflab-1029.xml
  37. Observation\resources\daflab-1030.xml
  38. Observation\resources\daflab-1031.xml
  39. Observation\resources\dafpanel-1001.xml
  40. Observation\resources\dafpanel-1002.xml
  41. Observation\resources\dafpanel-1003.xml
  42. Patient\resources\dafpid-1001.xml
  43. Patient\resources\dafpid-1002.xml
  44. Patient\resources\dafpid-1003.xml