US Quality Core Implementation Guide
1.0.0-ballot - STU 1 - ballot United States of America flag

US Quality Core Implementation Guide, published by HL7 International / Clinical Quality Information. This guide is not an authorized publication; it is the continuous build for version 1.0.0-ballot built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/fhir-us-quality-core/ and changes regularly. See the Directory of published versions

Resource Profile: US Quality Core Observation Clinical Result

Official URL: http://hl7.org/fhir/us/quality-core/StructureDefinition/us-quality-core-observation-clinical-result Version: 1.0.0-ballot
Standards status: Trial-use Maturity Level: 4 Computable Name: USQualityCoreObservationClinicalResult
Other Identifiers: OID:2.16.840.1.113883.4.642.40.78.42.35

Copyright/Legal: Used by permission of HL7 International, all rights reserved Creative Commons License

This profile sets minimum expectations for the Observation resource to record and search non-laboratory clinical test results (e.g., radiology and other clinical observations generated from procedures). An example would be when a gastroenterologist reports the size of a polyp observed during a colonoscopy. This profile is the basis for the US Core Clinical Result Profile, which defines additional data elements to record and search laboratory test results.

USCDI+ Quality Element Support Expectations

Systems are expected to support this profile as part of implementing USCDI+ Quality V2 in FHIR and meeting the conformance requirements of this guide.

The following elements are specifically relevant to USCDI+ Quality V2 data classes and elements. Systems are expected to support these elements as applicable to their role in US Quality Core data exchange. See the Must Support section of this guide for more information. These elements are flagged as (USCDI+ Quality) in the formal profile views.

USCDI+ Quality Elements:

Profile element Description USCDI+ Quality Data Element(s)
code Clinical Test or Procedure Name Clinical Tests: Clinical Test, Diagnostic Imaging: Diagnostic Imaging Test
performer Who is responsible for the observation Provenance: Author
status registered | preliminary | final | amended | corrected | cancelled | entered-in-error | unknown Clinical Tests: Clinical Test Status
value[x] Result Value Clinical Tests: Clinical Test Result/Report, Diagnostic Imaging: Diagnostic Imaging Report

Because this profile is derived directly or indirectly from US Core, systems are also expected to support the Must Support and Additional USCDI requirements specified by the US Core profile this profile inherits from. For more information about those requirements, refer to the US Core Observation Clinical Result Profile. The Formal Views section also provides the formal summary, definitions, terminology requirements, and mandatory element requirements.

Usages:

You can also check for usages in the FHIR IG Statistics

Formal Views of Profile Content

Description Differentials, Snapshots, and other representations.

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Observation C 0..* USCoreObservationClinicalResultProfile(9.0.0) Measurements and simple assertions
Constraints: obs-6, obs-7, us-core-2
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... status ?!SΣ 1..1 code (USCDI+ Quality) registered | preliminary | final | amended | corrected | cancelled | entered-in-error | unknown
Binding: ObservationStatus (required): Codes providing the status of an observation.
.... category:us-core S 0..* CodeableConcept Classification of type of observation
Binding: US Core Clinical Result Observation Category (required)
... code SΣ 1..1 CodeableConcept (USCDI+ Quality) Clinical Test or Procedure Name
Binding: LOINCCodes (extensible)
... subject SΣ 1..1 Reference(US Quality Core Patient S | Group | US Core Device Profile | US Quality Core Location) Who and/or what the observation is about
... encounter SΣ 0..1 Reference(US Core Encounter Profile) Encounter associated with Observation
... effective[x] SΣC 0..1 Clinically relevant time/time-period for observation
Constraints: us-core-1
.... effectiveDateTime dateTime S
.... effectivePeriod Period
.... effectiveTiming Timing
.... effectiveInstant instant
... performer SΣ 0..* Reference(US Core Practitioner Profile S | US Core Organization Profile | US Core Patient Profile | PractitionerRole | US Core CareTeam Profile | US Core RelatedPerson Profile) (USCDI+ Quality) Who is responsible for the observation
... value[x] SΣC 0..1 (USCDI+ Quality) Result Value
Constraints: us-core-3
.... valueQuantity Quantity S
.... valueCodeableConcept CodeableConcept S
.... valueString string S
.... valueBoolean boolean
.... valueInteger integer
.... valueRange Range
.... valueRatio Ratio
.... valueSampledData SampledData
.... valueTime time
.... valueDateTime dateTime
.... valuePeriod Period
... dataAbsentReason SC 0..1 CodeableConcept Why the result is missing
Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
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 Clinical Result Observation Category 📦9.0.0 US Core v9.0
Observation.code Base extensible LOINC Codes 📦4.0.1 FHIR Std.
Observation.dataAbsentReason Base extensible DataAbsentReason 📦4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
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-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()
us-core-1 error Observation.effective[x] Datetime must be at least to day. $this is dateTime implies $this.toString().length() >= 10
us-core-2 error Observation If there is no component or hasMember element then either a value[x] or a data absent reason must be present (component.empty() and hasMember.empty()) implies (dataAbsentReason.exists() or value.exists())
us-core-3 error Observation.value[x] The system SHALL be UCUM for coded quantity units. ofType(Quantity).system.empty() or ofType(Quantity).system = 'http://unitsofmeasure.org'

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Observation 0..* USCoreObservationClinicalResultProfile(9.0.0) Measurements and simple assertions
... status 1..1 code (USCDI+ Quality) registered | preliminary | final | amended | corrected | cancelled | entered-in-error | unknown
... category 1..* CodeableConcept Classification of type of observation
Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.
... Slices for category Content/Rules for all slices
.... category:us-core 0..* CodeableConcept Classification of type of observation
Binding: US Core Clinical Result Observation Category (required)
... subject 1..1 Reference(US Quality Core Patient | Group | US Core Device Profile | US Quality Core Location) Who and/or what the observation is about
... performer 0..* Reference(US Core Practitioner Profile | US Core Organization Profile | US Core Patient Profile | PractitionerRole | US Core CareTeam Profile | US Core RelatedPerson Profile) (USCDI+ Quality) Who is responsible for the observation
... value[x] 0..1 Quantity, CodeableConcept, string, boolean, integer, Range, Ratio, SampledData, time, dateTime, Period (USCDI+ Quality) Result Value
... dataAbsentReason 0..1 CodeableConcept Why the result is missing
Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.

doco Documentation for this format

Terminology Bindings (Differential)

Path Status Usage ValueSet Version Source
Observation.category Base preferred Observation Category Codes 📦4.0.1 FHIR Std.
Observation.category:us-core Base required US Core Clinical Result Observation Category 📦9.0.0 US Core v9.0
Observation.code Base extensible LOINC Codes 📦4.0.1 FHIR Std.
Observation.dataAbsentReason Base extensible DataAbsentReason 📦4.0.1 FHIR Std.
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Observation C 0..* USCoreObservationClinicalResultProfile(9.0.0) Measurements and simple assertions
Constraints: obs-6, obs-7, us-core-2
... id Σ 0..1 id 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): A human language.
Additional BindingsPurpose
AllLanguages Max Binding
... text 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
... 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 Business Identifier for observation
... basedOn Σ 0..* Reference(CarePlan | DeviceRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest) Fulfills plan, proposal or order
... partOf Σ 0..* Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Immunization | ImagingStudy) Part of referenced event
... status ?!SΣ 1..1 code (USCDI+ Quality) registered | preliminary | final | amended | corrected | cancelled | entered-in-error | unknown
Binding: ObservationStatus (required): Codes providing the status of an observation.
... Slices for category S 1..* CodeableConcept Classification of type of observation
Slice: Unordered, Open by value:$this
Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.
.... category:us-core S 0..* CodeableConcept Classification of type of observation
Binding: US Core Clinical Result Observation Category (required)
... code SΣ 1..1 CodeableConcept (USCDI+ Quality) Clinical Test or Procedure Name
Binding: LOINCCodes (extensible)
... subject SΣ 1..1 Reference(US Quality Core Patient S | Group | US Core Device Profile | US Quality Core Location) Who and/or what the observation is about
... focus Σ 0..* Reference(Resource) What the observation is about, when it is not about the subject of record
... encounter SΣ 0..1 Reference(US Core Encounter Profile) Encounter associated with Observation
... effective[x] SΣC 0..1 Clinically relevant time/time-period for observation
Constraints: us-core-1
.... effectiveDateTime dateTime S
.... effectivePeriod Period
.... effectiveTiming Timing
.... effectiveInstant instant
... issued Σ 0..1 instant Date/Time this version was made available
... performer SΣ 0..* Reference(US Core Practitioner Profile S | US Core Organization Profile | US Core Patient Profile | PractitionerRole | US Core CareTeam Profile | US Core RelatedPerson Profile) (USCDI+ Quality) Who is responsible for the observation
... value[x] SΣC 0..1 (USCDI+ Quality) Result Value
Constraints: us-core-3
.... valueQuantity Quantity S
.... valueCodeableConcept CodeableConcept S
.... valueString string S
.... valueBoolean boolean
.... valueInteger integer
.... valueRange Range
.... valueRatio Ratio
.... valueSampledData SampledData
.... valueTime time
.... valueDateTime dateTime
.... valuePeriod Period
... dataAbsentReason SC 0..1 CodeableConcept Why the result is missing
Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.
... interpretation 0..* CodeableConcept High, low, normal, etc.
Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations.
... note 0..* Annotation Comments about the observation
... bodySite 0..1 CodeableConcept Observed body part
Binding: SNOMEDCTBodyStructures (example): Codes describing anatomical locations. May include laterality.
... method 0..1 CodeableConcept How it was done
Binding: ObservationMethods (example): Methods for simple observations.
... specimen 0..1 Reference(Specimen) Specimen used for this observation
... device 0..1 Reference(Device | DeviceMetric) (Measurement) Device
... referenceRange C 0..* BackboneElement Provides guide for interpretation
Constraints: obs-3
.... 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
.... low C 0..1 SimpleQuantity(4.0.1) Low Range, if relevant
.... high C 0..1 SimpleQuantity(4.0.1) High Range, if relevant
.... type 0..1 CodeableConcept Reference range qualifier
Binding: ObservationReferenceRangeMeaningCodes (preferred): Code for the meaning of a reference range.
.... appliesTo 0..* CodeableConcept Reference range population
Binding: ObservationReferenceRangeAppliesToCodes (example): Codes identifying the population the reference range applies to.
.... age 0..1 Range Applicable age range, if relevant
.... text 0..1 string Text based reference range in an observation
... hasMember Σ 0..* Reference(Observation | QuestionnaireResponse | MolecularSequence) Related resource that belongs to the Observation group
... derivedFrom Σ 0..* Reference(DocumentReference | ImagingStudy | Media | QuestionnaireResponse | Observation | MolecularSequence) Related measurements the observation is made from
... component Σ 0..* BackboneElement Component results
.... 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 Σ 1..1 CodeableConcept Type of component observation (code / type)
Binding: LOINCCodes (example): Codes identifying names of simple observations.
.... value[x] Σ 0..1 Actual component result
..... valueQuantity Quantity
..... valueCodeableConcept CodeableConcept
..... valueString string
..... valueBoolean boolean
..... valueInteger integer
..... valueRange Range
..... valueRatio Ratio
..... valueSampledData SampledData
..... valueTime time
..... valueDateTime dateTime
..... valuePeriod Period
.... dataAbsentReason C 0..1 CodeableConcept Why the component result is missing
Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.
.... interpretation 0..* CodeableConcept High, low, normal, etc.
Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations.
.... referenceRange 0..* See referenceRange (Observation) Provides guide for interpretation of component result

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Observation.language Base preferred Common Languages 📍4.0.1 FHIR Std.
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 Clinical Result Observation Category 📦9.0.0 US Core v9.0
Observation.code Base extensible LOINC Codes 📦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 example Observation Methods 📍4.0.1 FHIR Std.
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.

Constraints

Id Grade Path(s) Description Expression
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()
us-core-1 error Observation.effective[x] Datetime must be at least to day. $this is dateTime implies $this.toString().length() >= 10
us-core-2 error Observation If there is no component or hasMember element then either a value[x] or a data absent reason must be present (component.empty() and hasMember.empty()) implies (dataAbsentReason.exists() or value.exists())
us-core-3 error Observation.value[x] The system SHALL be UCUM for coded quantity units. ofType(Quantity).system.empty() or ofType(Quantity).system = 'http://unitsofmeasure.org'

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Observation C 0..* USCoreObservationClinicalResultProfile(9.0.0) Measurements and simple assertions
Constraints: obs-6, obs-7, us-core-2
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... status ?!SΣ 1..1 code (USCDI+ Quality) registered | preliminary | final | amended | corrected | cancelled | entered-in-error | unknown
Binding: ObservationStatus (required): Codes providing the status of an observation.
.... category:us-core S 0..* CodeableConcept Classification of type of observation
Binding: US Core Clinical Result Observation Category (required)
... code SΣ 1..1 CodeableConcept (USCDI+ Quality) Clinical Test or Procedure Name
Binding: LOINCCodes (extensible)
... subject SΣ 1..1 Reference(US Quality Core Patient S | Group | US Core Device Profile | US Quality Core Location) Who and/or what the observation is about
... encounter SΣ 0..1 Reference(US Core Encounter Profile) Encounter associated with Observation
... effective[x] SΣC 0..1 Clinically relevant time/time-period for observation
Constraints: us-core-1
.... effectiveDateTime dateTime S
.... effectivePeriod Period
.... effectiveTiming Timing
.... effectiveInstant instant
... performer SΣ 0..* Reference(US Core Practitioner Profile S | US Core Organization Profile | US Core Patient Profile | PractitionerRole | US Core CareTeam Profile | US Core RelatedPerson Profile) (USCDI+ Quality) Who is responsible for the observation
... value[x] SΣC 0..1 (USCDI+ Quality) Result Value
Constraints: us-core-3
.... valueQuantity Quantity S
.... valueCodeableConcept CodeableConcept S
.... valueString string S
.... valueBoolean boolean
.... valueInteger integer
.... valueRange Range
.... valueRatio Ratio
.... valueSampledData SampledData
.... valueTime time
.... valueDateTime dateTime
.... valuePeriod Period
... dataAbsentReason SC 0..1 CodeableConcept Why the result is missing
Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
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 Clinical Result Observation Category 📦9.0.0 US Core v9.0
Observation.code Base extensible LOINC Codes 📦4.0.1 FHIR Std.
Observation.dataAbsentReason Base extensible DataAbsentReason 📦4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
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-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()
us-core-1 error Observation.effective[x] Datetime must be at least to day. $this is dateTime implies $this.toString().length() >= 10
us-core-2 error Observation If there is no component or hasMember element then either a value[x] or a data absent reason must be present (component.empty() and hasMember.empty()) implies (dataAbsentReason.exists() or value.exists())
us-core-3 error Observation.value[x] The system SHALL be UCUM for coded quantity units. ofType(Quantity).system.empty() or ofType(Quantity).system = 'http://unitsofmeasure.org'

Differential View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Observation 0..* USCoreObservationClinicalResultProfile(9.0.0) Measurements and simple assertions
... status 1..1 code (USCDI+ Quality) registered | preliminary | final | amended | corrected | cancelled | entered-in-error | unknown
... category 1..* CodeableConcept Classification of type of observation
Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.
... Slices for category Content/Rules for all slices
.... category:us-core 0..* CodeableConcept Classification of type of observation
Binding: US Core Clinical Result Observation Category (required)
... subject 1..1 Reference(US Quality Core Patient | Group | US Core Device Profile | US Quality Core Location) Who and/or what the observation is about
... performer 0..* Reference(US Core Practitioner Profile | US Core Organization Profile | US Core Patient Profile | PractitionerRole | US Core CareTeam Profile | US Core RelatedPerson Profile) (USCDI+ Quality) Who is responsible for the observation
... value[x] 0..1 Quantity, CodeableConcept, string, boolean, integer, Range, Ratio, SampledData, time, dateTime, Period (USCDI+ Quality) Result Value
... dataAbsentReason 0..1 CodeableConcept Why the result is missing
Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.

doco Documentation for this format

Terminology Bindings (Differential)

Path Status Usage ValueSet Version Source
Observation.category Base preferred Observation Category Codes 📦4.0.1 FHIR Std.
Observation.category:us-core Base required US Core Clinical Result Observation Category 📦9.0.0 US Core v9.0
Observation.code Base extensible LOINC Codes 📦4.0.1 FHIR Std.
Observation.dataAbsentReason Base extensible DataAbsentReason 📦4.0.1 FHIR Std.

Snapshot ViewView

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Observation C 0..* USCoreObservationClinicalResultProfile(9.0.0) Measurements and simple assertions
Constraints: obs-6, obs-7, us-core-2
... id Σ 0..1 id 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): A human language.
Additional BindingsPurpose
AllLanguages Max Binding
... text 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
... 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 Business Identifier for observation
... basedOn Σ 0..* Reference(CarePlan | DeviceRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest) Fulfills plan, proposal or order
... partOf Σ 0..* Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Immunization | ImagingStudy) Part of referenced event
... status ?!SΣ 1..1 code (USCDI+ Quality) registered | preliminary | final | amended | corrected | cancelled | entered-in-error | unknown
Binding: ObservationStatus (required): Codes providing the status of an observation.
... Slices for category S 1..* CodeableConcept Classification of type of observation
Slice: Unordered, Open by value:$this
Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.
.... category:us-core S 0..* CodeableConcept Classification of type of observation
Binding: US Core Clinical Result Observation Category (required)
... code SΣ 1..1 CodeableConcept (USCDI+ Quality) Clinical Test or Procedure Name
Binding: LOINCCodes (extensible)
... subject SΣ 1..1 Reference(US Quality Core Patient S | Group | US Core Device Profile | US Quality Core Location) Who and/or what the observation is about
... focus Σ 0..* Reference(Resource) What the observation is about, when it is not about the subject of record
... encounter SΣ 0..1 Reference(US Core Encounter Profile) Encounter associated with Observation
... effective[x] SΣC 0..1 Clinically relevant time/time-period for observation
Constraints: us-core-1
.... effectiveDateTime dateTime S
.... effectivePeriod Period
.... effectiveTiming Timing
.... effectiveInstant instant
... issued Σ 0..1 instant Date/Time this version was made available
... performer SΣ 0..* Reference(US Core Practitioner Profile S | US Core Organization Profile | US Core Patient Profile | PractitionerRole | US Core CareTeam Profile | US Core RelatedPerson Profile) (USCDI+ Quality) Who is responsible for the observation
... value[x] SΣC 0..1 (USCDI+ Quality) Result Value
Constraints: us-core-3
.... valueQuantity Quantity S
.... valueCodeableConcept CodeableConcept S
.... valueString string S
.... valueBoolean boolean
.... valueInteger integer
.... valueRange Range
.... valueRatio Ratio
.... valueSampledData SampledData
.... valueTime time
.... valueDateTime dateTime
.... valuePeriod Period
... dataAbsentReason SC 0..1 CodeableConcept Why the result is missing
Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.
... interpretation 0..* CodeableConcept High, low, normal, etc.
Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations.
... note 0..* Annotation Comments about the observation
... bodySite 0..1 CodeableConcept Observed body part
Binding: SNOMEDCTBodyStructures (example): Codes describing anatomical locations. May include laterality.
... method 0..1 CodeableConcept How it was done
Binding: ObservationMethods (example): Methods for simple observations.
... specimen 0..1 Reference(Specimen) Specimen used for this observation
... device 0..1 Reference(Device | DeviceMetric) (Measurement) Device
... referenceRange C 0..* BackboneElement Provides guide for interpretation
Constraints: obs-3
.... 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
.... low C 0..1 SimpleQuantity(4.0.1) Low Range, if relevant
.... high C 0..1 SimpleQuantity(4.0.1) High Range, if relevant
.... type 0..1 CodeableConcept Reference range qualifier
Binding: ObservationReferenceRangeMeaningCodes (preferred): Code for the meaning of a reference range.
.... appliesTo 0..* CodeableConcept Reference range population
Binding: ObservationReferenceRangeAppliesToCodes (example): Codes identifying the population the reference range applies to.
.... age 0..1 Range Applicable age range, if relevant
.... text 0..1 string Text based reference range in an observation
... hasMember Σ 0..* Reference(Observation | QuestionnaireResponse | MolecularSequence) Related resource that belongs to the Observation group
... derivedFrom Σ 0..* Reference(DocumentReference | ImagingStudy | Media | QuestionnaireResponse | Observation | MolecularSequence) Related measurements the observation is made from
... component Σ 0..* BackboneElement Component results
.... 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 Σ 1..1 CodeableConcept Type of component observation (code / type)
Binding: LOINCCodes (example): Codes identifying names of simple observations.
.... value[x] Σ 0..1 Actual component result
..... valueQuantity Quantity
..... valueCodeableConcept CodeableConcept
..... valueString string
..... valueBoolean boolean
..... valueInteger integer
..... valueRange Range
..... valueRatio Ratio
..... valueSampledData SampledData
..... valueTime time
..... valueDateTime dateTime
..... valuePeriod Period
.... dataAbsentReason C 0..1 CodeableConcept Why the component result is missing
Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.
.... interpretation 0..* CodeableConcept High, low, normal, etc.
Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations.
.... referenceRange 0..* See referenceRange (Observation) Provides guide for interpretation of component result

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Observation.language Base preferred Common Languages 📍4.0.1 FHIR Std.
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 Clinical Result Observation Category 📦9.0.0 US Core v9.0
Observation.code Base extensible LOINC Codes 📦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 example Observation Methods 📍4.0.1 FHIR Std.
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.

Constraints

Id Grade Path(s) Description Expression
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()
us-core-1 error Observation.effective[x] Datetime must be at least to day. $this is dateTime implies $this.toString().length() >= 10
us-core-2 error Observation If there is no component or hasMember element then either a value[x] or a data absent reason must be present (component.empty() and hasMember.empty()) implies (dataAbsentReason.exists() or value.exists())
us-core-3 error Observation.value[x] The system SHALL be UCUM for coded quantity units. ofType(Quantity).system.empty() or ofType(Quantity).system = 'http://unitsofmeasure.org'

 

Other representations of profile: CSV, Excel, Schematron

Notes:

Element Conformance Indicators by Profile Layer

Badges identify the profile layer where each conformance indicator is first introduced. Indicators introduced in an earlier layer remain applicable in later derived profiles.

Element conformance indicators organized by the profile layer where they are first introduced
Profile element FHIR US Core US Quality Core
status Mandatory Must Support USCDI+ Quality
category Mandatory Must Support
category:us-core Must Support
code Mandatory Must Support USCDI+ Quality
subject Mandatory Must Support
encounter Must Support
effective[x] Must Support
performer Must Support USCDI+ Quality
value[x] Must Support USCDI+ Quality
dataAbsentReason Must Support
component.code Mandatory

Cardinality note: “Mandatory” means the element has a minimum cardinality greater than zero. For nested elements, the cardinality indicator applies when the containing element is present.

Mandatory US Quality Core Server Search Parameters

The searches below are the focused set identified by US Quality Core as needed to retrieve USCDI+ Quality data for quality measurement and reporting. See the US Core FHIR RESTful Search API Requirements for detailed information on requirements by search parameter type.

Because this profile derives directly or indirectly from US Core, servers SHALL also support all mandatory searches described in the US Core Server CapabilityStatement requirements for Observation. When possible, this guide reuses mandatory searches from US Core and notes them with the EXISTING US CORE REQUIREMENT flag. While US Quality Core may restate US Core requirements to highlight searches directly relevant to USCDI+ Quality data access, US Core requirements not restated here remain applicable.

See the US Quality Core Server CapabilityStatement for complete requirements for the underlying Observation resource and Search Requirement Selection for how this focused set was selected.

Servers supporting this profile SHALL support the following search parameters and search parameter combinations:

  1. SHALL support searching for all Observation resources for a patient using the combination of the patient, category, and status search parameters.

    • Including optional support for OR search on category (e.g.category={system|}[search_code],{system|}[search_code],...).

    • Including support for OR search on status (e.g.status=[status],[status],...).

    GET [base]/Observation?patient={Patient/}[id]&category={system|}[search_code]&status=[status]

    Example:

    GET [base]/Observation?patient=Patient/example&category=http://terminology.hl7.org/CodeSystem/observation-category|exam&status=final

    Implementation Notes: Fetches a bundle of US Quality Core Observation Clinical Result resources matching the specified search criteria. See how to search by reference and how to search by token.

    Rationale for inclusion: Supports patient-scoped retrieval of Observation resources filtered by category and status for status-sensitive quality workflows.

  2. SHALL support searching for all Observation resources for a patient using the combination of the patient and category search parameters. EXISTING US CORE REQUIREMENT

    • Including optional support for OR search on category (e.g.category={system|}[search_code],{system|}[search_code],...).

    GET [base]/Observation?patient={Patient/}[id]&category={system|}[search_code]

    Example:

    GET [base]/Observation?patient=Patient/example&category=http://terminology.hl7.org/CodeSystem/observation-category|exam

    Implementation Notes: Fetches a bundle of US Quality Core Observation Clinical Result resources matching the specified search criteria. See how to search by reference and how to search by token.

    Rationale for inclusion: Supports patient-scoped retrieval of Observation resources filtered by category for USCDI+ Quality workflows.

  3. SHALL support searching for all Observation resources for a patient using the combination of the patient, category, and date search parameters. EXISTING US CORE REQUIREMENT

    • Including optional support for OR search on category (e.g.category={system|}[search_code],{system|}[search_code],...).

    • Including optional support for AND search on date (e.g.date=[date]&date=[date]&...).

    • Including support for these date comparators: "gt", "lt", "ge", "le".

    GET [base]/Observation?patient={Patient/}[id]&category={system|}[search_code]&date={gt|lt|ge|le}[dateTime]

    Example:

    GET [base]/Observation?patient=Patient/example&category=http://terminology.hl7.org/CodeSystem/observation-category|exam&date=ge2020-01-01T00:00:00Z

    Implementation Notes: Fetches a bundle of US Quality Core Observation Clinical Result resources matching the specified search criteria. See how to search by reference, how to search by token, and how to search by date.

    Rationale for inclusion: Supports patient-scoped retrieval of Observation resources filtered by category and date so quality workflows can constrain results to relevant reporting periods.

  4. SHALL support searching for all Observation resources for a patient using the combination of the patient and code search parameters. EXISTING US CORE REQUIREMENT

    • Including optional support for OR search on code (e.g.code={system|}[search_code],{system|}[search_code],...).

    GET [base]/Observation?patient={Patient/}[id]&code={system|}[search_code]

    Example:

    GET [base]/Observation?patient=Patient/example&code=http://loinc.org|8884-9

    Implementation Notes: Fetches a bundle of US Quality Core Observation Clinical Result resources matching the specified search criteria. See how to search by reference and how to search by token.

    Rationale for inclusion: Supports patient-scoped retrieval of Observation resources filtered by code for USCDI+ Quality workflows.