Onconova Implementation Guide
0.2.0 - ci-build
Onconova Implementation Guide - Local Development build (v0.2.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions
| Official URL: http://onconova.github.io/fhir/StructureDefinition/onconova-comorbidities | Version: 0.2.0 | |||
| Active as of 2026-03-18 | Computable Name: OnconovaComorbidities | |||
A profile representing comorbidities for a cancer patient, i.e. other health conditions that exist alongside the primary cancer diagnosis. Supports existing comorbidity panels such as the Charlson Comorbidity Index (CCI) and Elixhauser Comorbidity Index (ECI) with comorbidity indexes.
The profile constrains the mCODE Comorbidities profile to ensure consistent use of ICD-10 codes for documenting comorbid conditions, and to link the comorbidity information to the Onconova primary cancer condition profile.
Conformance:
Observation resources representing a generic or panel comorbidities assessment in the scope of Onconova SHALL conform to this profile. Any resource intended to conform to this profile SHOULD populate meta.profile accordingly.
Usages:
You can also check for usages in the FHIR IG Statistics
Description of Profiles, Differentials, Snapshots and how the different presentations work.
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() | ||||||
|---|---|---|---|---|---|---|---|---|---|---|
![]() |
C | 0..* | Comorbidities | assessment observation Constraints: obs-6, obs-7, com-1, com-req-1, com-req-2, com-req-3 | ||||||
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||||
![]() ![]() |
S | 0..* | Extension | Extension Slice: Unordered, Open by value:url | ||||||
![]() ![]() ![]() |
S | 0..* | (Complex) | Related Condition Extension URL: http://hl7.org/fhir/us/mcode/StructureDefinition/mcode-related-condition | ||||||
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||||||||
![]() ![]() ![]() ![]() |
1..1 | uri | "http://hl7.org/fhir/us/mcode/StructureDefinition/mcode-related-condition" | |||||||
![]() ![]() ![]() ![]() |
O | 1..1 | CodeableConcept | Value of extension Binding: ICD-10 Codes Value Set (required)
| ||||||
![]() ![]() ![]() |
S | 0..* | (Complex) | Related Condition Absent Extension URL: http://hl7.org/fhir/us/mcode/StructureDefinition/mcode-related-condition-absent | ||||||
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||||||||
![]() ![]() ![]() ![]() |
1..1 | uri | "http://hl7.org/fhir/us/mcode/StructureDefinition/mcode-related-condition-absent" | |||||||
![]() ![]() ![]() ![]() |
O | 1..1 | CodeableConcept | Value of extension Binding: ICD-10 Codes Value Set (required)
| ||||||
![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored | ||||||
![]() ![]() |
Σ | 0..* | Reference(CarePlan | DeviceRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest) | Not used in this profile | ||||||
![]() ![]() |
Σ | 0..* | Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Immunization | ImagingStudy) | Not used in this profile | ||||||
![]() ![]() |
?!SΣ | 1..1 | code | Not used in this profile Binding: ObservationStatus (required): Codes providing the status of an observation. | ||||||
![]() ![]() |
S | 1..* | CodeableConcept | (USCDI) Classification of type of observation Slice: Unordered, Open by pattern:$this Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories. | ||||||
![]() ![]() ![]() |
S | 0..* | CodeableConcept | (USCDI) Classification of type of observation Binding: US Core Simple Observation Category (required): Note that other codes are permitted, see Required Bindings When Slicing by Value Sets | ||||||
![]() ![]() |
SΣ | 1..1 | CodeableConcept | (USCDI) Type of observation (code / type) Binding: LOINCCodes (preferred) Required Pattern: At least the following | ||||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||||
![]() ![]() ![]() |
1..* | Coding | Code defined by a terminology system Fixed Value: (Complex) | |||||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||||
![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Fixed Value: http://snomed.info/sct | |||||||
![]() ![]() ![]() ![]() |
0..1 | string | Version of the system - if relevant | |||||||
![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system Fixed Value: 398192003 | |||||||
![]() ![]() ![]() ![]() |
0..1 | string | Representation defined by the system | |||||||
![]() ![]() ![]() ![]() |
0..1 | boolean | If this coding was chosen directly by the user | |||||||
![]() ![]() ![]() |
0..1 | string | Plain text representation of the concept | |||||||
![]() ![]() |
SOΣ | 1..1 | Reference(Cancer Patient Profile) | (USCDI) Who and/or what the observation is about
| ||||||
![]() ![]() |
SOΣ | 1..1 | Reference(Primary Cancer Condition Profile) | The Index Condition
| ||||||
![]() ![]() |
Σ | 0..1 | Reference(Encounter) | Not used in this profile | ||||||
![]() ![]() |
SΣ | 1..1 | dateTime S | (USCDI) Clinically relevant time/time-period for observation | ||||||
![]() ![]() |
Σ | 0..1 | instant | Not used in this profile | ||||||
![]() ![]() |
SΣ | 0..* | Reference(US Core Practitioner Profile | US Core Organization Profile | US Core Patient Profile | PractitionerRole | US Core CareTeam Profile | US Core RelatedPerson Profile) | Not used in this profile | ||||||
![]() ![]() |
SOΣC | 0..1 | Quantity S | Comorbidity Index Score
| ||||||
![]() ![]() ![]() |
?!Σ | 0..1 | code | < | <= | >= | > - how to understand the value Binding: QuantityComparator (required): How the Quantity should be understood and represented. | ||||||
![]() ![]() ![]() |
Σ | 0..1 | string | Unit representation Required Pattern: 1 | ||||||
![]() ![]() |
0..* | CodeableConcept | Not used in this profile Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations. | |||||||
![]() ![]() |
O | 0..1 | CodeableConcept | Comorbidity framework used. Binding: Comorbidity Panels Value Set (required)
| ||||||
![]() ![]() |
C | 0..* | BackboneElement | Not used in this profile Constraints: obs-3 | ||||||
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||||
![]() ![]() |
Σ | 0..* | Reference(Observation | US Core DocumentReference Profile | US Core QuestionnaireResponse Profile | ImagingStudy | Media | MolecularSequence) | Not used in this profile | ||||||
Documentation for this format | ||||||||||
| Path | Status | Usage | ValueSet | Version | Source |
| Observation.extension:comorbidConditionPresent.value[x] | Base | required | ICD-10 Codes Value Set | 📦0.2.0 | This IG |
| Observation.extension:comorbidConditionAbsent.value[x] | Base | required | ICD-10 Codes Value Set | 📦0.2.0 | This IG |
| Observation.status | Base | required | ObservationStatus | 📍4.0.1 | FHIR Std. |
| Observation.category | Base | preferred | Observation Category Codes | 📦4.0.1 | FHIR Std. |
| Observation.category:us-core | Base | required | US Core Simple Observation Category | 📦6.1.0 | US Core v6.1 |
| Observation.code | Base | preferred | LOINC Codes | 📦4.0.1 | FHIR Std. |
| Observation.value[x].comparator | Base | required | QuantityComparator | 📍4.0.1 | FHIR Std. |
| Observation.interpretation | Base | extensible | Observation Interpretation Codes | 📦4.0.1 | FHIR Std. |
| Observation.method | Base | required | Comorbidity Panels Value Set | 📦0.2.0 | This IG |
| Id | Grade | Path(s) | Description | Expression |
| com-1 | error | Observation | If an index score is provided, then the comorbidity panel method must also be provided. |
valueQuantity.exists() implies method.exists()
|
| com-req-1 | error | Observation | The subject element is required and must be provided. |
subject.exists()
|
| com-req-2 | error | Observation | The effectiveDateTime element is required and must be provided. |
effectiveDateTime.exists() and effectiveDateTime.hasValue()
|
| com-req-3 | error | Observation | The focus element is required and must be provided. |
focus.exists()
|
| dom-2 | error | Observation | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | Observation | 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 | error | Observation | 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 | error | Observation | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | Observation | A resource should have narrative for robust management |
text.`div`.exists()
|
| ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children |
hasValue() or (children().count() > id.count())
|
| ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both |
extension.exists() != value.exists()
|
| obs-3 | error | Observation.referenceRange | Must have at least a low or a high or text |
low.exists() or high.exists() or text.exists()
|
| obs-6 | error | Observation | dataAbsentReason SHALL only be present if Observation.value[x] is not present |
dataAbsentReason.empty() or value.empty()
|
| obs-7 | error | Observation | If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present |
value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()
|
This structure is derived from Comorbidities
| Path | Status | Usage | ValueSet | Version | Source |
| Observation.extension:comorbidConditionPresent.value[x] | Base | required | ICD-10 Codes Value Set | 📦0.2.0 | This IG |
| Observation.extension:comorbidConditionAbsent.value[x] | Base | required | ICD-10 Codes Value Set | 📦0.2.0 | This IG |
| Observation.method | Base | required | Comorbidity Panels Value Set | 📦0.2.0 | This IG |
| Id | Grade | Path(s) | Description | Expression |
| com-1 | error | Observation | If an index score is provided, then the comorbidity panel method must also be provided. |
valueQuantity.exists() implies method.exists()
|
| com-req-1 | error | Observation | The subject element is required and must be provided. |
subject.exists()
|
| com-req-2 | error | Observation | The effectiveDateTime element is required and must be provided. |
effectiveDateTime.exists() and effectiveDateTime.hasValue()
|
| com-req-3 | error | Observation | The focus element is required and must be provided. |
focus.exists()
|
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() | ||||||
|---|---|---|---|---|---|---|---|---|---|---|
![]() |
C | 0..* | Comorbidities | assessment observation Constraints: obs-6, obs-7, com-1, com-req-1, com-req-2, com-req-3 | ||||||
![]() ![]() |
Σ | 0..1 | id | Logical id of this artifact | ||||||
![]() ![]() |
Σ | 0..1 | Meta | Metadata about the resource | ||||||
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||||
![]() ![]() |
0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||||
![]() ![]() |
0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements | |||||||
![]() ![]() |
0..* | Resource | Contained, inline Resources | |||||||
![]() ![]() |
S | 0..* | Extension | Extension Slice: Unordered, Open by value:url | ||||||
![]() ![]() ![]() |
S | 0..* | (Complex) | Related Condition Extension URL: http://hl7.org/fhir/us/mcode/StructureDefinition/mcode-related-condition | ||||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||||
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||||||||
![]() ![]() ![]() ![]() |
1..1 | uri | "http://hl7.org/fhir/us/mcode/StructureDefinition/mcode-related-condition" | |||||||
![]() ![]() ![]() ![]() |
O | 1..1 | CodeableConcept | Value of extension Binding: ICD-10 Codes Value Set (required)
| ||||||
![]() ![]() ![]() |
S | 0..* | (Complex) | Related Condition Absent Extension URL: http://hl7.org/fhir/us/mcode/StructureDefinition/mcode-related-condition-absent | ||||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||||
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||||||||
![]() ![]() ![]() ![]() |
1..1 | uri | "http://hl7.org/fhir/us/mcode/StructureDefinition/mcode-related-condition-absent" | |||||||
![]() ![]() ![]() ![]() |
O | 1..1 | CodeableConcept | Value of extension Binding: ICD-10 Codes Value Set (required)
| ||||||
![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored | ||||||
![]() ![]() |
Σ | 0..* | Identifier | Business Identifier for observation | ||||||
![]() ![]() |
Σ | 0..* | Reference(CarePlan | DeviceRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest) | Not used in this profile | ||||||
![]() ![]() |
Σ | 0..* | Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Immunization | ImagingStudy) | Not used in this profile | ||||||
![]() ![]() |
?!SΣ | 1..1 | code | Not used in this profile Binding: ObservationStatus (required): Codes providing the status of an observation. | ||||||
![]() ![]() |
S | 1..* | CodeableConcept | (USCDI) Classification of type of observation Slice: Unordered, Open by pattern:$this Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories. | ||||||
![]() ![]() ![]() |
S | 0..* | CodeableConcept | (USCDI) Classification of type of observation Binding: US Core Simple Observation Category (required): Note that other codes are permitted, see Required Bindings When Slicing by Value Sets | ||||||
![]() ![]() |
SΣ | 1..1 | CodeableConcept | (USCDI) Type of observation (code / type) Binding: LOINCCodes (preferred) Required Pattern: At least the following | ||||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||||
![]() ![]() ![]() |
1..* | Coding | Code defined by a terminology system Fixed Value: (Complex) | |||||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||||
![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Fixed Value: http://snomed.info/sct | |||||||
![]() ![]() ![]() ![]() |
0..1 | string | Version of the system - if relevant | |||||||
![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system Fixed Value: 398192003 | |||||||
![]() ![]() ![]() ![]() |
0..1 | string | Representation defined by the system | |||||||
![]() ![]() ![]() ![]() |
0..1 | boolean | If this coding was chosen directly by the user | |||||||
![]() ![]() ![]() |
0..1 | string | Plain text representation of the concept | |||||||
![]() ![]() |
SOΣ | 1..1 | Reference(Cancer Patient Profile) | (USCDI) Who and/or what the observation is about
| ||||||
![]() ![]() |
SOΣ | 1..1 | Reference(Primary Cancer Condition Profile) | The Index Condition
| ||||||
![]() ![]() |
Σ | 0..1 | Reference(Encounter) | Not used in this profile | ||||||
![]() ![]() |
SΣ | 1..1 | dateTime S | (USCDI) Clinically relevant time/time-period for observation | ||||||
![]() ![]() |
Σ | 0..1 | instant | Not used in this profile | ||||||
![]() ![]() |
SΣ | 0..* | Reference(US Core Practitioner Profile | US Core Organization Profile | US Core Patient Profile | PractitionerRole | US Core CareTeam Profile | US Core RelatedPerson Profile) | Not used in this profile | ||||||
![]() ![]() |
SOΣC | 0..1 | Quantity S | Comorbidity Index Score
| ||||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||||
![]() ![]() ![]() |
Σ | 0..1 | decimal | Numerical value (with implicit precision) | ||||||
![]() ![]() ![]() |
?!Σ | 0..1 | code | < | <= | >= | > - how to understand the value Binding: QuantityComparator (required): How the Quantity should be understood and represented. | ||||||
![]() ![]() ![]() |
Σ | 0..1 | string | Unit representation Required Pattern: 1 | ||||||
![]() ![]() ![]() |
ΣC | 0..1 | uri | System that defines coded unit form | ||||||
![]() ![]() ![]() |
Σ | 0..1 | code | Coded form of the unit | ||||||
![]() ![]() |
C | 0..1 | CodeableConcept | Why the result is missing Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing. | ||||||
![]() ![]() |
0..* | CodeableConcept | Not used in this profile Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations. | |||||||
![]() ![]() |
0..* | Annotation | Comments about the observation | |||||||
![]() ![]() |
0..1 | CodeableConcept | Not used in this profile Binding: SNOMEDCTBodyStructures (example): Codes describing anatomical locations. May include laterality. | |||||||
![]() ![]() |
O | 0..1 | CodeableConcept | Comorbidity framework used. Binding: Comorbidity Panels Value Set (required)
| ||||||
![]() ![]() |
0..1 | Reference(Specimen) | Not used in this profile | |||||||
![]() ![]() |
0..1 | Reference(Device | DeviceMetric) | Not used in this profile | |||||||
![]() ![]() |
C | 0..* | BackboneElement | Not used in this profile Constraints: obs-3 | ||||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||||
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||||
![]() ![]() ![]() |
C | 0..1 | SimpleQuantity | Low Range, if relevant | ||||||
![]() ![]() ![]() |
C | 0..1 | SimpleQuantity | High Range, if relevant | ||||||
![]() ![]() ![]() |
0..1 | CodeableConcept | Reference range qualifier Binding: ObservationReferenceRangeMeaningCodes (preferred): Code for the meaning of a reference range. | |||||||
![]() ![]() ![]() |
0..* | CodeableConcept | Reference range population Binding: ObservationReferenceRangeAppliesToCodes (example): Codes identifying the population the reference range applies to. | |||||||
![]() ![]() ![]() |
0..1 | Range | Applicable age range, if relevant | |||||||
![]() ![]() ![]() |
0..1 | string | Text based reference range in an observation | |||||||
![]() ![]() |
Σ | 0..* | Reference(Observation | QuestionnaireResponse | MolecularSequence) | Not used in this profile | ||||||
![]() ![]() |
Σ | 0..* | Reference(Observation | US Core DocumentReference Profile | US Core QuestionnaireResponse Profile | ImagingStudy | Media | MolecularSequence) | Not used in this profile | ||||||
![]() ![]() |
Σ | 0..* | BackboneElement | Not used in this profile | ||||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||||
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||||
![]() ![]() ![]() |
Σ | 1..1 | CodeableConcept | Type of component observation (code / type) Binding: LOINCCodes (example): Codes identifying names of simple observations. | ||||||
![]() ![]() ![]() |
Σ | 0..1 | Actual component result | |||||||
![]() ![]() ![]() ![]() |
Quantity | |||||||||
![]() ![]() ![]() ![]() |
CodeableConcept | |||||||||
![]() ![]() ![]() ![]() |
string | |||||||||
![]() ![]() ![]() ![]() |
boolean | |||||||||
![]() ![]() ![]() ![]() |
integer | |||||||||
![]() ![]() ![]() ![]() |
Range | |||||||||
![]() ![]() ![]() ![]() |
Ratio | |||||||||
![]() ![]() ![]() ![]() |
SampledData | |||||||||
![]() ![]() ![]() ![]() |
time | |||||||||
![]() ![]() ![]() ![]() |
dateTime | |||||||||
![]() ![]() ![]() ![]() |
Period | |||||||||
![]() ![]() ![]() |
C | 0..1 | CodeableConcept | Why the component result is missing Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing. | ||||||
![]() ![]() ![]() |
0..* | CodeableConcept | High, low, normal, etc. Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations. | |||||||
![]() ![]() ![]() |
0..* | See referenceRange (Observation) | Provides guide for interpretation of component result | |||||||
Documentation for this format | ||||||||||
| Path | Status | Usage | ValueSet | Version | Source |
| Observation.language | Base | preferred | Common Languages | 📦4.0.1 | FHIR Std. |
| Observation.extension:comorbidConditionPresent.value[x] | Base | required | ICD-10 Codes Value Set | 📦0.2.0 | This IG |
| Observation.extension:comorbidConditionAbsent.value[x] | Base | required | ICD-10 Codes Value Set | 📦0.2.0 | This IG |
| Observation.status | Base | required | ObservationStatus | 📍4.0.1 | FHIR Std. |
| Observation.category | Base | preferred | Observation Category Codes | 📦4.0.1 | FHIR Std. |
| Observation.category:us-core | Base | required | US Core Simple Observation Category | 📦6.1.0 | US Core v6.1 |
| Observation.code | Base | preferred | LOINC Codes | 📦4.0.1 | FHIR Std. |
| Observation.value[x].comparator | Base | required | QuantityComparator | 📍4.0.1 | FHIR Std. |
| Observation.dataAbsentReason | Base | extensible | DataAbsentReason | 📦4.0.1 | FHIR Std. |
| Observation.interpretation | Base | extensible | Observation Interpretation Codes | 📦4.0.1 | FHIR Std. |
| Observation.bodySite | Base | example | SNOMED CT Body Structures | 📦4.0.1 | FHIR Std. |
| Observation.method | Base | required | Comorbidity Panels Value Set | 📦0.2.0 | This IG |
| Observation.referenceRange.type | Base | preferred | Observation Reference Range Meaning Codes | 📦4.0.1 | FHIR Std. |
| Observation.referenceRange.appliesTo | Base | example | Observation Reference Range Applies To Codes | 📦4.0.1 | FHIR Std. |
| Observation.component.code | Base | example | LOINC Codes | 📦4.0.1 | FHIR Std. |
| Observation.component.dataAbsentReason | Base | extensible | DataAbsentReason | 📦4.0.1 | FHIR Std. |
| Observation.component.interpretation | Base | extensible | Observation Interpretation Codes | 📦4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| com-1 | error | Observation | If an index score is provided, then the comorbidity panel method must also be provided. |
valueQuantity.exists() implies method.exists()
|
| com-req-1 | error | Observation | The subject element is required and must be provided. |
subject.exists()
|
| com-req-2 | error | Observation | The effectiveDateTime element is required and must be provided. |
effectiveDateTime.exists() and effectiveDateTime.hasValue()
|
| com-req-3 | error | Observation | The focus element is required and must be provided. |
focus.exists()
|
| dom-2 | error | Observation | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | Observation | 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 | error | Observation | 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 | error | Observation | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | Observation | A resource should have narrative for robust management |
text.`div`.exists()
|
| ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children |
hasValue() or (children().count() > id.count())
|
| ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both |
extension.exists() != value.exists()
|
| obs-3 | error | Observation.referenceRange | Must have at least a low or a high or text |
low.exists() or high.exists() or text.exists()
|
| obs-6 | error | Observation | dataAbsentReason SHALL only be present if Observation.value[x] is not present |
dataAbsentReason.empty() or value.empty()
|
| obs-7 | error | Observation | If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present |
value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()
|
This structure is derived from Comorbidities
Key Elements View
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() | ||||||
|---|---|---|---|---|---|---|---|---|---|---|
![]() |
C | 0..* | Comorbidities | assessment observation Constraints: obs-6, obs-7, com-1, com-req-1, com-req-2, com-req-3 | ||||||
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||||
![]() ![]() |
S | 0..* | Extension | Extension Slice: Unordered, Open by value:url | ||||||
![]() ![]() ![]() |
S | 0..* | (Complex) | Related Condition Extension URL: http://hl7.org/fhir/us/mcode/StructureDefinition/mcode-related-condition | ||||||
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||||||||
![]() ![]() ![]() ![]() |
1..1 | uri | "http://hl7.org/fhir/us/mcode/StructureDefinition/mcode-related-condition" | |||||||
![]() ![]() ![]() ![]() |
O | 1..1 | CodeableConcept | Value of extension Binding: ICD-10 Codes Value Set (required)
| ||||||
![]() ![]() ![]() |
S | 0..* | (Complex) | Related Condition Absent Extension URL: http://hl7.org/fhir/us/mcode/StructureDefinition/mcode-related-condition-absent | ||||||
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||||||||
![]() ![]() ![]() ![]() |
1..1 | uri | "http://hl7.org/fhir/us/mcode/StructureDefinition/mcode-related-condition-absent" | |||||||
![]() ![]() ![]() ![]() |
O | 1..1 | CodeableConcept | Value of extension Binding: ICD-10 Codes Value Set (required)
| ||||||
![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored | ||||||
![]() ![]() |
Σ | 0..* | Reference(CarePlan | DeviceRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest) | Not used in this profile | ||||||
![]() ![]() |
Σ | 0..* | Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Immunization | ImagingStudy) | Not used in this profile | ||||||
![]() ![]() |
?!SΣ | 1..1 | code | Not used in this profile Binding: ObservationStatus (required): Codes providing the status of an observation. | ||||||
![]() ![]() |
S | 1..* | CodeableConcept | (USCDI) Classification of type of observation Slice: Unordered, Open by pattern:$this Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories. | ||||||
![]() ![]() ![]() |
S | 0..* | CodeableConcept | (USCDI) Classification of type of observation Binding: US Core Simple Observation Category (required): Note that other codes are permitted, see Required Bindings When Slicing by Value Sets | ||||||
![]() ![]() |
SΣ | 1..1 | CodeableConcept | (USCDI) Type of observation (code / type) Binding: LOINCCodes (preferred) Required Pattern: At least the following | ||||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||||
![]() ![]() ![]() |
1..* | Coding | Code defined by a terminology system Fixed Value: (Complex) | |||||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||||
![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Fixed Value: http://snomed.info/sct | |||||||
![]() ![]() ![]() ![]() |
0..1 | string | Version of the system - if relevant | |||||||
![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system Fixed Value: 398192003 | |||||||
![]() ![]() ![]() ![]() |
0..1 | string | Representation defined by the system | |||||||
![]() ![]() ![]() ![]() |
0..1 | boolean | If this coding was chosen directly by the user | |||||||
![]() ![]() ![]() |
0..1 | string | Plain text representation of the concept | |||||||
![]() ![]() |
SOΣ | 1..1 | Reference(Cancer Patient Profile) | (USCDI) Who and/or what the observation is about
| ||||||
![]() ![]() |
SOΣ | 1..1 | Reference(Primary Cancer Condition Profile) | The Index Condition
| ||||||
![]() ![]() |
Σ | 0..1 | Reference(Encounter) | Not used in this profile | ||||||
![]() ![]() |
SΣ | 1..1 | dateTime S | (USCDI) Clinically relevant time/time-period for observation | ||||||
![]() ![]() |
Σ | 0..1 | instant | Not used in this profile | ||||||
![]() ![]() |
SΣ | 0..* | Reference(US Core Practitioner Profile | US Core Organization Profile | US Core Patient Profile | PractitionerRole | US Core CareTeam Profile | US Core RelatedPerson Profile) | Not used in this profile | ||||||
![]() ![]() |
SOΣC | 0..1 | Quantity S | Comorbidity Index Score
| ||||||
![]() ![]() ![]() |
?!Σ | 0..1 | code | < | <= | >= | > - how to understand the value Binding: QuantityComparator (required): How the Quantity should be understood and represented. | ||||||
![]() ![]() ![]() |
Σ | 0..1 | string | Unit representation Required Pattern: 1 | ||||||
![]() ![]() |
0..* | CodeableConcept | Not used in this profile Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations. | |||||||
![]() ![]() |
O | 0..1 | CodeableConcept | Comorbidity framework used. Binding: Comorbidity Panels Value Set (required)
| ||||||
![]() ![]() |
C | 0..* | BackboneElement | Not used in this profile Constraints: obs-3 | ||||||
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||||
![]() ![]() |
Σ | 0..* | Reference(Observation | US Core DocumentReference Profile | US Core QuestionnaireResponse Profile | ImagingStudy | Media | MolecularSequence) | Not used in this profile | ||||||
Documentation for this format | ||||||||||
| Path | Status | Usage | ValueSet | Version | Source |
| Observation.extension:comorbidConditionPresent.value[x] | Base | required | ICD-10 Codes Value Set | 📦0.2.0 | This IG |
| Observation.extension:comorbidConditionAbsent.value[x] | Base | required | ICD-10 Codes Value Set | 📦0.2.0 | This IG |
| Observation.status | Base | required | ObservationStatus | 📍4.0.1 | FHIR Std. |
| Observation.category | Base | preferred | Observation Category Codes | 📦4.0.1 | FHIR Std. |
| Observation.category:us-core | Base | required | US Core Simple Observation Category | 📦6.1.0 | US Core v6.1 |
| Observation.code | Base | preferred | LOINC Codes | 📦4.0.1 | FHIR Std. |
| Observation.value[x].comparator | Base | required | QuantityComparator | 📍4.0.1 | FHIR Std. |
| Observation.interpretation | Base | extensible | Observation Interpretation Codes | 📦4.0.1 | FHIR Std. |
| Observation.method | Base | required | Comorbidity Panels Value Set | 📦0.2.0 | This IG |
| Id | Grade | Path(s) | Description | Expression |
| com-1 | error | Observation | If an index score is provided, then the comorbidity panel method must also be provided. |
valueQuantity.exists() implies method.exists()
|
| com-req-1 | error | Observation | The subject element is required and must be provided. |
subject.exists()
|
| com-req-2 | error | Observation | The effectiveDateTime element is required and must be provided. |
effectiveDateTime.exists() and effectiveDateTime.hasValue()
|
| com-req-3 | error | Observation | The focus element is required and must be provided. |
focus.exists()
|
| dom-2 | error | Observation | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | Observation | 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 | error | Observation | 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 | error | Observation | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | Observation | A resource should have narrative for robust management |
text.`div`.exists()
|
| ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children |
hasValue() or (children().count() > id.count())
|
| ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both |
extension.exists() != value.exists()
|
| obs-3 | error | Observation.referenceRange | Must have at least a low or a high or text |
low.exists() or high.exists() or text.exists()
|
| obs-6 | error | Observation | dataAbsentReason SHALL only be present if Observation.value[x] is not present |
dataAbsentReason.empty() or value.empty()
|
| obs-7 | error | Observation | If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present |
value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()
|
Differential View
This structure is derived from Comorbidities
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() | ||||||
|---|---|---|---|---|---|---|---|---|---|---|
![]() |
C | 0..* | Comorbidities | assessment observation Constraints: com-1, com-req-1, com-req-2, com-req-3 | ||||||
![]() ![]() |
Content/Rules for all slices | |||||||||
![]() ![]() ![]() |
0..* | RelatedCondition | Related Condition Extension | |||||||
![]() ![]() ![]() ![]() |
O | 1..1 | CodeableConcept | Value of extension Binding: ICD-10 Codes Value Set (required)
| ||||||
![]() ![]() ![]() |
0..* | RelatedConditionAbsent | Related Condition Absent Extension | |||||||
![]() ![]() ![]() ![]() |
O | 1..1 | CodeableConcept | Value of extension Binding: ICD-10 Codes Value Set (required)
| ||||||
![]() ![]() |
0..* | Reference(CarePlan | DeviceRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest) | Not used in this profile | |||||||
![]() ![]() |
0..* | Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Immunization | ImagingStudy) | Not used in this profile | |||||||
![]() ![]() |
1..1 | code | Not used in this profile | |||||||
![]() ![]() |
O | 1..1 | Reference(Cancer Patient Profile) | (USCDI) Who and/or what the observation is about
| ||||||
![]() ![]() |
O | 1..1 | Reference(Primary Cancer Condition Profile) | The Index Condition
| ||||||
![]() ![]() |
0..1 | Reference(Encounter) | Not used in this profile | |||||||
![]() ![]() |
1..1 | dateTime | (USCDI) Clinically relevant time/time-period for observation | |||||||
![]() ![]() |
0..1 | instant | Not used in this profile | |||||||
![]() ![]() |
0..* | Reference(US Core Practitioner Profile | US Core Organization Profile | US Core Patient Profile | PractitionerRole | US Core CareTeam Profile | US Core RelatedPerson Profile) | Not used in this profile | |||||||
![]() ![]() |
O | 0..1 | Quantity | Comorbidity Index Score
| ||||||
![]() ![]() ![]() |
0..1 | string | Unit representation Required Pattern: 1 | |||||||
![]() ![]() |
0..* | CodeableConcept | Not used in this profile | |||||||
![]() ![]() |
O | 0..1 | CodeableConcept | Comorbidity framework used. Binding: Comorbidity Panels Value Set (required)
| ||||||
![]() ![]() |
0..* | BackboneElement | Not used in this profile | |||||||
![]() ![]() |
0..* | Reference(Observation | US Core DocumentReference Profile | US Core QuestionnaireResponse Profile | ImagingStudy | Media | MolecularSequence) | Not used in this profile | |||||||
Documentation for this format | ||||||||||
| Path | Status | Usage | ValueSet | Version | Source |
| Observation.extension:comorbidConditionPresent.value[x] | Base | required | ICD-10 Codes Value Set | 📦0.2.0 | This IG |
| Observation.extension:comorbidConditionAbsent.value[x] | Base | required | ICD-10 Codes Value Set | 📦0.2.0 | This IG |
| Observation.method | Base | required | Comorbidity Panels Value Set | 📦0.2.0 | This IG |
| Id | Grade | Path(s) | Description | Expression |
| com-1 | error | Observation | If an index score is provided, then the comorbidity panel method must also be provided. |
valueQuantity.exists() implies method.exists()
|
| com-req-1 | error | Observation | The subject element is required and must be provided. |
subject.exists()
|
| com-req-2 | error | Observation | The effectiveDateTime element is required and must be provided. |
effectiveDateTime.exists() and effectiveDateTime.hasValue()
|
| com-req-3 | error | Observation | The focus element is required and must be provided. |
focus.exists()
|
Snapshot View
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() | ||||||
|---|---|---|---|---|---|---|---|---|---|---|
![]() |
C | 0..* | Comorbidities | assessment observation Constraints: obs-6, obs-7, com-1, com-req-1, com-req-2, com-req-3 | ||||||
![]() ![]() |
Σ | 0..1 | id | Logical id of this artifact | ||||||
![]() ![]() |
Σ | 0..1 | Meta | Metadata about the resource | ||||||
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||||
![]() ![]() |
0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||||
![]() ![]() |
0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements | |||||||
![]() ![]() |
0..* | Resource | Contained, inline Resources | |||||||
![]() ![]() |
S | 0..* | Extension | Extension Slice: Unordered, Open by value:url | ||||||
![]() ![]() ![]() |
S | 0..* | (Complex) | Related Condition Extension URL: http://hl7.org/fhir/us/mcode/StructureDefinition/mcode-related-condition | ||||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||||
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||||||||
![]() ![]() ![]() ![]() |
1..1 | uri | "http://hl7.org/fhir/us/mcode/StructureDefinition/mcode-related-condition" | |||||||
![]() ![]() ![]() ![]() |
O | 1..1 | CodeableConcept | Value of extension Binding: ICD-10 Codes Value Set (required)
| ||||||
![]() ![]() ![]() |
S | 0..* | (Complex) | Related Condition Absent Extension URL: http://hl7.org/fhir/us/mcode/StructureDefinition/mcode-related-condition-absent | ||||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||||
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||||||||
![]() ![]() ![]() ![]() |
1..1 | uri | "http://hl7.org/fhir/us/mcode/StructureDefinition/mcode-related-condition-absent" | |||||||
![]() ![]() ![]() ![]() |
O | 1..1 | CodeableConcept | Value of extension Binding: ICD-10 Codes Value Set (required)
| ||||||
![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored | ||||||
![]() ![]() |
Σ | 0..* | Identifier | Business Identifier for observation | ||||||
![]() ![]() |
Σ | 0..* | Reference(CarePlan | DeviceRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest) | Not used in this profile | ||||||
![]() ![]() |
Σ | 0..* | Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Immunization | ImagingStudy) | Not used in this profile | ||||||
![]() ![]() |
?!SΣ | 1..1 | code | Not used in this profile Binding: ObservationStatus (required): Codes providing the status of an observation. | ||||||
![]() ![]() |
S | 1..* | CodeableConcept | (USCDI) Classification of type of observation Slice: Unordered, Open by pattern:$this Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories. | ||||||
![]() ![]() ![]() |
S | 0..* | CodeableConcept | (USCDI) Classification of type of observation Binding: US Core Simple Observation Category (required): Note that other codes are permitted, see Required Bindings When Slicing by Value Sets | ||||||
![]() ![]() |
SΣ | 1..1 | CodeableConcept | (USCDI) Type of observation (code / type) Binding: LOINCCodes (preferred) Required Pattern: At least the following | ||||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||||
![]() ![]() ![]() |
1..* | Coding | Code defined by a terminology system Fixed Value: (Complex) | |||||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||||
![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Fixed Value: http://snomed.info/sct | |||||||
![]() ![]() ![]() ![]() |
0..1 | string | Version of the system - if relevant | |||||||
![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system Fixed Value: 398192003 | |||||||
![]() ![]() ![]() ![]() |
0..1 | string | Representation defined by the system | |||||||
![]() ![]() ![]() ![]() |
0..1 | boolean | If this coding was chosen directly by the user | |||||||
![]() ![]() ![]() |
0..1 | string | Plain text representation of the concept | |||||||
![]() ![]() |
SOΣ | 1..1 | Reference(Cancer Patient Profile) | (USCDI) Who and/or what the observation is about
| ||||||
![]() ![]() |
SOΣ | 1..1 | Reference(Primary Cancer Condition Profile) | The Index Condition
| ||||||
![]() ![]() |
Σ | 0..1 | Reference(Encounter) | Not used in this profile | ||||||
![]() ![]() |
SΣ | 1..1 | dateTime S | (USCDI) Clinically relevant time/time-period for observation | ||||||
![]() ![]() |
Σ | 0..1 | instant | Not used in this profile | ||||||
![]() ![]() |
SΣ | 0..* | Reference(US Core Practitioner Profile | US Core Organization Profile | US Core Patient Profile | PractitionerRole | US Core CareTeam Profile | US Core RelatedPerson Profile) | Not used in this profile | ||||||
![]() ![]() |
SOΣC | 0..1 | Quantity S | Comorbidity Index Score
| ||||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||||
![]() ![]() ![]() |
Σ | 0..1 | decimal | Numerical value (with implicit precision) | ||||||
![]() ![]() ![]() |
?!Σ | 0..1 | code | < | <= | >= | > - how to understand the value Binding: QuantityComparator (required): How the Quantity should be understood and represented. | ||||||
![]() ![]() ![]() |
Σ | 0..1 | string | Unit representation Required Pattern: 1 | ||||||
![]() ![]() ![]() |
ΣC | 0..1 | uri | System that defines coded unit form | ||||||
![]() ![]() ![]() |
Σ | 0..1 | code | Coded form of the unit | ||||||
![]() ![]() |
C | 0..1 | CodeableConcept | Why the result is missing Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing. | ||||||
![]() ![]() |
0..* | CodeableConcept | Not used in this profile Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations. | |||||||
![]() ![]() |
0..* | Annotation | Comments about the observation | |||||||
![]() ![]() |
0..1 | CodeableConcept | Not used in this profile Binding: SNOMEDCTBodyStructures (example): Codes describing anatomical locations. May include laterality. | |||||||
![]() ![]() |
O | 0..1 | CodeableConcept | Comorbidity framework used. Binding: Comorbidity Panels Value Set (required)
| ||||||
![]() ![]() |
0..1 | Reference(Specimen) | Not used in this profile | |||||||
![]() ![]() |
0..1 | Reference(Device | DeviceMetric) | Not used in this profile | |||||||
![]() ![]() |
C | 0..* | BackboneElement | Not used in this profile Constraints: obs-3 | ||||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||||
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||||
![]() ![]() ![]() |
C | 0..1 | SimpleQuantity | Low Range, if relevant | ||||||
![]() ![]() ![]() |
C | 0..1 | SimpleQuantity | High Range, if relevant | ||||||
![]() ![]() ![]() |
0..1 | CodeableConcept | Reference range qualifier Binding: ObservationReferenceRangeMeaningCodes (preferred): Code for the meaning of a reference range. | |||||||
![]() ![]() ![]() |
0..* | CodeableConcept | Reference range population Binding: ObservationReferenceRangeAppliesToCodes (example): Codes identifying the population the reference range applies to. | |||||||
![]() ![]() ![]() |
0..1 | Range | Applicable age range, if relevant | |||||||
![]() ![]() ![]() |
0..1 | string | Text based reference range in an observation | |||||||
![]() ![]() |
Σ | 0..* | Reference(Observation | QuestionnaireResponse | MolecularSequence) | Not used in this profile | ||||||
![]() ![]() |
Σ | 0..* | Reference(Observation | US Core DocumentReference Profile | US Core QuestionnaireResponse Profile | ImagingStudy | Media | MolecularSequence) | Not used in this profile | ||||||
![]() ![]() |
Σ | 0..* | BackboneElement | Not used in this profile | ||||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||||
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||||
![]() ![]() ![]() |
Σ | 1..1 | CodeableConcept | Type of component observation (code / type) Binding: LOINCCodes (example): Codes identifying names of simple observations. | ||||||
![]() ![]() ![]() |
Σ | 0..1 | Actual component result | |||||||
![]() ![]() ![]() ![]() |
Quantity | |||||||||
![]() ![]() ![]() ![]() |
CodeableConcept | |||||||||
![]() ![]() ![]() ![]() |
string | |||||||||
![]() ![]() ![]() ![]() |
boolean | |||||||||
![]() ![]() ![]() ![]() |
integer | |||||||||
![]() ![]() ![]() ![]() |
Range | |||||||||
![]() ![]() ![]() ![]() |
Ratio | |||||||||
![]() ![]() ![]() ![]() |
SampledData | |||||||||
![]() ![]() ![]() ![]() |
time | |||||||||
![]() ![]() ![]() ![]() |
dateTime | |||||||||
![]() ![]() ![]() ![]() |
Period | |||||||||
![]() ![]() ![]() |
C | 0..1 | CodeableConcept | Why the component result is missing Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing. | ||||||
![]() ![]() ![]() |
0..* | CodeableConcept | High, low, normal, etc. Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations. | |||||||
![]() ![]() ![]() |
0..* | See referenceRange (Observation) | Provides guide for interpretation of component result | |||||||
Documentation for this format | ||||||||||
| Path | Status | Usage | ValueSet | Version | Source |
| Observation.language | Base | preferred | Common Languages | 📦4.0.1 | FHIR Std. |
| Observation.extension:comorbidConditionPresent.value[x] | Base | required | ICD-10 Codes Value Set | 📦0.2.0 | This IG |
| Observation.extension:comorbidConditionAbsent.value[x] | Base | required | ICD-10 Codes Value Set | 📦0.2.0 | This IG |
| Observation.status | Base | required | ObservationStatus | 📍4.0.1 | FHIR Std. |
| Observation.category | Base | preferred | Observation Category Codes | 📦4.0.1 | FHIR Std. |
| Observation.category:us-core | Base | required | US Core Simple Observation Category | 📦6.1.0 | US Core v6.1 |
| Observation.code | Base | preferred | LOINC Codes | 📦4.0.1 | FHIR Std. |
| Observation.value[x].comparator | Base | required | QuantityComparator | 📍4.0.1 | FHIR Std. |
| Observation.dataAbsentReason | Base | extensible | DataAbsentReason | 📦4.0.1 | FHIR Std. |
| Observation.interpretation | Base | extensible | Observation Interpretation Codes | 📦4.0.1 | FHIR Std. |
| Observation.bodySite | Base | example | SNOMED CT Body Structures | 📦4.0.1 | FHIR Std. |
| Observation.method | Base | required | Comorbidity Panels Value Set | 📦0.2.0 | This IG |
| Observation.referenceRange.type | Base | preferred | Observation Reference Range Meaning Codes | 📦4.0.1 | FHIR Std. |
| Observation.referenceRange.appliesTo | Base | example | Observation Reference Range Applies To Codes | 📦4.0.1 | FHIR Std. |
| Observation.component.code | Base | example | LOINC Codes | 📦4.0.1 | FHIR Std. |
| Observation.component.dataAbsentReason | Base | extensible | DataAbsentReason | 📦4.0.1 | FHIR Std. |
| Observation.component.interpretation | Base | extensible | Observation Interpretation Codes | 📦4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| com-1 | error | Observation | If an index score is provided, then the comorbidity panel method must also be provided. |
valueQuantity.exists() implies method.exists()
|
| com-req-1 | error | Observation | The subject element is required and must be provided. |
subject.exists()
|
| com-req-2 | error | Observation | The effectiveDateTime element is required and must be provided. |
effectiveDateTime.exists() and effectiveDateTime.hasValue()
|
| com-req-3 | error | Observation | The focus element is required and must be provided. |
focus.exists()
|
| dom-2 | error | Observation | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | Observation | 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 | error | Observation | 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 | error | Observation | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | Observation | A resource should have narrative for robust management |
text.`div`.exists()
|
| ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children |
hasValue() or (children().count() > id.count())
|
| ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both |
extension.exists() != value.exists()
|
| obs-3 | error | Observation.referenceRange | Must have at least a low or a high or text |
low.exists() or high.exists() or text.exists()
|
| obs-6 | error | Observation | dataAbsentReason SHALL only be present if Observation.value[x] is not present |
dataAbsentReason.empty() or value.empty()
|
| obs-7 | error | Observation | If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present |
value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()
|
This structure is derived from Comorbidities
Other representations of profile: CSV, Excel, Schematron