CarePlan Profile

This CarePlan profile is part of the set of resource profiles supported by the API Server used with the athenaPractice 12.3 and athenaFlow 9.12 products. It further describes read and search capabilities of these products. Note: The create and update operations are NOT supported for this resource.

Overview

CarePlan is the recorded plan of one or more practitioners to deliver care for a patient, group, or community; this is often related to the treatment of a specific condition or set of conditions.

Scope and Usage

This profile is used to define the content that will be returned by the API Server in response to requests to access CarePlan resources. All elements listed in the differential profile view are Supported, which means that the API Server is capable of supplying these fields from the product database when they have been populated via the product or its APIs.

Source

The CarePlan resource is derived from the CarePlan table in athenaPractice and athenaFlow. Specific detail can be found in the Mappings section in the profile detail page.

Supported Operations

The operations supported by this resource are listed below.

Read Operation

Read operations are executed as specified in the HL7 FHIR RESTful API implementation definition. To read a CarePlan, an application shall perform an HTTP GET, specifying the identifier of the resources being retrieved.

GET [base]/fhir/CarePlan/[id]{?_format=[json|xml]&_summary=[true|data]}

Read Operation Parameters

ParameterDescription
[base]Specifies the base URL of the FHIR Server, e.g., https://cpsapisandbox.virenceaz.com:9443/demoAPIServer
[id]Specifies the identifier of the CarePlan resource to retrieve
[_format]Specifies the format of the output and may be xml or json. When present, the _format value overrides the value of the Accept header in the request.
[_summary]Filters the output to include only summary elements (_summary=true) or to omit the generated narrative (_summary=data). Note: If the generated html narrative for the resource is not going to be used by the call, using _summary=data provides slightly improved API response times.

Read Operation HTTP Response Codes

Response CodeDescription
200 OKThe requested resource was found and is contained within the body of the HTTP response.
401 UnauthorizedAuthorization is required for this request, and either the Authorization header is missing or the supplied user credentials in the Authorization header are not valid or have expired. The body of the HTTP response will contain an OperationOutcome resource that indicates that Authorization is required.
404 Not FoundThe requested resource does not exist. The body of the HTTP response will contain an OperationOutcome resource that indicates that the resource could not be found.
500 Server ErrorThe server may return other error codes to indicate other error conditions. The body of the HTTP response will contain an OperationOutcome resource that indicates the nature of the error.

Search Operation

Search operations are executed as specified in the HL7 FHIR RESTful API implementation definition. To search for CarePlan resources, an application shall perform an HTTP GET, specifying the query parameters associated with the resource.

GET [base]/fhir/CarePlan?{search-parameters}{&_count=[max-results]&_format=[json|xml]&_summary=[true|text|data]}

Search Operation Parameters

ParameterDescription
[base]Specifies the base URL of the FHIR Server, e.g., https://cpsapisandbox.virenceaz.com:9443/demoAPIServer
[_count]Specifies the maximum number of search results to return in a single query. Note: The count of results does not limit the number of additional resources returned via the _include parameter. No more than max-results CarePlan resources which match the search criteria will be returned. The API Server has default and maximum limits for the value that can be specified for this parameter. These limits may vary depending upon the client application vendors participation level in the AthenaHealth Partner program. Note: The API Server support the HL7 FHIR Paging capability.
[_format]Specifies the format of the output and may be xml or json. When present, the _format value overrides the value of the Accept header in the request.
[_summary]Filters the output to include only narrative elements (_summary=text), summary elements (_summary=true) or to omit the generated narrative (_summary=data). Note: If the generated html narrative for the resource is not going to be used by the call, using _summary=data provides improved API response times, especially when returning larger result sets.
_id (token )The ID of the resource
_lastUpdated (date )
_lastUpdated-fromnow (quantity )Like _lastUpdated except expressed as a positive or negative offset from the current time in units of time , e.g. _lastUpdated-fromnow=ge7||d for more than seven days in the future or =le-2||mo for less than two months in the past. The unit must be specified.
_security (token )
_tag (token )
category (token )
condition (reference )Health issues this plan addresses
date (date )Time period plan covers
date-fromnow (quantity )Like date except expressed as a positive or negative offset from the current time in units of time , e.g. date-fromnow=ge7||d for more than seven days in the future or =le-2||mo for less than two months in the past. The unit must be specified.
goal (reference )Desired outcome of plan
participant (reference )Who is involved
patient (reference )Who care plan is for
status (token )
subject (reference )Who care plan is for

Search Operation HTTP Response Codes

Response CodeDescription
200 OKThe query was performed and any results found are contained within the body of the HTTP response. Note: The search API will return 200 OK when the query itself is successful, regardless of whether or not any matching results were found.
401 UnauthorizedAuthorization is required for this request, and either the Authorization header is missing or the supplied user credentials in the Authorization header are not valid or have expired. The body of the HTTP response will contain an OperationOutcome resource that indicates that Authorization is required.
500 Server ErrorThe server may return other error codes to indicate other error conditions. The body of the HTTP response will contain an OperationOutcome resource that indicates the nature of the error.

Profile Content

The official URL for this profile is:

http://hl7.org/fhir/StructureDefinition/careplan-profile

Healthcare plan for patient or group

Name Flags Card. Type Description & Constraints
.. CarePlan0..*CarePlan Healthcare plan for patient or group
... meta0..1Meta Metadata about the resource
... implicitRules?! 0..1uri A set of rules under which this content was created
... language0..1code Language of the resource content

Binding: IETF BCP-47 (required )
... textI0..1Narrative Text summary of the resource, for human interpretation
... contained0..*Resource Contained, inline Resources
... extension0..*Extension Additional Content defined by implementations
... modifierExtension?!0..*Extension Extensions that cannot be ignored
... identifier0..*Identifier External Ids for this plan
... subject0..1Reference (Patient | Group )Who care plan is for
... status?! 1..1code proposed | draft | active | completed | cancelled

Binding: CarePlanStatus (required )
... context0..1Reference (Encounter | EpisodeOfCare )Created in context of
... period0..1Period Time period plan covers
... author0..*Reference (Patient | Practitioner | RelatedPerson | Organization )Who is responsible for contents of the plan
... modified0..1dateTime When last updated
... category0..*CodeableConcept Type of plan

Binding: Care Plan Category (example )
... description0..1string Summary of nature of plan
... addresses0..*Reference (Condition )Health issues this plan addresses
... support0..*Reference (Resource )Information considered as part of plan
... relatedPlan0..*BackboneElement Plans related to this one
.... extension0..*Extension Additional Content defined by implementations
.... modifierExtension?!0..*Extension Extensions that cannot be ignored
.... code0..1code includes | replaces | fulfills

Binding: CarePlanRelationship (required )
.... plan1..1Reference (CarePlan )Plan relationship exists with
... participantBackboneElement Who's involved in plan?

Slice: Unordered, Closed, by member
... participant0..*BackboneElement Who's involved in plan?
.... extension0..*Extension Additional Content defined by implementations
.... modifierExtension?!0..*Extension Extensions that cannot be ignored
.... role0..1CodeableConcept Type of involvement

Binding: Participant Roles (example )
.... member0..1Reference (Practitioner | RelatedPerson | Patient | Organization )Who is involved
... participant0..1BackboneElement Who's involved in plan?
.... extension0..*Extension Additional Content defined by implementations
.... modifierExtension?!0..*Extension Extensions that cannot be ignored
.... role0..1CodeableConcept Type of involvement

Binding: Participant Roles (example )
.... member0..1Reference (Practitioner )Who is involved
... participant0..1BackboneElement Who's involved in plan?
.... extension0..*Extension Additional Content defined by implementations
.... modifierExtension?!0..*Extension Extensions that cannot be ignored
.... role0..1CodeableConcept Type of involvement

Binding: Participant Roles (example )
.... member0..1Reference (Practitioner )Who is involved
... participant0..1BackboneElement Who's involved in plan?
.... extension0..*Extension Additional Content defined by implementations
.... modifierExtension?!0..*Extension Extensions that cannot be ignored
.... role0..1CodeableConcept Type of involvement

Binding: Participant Roles (example )
.... member0..1Reference (Practitioner )Who is involved
... participant0..*BackboneElement Who's involved in plan?
.... extension0..*Extension Additional Content defined by implementations
.... modifierExtension?!0..*Extension Extensions that cannot be ignored
.... role0..1CodeableConcept Type of involvement

Binding: Participant Roles (example )
.... member0..1Reference (Practitioner | RelatedPerson | Patient | Organization )Who is involved
... goal0..*Reference (Goal )Desired outcome of plan
... activityI0..*BackboneElement Action to occur as part of plan

cpl-3: Provide a reference or detail, not both
.... extension0..*Extension Additional Content defined by implementations
.... modifierExtension?!0..*Extension Extensions that cannot be ignored
.... actionResulting0..*Reference (Resource )Appointments, orders, etc.
.... progress0..*Annotation Comments about the activity status/progress
.... referenceI0..1Reference (Appointment | CommunicationRequest | DeviceUseRequest | DiagnosticOrder | MedicationOrder | NutritionOrder | Order | ProcedureRequest | ProcessRequest | ReferralRequest | SupplyRequest | VisionPrescription )Activity details defined in specific resource
.... detailI0..1BackboneElement In-line definition of activity
..... extension0..*Extension Additional Content defined by implementations
..... modifierExtension?!0..*Extension Extensions that cannot be ignored
..... category0..1CodeableConcept diet | drug | encounter | observation | procedure | supply | other

Binding: CarePlanActivityCategory (example )
..... code0..1CodeableConcept Detail type of activity

Binding: Care Plan Activity (example )
..... reasonCode0..*CodeableConcept Why activity should be done

Binding: Activity Reason (example )
..... reasonReference0..*Reference (Condition )Condition triggering need for activity
..... goal0..*Reference (Goal )Goals this activity relates to
..... status?!0..1code not-started | scheduled | in-progress | on-hold | completed | cancelled

Binding: CarePlanActivityStatus (required )
..... statusReason0..1CodeableConcept Reason for current status

Binding: GoalStatusReason (example )
..... prohibited?!1..1boolean Do NOT do
..... scheduled[x]0..1Timing , Period , string When activity is to occur
..... location0..1Reference (Location )Where it should happen
..... performer0..*Reference (Practitioner | Organization | RelatedPerson | Patient )Who will be responsible?
..... product[x]0..1CodeableConcept , Reference (Medication ), Reference (Substance )What is to be administered/supplied

Binding: SNOMED CT Medication Codes (example )
..... dailyAmount0..1SimpleQuantity How to consume/day?
..... quantity0..1SimpleQuantity How much to administer/supply/consume
..... description0..1string Extra info describing activity to perform
... note0..1Annotation Comments about the plan


 

athenaPractice Mapping

The mappings in this section represent the how data stored within athenaPractice is served through the product's APIs. athenaPractice and athenaFlow share a common schema for patient clinical data and only one is shown when these are the same. Use of this information is subject to the the API Server Terms and Conditions.

CarePlan Profile
CarePlanCarePlan-ProfileFHIR_CAREPLANVIEW
 ├ idMakeId(%CAREPLANGROUPID%)
 ├ identifierMakeIdentifier("U",getSiteSystem("CarePlanId"),%CAREPLANGROUPID%)
 ├ subjectMakeReference("SUBJECT",%PID%,"Patient")
 ├ statusMapCode(%STATUS%,"CAREPLANSTATUS")
 ├ contextMakeReference("ENCOUNTER",%SDID%,"Encounter")
 ├ periodMakePeriod(%COMMITTEDDATE%)
 ├ authorMakeReference("AUTHOR",%CREATEDBYPVID%,"Practitioner")
 ├ modified%DB_UPDATED_DATE%
 ├ categoryMakeConcept(%CODE%,"http://argonaut.hl7.org")
 ├ description%COMMENTS%
 ├ addressesMakeReferenceList("PROBLEM", %PROBLEMID%,"Condition")
 ├ participantpractitionerparticipant
 ├ participantresponsibleprovider
  │ └ memberRESPDOCTORIDMakeReference("Practitioner",%RESPDOCTORID%,"Practitioner")
 ├ participantreferringprovider
  │ └ memberREFDOCTORIDMakeReference("Practitioner",%REFDOCTORID%,"Practitioner")
 ├ participantprimarycareprovider
  │ └ memberPRIMARYCAREDOCTORIDMakeReference("Practitioner",%PRIMARYCAREDOCTORID%,"Practitioner")
 ├ participantCARETEAMMEMBERSMakeCarePlanParticipantList("RelatedPerson", %CARETEAMMEMBERS%, "RelatedPerson")
 ├ goalMakeReferenceList("GOAL", %GOAL%,"Goal")
 ├ activityMakeActivityList(%CAREPLANGROUPID%)
 └ noteMakeAnnotation(%COMMENTS%)

athenaFlow Mapping

The mappings in this section represent the how data stored within athenaFlow is served through the product's APIs. Use of this information is subject to the the API Server Terms and Conditions.

CarePlan Profile
CarePlanCarePlan-ProfileFHIR_CAREPLANVIEW
 ├ idMakeId(%CAREPLANGROUPID%)
 ├ identifierMakeIdentifier("U",getSiteSystem("CarePlanId"),%CAREPLANGROUPID%)
 ├ subjectMakeReference("SUBJECT",%PID%,"Patient")
 ├ statusMapCode(%STATUS%,"CAREPLANSTATUS")
 ├ contextMakeReference("ENCOUNTER",%SDID%,"Encounter")
 ├ periodMakePeriod(%COMMITTEDDATE%)
 ├ authorMakeReference("AUTHOR",%CREATEDBYPVID%,"Practitioner")
 ├ modified%DB_UPDATED_DATE%
 ├ categoryMakeConcept(%CODE%,"http://argonaut.hl7.org")
 ├ description%COMMENTS%
 ├ addressesMakeReferenceList("PROBLEM", %PROBLEMID%,"Condition")
 ├ participantpractitionerparticipant
 ├ participantresponsibleprovider
  │ └ memberRESPDOCTORIDMakeReference("Practitioner",%RESPDOCTORID%,"Practitioner")
 ├ participantreferringprovider
  │ └ memberREFDOCTORIDMakeReference("Practitioner",%REFDOCTORID%,"Practitioner")
 ├ participantprimarycareprovider
  │ └ memberPRIMARYCAREDOCTORIDMakeReference("Practitioner",%PRIMARYCAREDOCTORID%,"Practitioner")
 ├ participantCARETEAMMEMBERSMakeCarePlanParticipantList("RelatedPerson",%CARETEAMMEMBERS%,"RelatedPerson")
 ├ goalMakeReferenceList("GOAL", %GOAL%,"Goal")
 ├ activityMakeActivityList(%CAREPLANGROUPID%)
 └ noteMakeAnnotation(%COMMENTS%)