Personal Health Device Implementation Guide
3.0.0-draft - STU 3 - R6 Global (Whole world)

Personal Health Device Implementation Guide, published by HL7 International / Devices. This guide is not an authorized publication; it is the continuous build for version 3.0.0-draft built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/phd/ and changes regularly. See the Directory of published versions

Resource Profile: PhdCoincidentTimeStampObservation

Official URL: http://hl7.org/fhir/uv/phd/StructureDefinition/PhdCoincidentTimeStampObservation Version: 3.0.0-draft
Standards status: Trial-use Maturity Level: 1 Computable Name: PhdCoincidentTimeStampObservation
Other Identifiers: OID:2.16.840.1.113883.4.642.40.73.42.6

Observations containing a coincident timestamp.

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..* Observation Measurements and simple assertions
Constraints: obs-6, obs-7, obs-10, obs-11, obs-12
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... contained 0..* Resource Contained, inline Resources
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored
Slice: Unordered, Open by value:url
... code ΣC 1..1 CodeableConcept Type of observation (code / type)
Binding: LOINCObsOrBoth (example): Codes identifying names of simple observations.
.... Slices for coding Σ 1..* Coding Code defined by a terminology system
Slice: Unordered, Open by value:$this
..... coding:MDCType Σ 1..1 Coding The type of time clock used by the PHD
Binding: MDC Clock Types (required): MDC codes for PHD clock types
... subject Σ 1..1 Reference(PhdDevice) Reference to the PHD device for which the coincident timestamp measurement is reported
.... reference ΣC 1..1 string Literal reference, Relative, internal or absolute URL
... effective[x] Σ 0..1 The current time of the PHG at the current time of the PHD. Absent if PHD is better synchronized
.... effectiveDateTime dateTime
.... effectivePeriod Period
.... effectiveTiming Timing
.... effectiveInstant instant
... value[x] ΣC 0..1 The current time of the PHD as a wallclock time (dateTime), relative time (Quantity), or if a time fault a dataAbsentReason
.... valueQuantity Quantity
.... valueDateTime dateTime
... dataAbsentReason C 0..1 CodeableConcept Why the result value is missing
Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.
.... Slices for coding Σ 0..* Coding Code defined by a terminology system
Slice: Unordered, Open by value:$this
..... coding:TimeFault Σ 0..1 Coding Time Fault: The PHD has a time fault

Required Pattern: At least the following
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
...... system 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/data-absent-reason
...... version 0..1 string Version of the system - if relevant
...... code 1..1 code Symbol in syntax defined by the system
Fixed Value: unknown
...... display 0..1 string Representation defined by the system
...... userSelected 0..1 boolean If this coding was chosen directly by the user
... device 1..1 Reference(PhgDevice) A reference to the device that generates the measurements or the device settings for the device
.... reference ΣC 1..1 string Reference to the PHG device responsible for the coincident timestamp measurement
... Slices for component ΣC 0..* BackboneElement Component results
Slice: Unordered, Open by value:code
.... component:All Slices Content/Rules for all slices
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Slice: Unordered, Open by value:url
..... code ΣC 1..1 CodeableConcept Type of component observation (code / type)
Binding: LOINCObsOrBoth (example): Codes identifying names of simple observations.
.... component:clockSyncMethod ΣC 0..1 BackboneElement Clock Synchronization Method: The method used to synchronize the clock.
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Slice: Unordered, Open by value:url
..... code ΣC 1..1 CodeableConcept Type of component observation (code / type)
Binding: LOINCObsOrBoth (example): Codes identifying names of simple observations.
Required Pattern: At least the following
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
...... coding 1..* Coding Code defined by a terminology system
Fixed Value: (Complex)
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..* Extension Additional content defined by implementations
....... system 1..1 uri Identity of the terminology system
Fixed Value: urn:iso:std:iso:11073:10101
....... version 0..1 string Version of the system - if relevant
....... code 1..1 code Symbol in syntax defined by the system
Fixed Value: 68220
....... display 0..1 string Representation defined by the system
....... userSelected 0..1 boolean If this coding was chosen directly by the user
...... text 0..1 string Plain text representation of the concept
..... Slices for value[x] ΣC 0..1 Actual component result
Slice: Unordered, Open by type:$this
...... valueQuantity Quantity
...... valueCodeableConcept CodeableConcept
...... valueString string
...... valueBoolean boolean
...... valueInteger integer
...... valueRange Range
...... valueRatio Ratio
...... valueSampledData SampledData
...... valueTime time
...... valueDateTime dateTime
...... valuePeriod Period
...... valueAttachment Attachment
..... Slices for value[x] Content/Rules for all slices
...... value[x]:valueCodeableConcept ΣC 0..1 CodeableConcept The clock synchronization method last used by the PHD/PHG to synchronize the clock of the PHD
Binding: MDC Time Synchronization Methods (extensible)

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Observation.status Base required Observation Status 📍6.0.0-ballot5 FHIR Std.
Observation.code Base example LOINC codes with Observation or Both 📍6.0.0-ballot5 FHIR Std.
Observation.code.coding:MDCType Base required MDC Clock Types 📦3.0.0-draft This IG
Observation.dataAbsentReason Base extensible Data Absent Reason 📍6.0.0-ballot5 FHIR Std.
Observation.component.​code Base example LOINC codes with Observation or Both 📍6.0.0-ballot5 FHIR Std.
Observation.component:clockSyncMethod.​code Base example LOINC codes with Observation or Both 📍6.0.0-ballot5 FHIR Std.
Observation.component:clockSyncMethod.​value[x]:valueCodeableConcept Base extensible MDC Time Synchronization Methods 📦3.0.0-draft This IG

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.trace('id') in %resource.descendants().select(reference | as(uri))) or descendants().where(reference='#' | as(uri)='#').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())
obs-6 error Observation Observation.dataAbsentReason SHALL only be present if Observation.value[x] is not present dataAbsentReason.empty() or value.empty()
obs-7 error Observation If Observation.component.code is the same as Observation.code, then Observation.value SHALL NOT be present (the Observation.component.value[x] holds the value). value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()
obs-10 error Observation Observation.component.dataAbsentReason SHALL only be present if Observation.component.value[x] is not present component.empty() or component.where(dataAbsentReason.exists()).all(value.empty())
obs-11 error Observation if organizer exists and organizer = true, then value[x], dataAbsentReason and component SHALL NOT be present (organizer.exists() and organizer.allTrue()) implies (value.empty() and dataAbsentReason.empty() and component.empty())
obs-12 warning Observation All observations SHOULD have a performer performer.exists()

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Observation 0..* Observation Measurements and simple assertions
... status 1..1 code registered | in-process | specimen-in-process | preliminary | final | amended | corrected | appended | cancelled | entered-in-error | unknown | cannot-be-obtained
Required Pattern: final
... code
.... Slices for coding 1..* Coding Code defined by a terminology system
Slice: Unordered, Open by value:$this
..... coding:MDCType 1..1 Coding The type of time clock used by the PHD
Binding: MDC Clock Types (required): MDC codes for PHD clock types
... subject 1..1 Reference(PhdDevice) Reference to the PHD device for which the coincident timestamp measurement is reported
.... reference 1..1 string Literal reference, Relative, internal or absolute URL
... effective[x] 0..1 dateTime, Period, Timing, instant The current time of the PHG at the current time of the PHD. Absent if PHD is better synchronized
... value[x] 0..1 The current time of the PHD as a wallclock time (dateTime), relative time (Quantity), or if a time fault a dataAbsentReason
.... valueQuantity Quantity
.... valueDateTime dateTime
... dataAbsentReason
.... Slices for coding 0..* Coding Code defined by a terminology system
Slice: Unordered, Open by value:$this
..... coding:TimeFault 0..1 Coding Time Fault: The PHD has a time fault
Required Pattern: At least the following
...... system 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/data-absent-reason
...... code 1..1 code Symbol in syntax defined by the system
Fixed Value: unknown
... specimen 0..0 No specimen in PHD. The coincident timestamp is not associated with a specimen.
... device 1..1 Reference(PhgDevice) A reference to the device that generates the measurements or the device settings for the device
.... reference 1..1 string Reference to the PHG device responsible for the coincident timestamp measurement
... hasMember 0..0 No reference to a group observation in PHD. The coincident timestamp is not part of a group observation.
... derivedFrom 0..0 No reference to a source observation in PHD. The coincident timestamp is not derived from another observation.
... Slices for component 0..* BackboneElement Component results
Slice: Unordered, Open by value:code
.... component:clockSyncMethod 0..1 BackboneElement Clock Synchronization Method: The method used to synchronize the clock.
..... code 1..1 CodeableConcept Type of component observation (code / type)
Required Pattern: At least the following
...... coding 1..* Coding Code defined by a terminology system
Fixed Value: (Complex)
....... system 1..1 uri Identity of the terminology system
Fixed Value: urn:iso:std:iso:11073:10101
....... code 1..1 code Symbol in syntax defined by the system
Fixed Value: 68220
..... Slices for value[x] 0..1 Quantity, CodeableConcept, string, boolean, integer, Range, Ratio, SampledData, time, dateTime, Period, Attachment Actual component result
Slice: Unordered, Open by type:$this
..... Slices for value[x] Content/Rules for all slices
...... value[x]:valueCodeableConcept 0..1 CodeableConcept The clock synchronization method last used by the PHD/PHG to synchronize the clock of the PHD
Binding: MDC Time Synchronization Methods (extensible)
..... dataAbsentReason 0..0 Why the component result value is missing

doco Documentation for this format

Terminology Bindings (Differential)

Path Status Usage ValueSet Version Source
Observation.code.coding:MDCType Base required MDC Clock Types 📦3.0.0-draft This IG
Observation.component:clockSyncMethod.​value[x]:valueCodeableConcept Base extensible MDC Time Synchronization Methods 📦3.0.0-draft This IG
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Observation C 0..* Observation Measurements and simple assertions
Constraints: obs-6, obs-7, obs-10, obs-11, obs-12
... 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: AllLanguages (required): IETF language tag for a human language
Additional BindingsPurpose
CommonLanguages Starter
... 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
Slice: Unordered, Open by value:url
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored
Slice: Unordered, Open by value:url
... identifier Σ 0..* Identifier Business Identifier for observation
... basedOn Σ 0..* Reference(CarePlan | DeviceRequest | MedicationRequest | NutritionOrder | ServiceRequest) Fulfills plan, proposal or order
... triggeredBy 0..* BackboneElement Triggering observation(s)
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Slice: Unordered, Open by value:url
.... observation Σ 1..1 Reference(Observation) Triggering observation
.... type Σ 1..1 code reflex | repeat | re-run
Binding: TriggeredBytype (required): The type of TriggeredBy Observation.
.... reason 0..1 string Reason that the observation was triggered
... partOf Σ 0..* Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Immunization | ImagingStudy) Part of referenced event
... status ?!Σ 1..1 code registered | in-process | specimen-in-process | preliminary | final | amended | corrected | appended | cancelled | entered-in-error | unknown | cannot-be-obtained
Binding: ObservationStatus (required): Codes providing the status of an observation.
Required Pattern: final
... statusReason 0..1 CodeableConcept Reason for current status
Binding: ObservationStatusReason (example): Codes identifying the reason for the current state of an observation.
... category 0..* CodeableConcept Classification of type of observation
Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.
... code ΣC 1..1 CodeableConcept Type of observation (code / type)
Binding: LOINCObsOrBoth (example): Codes identifying names of simple observations.
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... Slices for coding Σ 1..* Coding Code defined by a terminology system
Slice: Unordered, Open by value:$this
..... coding:MDCType Σ 1..1 Coding The type of time clock used by the PHD
Binding: MDC Clock Types (required): MDC codes for PHD clock types
.... text Σ 0..1 string Plain text representation of the concept
... subject Σ 1..1 Reference(PhdDevice) Reference to the PHD device for which the coincident timestamp measurement is reported
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... reference ΣC 1..1 string Literal reference, Relative, internal or absolute URL
.... type Σ 0..1 uri Type the reference refers to (e.g. "Patient") - must be a resource in resources
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
.... identifier ΣC 0..1 Identifier Logical reference, when literal reference is not known
.... display ΣC 0..1 string Text alternative for the resource
... organizer ΣC 0..1 boolean This observation organizes/groups a set of sub-observations
... encounter Σ 0..1 Reference(Encounter) Healthcare event during which this observation is made. If you need to place the observation within one or more episodes of care, use the workflow-episodeOfCare extension
... effective[x] Σ 0..1 The current time of the PHG at the current time of the PHD. Absent if PHD is better synchronized
.... effectiveDateTime dateTime
.... effectivePeriod Period
.... effectiveTiming Timing
.... effectiveInstant instant
... issued Σ 0..1 instant Date/Time this version was made available
... performer Σ 0..* Reference(Practitioner | PractitionerRole | Organization | CareTeam | Patient | RelatedPerson | HealthcareService | Group) Who is responsible for the observation
... value[x] ΣC 0..1 The current time of the PHD as a wallclock time (dateTime), relative time (Quantity), or if a time fault a dataAbsentReason
.... valueQuantity Quantity
.... valueDateTime dateTime
... dataAbsentReason C 0..1 CodeableConcept Why the result value is missing
Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... Slices for coding Σ 0..* Coding Code defined by a terminology system
Slice: Unordered, Open by value:$this
..... coding:TimeFault Σ 0..1 Coding Time Fault: The PHD has a time fault

Required Pattern: At least the following
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
...... system 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/data-absent-reason
...... version 0..1 string Version of the system - if relevant
...... code 1..1 code Symbol in syntax defined by the system
Fixed Value: unknown
...... display 0..1 string Representation defined by the system
...... userSelected 0..1 boolean If this coding was chosen directly by the user
.... text Σ 0..1 string Plain text representation of the concept
... interpretation 0..* CodeableConcept High, low, normal, etc
Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations.
... context 0..* CodeableReference(Resource) Context for understanding the observation
Binding: ObservationContextCodes (example): Codes identifying contextual factors that affect interpretation of observations.
... note 0..* Annotation Comments about the observation
... bodySite 0..1 CodeableConcept DEPRECATED: Observed body part
... bodyStructure 0..* CodeableReference(BodyStructure) Observed body structure
Binding: SNOMEDCTBodyStructures (example): SNOMED CT Body Structures
... method 0..1 CodeableConcept How it was done
Binding: ObservationMethods (example): Methods for simple observations.
... device 1..1 Reference(PhgDevice) A reference to the device that generates the measurements or the device settings for the device
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... reference ΣC 1..1 string Reference to the PHG device responsible for the coincident timestamp measurement
.... type Σ 0..1 uri Type the reference refers to (e.g. "Patient") - must be a resource in resources
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
.... identifier ΣC 0..1 Identifier Logical reference, when literal reference is not known
.... display ΣC 0..1 string Text alternative for the resource
... supportingDevice 0..* CodeableReference(Device) Device supporting generation of the measurement
Binding: DeviceType (example): Type of device supporting the generation of the measurement.
... 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
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Slice: Unordered, Open by value:url
.... low C 0..1 Quantity Low Range, if relevant
Constraints: obs-13
.... high C 0..1 Quantity High Range, if relevant
Constraints: obs-14
.... normalValue 0..1 CodeableConcept Normal value, if relevant
Binding: ObservationReferenceRangeNormalValueCodes (example): Codes identifying the normal value of the observation.
.... 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 C 0..1 markdown Text based reference range in an observation
... Slices for component ΣC 0..* BackboneElement Component results
Slice: Unordered, Open by value:code
.... component:All Slices Content/Rules for all slices
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Slice: Unordered, Open by value:url
..... code ΣC 1..1 CodeableConcept Type of component observation (code / type)
Binding: LOINCObsOrBoth (example): Codes identifying names of simple observations.
..... value[x] ΣC 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
...... valueAttachment Attachment
..... dataAbsentReason C 0..1 CodeableConcept Why the component result value 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 value
.... component:clockSyncMethod ΣC 0..1 BackboneElement Clock Synchronization Method: The method used to synchronize the clock.
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Slice: Unordered, Open by value:url
..... code ΣC 1..1 CodeableConcept Type of component observation (code / type)
Binding: LOINCObsOrBoth (example): Codes identifying names of simple observations.
Required Pattern: At least the following
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
...... coding 1..* Coding Code defined by a terminology system
Fixed Value: (Complex)
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..* Extension Additional content defined by implementations
....... system 1..1 uri Identity of the terminology system
Fixed Value: urn:iso:std:iso:11073:10101
....... version 0..1 string Version of the system - if relevant
....... code 1..1 code Symbol in syntax defined by the system
Fixed Value: 68220
....... display 0..1 string Representation defined by the system
....... userSelected 0..1 boolean If this coding was chosen directly by the user
...... text 0..1 string Plain text representation of the concept
..... Slices for value[x] ΣC 0..1 Actual component result
Slice: Unordered, Open by type:$this
...... valueQuantity Quantity
...... valueCodeableConcept CodeableConcept
...... valueString string
...... valueBoolean boolean
...... valueInteger integer
...... valueRange Range
...... valueRatio Ratio
...... valueSampledData SampledData
...... valueTime time
...... valueDateTime dateTime
...... valuePeriod Period
...... valueAttachment Attachment
..... Slices for value[x] Content/Rules for all slices
...... value[x]:valueCodeableConcept ΣC 0..1 CodeableConcept The clock synchronization method last used by the PHD/PHG to synchronize the clock of the PHD
Binding: MDC Time Synchronization Methods (extensible)
..... 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 value

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Observation.language Base required All Languages 📍6.0.0-ballot5 FHIR Std.
Observation.triggeredBy.​type Base required triggered Bytype 📍6.0.0-ballot5 FHIR Std.
Observation.status Base required Observation Status 📍6.0.0-ballot5 FHIR Std.
Observation.statusReason Base example Observation Status Reason 📍6.0.0-ballot5 FHIR Std.
Observation.category Base preferred Observation Category Codes 📍6.0.0-ballot5 FHIR Std.
Observation.code Base example LOINC codes with Observation or Both 📍6.0.0-ballot5 FHIR Std.
Observation.code.coding:MDCType Base required MDC Clock Types 📦3.0.0-draft This IG
Observation.subject.​type Base extensible Resource Types 📍6.0.0-ballot5 FHIR Std.
Observation.dataAbsentReason Base extensible Data Absent Reason 📍6.0.0-ballot5 FHIR Std.
Observation.interpretation Base extensible Observation Interpretation Codes 📍6.0.0-ballot5 FHIR Std.
Observation.context Base example Observation Context Codes 📍6.0.0-ballot5 FHIR Std.
Observation.bodyStructure Base example SNOMED CT Body Structures 📍6.0.0-ballot5 FHIR Std.
Observation.method Base example Observation Methods 📍6.0.0-ballot5 FHIR Std.
Observation.device.type Base extensible Resource Types 📍6.0.0-ballot5 FHIR Std.
Observation.supportingDevice Base example Device Type 📍6.0.0-ballot5 FHIR Std.
Observation.referenceRange.​normalValue Base example Observation Reference Range Normal Value Codes 📍6.0.0-ballot5 FHIR Std.
Observation.referenceRange.​type Base preferred Observation Reference Range Meaning Codes 📍6.0.0-ballot5 FHIR Std.
Observation.referenceRange.​appliesTo Base example Observation Reference Range Applies To Codes 📍6.0.0-ballot5 FHIR Std.
Observation.component.​code Base example LOINC codes with Observation or Both 📍6.0.0-ballot5 FHIR Std.
Observation.component.​dataAbsentReason Base extensible Data Absent Reason 📍6.0.0-ballot5 FHIR Std.
Observation.component.​interpretation Base extensible Observation Interpretation Codes 📍6.0.0-ballot5 FHIR Std.
Observation.component:clockSyncMethod.​code Base example LOINC codes with Observation or Both 📍6.0.0-ballot5 FHIR Std.
Observation.component:clockSyncMethod.​value[x]:valueCodeableConcept Base extensible MDC Time Synchronization Methods 📦3.0.0-draft This IG
Observation.component:clockSyncMethod.​interpretation Base extensible Observation Interpretation Codes 📍6.0.0-ballot5 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.trace('id') in %resource.descendants().select(reference | as(uri))) or descendants().where(reference='#' | as(uri)='#').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())
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 Observation.dataAbsentReason SHALL only be present if Observation.value[x] is not present dataAbsentReason.empty() or value.empty()
obs-7 error Observation If Observation.component.code is the same as Observation.code, then Observation.value SHALL NOT be present (the Observation.component.value[x] holds the value). value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()
obs-10 error Observation Observation.component.dataAbsentReason SHALL only be present if Observation.component.value[x] is not present component.empty() or component.where(dataAbsentReason.exists()).all(value.empty())
obs-11 error Observation if organizer exists and organizer = true, then value[x], dataAbsentReason and component SHALL NOT be present (organizer.exists() and organizer.allTrue()) implies (value.empty() and dataAbsentReason.empty() and component.empty())
obs-12 warning Observation All observations SHOULD have a performer performer.exists()
obs-13 error Observation.referenceRange.low If low.comparator exists, it must be '>=' or '>'. comparator.exists() implies (comparator = '>=' or comparator = '>')
obs-14 error Observation.referenceRange.high If high.comparator exists, it must be '<=' or '<'. comparator.exists() implies (comparator = '<=' or comparator = '<')

Summary

Mandatory: 6 elements
Prohibited: 5 elements

Structures

This structure refers to these other structures:

Slices

This structure defines the following Slices:

  • The element 1 is sliced based on the value of Observation.code.coding
  • The element 1 is sliced based on the value of Observation.dataAbsentReason.coding
  • The element 1 is sliced based on the value of Observation.component
  • The element 1 is sliced based on the value of Observation.component.value[x]

Maturity: 1

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Observation C 0..* Observation Measurements and simple assertions
Constraints: obs-6, obs-7, obs-10, obs-11, obs-12
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... contained 0..* Resource Contained, inline Resources
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored
Slice: Unordered, Open by value:url
... code ΣC 1..1 CodeableConcept Type of observation (code / type)
Binding: LOINCObsOrBoth (example): Codes identifying names of simple observations.
.... Slices for coding Σ 1..* Coding Code defined by a terminology system
Slice: Unordered, Open by value:$this
..... coding:MDCType Σ 1..1 Coding The type of time clock used by the PHD
Binding: MDC Clock Types (required): MDC codes for PHD clock types
... subject Σ 1..1 Reference(PhdDevice) Reference to the PHD device for which the coincident timestamp measurement is reported
.... reference ΣC 1..1 string Literal reference, Relative, internal or absolute URL
... effective[x] Σ 0..1 The current time of the PHG at the current time of the PHD. Absent if PHD is better synchronized
.... effectiveDateTime dateTime
.... effectivePeriod Period
.... effectiveTiming Timing
.... effectiveInstant instant
... value[x] ΣC 0..1 The current time of the PHD as a wallclock time (dateTime), relative time (Quantity), or if a time fault a dataAbsentReason
.... valueQuantity Quantity
.... valueDateTime dateTime
... dataAbsentReason C 0..1 CodeableConcept Why the result value is missing
Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.
.... Slices for coding Σ 0..* Coding Code defined by a terminology system
Slice: Unordered, Open by value:$this
..... coding:TimeFault Σ 0..1 Coding Time Fault: The PHD has a time fault

Required Pattern: At least the following
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
...... system 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/data-absent-reason
...... version 0..1 string Version of the system - if relevant
...... code 1..1 code Symbol in syntax defined by the system
Fixed Value: unknown
...... display 0..1 string Representation defined by the system
...... userSelected 0..1 boolean If this coding was chosen directly by the user
... device 1..1 Reference(PhgDevice) A reference to the device that generates the measurements or the device settings for the device
.... reference ΣC 1..1 string Reference to the PHG device responsible for the coincident timestamp measurement
... Slices for component ΣC 0..* BackboneElement Component results
Slice: Unordered, Open by value:code
.... component:All Slices Content/Rules for all slices
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Slice: Unordered, Open by value:url
..... code ΣC 1..1 CodeableConcept Type of component observation (code / type)
Binding: LOINCObsOrBoth (example): Codes identifying names of simple observations.
.... component:clockSyncMethod ΣC 0..1 BackboneElement Clock Synchronization Method: The method used to synchronize the clock.
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Slice: Unordered, Open by value:url
..... code ΣC 1..1 CodeableConcept Type of component observation (code / type)
Binding: LOINCObsOrBoth (example): Codes identifying names of simple observations.
Required Pattern: At least the following
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
...... coding 1..* Coding Code defined by a terminology system
Fixed Value: (Complex)
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..* Extension Additional content defined by implementations
....... system 1..1 uri Identity of the terminology system
Fixed Value: urn:iso:std:iso:11073:10101
....... version 0..1 string Version of the system - if relevant
....... code 1..1 code Symbol in syntax defined by the system
Fixed Value: 68220
....... display 0..1 string Representation defined by the system
....... userSelected 0..1 boolean If this coding was chosen directly by the user
...... text 0..1 string Plain text representation of the concept
..... Slices for value[x] ΣC 0..1 Actual component result
Slice: Unordered, Open by type:$this
...... valueQuantity Quantity
...... valueCodeableConcept CodeableConcept
...... valueString string
...... valueBoolean boolean
...... valueInteger integer
...... valueRange Range
...... valueRatio Ratio
...... valueSampledData SampledData
...... valueTime time
...... valueDateTime dateTime
...... valuePeriod Period
...... valueAttachment Attachment
..... Slices for value[x] Content/Rules for all slices
...... value[x]:valueCodeableConcept ΣC 0..1 CodeableConcept The clock synchronization method last used by the PHD/PHG to synchronize the clock of the PHD
Binding: MDC Time Synchronization Methods (extensible)

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Observation.status Base required Observation Status 📍6.0.0-ballot5 FHIR Std.
Observation.code Base example LOINC codes with Observation or Both 📍6.0.0-ballot5 FHIR Std.
Observation.code.coding:MDCType Base required MDC Clock Types 📦3.0.0-draft This IG
Observation.dataAbsentReason Base extensible Data Absent Reason 📍6.0.0-ballot5 FHIR Std.
Observation.component.​code Base example LOINC codes with Observation or Both 📍6.0.0-ballot5 FHIR Std.
Observation.component:clockSyncMethod.​code Base example LOINC codes with Observation or Both 📍6.0.0-ballot5 FHIR Std.
Observation.component:clockSyncMethod.​value[x]:valueCodeableConcept Base extensible MDC Time Synchronization Methods 📦3.0.0-draft This IG

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.trace('id') in %resource.descendants().select(reference | as(uri))) or descendants().where(reference='#' | as(uri)='#').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())
obs-6 error Observation Observation.dataAbsentReason SHALL only be present if Observation.value[x] is not present dataAbsentReason.empty() or value.empty()
obs-7 error Observation If Observation.component.code is the same as Observation.code, then Observation.value SHALL NOT be present (the Observation.component.value[x] holds the value). value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()
obs-10 error Observation Observation.component.dataAbsentReason SHALL only be present if Observation.component.value[x] is not present component.empty() or component.where(dataAbsentReason.exists()).all(value.empty())
obs-11 error Observation if organizer exists and organizer = true, then value[x], dataAbsentReason and component SHALL NOT be present (organizer.exists() and organizer.allTrue()) implies (value.empty() and dataAbsentReason.empty() and component.empty())
obs-12 warning Observation All observations SHOULD have a performer performer.exists()

Differential View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Observation 0..* Observation Measurements and simple assertions
... status 1..1 code registered | in-process | specimen-in-process | preliminary | final | amended | corrected | appended | cancelled | entered-in-error | unknown | cannot-be-obtained
Required Pattern: final
... code
.... Slices for coding 1..* Coding Code defined by a terminology system
Slice: Unordered, Open by value:$this
..... coding:MDCType 1..1 Coding The type of time clock used by the PHD
Binding: MDC Clock Types (required): MDC codes for PHD clock types
... subject 1..1 Reference(PhdDevice) Reference to the PHD device for which the coincident timestamp measurement is reported
.... reference 1..1 string Literal reference, Relative, internal or absolute URL
... effective[x] 0..1 dateTime, Period, Timing, instant The current time of the PHG at the current time of the PHD. Absent if PHD is better synchronized
... value[x] 0..1 The current time of the PHD as a wallclock time (dateTime), relative time (Quantity), or if a time fault a dataAbsentReason
.... valueQuantity Quantity
.... valueDateTime dateTime
... dataAbsentReason
.... Slices for coding 0..* Coding Code defined by a terminology system
Slice: Unordered, Open by value:$this
..... coding:TimeFault 0..1 Coding Time Fault: The PHD has a time fault
Required Pattern: At least the following
...... system 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/data-absent-reason
...... code 1..1 code Symbol in syntax defined by the system
Fixed Value: unknown
... specimen 0..0 No specimen in PHD. The coincident timestamp is not associated with a specimen.
... device 1..1 Reference(PhgDevice) A reference to the device that generates the measurements or the device settings for the device
.... reference 1..1 string Reference to the PHG device responsible for the coincident timestamp measurement
... hasMember 0..0 No reference to a group observation in PHD. The coincident timestamp is not part of a group observation.
... derivedFrom 0..0 No reference to a source observation in PHD. The coincident timestamp is not derived from another observation.
... Slices for component 0..* BackboneElement Component results
Slice: Unordered, Open by value:code
.... component:clockSyncMethod 0..1 BackboneElement Clock Synchronization Method: The method used to synchronize the clock.
..... code 1..1 CodeableConcept Type of component observation (code / type)
Required Pattern: At least the following
...... coding 1..* Coding Code defined by a terminology system
Fixed Value: (Complex)
....... system 1..1 uri Identity of the terminology system
Fixed Value: urn:iso:std:iso:11073:10101
....... code 1..1 code Symbol in syntax defined by the system
Fixed Value: 68220
..... Slices for value[x] 0..1 Quantity, CodeableConcept, string, boolean, integer, Range, Ratio, SampledData, time, dateTime, Period, Attachment Actual component result
Slice: Unordered, Open by type:$this
..... Slices for value[x] Content/Rules for all slices
...... value[x]:valueCodeableConcept 0..1 CodeableConcept The clock synchronization method last used by the PHD/PHG to synchronize the clock of the PHD
Binding: MDC Time Synchronization Methods (extensible)
..... dataAbsentReason 0..0 Why the component result value is missing

doco Documentation for this format

Terminology Bindings (Differential)

Path Status Usage ValueSet Version Source
Observation.code.coding:MDCType Base required MDC Clock Types 📦3.0.0-draft This IG
Observation.component:clockSyncMethod.​value[x]:valueCodeableConcept Base extensible MDC Time Synchronization Methods 📦3.0.0-draft This IG

Snapshot ViewView

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Observation C 0..* Observation Measurements and simple assertions
Constraints: obs-6, obs-7, obs-10, obs-11, obs-12
... 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: AllLanguages (required): IETF language tag for a human language
Additional BindingsPurpose
CommonLanguages Starter
... 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
Slice: Unordered, Open by value:url
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored
Slice: Unordered, Open by value:url
... identifier Σ 0..* Identifier Business Identifier for observation
... basedOn Σ 0..* Reference(CarePlan | DeviceRequest | MedicationRequest | NutritionOrder | ServiceRequest) Fulfills plan, proposal or order
... triggeredBy 0..* BackboneElement Triggering observation(s)
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Slice: Unordered, Open by value:url
.... observation Σ 1..1 Reference(Observation) Triggering observation
.... type Σ 1..1 code reflex | repeat | re-run
Binding: TriggeredBytype (required): The type of TriggeredBy Observation.
.... reason 0..1 string Reason that the observation was triggered
... partOf Σ 0..* Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Immunization | ImagingStudy) Part of referenced event
... status ?!Σ 1..1 code registered | in-process | specimen-in-process | preliminary | final | amended | corrected | appended | cancelled | entered-in-error | unknown | cannot-be-obtained
Binding: ObservationStatus (required): Codes providing the status of an observation.
Required Pattern: final
... statusReason 0..1 CodeableConcept Reason for current status
Binding: ObservationStatusReason (example): Codes identifying the reason for the current state of an observation.
... category 0..* CodeableConcept Classification of type of observation
Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.
... code ΣC 1..1 CodeableConcept Type of observation (code / type)
Binding: LOINCObsOrBoth (example): Codes identifying names of simple observations.
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... Slices for coding Σ 1..* Coding Code defined by a terminology system
Slice: Unordered, Open by value:$this
..... coding:MDCType Σ 1..1 Coding The type of time clock used by the PHD
Binding: MDC Clock Types (required): MDC codes for PHD clock types
.... text Σ 0..1 string Plain text representation of the concept
... subject Σ 1..1 Reference(PhdDevice) Reference to the PHD device for which the coincident timestamp measurement is reported
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... reference ΣC 1..1 string Literal reference, Relative, internal or absolute URL
.... type Σ 0..1 uri Type the reference refers to (e.g. "Patient") - must be a resource in resources
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
.... identifier ΣC 0..1 Identifier Logical reference, when literal reference is not known
.... display ΣC 0..1 string Text alternative for the resource
... organizer ΣC 0..1 boolean This observation organizes/groups a set of sub-observations
... encounter Σ 0..1 Reference(Encounter) Healthcare event during which this observation is made. If you need to place the observation within one or more episodes of care, use the workflow-episodeOfCare extension
... effective[x] Σ 0..1 The current time of the PHG at the current time of the PHD. Absent if PHD is better synchronized
.... effectiveDateTime dateTime
.... effectivePeriod Period
.... effectiveTiming Timing
.... effectiveInstant instant
... issued Σ 0..1 instant Date/Time this version was made available
... performer Σ 0..* Reference(Practitioner | PractitionerRole | Organization | CareTeam | Patient | RelatedPerson | HealthcareService | Group) Who is responsible for the observation
... value[x] ΣC 0..1 The current time of the PHD as a wallclock time (dateTime), relative time (Quantity), or if a time fault a dataAbsentReason
.... valueQuantity Quantity
.... valueDateTime dateTime
... dataAbsentReason C 0..1 CodeableConcept Why the result value is missing
Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... Slices for coding Σ 0..* Coding Code defined by a terminology system
Slice: Unordered, Open by value:$this
..... coding:TimeFault Σ 0..1 Coding Time Fault: The PHD has a time fault

Required Pattern: At least the following
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
...... system 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/data-absent-reason
...... version 0..1 string Version of the system - if relevant
...... code 1..1 code Symbol in syntax defined by the system
Fixed Value: unknown
...... display 0..1 string Representation defined by the system
...... userSelected 0..1 boolean If this coding was chosen directly by the user
.... text Σ 0..1 string Plain text representation of the concept
... interpretation 0..* CodeableConcept High, low, normal, etc
Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations.
... context 0..* CodeableReference(Resource) Context for understanding the observation
Binding: ObservationContextCodes (example): Codes identifying contextual factors that affect interpretation of observations.
... note 0..* Annotation Comments about the observation
... bodySite 0..1 CodeableConcept DEPRECATED: Observed body part
... bodyStructure 0..* CodeableReference(BodyStructure) Observed body structure
Binding: SNOMEDCTBodyStructures (example): SNOMED CT Body Structures
... method 0..1 CodeableConcept How it was done
Binding: ObservationMethods (example): Methods for simple observations.
... device 1..1 Reference(PhgDevice) A reference to the device that generates the measurements or the device settings for the device
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... reference ΣC 1..1 string Reference to the PHG device responsible for the coincident timestamp measurement
.... type Σ 0..1 uri Type the reference refers to (e.g. "Patient") - must be a resource in resources
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
.... identifier ΣC 0..1 Identifier Logical reference, when literal reference is not known
.... display ΣC 0..1 string Text alternative for the resource
... supportingDevice 0..* CodeableReference(Device) Device supporting generation of the measurement
Binding: DeviceType (example): Type of device supporting the generation of the measurement.
... 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
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Slice: Unordered, Open by value:url
.... low C 0..1 Quantity Low Range, if relevant
Constraints: obs-13
.... high C 0..1 Quantity High Range, if relevant
Constraints: obs-14
.... normalValue 0..1 CodeableConcept Normal value, if relevant
Binding: ObservationReferenceRangeNormalValueCodes (example): Codes identifying the normal value of the observation.
.... 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 C 0..1 markdown Text based reference range in an observation
... Slices for component ΣC 0..* BackboneElement Component results
Slice: Unordered, Open by value:code
.... component:All Slices Content/Rules for all slices
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Slice: Unordered, Open by value:url
..... code ΣC 1..1 CodeableConcept Type of component observation (code / type)
Binding: LOINCObsOrBoth (example): Codes identifying names of simple observations.
..... value[x] ΣC 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
...... valueAttachment Attachment
..... dataAbsentReason C 0..1 CodeableConcept Why the component result value 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 value
.... component:clockSyncMethod ΣC 0..1 BackboneElement Clock Synchronization Method: The method used to synchronize the clock.
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Slice: Unordered, Open by value:url
..... code ΣC 1..1 CodeableConcept Type of component observation (code / type)
Binding: LOINCObsOrBoth (example): Codes identifying names of simple observations.
Required Pattern: At least the following
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
...... coding 1..* Coding Code defined by a terminology system
Fixed Value: (Complex)
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..* Extension Additional content defined by implementations
....... system 1..1 uri Identity of the terminology system
Fixed Value: urn:iso:std:iso:11073:10101
....... version 0..1 string Version of the system - if relevant
....... code 1..1 code Symbol in syntax defined by the system
Fixed Value: 68220
....... display 0..1 string Representation defined by the system
....... userSelected 0..1 boolean If this coding was chosen directly by the user
...... text 0..1 string Plain text representation of the concept
..... Slices for value[x] ΣC 0..1 Actual component result
Slice: Unordered, Open by type:$this
...... valueQuantity Quantity
...... valueCodeableConcept CodeableConcept
...... valueString string
...... valueBoolean boolean
...... valueInteger integer
...... valueRange Range
...... valueRatio Ratio
...... valueSampledData SampledData
...... valueTime time
...... valueDateTime dateTime
...... valuePeriod Period
...... valueAttachment Attachment
..... Slices for value[x] Content/Rules for all slices
...... value[x]:valueCodeableConcept ΣC 0..1 CodeableConcept The clock synchronization method last used by the PHD/PHG to synchronize the clock of the PHD
Binding: MDC Time Synchronization Methods (extensible)
..... 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 value

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Observation.language Base required All Languages 📍6.0.0-ballot5 FHIR Std.
Observation.triggeredBy.​type Base required triggered Bytype 📍6.0.0-ballot5 FHIR Std.
Observation.status Base required Observation Status 📍6.0.0-ballot5 FHIR Std.
Observation.statusReason Base example Observation Status Reason 📍6.0.0-ballot5 FHIR Std.
Observation.category Base preferred Observation Category Codes 📍6.0.0-ballot5 FHIR Std.
Observation.code Base example LOINC codes with Observation or Both 📍6.0.0-ballot5 FHIR Std.
Observation.code.coding:MDCType Base required MDC Clock Types 📦3.0.0-draft This IG
Observation.subject.​type Base extensible Resource Types 📍6.0.0-ballot5 FHIR Std.
Observation.dataAbsentReason Base extensible Data Absent Reason 📍6.0.0-ballot5 FHIR Std.
Observation.interpretation Base extensible Observation Interpretation Codes 📍6.0.0-ballot5 FHIR Std.
Observation.context Base example Observation Context Codes 📍6.0.0-ballot5 FHIR Std.
Observation.bodyStructure Base example SNOMED CT Body Structures 📍6.0.0-ballot5 FHIR Std.
Observation.method Base example Observation Methods 📍6.0.0-ballot5 FHIR Std.
Observation.device.type Base extensible Resource Types 📍6.0.0-ballot5 FHIR Std.
Observation.supportingDevice Base example Device Type 📍6.0.0-ballot5 FHIR Std.
Observation.referenceRange.​normalValue Base example Observation Reference Range Normal Value Codes 📍6.0.0-ballot5 FHIR Std.
Observation.referenceRange.​type Base preferred Observation Reference Range Meaning Codes 📍6.0.0-ballot5 FHIR Std.
Observation.referenceRange.​appliesTo Base example Observation Reference Range Applies To Codes 📍6.0.0-ballot5 FHIR Std.
Observation.component.​code Base example LOINC codes with Observation or Both 📍6.0.0-ballot5 FHIR Std.
Observation.component.​dataAbsentReason Base extensible Data Absent Reason 📍6.0.0-ballot5 FHIR Std.
Observation.component.​interpretation Base extensible Observation Interpretation Codes 📍6.0.0-ballot5 FHIR Std.
Observation.component:clockSyncMethod.​code Base example LOINC codes with Observation or Both 📍6.0.0-ballot5 FHIR Std.
Observation.component:clockSyncMethod.​value[x]:valueCodeableConcept Base extensible MDC Time Synchronization Methods 📦3.0.0-draft This IG
Observation.component:clockSyncMethod.​interpretation Base extensible Observation Interpretation Codes 📍6.0.0-ballot5 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.trace('id') in %resource.descendants().select(reference | as(uri))) or descendants().where(reference='#' | as(uri)='#').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())
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 Observation.dataAbsentReason SHALL only be present if Observation.value[x] is not present dataAbsentReason.empty() or value.empty()
obs-7 error Observation If Observation.component.code is the same as Observation.code, then Observation.value SHALL NOT be present (the Observation.component.value[x] holds the value). value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()
obs-10 error Observation Observation.component.dataAbsentReason SHALL only be present if Observation.component.value[x] is not present component.empty() or component.where(dataAbsentReason.exists()).all(value.empty())
obs-11 error Observation if organizer exists and organizer = true, then value[x], dataAbsentReason and component SHALL NOT be present (organizer.exists() and organizer.allTrue()) implies (value.empty() and dataAbsentReason.empty() and component.empty())
obs-12 warning Observation All observations SHOULD have a performer performer.exists()
obs-13 error Observation.referenceRange.low If low.comparator exists, it must be '>=' or '>'. comparator.exists() implies (comparator = '>=' or comparator = '>')
obs-14 error Observation.referenceRange.high If high.comparator exists, it must be '<=' or '<'. comparator.exists() implies (comparator = '<=' or comparator = '<')

Summary

Mandatory: 6 elements
Prohibited: 5 elements

Structures

This structure refers to these other structures:

Slices

This structure defines the following Slices:

  • The element 1 is sliced based on the value of Observation.code.coding
  • The element 1 is sliced based on the value of Observation.dataAbsentReason.coding
  • The element 1 is sliced based on the value of Observation.component
  • The element 1 is sliced based on the value of Observation.component.value[x]

Maturity: 1

 

Other representations of profile: CSV, Excel, Schematron