This wiki has undergone a migration to Confluence found Here

Difference between revisions of "Medications"

From HL7 Argonaut Project Wiki
Jump to navigation Jump to search
Line 5: Line 5:
 
==Argonaut Success Criteria==
 
==Argonaut Success Criteria==
 
===Clients===
 
===Clients===
*A client has connected to a server and fetched a patient's medications using [[#GET_.2FCondition.3Fpatient.3D.5Bid.5D|GET /Condition?patient=[id]]].
+
*A client has connected to a server and fetched a patient's medications using [[#GET_.2FMedicationStatement.3Fpatient.3D.7Bid.7D|GET /MedicationStatement?patient=[id]]].
*A client has connected to a server and fetched a patient's medication orders using [[#GET_.2FCondition.3Fpatient.3D.5Bid.5D|GET /Condition?patient=[id]]].
+
*A client has connected to a server and fetched a patient's medication orders using [[#GET_.2FMedicationOrder.3Fpatient.3D.7Bid.7D|GET /MedicationOrder?patient=[id]]].
  
 
===Servers===
 
===Servers===
*A server is capable of returning a patient's allergies list using <!-- [[#GET_.2FPatient.2F.5Bid.5D.2Condition|GET [base]/Patient/[id]/Condition]] or --> [[#GET_.2FCondition.3Fpatient.3D.5Bid.5D|GET /Condition?patient=[id]]].
+
*A server is capable of returning a patient's medications [[#GET_.2FMedicationStatement.3Fpatient.3D.7Bid.7D|GET /MedicationStatement?patient=[id]]].
 +
*A server is capable of returning a patient's medication orders [[#GET_.2FMedicationOrder.3Fpatient.3D.7Bid.7D|GET /MedicationOrder?patient=[id]]].
 
*A server has ensured that every API request includes a valid Authorization token, supplied via:Authorization: Bearer {server-specific-token-here}
 
*A server has ensured that every API request includes a valid Authorization token, supplied via:Authorization: Bearer {server-specific-token-here}
 
*A server has rejected any unauthorized requests by returning an HTTP 401 Unauthorized response code.
 
*A server has rejected any unauthorized requests by returning an HTTP 401 Unauthorized response code.
Line 16: Line 17:
 
The following data-elements are mandatory (i.e data MUST be present). These are presented below in simple human-readable explanations along with sample data to demonstrate the requirements.   
 
The following data-elements are mandatory (i.e data MUST be present). These are presented below in simple human-readable explanations along with sample data to demonstrate the requirements.   
  
Each Condition must have:
+
Each MedicationStatement must have:
  
 
#One Identification of the condition, problem or diagnosis in '''Condition.code'''.
 
#One Identification of the condition, problem or diagnosis in '''Condition.code'''.
Line 26: Line 27:
 
Additional elements from http://hl7.org/fhir/daf/medicationstatement-daf.html DAF MedicationStatement Profile] or [http://hl7.org/fhir/daf/medicationorder-daf.html DAF MedicationOrder Profile]] may be present.
 
Additional elements from http://hl7.org/fhir/daf/medicationstatement-daf.html DAF MedicationStatement Profile] or [http://hl7.org/fhir/daf/medicationorder-daf.html DAF MedicationOrder Profile]] may be present.
  
  '''[[Condition Resource Example]]'''
+
NEED TO ADD:
 +
  '''[[MedicationStatement Example]]'''
 +
'''[[MedicationOrder Example]]'''
  
 
==Quick Start==
 
==Quick Start==
  
 
Below is a quick overview of the required search and read operations.
 
Below is a quick overview of the required search and read operations.
<!--
 
-===GET /Patient/[id]/AllergyIntolerance===
 
''Support:'' Mandatory to support either search by reference or by compartment
 
 
''Implementation Notes:'' Fetches a bundle of all AllergyIntolerance resources for the specified patient [http://hl7.org/fhir/DSTU2/compartments.html#use (how to search by compartment)].
 
 
''Response Class:''
 
*(Status 200): successful operation
 
*(Status 401): unauthorized request
 
 
====Example:====
 
[GET https://fhir-open-api.smarthealthit.org/Patient/1137192/AllergyIntolerance] (EH : note compartment search is not supported by smart server)
 
-->
 
 
----
 
----
  
Line 83: Line 73:
  
 
==References==
 
==References==
*[http://hl7.org/fhir/DSTU2/daf/patient-daf.html DAF AllergyIntolerance Profile]
+
*[http://hl7.org/fhir/daf/medicationstatement-daf.html DAF MedicationStatement Profile]
 +
*[http://hl7.org/fhir/daf/medicationorder-daf.html DAF MedicationOrder Profile]
 
*[http://hl7.org/fhir/DSTU2/http.html RESTfulAPI]
 
*[http://hl7.org/fhir/DSTU2/http.html RESTfulAPI]
 
*[http://hl7.org/fhir/DSTU2/search.html Search]
 
*[http://hl7.org/fhir/DSTU2/search.html Search]
 
 
  
  
 
[[Implementation Guide|Back to Argonaut Implementation Guide]]
 
[[Implementation Guide|Back to Argonaut Implementation Guide]]

Revision as of 13:23, 12 April 2016

Back to Argonaut Implementation Guide

Introduction

The Argonaut Medications IG provides the API documentation for searching for and fetching a patient's medications. It is based on the Data Access Framework (DAF) MedicationStatement Profile, DAF MedicationOrder Profile, and draws requirements from Argonaut Sprint 4. The search criteria provided in the Quick Start are intended to support the 2015 Edition ONC Certification criterion Data Category Request 170.315(g)(8).

Argonaut Success Criteria

Clients

Servers

  • A server is capable of returning a patient's medications GET /MedicationStatement?patient=[id].
  • A server is capable of returning a patient's medication orders GET /MedicationOrder?patient=[id].
  • A server has ensured that every API request includes a valid Authorization token, supplied via:Authorization: Bearer {server-specific-token-here}
  • A server has rejected any unauthorized requests by returning an HTTP 401 Unauthorized response code.

Mandatory Data Elements

The following data-elements are mandatory (i.e data MUST be present). These are presented below in simple human-readable explanations along with sample data to demonstrate the requirements.

Each MedicationStatement must have:

  1. One Identification of the condition, problem or diagnosis in Condition.code.
  2. One patient reference in Condition.patient
  3. One clinical status in Condition.clnicalStatus

Additional elements from http://hl7.org/fhir/daf/medicationstatement-daf.html DAF MedicationStatement Profile] or DAF MedicationOrder Profile] may be present.

NEED TO ADD:

MedicationStatement Example
MedicationOrder Example

Quick Start

Below is a quick overview of the required search and read operations.


GET /MedicationStatement?patient={id}

Support: Mandatory to support search by patient.

Implementation Notes: Search for all MedicationStatement resources for a patient. Fetches a bundle of all MedicationStatement resources for the specified patient (how to search by reference).

Response Class:

  • (Status 200): successful operation
  • (Status 400): invalid parameter
  • (Status 401/4xx): unauthorized request
  • (Status 403): insufficient scope

Example:

[GET http://fhirtest.uhn.ca/baseDstu2/MedicationStatement?patient=14676]

GET /MedicationOrder?patient={id}

Support: Mandatory to support search by patient.

Implementation Notes: Search for all MedicationOrder resources for a patient. Fetches a bundle of all MedicationOrder resources for the specified patient (how to search by reference).

Response Class:

  • (Status 200): successful operation
  • (Status 400): invalid parameter
  • (Status 401/4xx): unauthorized request
  • (Status 403): insufficient scope

Example:

[GET https://fhir-open-api-dstu2.smarthealthit.org/MedicationOrder?patient=1137192]

Open Issues

The following issues have been identified:

  • Status based search

Resources

Formalized testing with test scripts and objective results reporting is available through the participation of AEGIS and MITRE (Crucible). The testscript provided can be used to test servers: [todo]

References


Back to Argonaut Implementation Guide