Argonaut Data Query Implementation Guide Version 1.0.0

This page is part of the Argonaut Data Query Implementation Guide (v1.0.0: Release) based on FHIR R2. This is the current published version. For a full list of available versions, see the Directory of published versions

D.4.1 StructureDefinition-argo-careteam

This profile sets minimum expectations for the CarePlan resource for identifying the Care team members associated with a patient. It identifies which core elements, extensions, vocabularies and value sets SHALL be present in the resource when using this profile. Note: in FHIR STU3 the new CareTeam resource is recommended.

Example Usage Scenarios:

The following are example usage scenarios for the Argonaut CareTeam profile:

  • Query for a Patient’s CareTeam
  • Record or update a Patient’s CareTeam
Mandatory Data Elements and Terminology

Since we are using the CarePlan Resource for identifying the Care team members, constraints on that resource are defined for this purpose only. i.e. creating a CareTeam profile using CarePlan. The following data-elements are mandatory (i.e data MUST be present). These are presented below in a simple human-readable explanation. Profile specific guidance and examples are provided as well. The Formal Profile Definition below provides the formal summary, definitions, and terminology requirements.

Each CareTeam must have:

  1. a patient
  2. a status code
  3. a category code of “careteam”
  4. a participant role for each careteam members
  5. names of careteam members which can be:
    • a practitioner (doctor, nurse, therapist)
    • the patient
    • a relative or friend or guardian
    • an organization

Profile specific implementation guidance:

  • none

Examples

D.4.1.1 Formal Views of Profile Content

The official URL for this profile is:

http://fhir.org/guides/argonaut/StructureDefinition/argo-careteam

This profile builds on CarePlan.

This profile was published on Tue Oct 18 00:00:00 AEDT 2016 as a draft by Argonaut Project.

Description of Profiles, Differentials, Snapshots, and how the XML and JSON presentations work.

Complete Summary of the Mandatory Requirements

  1. One reference to a patient in CareTeam.subject
  2. A status code in CareTeam.status which has a required binding to the CarePlanStatus value set.
  3. A category in Careplan.category which must have:
    • a fixed Careplan.category.coding.system = “http://argonaut.hl7.org/
    • a fixed Careplan.category.coding.code = “careteam”
  4. One participant role for each careteam member in CareTeam.participant.role which has an extensible + max valueset binding to the to the CareTeam Provider Role Value Set value set.
  5. Careteam members in CareTeam.participant.member
NameFlagsCard.TypeDescription & Constraintsdoco
.. CarePlan 0..*Argonaut CareTeam Profile
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: IETF BCP-47 (required)
... text I0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional Content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier Σ0..*IdentifierExternal Ids for this plan
... subject S1..1Reference(Argonaut Patient Profile)Who care plan is for
... status ?!S1..1codeproposed | draft | active | completed | cancelled
Binding: CarePlanStatus (required)
... context Σ0..1Reference(Encounter), Reference(EpisodeOfCare)Created in context of
... period Σ0..1PeriodTime period plan covers
... author Σ0..*Reference(Patient), Reference(Practitioner), Reference(RelatedPerson), Reference(Organization)Who is responsible for contents of the plan
... modified Σ0..1dateTimeWhen last updated
... category SI1..*CodeableConceptType of plan
Binding: Care Plan Category (example)
arg-1: Must have a category of 'careteam' and a code system 'http://argonaut.hl7.org'
... description Σ0..1stringSummary of nature of plan
... addresses Σ0..*Reference(Condition)Health issues this plan addresses
... support 0..*Reference(Resource)Information considered as part of plan
... relatedPlan 0..*BackboneElementPlans related to this one
.... id 0..1idxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
.... code 0..1codeincludes | replaces | fulfills
Binding: CarePlanRelationship (required)
.... plan 1..1Reference(CarePlan)Plan relationship exists with
... participant S1..*BackboneElementWho's involved in plan?
.... id 0..1idxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
.... role S1..1CodeableConceptType of involvement
Binding: Care Team Provider Roles (extensible)
.... member S1..1Reference(Argonaut Patient Profile), Reference(Practitioner), Reference(RelatedPerson), Reference(Organization)Who is involved
... goal 0..*Reference(Goal)Desired outcome of plan
... activity I0..*BackboneElementAction to occur as part of plan
cpl-3: Provide a reference or detail, not both
.... id 0..1idxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
.... actionResulting 0..*Reference(Resource)Appointments, orders, etc.
.... progress 0..*AnnotationComments about the activity status/progress
.... reference I0..1Reference(Appointment), Reference(CommunicationRequest), Reference(DeviceUseRequest), Reference(DiagnosticOrder), Reference(MedicationOrder), Reference(NutritionOrder), Reference(Order), Reference(ProcedureRequest), Reference(ProcessRequest), Reference(ReferralRequest), Reference(SupplyRequest), Reference(VisionPrescription)Activity details defined in specific resource
.... detail I0..1BackboneElementIn-line definition of activity
..... id 0..1idxml:id (or equivalent in JSON)
..... extension 0..*ExtensionAdditional Content defined by implementations
..... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
..... category 0..1CodeableConceptdiet | drug | encounter | observation | procedure | supply | other
Binding: CarePlanActivityCategory (example)
..... code 0..1CodeableConceptDetail type of activity
Binding: Care Plan Activity (example)
..... reasonCode 0..*CodeableConceptWhy activity should be done
Binding: Activity Reason (example)
..... reasonReference 0..*Reference(Condition)Condition triggering need for activity
..... goal 0..*Reference(Goal)Goals this activity relates to
..... status ?!0..1codenot-started | scheduled | in-progress | on-hold | completed | cancelled
Binding: CarePlanActivityStatus (required)
..... statusReason 0..1CodeableConceptReason for current status
Binding: GoalStatusReason (example)
..... prohibited ?!1..1booleanDo NOT do
..... scheduled[x] 0..1Timing, Period, stringWhen activity is to occur
..... location 0..1Reference(Location)Where it should happen
..... performer 0..*Reference(Practitioner), Reference(Organization), Reference(RelatedPerson), Reference(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)
..... dailyAmount 0..1SimpleQuantityHow to consume/day?
..... quantity 0..1SimpleQuantityHow much to administer/supply/consume
..... description 0..1stringExtra info describing activity to perform
... note 0..1AnnotationComments about the plan

doco Documentation for this format

Complete Summary of the Mandatory Requirements

  1. One reference to a patient in CareTeam.subject
  2. A status code in CareTeam.status which has a required binding to the CarePlanStatus value set.
  3. A category in Careplan.category which must have:
    • a fixed Careplan.category.coding.system = “http://argonaut.hl7.org/
    • a fixed Careplan.category.coding.code = “careteam”
  4. One participant role for each careteam member in CareTeam.participant.role which has an extensible + max valueset binding to the to the CareTeam Provider Role Value Set value set.
  5. Careteam members in CareTeam.participant.member

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. CarePlan 0..*Argonaut CareTeam Profile
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: IETF BCP-47 (required)
... text I0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional Content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier Σ0..*IdentifierExternal Ids for this plan
... subject S1..1Reference(Argonaut Patient Profile)Who care plan is for
... status ?!S1..1codeproposed | draft | active | completed | cancelled
Binding: CarePlanStatus (required)
... context Σ0..1Reference(Encounter), Reference(EpisodeOfCare)Created in context of
... period Σ0..1PeriodTime period plan covers
... author Σ0..*Reference(Patient), Reference(Practitioner), Reference(RelatedPerson), Reference(Organization)Who is responsible for contents of the plan
... modified Σ0..1dateTimeWhen last updated
... category SI1..*CodeableConceptType of plan
Binding: Care Plan Category (example)
arg-1: Must have a category of 'careteam' and a code system 'http://argonaut.hl7.org'
... description Σ0..1stringSummary of nature of plan
... addresses Σ0..*Reference(Condition)Health issues this plan addresses
... support 0..*Reference(Resource)Information considered as part of plan
... relatedPlan 0..*BackboneElementPlans related to this one
.... id 0..1idxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
.... code 0..1codeincludes | replaces | fulfills
Binding: CarePlanRelationship (required)
.... plan 1..1Reference(CarePlan)Plan relationship exists with
... participant S1..*BackboneElementWho's involved in plan?
.... id 0..1idxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
.... role S1..1CodeableConceptType of involvement
Binding: Care Team Provider Roles (extensible)
.... member S1..1Reference(Argonaut Patient Profile), Reference(Practitioner), Reference(RelatedPerson), Reference(Organization)Who is involved
... goal 0..*Reference(Goal)Desired outcome of plan
... activity I0..*BackboneElementAction to occur as part of plan
cpl-3: Provide a reference or detail, not both
.... id 0..1idxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
.... actionResulting 0..*Reference(Resource)Appointments, orders, etc.
.... progress 0..*AnnotationComments about the activity status/progress
.... reference I0..1Reference(Appointment), Reference(CommunicationRequest), Reference(DeviceUseRequest), Reference(DiagnosticOrder), Reference(MedicationOrder), Reference(NutritionOrder), Reference(Order), Reference(ProcedureRequest), Reference(ProcessRequest), Reference(ReferralRequest), Reference(SupplyRequest), Reference(VisionPrescription)Activity details defined in specific resource
.... detail I0..1BackboneElementIn-line definition of activity
..... id 0..1idxml:id (or equivalent in JSON)
..... extension 0..*ExtensionAdditional Content defined by implementations
..... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
..... category 0..1CodeableConceptdiet | drug | encounter | observation | procedure | supply | other
Binding: CarePlanActivityCategory (example)
..... code 0..1CodeableConceptDetail type of activity
Binding: Care Plan Activity (example)
..... reasonCode 0..*CodeableConceptWhy activity should be done
Binding: Activity Reason (example)
..... reasonReference 0..*Reference(Condition)Condition triggering need for activity
..... goal 0..*Reference(Goal)Goals this activity relates to
..... status ?!0..1codenot-started | scheduled | in-progress | on-hold | completed | cancelled
Binding: CarePlanActivityStatus (required)
..... statusReason 0..1CodeableConceptReason for current status
Binding: GoalStatusReason (example)
..... prohibited ?!1..1booleanDo NOT do
..... scheduled[x] 0..1Timing, Period, stringWhen activity is to occur
..... location 0..1Reference(Location)Where it should happen
..... performer 0..*Reference(Practitioner), Reference(Organization), Reference(RelatedPerson), Reference(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)
..... dailyAmount 0..1SimpleQuantityHow to consume/day?
..... quantity 0..1SimpleQuantityHow much to administer/supply/consume
..... description 0..1stringExtra info describing activity to perform
... note 0..1AnnotationComments about the plan

doco Documentation for this format

Downloads: StructureDefinition: (XML, JSON, CSV), Schema: XML Schematron

 

D.4.1.2 Quick Start

Below is an overview of the required search and read operations for this profile. See the Conformance requirements for the Argonaut Data Query implementation guide server for a complete list of supported RESTful operations and search parameters for this IG.

GET/CarePlan?patient=[id]&category=careteam&status=active

Example:

GET https://fhir-open-api-dstu2.smarthealthit.org/CarePlan?patient=1137192&category=careteam

Support: Mandatory to support search by patient, category and status.

Implementation Notes: Search for all current care team members for a patient. Fetches a bundle of all current CarePlan resource(s) with a careteam category for the specified patient. (how to search by reference), (how to search by token).

Response Class:

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