This page is part of the Da Vinci Coverage Requirements Discovery (CRD) FHIR IG (v0.1.0: STU 1 Ballot 1) based on FHIR v3.5.0. The current version which supercedes this version is 1.0.0. For a full list of available versions, see the Directory of published versions

This is a pre-release version (Ballot 1) of Coverage Requirements Discovery (CRD) R1/STU. There is no current official version.
For a full list of available versions, see the Directory of published versions .

StructureDefinition: CRD Observation

The official URL for this profile is:

http://hl7.org/fhir/us/davinci-crd/StructureDefinition/profile-observation-r4

Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work.

This structure is derived from Observation

Summary

Mandatory: 2 elements
Must-Support: 7 elements

Structures

This structure refers to these other structures:

NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation I0..*Measurements and simple assertions
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: Common Languages (preferred)
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional Content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier Σ0..*IdentifierBusiness 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..1coderegistered | preliminary | final | amended +
Binding: ObservationStatus (required)
... category S1..*CodeableConceptClassification of type of observation
Binding: ObservationCategoryCodes (preferred)
... code SΣ1..1CodeableConceptType of observation (code / type)
Binding: LOINCCodes (example)
... subject SΣ1..1Reference(CRD Patient)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 Σ0..1Reference(Encounter)Healthcare event during which this observation is made
... effective[x] SΣ0..1dateTime, Period, Timing, instantClinically relevant time/time-period for observation
... issued Σ0..1instantDate/Time this version was made available
... performer Σ0..*Reference(Practitioner | PractitionerRole | Organization | CareTeam | Patient | RelatedPerson)Who is responsible for the observation
... value[x] SΣI0..1Quantity, CodeableConcept, string, boolean, integer, Range, Ratio, SampledData, time, dateTime, PeriodActual result
... dataAbsentReason SI0..1CodeableConceptWhy the result is missing
Binding: DataAbsentReason (extensible)
... interpretation 0..*CodeableConceptHigh, low, normal, etc.
Binding: ObservationInterpretationCodes (extensible)
... comment 0..1stringComments about the test result value
... bodySite 0..1CodeableConceptObserved body part
Binding: SNOMEDCTBodyStructures (example)
... method 0..1CodeableConceptHow it was done
Binding: ObservationMethods (example)
... specimen 0..1Reference(Specimen)Specimen used for this observation
... device 0..1Reference(Device | DeviceMetric)(Measurement) Device
... referenceRange I0..*BackboneElementProvides guide for interpretation
obs-3: Must have at least a low or a high or text
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored if unrecognized
.... low I0..1SimpleQuantityLow Range, if relevant
.... high I0..1SimpleQuantityHigh Range, if relevant
.... type 0..1CodeableConceptReference range qualifier
Binding: ObservationReferenceRangeMeaningCodes (preferred)
.... appliesTo 0..*CodeableConceptReference range population
Binding: ObservationReferenceRangeAppliesToCodes (example)
.... age 0..1RangeApplicable age range, if relevant
.... text 0..1stringText based reference range in an observation
... hasMember Σ0..*Reference(Observation | QuestionnaireResponse | Sequence)Related resource that belongs to the Observation group
... derivedFrom Σ0..*Reference(DocumentReference | ImagingStudy | Media | QuestionnaireResponse | Observation | Sequence)Related measurements the observation is made from
... component ΣI0..*BackboneElementComponent results
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored if unrecognized
.... code Σ1..1CodeableConceptType of component observation (code / type)
Binding: LOINCCodes (example)
.... value[x] Σ0..1Quantity, CodeableConcept, string, boolean, integer, Range, Ratio, SampledData, time, dateTime, PeriodActual component result
.... dataAbsentReason I0..1CodeableConceptWhy the component result is missing
Binding: DataAbsentReason (extensible)
.... interpretation 0..*CodeableConceptHigh, low, normal, etc.
Binding: ObservationInterpretationCodes (extensible)
.... referenceRange 0..*Unknown reference to #Observation.referenceRange
Provides guide for interpretation of component result

doco Documentation for this format

This structure is derived from Observation

Summary

Mandatory: 2 elements
Must-Support: 7 elements

Structures

This structure refers to these other structures:

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation I0..*Measurements and simple assertions
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: Common Languages (preferred)
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional Content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier Σ0..*IdentifierBusiness 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..1coderegistered | preliminary | final | amended +
Binding: ObservationStatus (required)
... category S1..*CodeableConceptClassification of type of observation
Binding: ObservationCategoryCodes (preferred)
... code SΣ1..1CodeableConceptType of observation (code / type)
Binding: LOINCCodes (example)
... subject SΣ1..1Reference(CRD Patient)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 Σ0..1Reference(Encounter)Healthcare event during which this observation is made
... effective[x] SΣ0..1dateTime, Period, Timing, instantClinically relevant time/time-period for observation
... issued Σ0..1instantDate/Time this version was made available
... performer Σ0..*Reference(Practitioner | PractitionerRole | Organization | CareTeam | Patient | RelatedPerson)Who is responsible for the observation
... value[x] SΣI0..1Quantity, CodeableConcept, string, boolean, integer, Range, Ratio, SampledData, time, dateTime, PeriodActual result
... dataAbsentReason SI0..1CodeableConceptWhy the result is missing
Binding: DataAbsentReason (extensible)
... interpretation 0..*CodeableConceptHigh, low, normal, etc.
Binding: ObservationInterpretationCodes (extensible)
... comment 0..1stringComments about the test result value
... bodySite 0..1CodeableConceptObserved body part
Binding: SNOMEDCTBodyStructures (example)
... method 0..1CodeableConceptHow it was done
Binding: ObservationMethods (example)
... specimen 0..1Reference(Specimen)Specimen used for this observation
... device 0..1Reference(Device | DeviceMetric)(Measurement) Device
... referenceRange I0..*BackboneElementProvides guide for interpretation
obs-3: Must have at least a low or a high or text
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored if unrecognized
.... low I0..1SimpleQuantityLow Range, if relevant
.... high I0..1SimpleQuantityHigh Range, if relevant
.... type 0..1CodeableConceptReference range qualifier
Binding: ObservationReferenceRangeMeaningCodes (preferred)
.... appliesTo 0..*CodeableConceptReference range population
Binding: ObservationReferenceRangeAppliesToCodes (example)
.... age 0..1RangeApplicable age range, if relevant
.... text 0..1stringText based reference range in an observation
... hasMember Σ0..*Reference(Observation | QuestionnaireResponse | Sequence)Related resource that belongs to the Observation group
... derivedFrom Σ0..*Reference(DocumentReference | ImagingStudy | Media | QuestionnaireResponse | Observation | Sequence)Related measurements the observation is made from
... component ΣI0..*BackboneElementComponent results
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored if unrecognized
.... code Σ1..1CodeableConceptType of component observation (code / type)
Binding: LOINCCodes (example)
.... value[x] Σ0..1Quantity, CodeableConcept, string, boolean, integer, Range, Ratio, SampledData, time, dateTime, PeriodActual component result
.... dataAbsentReason I0..1CodeableConceptWhy the component result is missing
Binding: DataAbsentReason (extensible)
.... interpretation 0..*CodeableConceptHigh, low, normal, etc.
Binding: ObservationInterpretationCodes (extensible)
.... referenceRange 0..*Unknown reference to #Observation.referenceRange
Provides guide for interpretation of component result

doco Documentation for this format

 

Other representations of profile: Schematron

Terminology Bindings

PathNameConformanceValueSet
Observation.languageLanguagepreferredCommon Languages
Observation.statusObservationStatusrequiredObservationStatus
Observation.categoryObservation Category CodespreferredObservationCategoryCodes
Observation.codeLOINC CodesexampleLOINCCodes
Observation.dataAbsentReasonDataAbsentReasonextensibleDataAbsentReason
Observation.interpretationObservation Interpretation CodesextensibleObservationInterpretationCodes
Observation.bodySiteSNOMED CT Body StructuresexampleSNOMEDCTBodyStructures
Observation.methodObservation MethodsexampleObservationMethods
Observation.referenceRange.typeObservation Reference Range Meaning CodespreferredObservationReferenceRangeMeaningCodes
Observation.referenceRange.appliesToObservation Reference Range Applies To CodesexampleObservationReferenceRangeAppliesToCodes
Observation.component.codeLOINC CodesexampleLOINCCodes
Observation.component.dataAbsentReasonDataAbsentReasonextensibleDataAbsentReason
Observation.component.interpretationObservation Interpretation CodesextensibleObservationInterpretationCodes

Constraints

IdPathDetailsRequirements
dom-2ObservationIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-4ObservationIf 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-3ObservationIf 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-6ObservationA resource should have narrative for robust management
: text.div.exists()
dom-5ObservationIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
obs-7ObservationIf Observation.code is the same as a Observation.component.code then the value element associated with the code SHALL NOT be present
: value.empty() or component.code.where( (coding.code = %resource.code.coding.code) and (coding.system = %resource.code.coding.system)).empty()
obs-6ObservationdataAbsentReason SHALL only be present if Observation.value[x] is not present
: dataAbsentReason.empty() or value.empty()
ele-1Observation.referenceRangeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
obs-3Observation.referenceRangeMust have at least a low or a high or text
: low.exists() or high.exists() or text.exists()
ele-1Observation.componentAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())