This page is part of the FHIR Specification (v1.0.0: DSTU 2 Ballot 3). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions . Page versions: R5 R4B R4 R3 R2
Patient Administration Work Group | Maturity Level: 0 | Compartments: Patient, Practitioner |
An association between a patient and an organization / healthcare provider(s) during which time encounters may occur. The managing organization assumes a level of responsibility for the patient during this time.
The EpisodeOfCare Resource contains information about an association of a Patient with a Healthcare Provider for a period of time under which related healthcare activities may occur.
In many cases, this represents a period of time where the Healthcare Provider has some level of responsibility for the care of the patient regarding a specific condition or problem, even if not currently participating in an encounter.
These resources are typically known in existing systems as:
Many organizations can be involved in an EpisodeOfCare, however each organization will have their own EpisodeOfCare which tracks their responsibility with the Patient.
When an Organization completes their involvement with the patient and transfers care to another Organization.
This is often in the form of a referral to another Organization (or Organizations).
When an incoming referral is received a new EpisodeOfCare may be created for this organization.
The initial step(s) in the intake workflow for the referral often involve some form of assessment(s),
eligibility, capacity, care levels, which could take some time.
Once the intake process is completed and the patient is accepted, a CarePlan is often created.
The primary difference between the EpisodeOfCare and the Encounter is that the Encounter records the details of an
activity directly relating to the patient, while the EpisodeOfCare is the container that can link a series of Encounters
together for problems/issues.
The Example scenarios below give some good examples as to when you might want to be using an EpisodeOfCare.
This difference is a similar difference between the EpisodeOfCare and a CarePlan.
The EpisodeOfCare is a tracking resource, rather than a planning resource.
The EpisodeOfCare usually exists before the CarePlan.
You don't need a CarePlan to use an EpisodeOfCare.
Systems collect a coherent group of activities (such as encounters) related to a patient's health condition or problem often referred to as a Care Episode.
Information about an episode is often shared across systems, and in some cases organizational and disciplinary boundaries.
An Episode Of Care contains details about the purpose of the care and can exist without any activities.
The minimal information that would be required in an episode of care would be a patient, organization and a reason for the ongoing association.
Other reasons for creating an EpisodeOfCare could be for tracking the details required for government reporting or billing.
This resource is referenced by CarePlan and Encounter
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
EpisodeOfCare | DomainResource | An association of a Patient with an Organization and Healthcare Provider(s) for a period of time that the Organization assumes some level of responsibility | ||
identifier | 0..* | Identifier | Identifier(s) by which this EpisodeOfCare is known | |
status | ?! Σ | 1..1 | code | planned | waitlist | active | onhold | finished | cancelled EpisodeOfCareStatus (Required) |
statusHistory | 0..* | BackboneElement | The history of statuses that the EpisodeOfCare has been through (without requiring processing the history of the resource) | |
status | 1..1 | code | planned | waitlist | active | onhold | finished | cancelled EpisodeOfCareStatus (Required) | |
period | 1..1 | Period | The period during this EpisodeOfCare that the specific status applied | |
type | Σ | 0..* | CodeableConcept | Specific type of EpisodeOfCare |
condition | 0..* | Reference(Condition) | A list of conditions/problems/diagnoses that this episode of care is intended to be providing care for | |
patient | Σ | 1..1 | Reference(Patient) | The patient that this EpisodeOfCare applies to |
managingOrganization | Σ | 0..1 | Reference(Organization) | The organization that has assumed the specific responsibilities for the specified duration |
period | Σ | 0..1 | Period | The interval during which the managing organization assumes the defined responsibility |
referralRequest | 0..* | Reference(ReferralRequest) | Referral Request(s) that this EpisodeOfCare manages activities within | |
careManager | 0..1 | Reference(Practitioner) | The practitioner that is the care manager/care co-ordinator for this patient | |
careTeam | 0..* | BackboneElement | The list of practitioners that may be facilitating this episode of care for specific purposes | |
role | 0..* | CodeableConcept | The role that this team member is taking within this episode of care Participant Roles (Example) | |
period | 0..1 | Period | The period of time that this practitioner is performing some role within the episode of care | |
member | 0..1 | Reference(Practitioner | Organization) | The practitioner (or Organization) within the team | |
Documentation for this format |
UML Diagram
XML Template
<EpisodeOfCare xmlns="http://hl7.org/fhir"> <!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension --> <identifier><!-- 0..* Identifier Identifier(s) by which this EpisodeOfCare is known --></identifier> <status value="[code]"/><!-- 1..1 planned | waitlist | active | onhold | finished | cancelled --> <statusHistory> <!-- 0..* The history of statuses that the EpisodeOfCare has been through (without requiring processing the history of the resource) --> <status value="[code]"/><!-- 1..1 planned | waitlist | active | onhold | finished | cancelled --> <period><!-- 1..1 Period The period during this EpisodeOfCare that the specific status applied --></period> </statusHistory> <type><!-- 0..* CodeableConcept Specific type of EpisodeOfCare --></type> <condition><!-- 0..* Reference(Condition) A list of conditions/problems/diagnoses that this episode of care is intended to be providing care for --></condition> <patient><!-- 1..1 Reference(Patient) The patient that this EpisodeOfCare applies to --></patient> <managingOrganization><!-- 0..1 Reference(Organization) The organization that has assumed the specific responsibilities for the specified duration --></managingOrganization> <period><!-- 0..1 Period The interval during which the managing organization assumes the defined responsibility --></period> <referralRequest><!-- 0..* Reference(ReferralRequest) Referral Request(s) that this EpisodeOfCare manages activities within --></referralRequest> <careManager><!-- 0..1 Reference(Practitioner) The practitioner that is the care manager/care co-ordinator for this patient --></careManager> <careTeam> <!-- 0..* The list of practitioners that may be facilitating this episode of care for specific purposes --> <role><!-- 0..* CodeableConcept The role that this team member is taking within this episode of care --></role> <period><!-- 0..1 Period The period of time that this practitioner is performing some role within the episode of care --></period> <member><!-- 0..1 Reference(Practitioner|Organization) The practitioner (or Organization) within the team --></member> </careTeam> </EpisodeOfCare>
JSON Template
{ "resourceType" : "EpisodeOfCare", // from Resource: id, meta, implicitRules, and language // from DomainResource: text, contained, extension, and modifierExtension "identifier" : [{ Identifier }], // Identifier(s) by which this EpisodeOfCare is known "status" : "<code>", // R! planned | waitlist | active | onhold | finished | cancelled "statusHistory" : [{ // The history of statuses that the EpisodeOfCare has been through (without requiring processing the history of the resource) "status" : "<code>", // R! planned | waitlist | active | onhold | finished | cancelled "period" : { Period } // R! The period during this EpisodeOfCare that the specific status applied }], "type" : [{ CodeableConcept }], // Specific type of EpisodeOfCare "condition" : [{ Reference(Condition) }], // A list of conditions/problems/diagnoses that this episode of care is intended to be providing care for "patient" : { Reference(Patient) }, // R! The patient that this EpisodeOfCare applies to "managingOrganization" : { Reference(Organization) }, // The organization that has assumed the specific responsibilities for the specified duration "period" : { Period }, // The interval during which the managing organization assumes the defined responsibility "referralRequest" : [{ Reference(ReferralRequest) }], // Referral Request(s) that this EpisodeOfCare manages activities within "careManager" : { Reference(Practitioner) }, // The practitioner that is the care manager/care co-ordinator for this patient "careTeam" : [{ // The list of practitioners that may be facilitating this episode of care for specific purposes "role" : [{ CodeableConcept }], // The role that this team member is taking within this episode of care "period" : { Period }, // The period of time that this practitioner is performing some role within the episode of care "member" : { Reference(Practitioner|Organization) } // The practitioner (or Organization) within the team }] }
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
EpisodeOfCare | DomainResource | An association of a Patient with an Organization and Healthcare Provider(s) for a period of time that the Organization assumes some level of responsibility | ||
identifier | 0..* | Identifier | Identifier(s) by which this EpisodeOfCare is known | |
status | ?! Σ | 1..1 | code | planned | waitlist | active | onhold | finished | cancelled EpisodeOfCareStatus (Required) |
statusHistory | 0..* | BackboneElement | The history of statuses that the EpisodeOfCare has been through (without requiring processing the history of the resource) | |
status | 1..1 | code | planned | waitlist | active | onhold | finished | cancelled EpisodeOfCareStatus (Required) | |
period | 1..1 | Period | The period during this EpisodeOfCare that the specific status applied | |
type | Σ | 0..* | CodeableConcept | Specific type of EpisodeOfCare |
condition | 0..* | Reference(Condition) | A list of conditions/problems/diagnoses that this episode of care is intended to be providing care for | |
patient | Σ | 1..1 | Reference(Patient) | The patient that this EpisodeOfCare applies to |
managingOrganization | Σ | 0..1 | Reference(Organization) | The organization that has assumed the specific responsibilities for the specified duration |
period | Σ | 0..1 | Period | The interval during which the managing organization assumes the defined responsibility |
referralRequest | 0..* | Reference(ReferralRequest) | Referral Request(s) that this EpisodeOfCare manages activities within | |
careManager | 0..1 | Reference(Practitioner) | The practitioner that is the care manager/care co-ordinator for this patient | |
careTeam | 0..* | BackboneElement | The list of practitioners that may be facilitating this episode of care for specific purposes | |
role | 0..* | CodeableConcept | The role that this team member is taking within this episode of care Participant Roles (Example) | |
period | 0..1 | Period | The period of time that this practitioner is performing some role within the episode of care | |
member | 0..1 | Reference(Practitioner | Organization) | The practitioner (or Organization) within the team | |
Documentation for this format |
XML Template
<EpisodeOfCare xmlns="http://hl7.org/fhir"> <!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension --> <identifier><!-- 0..* Identifier Identifier(s) by which this EpisodeOfCare is known --></identifier> <status value="[code]"/><!-- 1..1 planned | waitlist | active | onhold | finished | cancelled --> <statusHistory> <!-- 0..* The history of statuses that the EpisodeOfCare has been through (without requiring processing the history of the resource) --> <status value="[code]"/><!-- 1..1 planned | waitlist | active | onhold | finished | cancelled --> <period><!-- 1..1 Period The period during this EpisodeOfCare that the specific status applied --></period> </statusHistory> <type><!-- 0..* CodeableConcept Specific type of EpisodeOfCare --></type> <condition><!-- 0..* Reference(Condition) A list of conditions/problems/diagnoses that this episode of care is intended to be providing care for --></condition> <patient><!-- 1..1 Reference(Patient) The patient that this EpisodeOfCare applies to --></patient> <managingOrganization><!-- 0..1 Reference(Organization) The organization that has assumed the specific responsibilities for the specified duration --></managingOrganization> <period><!-- 0..1 Period The interval during which the managing organization assumes the defined responsibility --></period> <referralRequest><!-- 0..* Reference(ReferralRequest) Referral Request(s) that this EpisodeOfCare manages activities within --></referralRequest> <careManager><!-- 0..1 Reference(Practitioner) The practitioner that is the care manager/care co-ordinator for this patient --></careManager> <careTeam> <!-- 0..* The list of practitioners that may be facilitating this episode of care for specific purposes --> <role><!-- 0..* CodeableConcept The role that this team member is taking within this episode of care --></role> <period><!-- 0..1 Period The period of time that this practitioner is performing some role within the episode of care --></period> <member><!-- 0..1 Reference(Practitioner|Organization) The practitioner (or Organization) within the team --></member> </careTeam> </EpisodeOfCare>
JSON Template
{ "resourceType" : "EpisodeOfCare", // from Resource: id, meta, implicitRules, and language // from DomainResource: text, contained, extension, and modifierExtension "identifier" : [{ Identifier }], // Identifier(s) by which this EpisodeOfCare is known "status" : "<code>", // R! planned | waitlist | active | onhold | finished | cancelled "statusHistory" : [{ // The history of statuses that the EpisodeOfCare has been through (without requiring processing the history of the resource) "status" : "<code>", // R! planned | waitlist | active | onhold | finished | cancelled "period" : { Period } // R! The period during this EpisodeOfCare that the specific status applied }], "type" : [{ CodeableConcept }], // Specific type of EpisodeOfCare "condition" : [{ Reference(Condition) }], // A list of conditions/problems/diagnoses that this episode of care is intended to be providing care for "patient" : { Reference(Patient) }, // R! The patient that this EpisodeOfCare applies to "managingOrganization" : { Reference(Organization) }, // The organization that has assumed the specific responsibilities for the specified duration "period" : { Period }, // The interval during which the managing organization assumes the defined responsibility "referralRequest" : [{ Reference(ReferralRequest) }], // Referral Request(s) that this EpisodeOfCare manages activities within "careManager" : { Reference(Practitioner) }, // The practitioner that is the care manager/care co-ordinator for this patient "careTeam" : [{ // The list of practitioners that may be facilitating this episode of care for specific purposes "role" : [{ CodeableConcept }], // The role that this team member is taking within this episode of care "period" : { Period }, // The period of time that this practitioner is performing some role within the episode of care "member" : { Reference(Practitioner|Organization) } // The practitioner (or Organization) within the team }] }
Alternate definitions: Schema/Schematron, Resource Profile (XML, JSON), Questionnaire
Path | Definition | Type | Reference |
---|---|---|---|
EpisodeOfCare.status EpisodeOfCare.statusHistory.status | The status of the encounter | Required | EpisodeOfCareStatus |
EpisodeOfCare.careTeam.role | Type of participation expected by a team member | Example | Participant Roles |
When an Organization assumes responsibility for a patient, then the EpisodeOfCare is created and a start date
entered to show when it has begun.
As the Organizations responsibility changes, as does the status of the EpisodeOfCare.
This is described via an example below for an example intake workflow.
With long term care there is often a concept of the provision of care being suspended for various reasons.
Many systems have extensive Leave Management/Tracking solutions which consider the complexities of this space,
however this EpisodeOfCare resource is NOT intended to provide this level of tracking.
Extension(s) may be used on the status/status history to track the onhold reason which can facilitite the processing.
A more complete Leave Management solution may have to deal with:
This example sequence demonstrates some status transitions and how other resources interact.
The context could be in a Community/Aged Care/Disability/Mental Health setting.
In some jurisdictions an Organization may be funded by a government body for the days that a patient is under
their care. These are known as "active days". This does not mean that they are actively receiving a service (an encounter),
but that the organization is responsible for managing their care.
This monthly reporting value can be easily extracted from the status history as described above.
The actual provision of services may also be funded separately, and this would be via the Encounters.
An Organization may perform analytics on their Episodes Of Care to have an understanding of how their business is performing.
Observing that there was a 60/40 split of episodes being finished/cancelled is not very informative. The organization would
prefer to know the reason why the episodes are completing so that they can plan their business effectively.
They’d be more interested in knowing whether it was due to services hitting their mandatory end date, client passing away,
client transitioning to a higher level of services provided by them or to another provider etc.
Currently there are no attributes on this resource to provide this information. This would be very specific to each implementation and usage, so it would be recommended to use extensions to achieve this functionality.
A General Practitioner wants to review how well his patient is managing his diabetes over time from information within his clinic and also the regional community care organization's system(s).
The EpisodeOfCare enables the practitioner to easily separate the diabetes activities from the mental health problem's activities.
A Community Care organization wants to track all activities that occur with a patient relating to their disability to simplify the reporting to the government to receive funding to care for the patient
Search parameters for this resource. The common parameters also apply. See Searching for more information about searching in REST, messaging, and services.
Name | Type | Description | Paths |
care-manager | reference | The practitioner that is the care manager/care co-ordinator for this patient | EpisodeOfCare.careManager (Practitioner) |
condition | reference | A list of conditions/problems/diagnoses that this episode of care is intended to be providing care for | EpisodeOfCare.condition (Condition) |
date | date | The provided date search value falls within the episode of care's period | EpisodeOfCare.period |
identifier | token | Identifier(s) by which this EpisodeOfCare is known | EpisodeOfCare.identifier |
incomingreferral | reference | Incoming Referral Request | EpisodeOfCare.referralRequest (ReferralRequest) |
organization | reference | The organization that has assumed the specific responsibilities of this EpisodeOfCare | EpisodeOfCare.managingOrganization (Organization) |
patient | reference | The patient that this EpisodeOfCare applies to | EpisodeOfCare.patient (Patient) |
status | token | The current status of the Episode of Care as provided (does not check the status history collection) | EpisodeOfCare.status |
team-member | reference | A Practitioner or Organization allocated to the care team for this EpisodeOfCare | EpisodeOfCare.careTeam.member (Organization, Practitioner) |
type | token | Specific type of EpisodeOfCare | EpisodeOfCare.type |