Data Model Libraries
    Preparing search index...

    Observation Class

    Measurements and simple assertions made about a patient, device or other subject.

    Observations are a key aspect of healthcare. This resource is used to capture those that do not require more sophisticated mechanisms.

    FHIR Specification

    • Short: Measurements and simple assertions
    • Definition: Measurements and simple assertions made about a patient, device or other subject.
    • Comment: Used for simple observations such as device measurements, laboratory atomic results, vital signs, height, weight, smoking status, comments, etc. Other resources are used to provide context for observations such as laboratory reports, etc.
    • FHIR Version: 4.0.1

    Hierarchy (View Summary)

    Implements

    Index

    Constructors

    Properties

    Methods

    parse getIdentifier setIdentifier addIdentifier hasIdentifier getBasedOn setBasedOn addBasedOn hasBasedOn getPartOf setPartOf addPartOf hasPartOf getStatusEnumType setStatusEnumType hasStatusEnumType getStatusElement setStatusElement hasStatusElement getStatus setStatus hasStatus getCategory setCategory addCategory hasCategory getCode setCode hasCode getSubject setSubject hasSubject getFocus setFocus addFocus hasFocus getEncounter setEncounter hasEncounter getEffective setEffective hasEffective getEffectiveDateTimeType hasEffectiveDateTimeType getEffectivePeriod hasEffectivePeriod getEffectiveTiming hasEffectiveTiming getEffectiveInstantType hasEffectiveInstantType getIssuedElement setIssuedElement hasIssuedElement getIssued setIssued hasIssued getPerformer setPerformer addPerformer hasPerformer getValue setValue hasValue getValueQuantity hasValueQuantity getValueCodeableConcept hasValueCodeableConcept getValueStringType hasValueStringType getValueBooleanType hasValueBooleanType getValueIntegerType hasValueIntegerType getValueRange hasValueRange getValueRatio hasValueRatio getValueSampledData hasValueSampledData getValueTimeType hasValueTimeType getValueDateTimeType hasValueDateTimeType getValuePeriod hasValuePeriod getDataAbsentReason setDataAbsentReason hasDataAbsentReason getInterpretation setInterpretation addInterpretation hasInterpretation getNote setNote addNote hasNote getBodySite setBodySite hasBodySite getMethod setMethod hasMethod getSpecimen setSpecimen hasSpecimen getDevice setDevice hasDevice getReferenceRange setReferenceRange addReferenceRange hasReferenceRange getHasMember setHasMember addHasMember hasHasMember getDerivedFrom setDerivedFrom addDerivedFrom hasDerivedFrom getComponent setComponent addComponent hasComponent fhirType isEmpty isRequiredFieldsEmpty copy toJSON getText setText hasText getContained setContained addContained hasContained getExtension setExtension hasExtension getExtensionByUrl addExtension removeExtension getModifierExtension setModifierExtension hasModifierExtension getModifierExtensionByUrl addModifierExtension removeModifierExtension resourceType getIdElement setIdElement hasIdElement getId setId hasId getMeta setMeta hasMeta getImplicitRulesElement setImplicitRulesElement hasImplicitRulesElement getImplicitRules setImplicitRules hasImplicitRules getLanguageElement setLanguageElement hasLanguageElement getLanguage setLanguage hasLanguage isResource isDataType isComplexDataType isPrimitive isBooleanPrimitive isStringPrimitive isNumberPrimitive isBigIntPrimitive isDateTimePrimitive copyValues initIdentifier initBasedOn initPartOf initCategory initFocus initPerformer initInterpretation initNote initReferenceRange initHasMember initDerivedFrom initComponent

    Constructors

    Properties

    identifier?: Identifier[]

    Observation.identifier Element

    FHIR Specification

    • Short: Business Identifier for observation
    • Definition: A unique identifier assigned to this observation.
    • Requirements: Allows observations to be distinguished and referenced.
    • FHIR Type: Identifier
    • Cardinality: 0..*
    • isModifier: false
    • isSummary: true
    basedOn?: Reference[]

    Observation.basedOn Element

    FHIR Specification

    partOf?: Reference[]

    Observation.partOf Element

    FHIR Specification

    observationStatusEnum: ObservationStatusEnum

    FHIR CodeSystem: ObservationStatus

    status: null | EnumCodeType

    Observation.status Element

    FHIR Specification

    • Short: registered | preliminary | final | amended +
    • Definition: The status of the result value.
    • Comment: This element is labeled as a modifier because the status contains codes that mark the resource as not currently valid.
    • Requirements: Need to track the status of individual results. Some results are finalized before the whole report is finalized.
    • FHIR Type: code
    • Cardinality: 1..1
    • isModifier: true
    • isModifierReason: This element is labeled as a modifier because it is a status element that contains status entered-in-error which means that the resource should not be treated as valid
    • isSummary: true

    CodeSystem Enumeration: ObservationStatusEnum

    category?: CodeableConcept[]

    Observation.category Element

    FHIR Specification

    • Short: Classification of type of observation
    • Definition: A code that classifies the general type of observation being made.
    • Comment: In addition to the required category valueset, this element allows various categorization schemes based on the owner's definition of the category and effectively multiple categories can be used at once. The level of granularity is defined by the category concepts in the value set.
    • Requirements: Used for filtering what observations are retrieved and displayed.
    • FHIR Type: CodeableConcept
    • Cardinality: 0..*
    • isModifier: false
    • isSummary: false
    code: null | CodeableConcept

    Observation.code Element

    FHIR Specification

    • Short: Type of observation (code / type)
    • Definition: Describes what was observed. Sometimes this is called the observation "name".
    • Comment: All code-value and, if present, component.code-component.value pairs need to be taken into account to correctly understand the meaning of the observation.
    • Requirements: Knowing what kind of observation is being made is essential to understanding the observation.
    • FHIR Type: CodeableConcept
    • Cardinality: 1..1
    • isModifier: false
    • isSummary: true
    subject?: Reference

    Observation.subject Element

    FHIR Specification

    • Short: Who and/or what the observation is about
    • Definition: The patient, or group of patients, location, or device this observation is about and into whose record the observation is placed. If the actual focus of the observation is different from the subject (or a sample of, part, or region of the subject), the focus element or the code itself specifies the actual focus of the observation.
    • Comment: One would expect this element to be a cardinality of 1..1. The only circumstance in which the subject can be missing is when the observation is made by a device that does not know the patient. In this case, the observation SHALL be matched to a patient through some context/channel matching technique, and at this point, the observation should be updated.
    • Requirements: Observations have no value if you don't know who or what they're about.
    • FHIR Type: Reference
    • Cardinality: 0..1
    • isModifier: false
    • isSummary: true
    focus?: Reference[]

    Observation.focus Element

    FHIR Specification

    • Short: What the observation is about, when it is not about the subject of record
    • Definition: The actual focus of an observation when it is not the patient of record representing something or someone associated with the patient such as a spouse, parent, fetus, or donor. For example, fetus observations in a mother's record. The focus of an observation could also be an existing condition, an intervention, the subject's diet, another observation of the subject, or a body structure such as tumor or implanted device. An example use case would be using the Observation resource to capture whether the mother is trained to change her child's tracheostomy tube. In this example, the child is the patient of record and the mother is the focus.
    • Comment: Typically, an observation is made about the subject - a patient, or group of patients, location, or device - and the distinction between the subject and what is directly measured for an observation is specified in the observation code itself ( e.g., "Blood Glucose") and does not need to be represented separately using this element. Use specimen if a reference to a specimen is required. If a code is required instead of a resource use either bodysite for bodysites or the standard extension focusCode.
    • FHIR Type: Reference
    • Cardinality: 0..*
    • isModifier: false
    • isSummary: true
    encounter?: Reference

    Observation.encounter Element

    FHIR Specification

    • Short: Healthcare event during which this observation is made
    • Definition: The healthcare event (e.g. a patient and healthcare provider interaction) during which this observation is made.
    • Comment: This will typically be the encounter the event occurred within, but some events may be initiated prior to or after the official completion of an encounter but still be tied to the context of the encounter (e.g. pre-admission laboratory tests).
    • Requirements: For some observations it may be important to know the link between an observation and a particular encounter.
    • FHIR Type: Reference
    • Cardinality: 0..1
    • isModifier: false
    • isSummary: true
    effective?: IDataType

    Observation.effective[x] Element

    @ChoiceDataTypesMeta('Observation.effective[x]', ['dateTime','Period','Timing','instant',]

    FHIR Specification

    • Short: Clinically relevant time/time-period for observation
    • Definition: The time or time-period the observed value is asserted as being true. For biological subjects - e.g. human patients - this is usually called the "physiologically relevant time". This is usually either the time of the procedure or of specimen collection, but very often the source of the date/time is not known, only the date/time itself.
    • Comment: At least a date should be present unless this observation is a historical report. For recording imprecise or "fuzzy" times (For example, a blood glucose measurement taken "after breakfast") use the Timing datatype which allow the measurement to be tied to regular life events.
    • Requirements: Knowing when an observation was deemed true is important to its relevance as well as determining trends.
    • FHIR Types: 'dateTime', 'Period', 'Timing', 'instant',
    • Cardinality: 0..1
    • isModifier: false
    • isSummary: true
    issued?: InstantType

    Observation.issued Element

    FHIR Specification

    • Short: Date/Time this version was made available
    • Definition: The date and time this version of the observation was made available to providers, typically after the results have been reviewed and verified.
    • Comment: For Observations that don't require review and verification, it may be the same as the lastUpdated time of the resource itself. For Observations that do require review and verification for certain updates, it might not be the same as the lastUpdated time of the resource itself due to a non-clinically significant update that doesn't require the new version to be reviewed and verified again.
    • FHIR Type: instant
    • Cardinality: 0..1
    • isModifier: false
    • isSummary: true
    performer?: Reference[]

    Observation.performer Element

    FHIR Specification

    value?: IDataType

    Observation.value[x] Element

    @ChoiceDataTypesMeta('Observation.value[x]', ['Quantity','CodeableConcept','string','boolean','integer','Range','Ratio','SampledData','time','dateTime','Period',]

    FHIR Specification

    • Short: Actual result
    • Definition: The information determined as a result of making the observation, if the information has a simple value.
    • Comment: An observation may have; 1) a single value here, 2) both a value and a set of related or component values, or 3) only a set of related or component values. If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the Notes section below.
    • Requirements: An observation exists to have a value, though it might not if it is in error, or if it represents a group of observations.
    • FHIR Types: 'Quantity', 'CodeableConcept', 'string', 'boolean', 'integer', 'Range', 'Ratio', 'SampledData', 'time', 'dateTime', 'Period',
    • Cardinality: 0..1
    • isModifier: false
    • isSummary: true
    dataAbsentReason?: CodeableConcept

    Observation.dataAbsentReason Element

    FHIR Specification

    • Short: Why the result is missing
    • Definition: Provides a reason why the expected value in the element Observation.value[x] is missing.
    • Comment: Null or exceptional values can be represented two ways in FHIR Observations. One way is to simply include them in the value set and represent the exceptions in the value. For example, measurement values for a serology test could be "detected", "not detected", "inconclusive", or "specimen unsatisfactory". The alternate way is to use the value element for actual observations and use the explicit dataAbsentReason element to record exceptional values. For example, the dataAbsentReason code "error" could be used when the measurement was not completed. Note that an observation may only be reported if there are values to report. For example differential cell counts values may be reported only when > 0. Because of these options, use-case agreements are required to interpret general observations for null or exceptional values.
    • Requirements: For many results it is necessary to handle exceptional values in measurements.
    • FHIR Type: CodeableConcept
    • Cardinality: 0..1
    • isModifier: false
    • isSummary: false
    interpretation?: CodeableConcept[]

    Observation.interpretation Element

    FHIR Specification

    • Short: High, low, normal, etc.
    • Definition: A categorical assessment of an observation value. For example, high, low, normal.
    • Comment: Historically used for laboratory results (known as 'abnormal flag' ), its use extends to other use cases where coded interpretations are relevant. Often reported as one or more simple compact codes this element is often placed adjacent to the result value in reports and flow sheets to signal the meaning/normalcy status of the result.
    • Requirements: For some results, particularly numeric results, an interpretation is necessary to fully understand the significance of a result.
    • FHIR Type: CodeableConcept
    • Cardinality: 0..*
    • isModifier: false
    • isSummary: false
    note?: Annotation[]

    Observation.note Element

    FHIR Specification

    • Short: Comments about the observation
    • Definition: Comments about the observation or the results.
    • Comment: May include general statements about the observation, or statements about significant, unexpected or unreliable results values, or information about its source when relevant to its interpretation.
    • Requirements: Need to be able to provide free text additional information.
    • FHIR Type: Annotation
    • Cardinality: 0..*
    • isModifier: false
    • isSummary: false
    bodySite?: CodeableConcept

    Observation.bodySite Element

    FHIR Specification

    • Short: Observed body part
    • Definition: Indicates the site on the subject's body where the observation was made (i.e. the target site).
    • Comment: Only used if not implicit in code found in Observation.code. In many systems, this may be represented as a related observation instead of an inline component. If the use case requires BodySite to be handled as a separate resource (e.g. to identify and track separately) then use the standard extension bodySite.
    • FHIR Type: CodeableConcept
    • Cardinality: 0..1
    • isModifier: false
    • isSummary: false

    Observation.method Element

    FHIR Specification

    • Short: How it was done
    • Definition: Indicates the mechanism used to perform the observation.
    • Comment: Only used if not implicit in code for Observation.code.
    • Requirements: In some cases, method can impact results and is thus used for determining whether results can be compared or determining significance of results.
    • FHIR Type: CodeableConcept
    • Cardinality: 0..1
    • isModifier: false
    • isSummary: false
    specimen?: Reference

    Observation.specimen Element

    FHIR Specification

    • Short: Specimen used for this observation
    • Definition: The specimen that was used when this observation was made.
    • Comment: Should only be used if not implicit in code found in Observation.code. Observations are not made on specimens themselves; they are made on a subject, but in many cases by the means of a specimen. Note that although specimens are often involved, they are not always tracked and reported explicitly. Also note that observation resources may be used in contexts that track the specimen explicitly (e.g. Diagnostic Report).
    • FHIR Type: Reference
    • Cardinality: 0..1
    • isModifier: false
    • isSummary: false
    device?: Reference

    Observation.device Element

    FHIR Specification

    Observation.referenceRange Element

    FHIR Specification

    • Short: Provides guide for interpretation
    • Definition: Guidance on how to interpret the value by comparison to a normal or recommended range. Multiple reference ranges are interpreted as an "OR". In other words, to represent two distinct target populations, two referenceRange elements would be used.
    • Comment: Most observations only have one generic reference range. Systems MAY choose to restrict to only supplying the relevant reference range based on knowledge about the patient (e.g., specific to the patient's age, gender, weight and other factors), but this might not be possible or appropriate. Whenever more than one reference range is supplied, the differences between them SHOULD be provided in the reference range and/or age properties.
    • Requirements: Knowing what values are considered "normal" can help evaluate the significance of a particular result. Need to be able to provide multiple reference ranges for different contexts.
    • FHIR Type: BackboneElement
    • Cardinality: 0..*
    • isModifier: false
    • isSummary: false
    hasMember?: Reference[]

    Observation.hasMember Element

    FHIR Specification

    derivedFrom?: Reference[]

    Observation.derivedFrom Element

    FHIR Specification

    Observation.component Element

    FHIR Specification

    • Short: Component results
    • Definition: Some observations have multiple component observations. These component observations are expressed as separate code value pairs that share the same attributes. Examples include systolic and diastolic component observations for blood pressure measurement and multiple component observations for genetics observations.
    • Comment: For a discussion on the ways Observations can be assembled in groups together see Notes below.
    • Requirements: Component observations share the same attributes in the Observation resource as the primary observation and are always treated a part of a single observation (they are not separable). However, the reference range for the primary observation value is not inherited by the component values and is required when appropriate for each component observation.
    • FHIR Type: BackboneElement
    • Cardinality: 0..*
    • isModifier: false
    • isSummary: true

    Methods

    • Parse the provided Observation JSON to instantiate the Observation data model.

      Parameters

      • sourceJson: Value

        JSON representing FHIR Observation

      • OptionaloptSourceField: string

        Optional data source field (e.g. <complexTypeName>.<complexTypeFieldName>); defaults to Observation

      Returns undefined | Observation

      Observation data model or undefined for Observation

      JsonError if the provided JSON is not a valid JSON object

    • Assigns the provided Reference array value to the basedOn property.

      Parameters

      • value: undefined | Reference[]

        the basedOn array value

      Returns this

      this

      @ReferenceTargets('Observation.basedOn', ['CarePlan','DeviceRequest','ImmunizationRecommendation','MedicationRequest','NutritionOrder','ServiceRequest',])

      InvalidTypeError for invalid data type or reference value

    • Add the provided Reference value to the basedOn array property.

      Parameters

      • value: undefined | Reference

        the basedOn value

      Returns this

      this

      @ReferenceTargets('Observation.basedOn', ['CarePlan','DeviceRequest','ImmunizationRecommendation','MedicationRequest','NutritionOrder','ServiceRequest',])

      InvalidTypeError for invalid data type or reference value

    • Assigns the provided Reference array value to the partOf property.

      Parameters

      • value: undefined | Reference[]

        the partOf array value

      Returns this

      this

      @ReferenceTargets('Observation.partOf', ['MedicationAdministration','MedicationDispense','MedicationStatement','Procedure','Immunization','ImagingStudy',])

      InvalidTypeError for invalid data type or reference value

    • Add the provided Reference value to the partOf array property.

      Parameters

      • value: undefined | Reference

        the partOf value

      Returns this

      this

      @ReferenceTargets('Observation.partOf', ['MedicationAdministration','MedicationDispense','MedicationStatement','Procedure','Immunization','ImagingStudy',])

      InvalidTypeError for invalid data type or reference value

    • Assigns the provided Reference array value to the performer property.

      Parameters

      • value: undefined | Reference[]

        the performer array value

      Returns this

      this

      @ReferenceTargets('Observation.performer', ['Practitioner','PractitionerRole','Organization','CareTeam','Patient','RelatedPerson',])

      InvalidTypeError for invalid data type or reference value

    • Add the provided Reference value to the performer array property.

      Parameters

      • value: undefined | Reference

        the performer value

      Returns this

      this

      @ReferenceTargets('Observation.performer', ['Practitioner','PractitionerRole','Organization','CareTeam','Patient','RelatedPerson',])

      InvalidTypeError for invalid data type or reference value

    • Assigns the provided Reference array value to the derivedFrom property.

      Parameters

      • value: undefined | Reference[]

        the derivedFrom array value

      Returns this

      this

      @ReferenceTargets('Observation.derivedFrom', ['DocumentReference','ImagingStudy','Media','QuestionnaireResponse','Observation','MolecularSequence',])

      InvalidTypeError for invalid data type or reference value

    • Add the provided Reference value to the derivedFrom array property.

      Parameters

      • value: undefined | Reference

        the derivedFrom value

      Returns this

      this

      @ReferenceTargets('Observation.derivedFrom', ['DocumentReference','ImagingStudy','Media','QuestionnaireResponse','Observation','MolecularSequence',])

      InvalidTypeError for invalid data type or reference value

    • Assigns the provided value to the text property.

      Parameters

      Returns this

      this

    • Returns boolean

      true if the text property exists and has a value; false otherwise

    • Assigns the provided Resource array value to the contained property.

      Parameters

      • value: undefined | IResource[]

        the contained array value

      Returns this

      this

    • Returns boolean

      true if the contained property exists and has a value; false otherwise

    • Assigns the provided array of Extension values to the extension property.

      Parameters

      • extension: undefined | IExtension[]

        array of Extensions

      Returns this

      this

    • Determines if the extension property exists.

      Parameters

      • Optionalurl: string

        the url that identifies a specific Extension

      Returns boolean

      true if an Extension has the provided url; false otherwise

      If the url is provided, determines if an Extension having the provided url exists. If the url is not provided, determines if the extension property exists and has any values.

      AssertionError for invalid url

    • Adds the provided Extension to the extension property array.

      Parameters

      • extension: undefined | IExtension

        the Extension value to add to the extension property array

      Returns this

      this

    • Removes the Extension having the provided url from the extension property array.

      Parameters

      • url: string

        the url that identifies a specific Extension to remove

      Returns void

      AssertionError for invalid url

    • Determines if the modifierExtension property exists.

      Parameters

      • Optionalurl: string

        the url that identifies a specific Extension

      Returns boolean

      true if an Extension has the provided url

      If the url is provided, determines if an Extension having the provided url exists. If the url is not provided, determines if the modifierExtension property exists and has any values.

      AssertionError for invalid url

    • Assigns the provided PrimitiveType value to the id property.

      Parameters

      • element: undefined | IdType

        the id value

      Returns this

      this

    • Returns undefined | string

      the id property value as a primitive value

    • Assigns the provided primitive value to the id property.

      Parameters

      • value: undefined | string

        the id value

      Returns this

      this

      PrimitiveTypeError for invalid primitive types

    • Returns boolean

      true if the id property exists and has a value; false otherwise

    • Assigns the provided value to the meta property.

      Parameters

      • value: undefined | Meta

        the meta value

      Returns this

      this

    • Returns boolean

      true if the meta property exists and has a value; false otherwise

    • Assigns the provided primitive value to the implicitRules property.

      Parameters

      • value: undefined | string

        the implicitRules value

      Returns this

      this

      PrimitiveTypeError for invalid primitive types

    • Returns undefined | string

      the language property value as a primitive value

    • Assigns the provided primitive value to the language property.

      Parameters

      • value: undefined | string

        the language value

      Returns this

      this

      PrimitiveTypeError for invalid primitive types

    • Returns boolean

      true if the language property exists and has a value; false otherwise

    • Returns boolean

      true if the instance is a FHIR complex or primitive datatype; false otherwise