This page is part of the Pharmacist Care Plan FHIR IG (v1.0.0: STU 1) based on FHIR R4. This is the current published version in it's permanent home (it will always be available at this URL). For a full list of available versions, see the Directory of published versions
Defining URL: | http://hl7.org/fhir/us/phcp/StructureDefinition/PhCP-Medication-Therapy-Condition |
Version: | 1.0.0 |
Name: | PhCPMedicationTherapyCondition |
Title: | PhCP Medication Therapy Condition |
Status: | Draft as of 2021-02-11T17:05:52+00:00 |
Definition: | This profile represents a medication therapy problem. A medication therapy problem is any undesirable event experienced by a patient that involves, or is suspected to involve, drug therapy, and that interferes with achieving the desired goals of therapy and requires professional judgment to resolve. This profile constrains the US Core Condition profile. It includes value sets intended for use by pharmacy systems. Everywhere it is referenced, an unconstrained US Core Condition reference is also allowed. |
Publisher: | HL7 Structured Documents Work Group |
Source Resource: | XML / JSON / Turtle |
The official URL for this profile is:
http://hl7.org/fhir/us/phcp/StructureDefinition/PhCP-Medication-Therapy-Condition
Description of Profiles, Differentials, Snapshots and how the different presentations work.
This structure is derived from USCoreCondition
This structure is derived from USCoreCondition
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Condition | 0..* | USCoreCondition | Detailed information about conditions, problems or diagnoses | |
code | S | 1..1 | CodeableConcept | Identification of the condition, problem or diagnosis Binding: VSAC 2.16.840.1.113762.1.4.1096.213 (preferred) |
evidence | S | 0..* | BackboneElement | Supporting evidence |
Documentation for this format |
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Condition | I | 0..* | USCoreCondition | Detailed information about conditions, problems or diagnoses |
id | Σ | 0..1 | string | Logical id of this artifact |
meta | Σ | 0..1 | Meta | Metadata about the resource |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
language | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred) Max Binding: AllLanguages: A human language. | |
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |
contained | 0..* | Resource | Contained, inline Resources | |
extension | 0..* | Extension | Additional content defined by implementations | |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored |
identifier | Σ | 0..* | Identifier | External Ids for this condition |
clinicalStatus | ?!SΣI | 0..1 | CodeableConcept | active | recurrence | relapse | inactive | remission | resolved Binding: ConditionClinicalStatusCodes (required) |
verificationStatus | ?!SΣI | 0..1 | CodeableConcept | unconfirmed | provisional | differential | confirmed | refuted | entered-in-error Binding: ConditionVerificationStatus (required) |
category | SI | 1..* | CodeableConcept | problem-list-item | encounter-diagnosis | health-concern Binding: US Core Condition Category Codes (extensible) |
severity | 0..1 | CodeableConcept | Subjective severity of condition Binding: Condition/DiagnosisSeverity (preferred): A subjective assessment of the severity of the condition as evaluated by the clinician. | |
code | SΣ | 1..1 | CodeableConcept | Identification of the condition, problem or diagnosis Binding: VSAC 2.16.840.1.113762.1.4.1096.213 (preferred) |
bodySite | Σ | 0..* | CodeableConcept | Anatomical location, if relevant Binding: SNOMEDCTBodyStructures (example): Codes describing anatomical locations. May include laterality. |
subject | SΣ | 1..1 | Reference(US Core Patient Profile) | Who has the condition? |
encounter | Σ | 0..1 | Reference(Encounter) | Encounter created as part of |
onset[x] | Σ | 0..1 | Estimated or actual date, date-time, or age | |
onsetDateTime | dateTime | |||
onsetAge | Age | |||
onsetPeriod | Period | |||
onsetRange | Range | |||
onsetString | string | |||
abatement[x] | I | 0..1 | When in resolution/remission | |
abatementDateTime | dateTime | |||
abatementAge | Age | |||
abatementPeriod | Period | |||
abatementRange | Range | |||
abatementString | string | |||
recordedDate | Σ | 0..1 | dateTime | Date record was first recorded |
recorder | Σ | 0..1 | Reference(Practitioner | PractitionerRole | Patient | RelatedPerson) | Who recorded the condition |
asserter | Σ | 0..1 | Reference(Practitioner | PractitionerRole | Patient | RelatedPerson) | Person who asserts this condition |
stage | I | 0..* | BackboneElement | Stage/grade, usually assessed formally con-1: Stage SHALL have summary or assessment |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
summary | I | 0..1 | CodeableConcept | Simple summary (disease specific) Binding: ConditionStage (example): Codes describing condition stages (e.g. Cancer stages). |
assessment | I | 0..* | Reference(ClinicalImpression | DiagnosticReport | Observation) | Formal record of assessment |
type | 0..1 | CodeableConcept | Kind of staging Binding: ConditionStageType (example): Codes describing the kind of condition staging (e.g. clinical or pathological). | |
evidence | SI | 0..* | BackboneElement | Supporting evidence |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
code | ΣI | 0..* | CodeableConcept | Manifestation/symptom Binding: ManifestationAndSymptomCodes (example): Codes that describe the manifestation or symptoms of a condition. |
detail | ΣI | 0..* | Reference(Resource) | Supporting information found elsewhere |
note | 0..* | Annotation | Additional information about the Condition | |
Documentation for this format |
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Condition | I | 0..* | USCoreCondition | Detailed information about conditions, problems or diagnoses |
clinicalStatus | ?!ΣI | 0..1 | CodeableConcept | active | recurrence | relapse | inactive | remission | resolved Binding: ConditionClinicalStatusCodes (required) |
verificationStatus | ?!ΣI | 0..1 | CodeableConcept | unconfirmed | provisional | differential | confirmed | refuted | entered-in-error Binding: ConditionVerificationStatus (required) |
category | I | 1..* | CodeableConcept | problem-list-item | encounter-diagnosis | health-concern Binding: US Core Condition Category Codes (extensible) |
code | Σ | 1..1 | CodeableConcept | Identification of the condition, problem or diagnosis Binding: VSAC 2.16.840.1.113762.1.4.1096.213 (preferred) |
subject | Σ | 1..1 | Reference(US Core Patient Profile) | Who has the condition? |
evidence | I | 0..* | BackboneElement | Supporting evidence |
Documentation for this format |
This structure is derived from USCoreCondition
Differential View
This structure is derived from USCoreCondition
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Condition | 0..* | USCoreCondition | Detailed information about conditions, problems or diagnoses | |
code | S | 1..1 | CodeableConcept | Identification of the condition, problem or diagnosis Binding: VSAC 2.16.840.1.113762.1.4.1096.213 (preferred) |
evidence | S | 0..* | BackboneElement | Supporting evidence |
Documentation for this format |
Snapshot View
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Condition | I | 0..* | USCoreCondition | Detailed information about conditions, problems or diagnoses |
id | Σ | 0..1 | string | Logical id of this artifact |
meta | Σ | 0..1 | Meta | Metadata about the resource |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
language | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred) Max Binding: AllLanguages: A human language. | |
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |
contained | 0..* | Resource | Contained, inline Resources | |
extension | 0..* | Extension | Additional content defined by implementations | |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored |
identifier | Σ | 0..* | Identifier | External Ids for this condition |
clinicalStatus | ?!SΣI | 0..1 | CodeableConcept | active | recurrence | relapse | inactive | remission | resolved Binding: ConditionClinicalStatusCodes (required) |
verificationStatus | ?!SΣI | 0..1 | CodeableConcept | unconfirmed | provisional | differential | confirmed | refuted | entered-in-error Binding: ConditionVerificationStatus (required) |
category | SI | 1..* | CodeableConcept | problem-list-item | encounter-diagnosis | health-concern Binding: US Core Condition Category Codes (extensible) |
severity | 0..1 | CodeableConcept | Subjective severity of condition Binding: Condition/DiagnosisSeverity (preferred): A subjective assessment of the severity of the condition as evaluated by the clinician. | |
code | SΣ | 1..1 | CodeableConcept | Identification of the condition, problem or diagnosis Binding: VSAC 2.16.840.1.113762.1.4.1096.213 (preferred) |
bodySite | Σ | 0..* | CodeableConcept | Anatomical location, if relevant Binding: SNOMEDCTBodyStructures (example): Codes describing anatomical locations. May include laterality. |
subject | SΣ | 1..1 | Reference(US Core Patient Profile) | Who has the condition? |
encounter | Σ | 0..1 | Reference(Encounter) | Encounter created as part of |
onset[x] | Σ | 0..1 | Estimated or actual date, date-time, or age | |
onsetDateTime | dateTime | |||
onsetAge | Age | |||
onsetPeriod | Period | |||
onsetRange | Range | |||
onsetString | string | |||
abatement[x] | I | 0..1 | When in resolution/remission | |
abatementDateTime | dateTime | |||
abatementAge | Age | |||
abatementPeriod | Period | |||
abatementRange | Range | |||
abatementString | string | |||
recordedDate | Σ | 0..1 | dateTime | Date record was first recorded |
recorder | Σ | 0..1 | Reference(Practitioner | PractitionerRole | Patient | RelatedPerson) | Who recorded the condition |
asserter | Σ | 0..1 | Reference(Practitioner | PractitionerRole | Patient | RelatedPerson) | Person who asserts this condition |
stage | I | 0..* | BackboneElement | Stage/grade, usually assessed formally con-1: Stage SHALL have summary or assessment |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
summary | I | 0..1 | CodeableConcept | Simple summary (disease specific) Binding: ConditionStage (example): Codes describing condition stages (e.g. Cancer stages). |
assessment | I | 0..* | Reference(ClinicalImpression | DiagnosticReport | Observation) | Formal record of assessment |
type | 0..1 | CodeableConcept | Kind of staging Binding: ConditionStageType (example): Codes describing the kind of condition staging (e.g. clinical or pathological). | |
evidence | SI | 0..* | BackboneElement | Supporting evidence |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
code | ΣI | 0..* | CodeableConcept | Manifestation/symptom Binding: ManifestationAndSymptomCodes (example): Codes that describe the manifestation or symptoms of a condition. |
detail | ΣI | 0..* | Reference(Resource) | Supporting information found elsewhere |
note | 0..* | Annotation | Additional information about the Condition | |
Documentation for this format |
Other representations of profile: Schematron
Path | Conformance | ValueSet |
Condition.language | preferred | CommonLanguages Max Binding: AllLanguages |
Condition.clinicalStatus | required | ConditionClinicalStatusCodes |
Condition.verificationStatus | required | ConditionVerificationStatus |
Condition.category | extensible | USCoreConditionCategoryCodes |
Condition.severity | preferred | Condition/DiagnosisSeverity |
Condition.code | preferred | http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1096.213 |
Condition.bodySite | example | SNOMEDCTBodyStructures |
Condition.stage.summary | example | ConditionStage |
Condition.stage.type | example | ConditionStageType |
Condition.evidence.code | example | ManifestationAndSymptomCodes |
Id | Path | Details | Requirements |
con-3 | Condition | Condition.clinicalStatus SHALL be present if verificationStatus is not entered-in-error and category is problem-list-item : clinicalStatus.exists() or verificationStatus.coding.where(system='http://terminology.hl7.org/CodeSystem/condition-ver-status' and code = 'entered-in-error').exists() or category.select($this='problem-list-item').empty() | |
con-4 | Condition | If condition is abated, then clinicalStatus must be either inactive, resolved, or remission : abatement.empty() or clinicalStatus.coding.where(system='http://terminology.hl7.org/CodeSystem/condition-clinical' and (code='resolved' or code='remission' or code='inactive')).exists() | |
con-5 | Condition | Condition.clinicalStatus SHALL NOT be present if verification Status is entered-in-error : verificationStatus.coding.where(system='http://terminology.hl7.org/CodeSystem/condition-ver-status' and code='entered-in-error').empty() or clinicalStatus.empty() | |
dom-2 | Condition | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | Condition | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource : contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | Condition | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated : contained.meta.versionId.empty() and contained.meta.lastUpdated.empty() | |
dom-5 | Condition | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | Condition | A resource should have narrative for robust management : text.`div`.exists() | |
us-core-1 | Condition | A code in Condition.category SHOULD be from US Core Condition Category Codes value set. : where(category.memberOf('http://hl7.org/fhir/us/core/ValueSet/us-core-condition-category')).exists() | |
ele-1 | Condition.meta | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Condition.implicitRules | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Condition.language | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Condition.text | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Condition.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | Condition.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | Condition.modifierExtension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | Condition.modifierExtension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | Condition.identifier | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Condition.clinicalStatus | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Condition.verificationStatus | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Condition.category | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Condition.severity | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Condition.code | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Condition.bodySite | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Condition.subject | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Condition.encounter | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Condition.onset[x] | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Condition.abatement[x] | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Condition.recordedDate | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Condition.recorder | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Condition.asserter | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
con-1 | Condition.stage | Stage SHALL have summary or assessment : summary.exists() or assessment.exists() | |
ele-1 | Condition.stage | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Condition.stage.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | Condition.stage.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | Condition.stage.modifierExtension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | Condition.stage.modifierExtension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | Condition.stage.summary | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Condition.stage.assessment | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Condition.stage.type | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
con-2 | Condition.evidence | evidence SHALL have code or details : code.exists() or detail.exists() | |
ele-1 | Condition.evidence | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Condition.evidence.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | Condition.evidence.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | Condition.evidence.modifierExtension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | Condition.evidence.modifierExtension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | Condition.evidence.code | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Condition.evidence.detail | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Condition.note | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |