Observation - FHIR Resource (r4)


This Observation Resource uses the FHIR API standard for access and structure.

Validate an Observation FHIR Resource (r4)



Resource Attributes

AttributeField is listTypeDescription
basedOntrueReference# "basedOn" : [{ Reference(CarePlan|DeviceRequest|ImmunizationRecommendation|
bodySitefalseCodeableConcept# Observed body part
categorytrueCodeableConcept# Classification of type of observation
codefalseCodeableConcept# Type of observation (code / type)
componenttrueData Type# Component results
dataAbsentReasonfalseCodeableConcept# C? Why the result is missing
derivedFromtrueReference# "derivedFrom" : [{ Reference(DocumentReference|ImagingStudy|Media|
devicefalseReference# (Measurement) Device
effective[x]falsedateTime|Period|Timing|instant#undefined
encounterfalseReference# Healthcare event during which this observation is made
focustrueReference# What the observation is about, when it is not about the subject of record
hasMembertrueReference# "hasMember" : [{ Reference(Observation|QuestionnaireResponse|
identifiertrueIdentifier# Business Identifier for observation
interpretationtrueCodeableConcept# High, low, normal, etc.
issuedfalseinstant# Date/Time this version was made available
methodfalseCodeableConcept# How it was done
notetrueAnnotation# Comments about the observation
partOftrueReference# "partOf" : [{ Reference(MedicationAdministration|MedicationDispense|
performertrueReference# "performer" : [{ Reference(Practitioner|PractitionerRole|Organization|
referenceRangetrueData Type# Provides guide for interpretation
specimenfalseReference# Specimen used for this observation
statusfalsecode# registered | preliminary | final | amended +
subjectfalseReference# Who and/or what the observation is about
value[x]falseQuantity|CodeableConcept|string|boolean|integer|Range|Ratio|SampledData|time|dateTime|Period#undefined

Observation Example

{
  "resourceType": "Observation",
  "id": "example",
  "text": {
    "status": "generated",
    "div": "<div xmlns=\"http://www.w3.org/1999/xhtml\"><p><b>Generated Narrative with Details</b></p><p><b>id</b>: example</p><p><b>status</b>: final</p><p><b>category</b>: Vital Signs <span>(Details : {http://terminology.hl7.org/CodeSystem/observation-category code 'vital-signs' = 'Vital Signs', given as 'Vital Signs'})</span></p><p><b>code</b>: Body Weight <span>(Details : {LOINC code '29463-7' = 'Body weight', given as 'Body Weight'}; {LOINC code '3141-9' = 'Body weight Measured', given as 'Body weight Measured'}; {SNOMED CT code '27113001' = 'Body weight', given as 'Body weight'}; {http://acme.org/devices/clinical-codes code 'body-weight' = 'body-weight', given as 'Body Weight'})</span></p><p><b>subject</b>: <a>Patient/example</a></p><p><b>encounter</b>: <a>Encounter/example</a></p><p><b>effective</b>: 28/03/2016</p><p><b>value</b>: 185 lbs<span> (Details: UCUM code [lb_av] = 'lb_av')</span></p></div>"
  },
  "status": "final",
  "category": [
    {
      "coding": [
        {
          "system": "http://terminology.hl7.org/CodeSystem/observation-category",
          "code": "vital-signs",
          "display": "Vital Signs"
        }
      ]
    }
  ],
  "code": {
    "coding": [
      {
        "system": "http://loinc.org",
        "code": "29463-7",
        "display": "Body Weight"
      },
      {
        "system": "http://loinc.org",
        "code": "3141-9",
        "display": "Body weight Measured"
      },
      {
        "system": "http://snomed.info/sct",
        "code": "27113001",
        "display": "Body weight"
      },
      {
        "system": "http://acme.org/devices/clinical-codes",
        "code": "body-weight",
        "display": "Body Weight"
      }
    ]
  },
  "subject": {
    "reference": "Patient/example"
  },
  "encounter": {
    "reference": "Encounter/example"
  },
  "effectiveDateTime": "2016-03-28",
  "valueQuantity": {
    "value": 185,
    "unit": "lbs",
    "system": "http://unitsofmeasure.org",
    "code": "[lb_av]"
  }
}

Observation Structure

{
  "resourceType" : "Observation",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "identifier" : [{ Identifier }], // Business Identifier for observation
  "basedOn" : [{ Reference(CarePlan|DeviceRequest|ImmunizationRecommendation|
   MedicationRequest|NutritionOrder|ServiceRequest) }], // Fulfills plan, proposal or order
  "partOf" : [{ Reference(MedicationAdministration|MedicationDispense|
   MedicationStatement|Procedure|Immunization|ImagingStudy) }], // Part of referenced event
  "status" : "<code>", // R!  registered | preliminary | final | amended +
  "category" : [{ CodeableConcept }], // Classification of  type of observation
  "code" : { CodeableConcept }, // R!  Type of observation (code / type)
  "subject" : { Reference(Patient|Group|Device|Location) }, // Who and/or what the observation is about
  "focus" : [{ Reference(Any) }], // What the observation is about, when it is not about the subject of record
  "encounter" : { Reference(Encounter) }, // Healthcare event during which this observation is made
  // effective[x]: Clinically relevant time/time-period for observation. One of these 4:
  "effectiveDateTime" : "<dateTime>",
  "effectivePeriod" : { Period },
  "effectiveTiming" : { Timing },
  "effectiveInstant" : "<instant>",
  "issued" : "<instant>", // Date/Time this version was made available
  "performer" : [{ Reference(Practitioner|PractitionerRole|Organization|
   CareTeam|Patient|RelatedPerson) }], // Who is responsible for the observation
  // value[x]: Actual result. One of these 11:
  "valueQuantity" : { Quantity },
  "valueCodeableConcept" : { CodeableConcept },
  "valueString" : "<string>",
  "valueBoolean" : <boolean>,
  "valueInteger" : <integer>,
  "valueRange" : { Range },
  "valueRatio" : { Ratio },
  "valueSampledData" : { SampledData },
  "valueTime" : "<time>",
  "valueDateTime" : "<dateTime>",
  "valuePeriod" : { Period },
  "dataAbsentReason" : { CodeableConcept }, // C? Why the result is missing
  "interpretation" : [{ CodeableConcept }], // High, low, normal, etc.
  "note" : [{ Annotation }], // Comments about the observation
  "bodySite" : { CodeableConcept }, // Observed body part
  "method" : { CodeableConcept }, // How it was done
  "specimen" : { Reference(Specimen) }, // Specimen used for this observation
  "device" : { Reference(Device|DeviceMetric) }, // (Measurement) Device
  "referenceRange" : [{ // Provides guide for interpretation
    "low" : { Quantity(SimpleQuantity) }, // C? Low Range, if relevant
    "high" : { Quantity(SimpleQuantity) }, // C? High Range, if relevant
    "type" : { CodeableConcept }, // Reference range qualifier
    "appliesTo" : [{ CodeableConcept }], // Reference range population
    "age" : { Range }, // Applicable age range, if relevant
    "text" : "<string>" // Text based reference range in an observation
  }],
  "hasMember" : [{ Reference(Observation|QuestionnaireResponse|
   MolecularSequence) }], // Related resource that belongs to the Observation group
  "derivedFrom" : [{ Reference(DocumentReference|ImagingStudy|Media|
   QuestionnaireResponse|Observation|MolecularSequence) }], // Related measurements the observation is made from
  "component" : [{ // Component results
    "code" : { CodeableConcept }, // R!  Type of component observation (code / type)
    // value[x]: Actual component result. One of these 11:
    "valueQuantity" : { Quantity },
    "valueCodeableConcept" : { CodeableConcept },
    "valueString" : "<string>",
    "valueBoolean" : <boolean>,
    "valueInteger" : <integer>,
    "valueRange" : { Range },
    "valueRatio" : { Ratio },
    "valueSampledData" : { SampledData },
    "valueTime" : "<time>",
    "valueDateTime" : "<dateTime>",
    "valuePeriod" : { Period },
    "dataAbsentReason" : { CodeableConcept }, // C? Why the component result is missing
    "interpretation" : [{ CodeableConcept }], // High, low, normal, etc.
    "referenceRange" : [{ Content as for Observation.referenceRange }] // Provides guide for interpretation of component result
  }]
}

Observation Search Parameters

The following search parameters can be used to query Observation resources. Just submit them like so:

https://api.1up.health/fhir/r4/Observation?query-param=queryvalue
Search ParameterField TypeResource Fields Searched
based-on TUreferencebasedOn
category TUtextcategory
code TUtextcode
code-value-concept TUcompositeOn Observation:
code-value-date TUcompositeOn Observation:
code-value-quantity TUcompositeOn Observation:
code-value-string TUcompositeOn Observation:
combo-code TUtextcode
combo-code-value-concept TUcompositecomponent
combo-code-value-quantity TUcompositecomponent
combo-data-absent-reason TUtextdataAbsentReason
combo-value-concept TUtextvalue
combo-value-quantity TUquantityvalue
component-code TUtextcomponent.code
component-code-value-concept TUcompositecomponent
component-code-value-quantity TUcompositecomponent
component-data-absent-reason TUtextcomponent.dataAbsentReason
component-value-concept TUtextcomponent.value
component-value-quantity TUquantitycomponent.value
data-absent-reason TUtextdataAbsentReason
date TUdateeffective
derived-from TUreferencederivedFrom
device TUreferencedevice
encounter TUreferenceencounter
focus TUreferencefocus
has-member TUreferencehasMember
identifier TUtextidentifier
method TUtextmethod
part-of TUreferencepartOf
patient TUreferencesubject.where
performer TUreferenceperformer
specimen TUreferencespecimen
status TUtextstatus
subject TUreferencesubject
value-concept TUtextvalue
value-date TUdatevalue
value-quantity TUquantityvalue
value-string TUtextvalue