US Core Implementation Guide
10.0.0-ballot - STU 10 Ballot United States of America flag

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

Resource Profile: US Core Laboratory Result Observation Profile

Official URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-observation-lab Version: 10.0.0-ballot
Standards status: Trial-use Maturity Level: 5 Computable Name: USCoreLaboratoryResultObservationProfile
Other Identifiers: OID:2.16.840.1.113883.4.642.40.2.42.43

The US Core Laboratory Result Observation Profile is based upon the US Core Observation Clinical Result Profile and, along with the US Core DiagnosticReport Profile for Laboratory Results Reporting, meets the U.S. Core Data for Interoperability (USCDI) Laboratory requirements. Laboratory results are grouped and summarized using the DiagnosticReport resource, which references Observation resources. Each Observation resource represents an individual laboratory test and result value, a “nested” panel (such as a microbial susceptibility panel) that references other observations, or rarely a laboratory test with component result values. The US Core Laboratory Result Observation Profile sets minimum expectations for the Observation resource to record, search, and fetch laboratory test results associated with a patient to promote interoperability and adoption through common implementation. It identifies which core elements, extensions, vocabularies, and value sets SHALL be present in the resource and constrains the way the elements are used when using this profile. It provides the floor for standards development for specific use cases.

US Core Maturity: 5

Example Usage Scenarios:

The following are example usage scenarios for this profile:

  • Query for lab results belonging to a Patient
  • Record or update lab results belonging to a Patient

Mandatory and Must Support Data Elements

In addition to the Mandatory and Must Support data elements in the US Core Observation Clinical Result Profile, the following data elements must always be present (Mandatory definition) or must be supported if the data is present in the sending system (Must Support definition). They are presented below in a simple human-readable explanation. Profile specific guidance and examples are provided as well. The Formal Views section below provides the formal summary, definitions, and terminology requirements. Note that the "Differential Table" displays elements unique to this profile and the "Key Elements Table” displays a combined view of elements for this profile and the US Core Observation Clinical Result Profile.

Each Observation Must Have:

  1. a category code of 'laboratory'
  2. a laboratory LOINC code, if available, which tells you what is being measured

Each Observation Must Support:

  1. a timestamp when the resource last changed1
  2. a result value2
    • if the result value is a numeric quantity, a standard UCUM unit
    • if the result value is a coded value, a standard SNOMED CT
  3. result interpretation
    • if the result value is a numeric quantity, a standard UCUM unit
  4. result reference range
  5. a specimen type (e.g., blood, serum, urine)3

Additional USCDI Requirements:

This Additional USCDI Requirements element is not Mandatory or Must Support but is required for ONC Health IT certification testing and is included in the formal definition of the profile and the ServiceRequest examples.

  1. the name of the test that was performed

1,2,3 see guidance below

Profile Specific Implementation Guidance

This section provides detailed implementation guidance for the US Core Profile to support implementation and certification.

  • For USCDI, systems are required to use SNOMED CT for coded results if the SCT code exists.
  • The CLIA/USCDI/HL7 Elements Crossmapping Table provides a crosswalk of Clinical Laboratory Improvement Amendments (CLIA) data elements to corresponding FHIR fields, terminology standards, and naming conventions used in HL7 CDA and HL7 V2 standards. Implementers can use this mapping to help comply with CLIA requirements when using the US Core Laboratory Result Observation Profile.
  • The Observation.category element provides an efficient way of restricting search on observations to a given context such as laboratory observations. Example searches are shown in the Quick Start section below. However, Clients need to understand that data categorization is somewhat subjective. The categorization applied by the source may not align with the Client's expectations. Clients may find it more useful to use queries based on a specific code or set of codes or to perform additional Client-side filtering of query results.
  • The observations MAY have additional codes that translate or map to the Observation code or category codes.§ For example:
    • providing a local system-specific code
    • providing more specific codes such as 'chemistry'

    A code system value SHOULD be supplied for each additional code.§

  • Systems SHOULD support Observation.effectivePeriod to accurately represent measurements over time (for example, a 24-Hour Urine Collection test).§
  • 1An Observation without a value, SHALL include a reason why the data is absent unless there are 1) component observations, or 2) reporting panel observations using Observation.hasMember.§,§
    • For further guidance, see the Observation Grouping section in FHIR Specification.
    • Systems that never provide an observation without a value MAY choose not to support Observation.dataAbsentReason.§
  • 1An Observation.component without a value, SHALL include a reason why the data is absent.§
    • Systems that never provide a component observation without a component value MAY choose not to support Observation.component.dataAbsentReason.§
  • See the General Guidance page for further guidance on SNOMED and UCUM.
  • See the LOINC scale type to FHIR data type mapping for guidance on which Observation.value[x] data type to use based on the LOINC Type of Scale.
  • 2 This profile inherits the invariant "us-core-3" from the US Core Observation Clinical Result Profile that requires UCUM to be used as a unit type for Observation.valueQuantity.code.
  • 3Even when the specimen type is already implied by the LOINC code used in Observation.code (e.g., a LOINC code for Blood Glucose), the Observation.specimen element SHOULD also be populated with the referenced Specimen resource to explicitly communicate the collected specimen type.§ The type of specimen SHOULD not conflict with the LOINC code.§
  • 1 See the US Core General Guidance page for Searching Using lastUpdated. Updates to .meta.lastUpdated SHOULD reflect:
    • New laboratory observations §
    • Changes in the status of laboratory observations, including events that trigger the same status (e.g., amended → amended).§

Usages:

You can also check for usages in the FHIR IG Statistics

Changes since version 9.0.0:

  • New Content
  • Formal Views of Profile Content

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

    NameFlagsCard.TypeDescription & Constraints    Filter: doco
    Observation C 0..* USCoreObservationClinicalResultProfile Measurements and simple assertions
    Constraints: obs-6, obs-7, us-core-2
    Observation.meta This element must be supported. This element is included in summaries. 0..1 Meta Metadata about the resource
    Observation.meta.lastUpdated This element must be supported. This element is included in summaries. 0..1 instant When the resource last changed
    Observation.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
    Observation.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
    Observation.status This element is a modifier element. This element must be supported. This element is included in summaries. 1..1 code registered | preliminary | final | amended +
    Binding: ObservationStatus (required): Codes providing the status of an observation.
    Observation.Slices for category This element must be supported. 1..* CodeableConcept Classification of type of observation
    Slice: Unordered, Open by value:$this
    Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.

    Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
    Observation.Slices for category.category:us-core This element must be supported. 1..1 CodeableConcept Classification of type of observation
    Binding: US Core Clinical Result Observation Category (required): Note that other codes are permitted in other slices, see Required Bindings When Slicing by Value Sets

    Required Pattern:
    {
      "coding" : [
        {
          "system" : "http://terminology.hl7.org/CodeSystem/observation-category",
          "code" : "laboratory"
        }
      ]
    }
    Observation.code This element must be supported. This element is included in summaries. 1..1 CodeableConcept Laboratory Test Name
    Binding: US Core Laboratory Test Codes (extensible): Laboratory LOINC Codes
    Observation.code.text This element is included in summaries. 0..1 string 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜: The name of the test that was performed.
    Observation.subject This element must be supported. This element is included in summaries. 1..1 Reference(US Core Patient Profile This type must be supported. | Group | US Core Device Profile | US Core Location Profile) Who and/or what the observation is about
    Observation.encounter This element must be supported. This element is included in summaries. 0..1 Reference(US Core Encounter Profile) Encounter associated with Observation
    Observation.effective[x] This element must be supported. This element is included in summaries. C 0..1 Clinically relevant time/time-period for observation
    Constraints: us-core-1
    Observation.effective[x].effectiveDateTime dateTime This target must be supported.
    Observation.effective[x].effectivePeriod Period
    Observation.effective[x].effectiveTiming Timing
    Observation.effective[x].effectiveInstant instant
    Observation.performer This element must be supported. This element is included in summaries. 0..* Reference(US Core Practitioner Profile This type must be supported. | US Core Organization Profile | US Core Patient Profile | PractitionerRole | US Core CareTeam Profile | US Core RelatedPerson Profile) Who is responsible for the observation
    Observation.value[x] This element must be supported. This element is included in summaries. C 0..1 Result Value
    Constraints: us-core-3, us-core-4
    Observation.value[x].valueQuantity Quantity This type must be supported.
    Observation.value[x].valueCodeableConcept CodeableConcept This type must be supported.
    Observation.value[x].valueString string This target must be supported.
    Observation.value[x].valueBoolean boolean
    Observation.value[x].valueInteger integer
    Observation.value[x].valueRange Range
    Observation.value[x].valueRatio Ratio
    Observation.value[x].valueSampledData SampledData
    Observation.value[x].valueTime time
    Observation.value[x].valueDateTime dateTime
    Observation.value[x].valuePeriod Period
    Observation.dataAbsentReason This element must be supported. C 0..1 CodeableConcept Why the result is missing
    Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.
    Observation.interpretation This element must be supported. 0..* CodeableConcept Result interpretation
    Binding: ObservationInterpretationCodes (extensible): Observation Interpretation Codes
    Observation.specimen This element must be supported. 0..1 Reference(US Core Specimen Profile) Specimen used for this observation
    Observation.referenceRange This element must be supported. C 0..* BackboneElement Result reference range
    Constraints: obs-3, us-core-22
    Observation.referenceRange.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized

    doco Documentation for this format

    Terminology Bindings

    Path Status Usage ValueSet Version Source
    Observation.status Base required ObservationStatus 📍4.0.1 FHIR Std.
    Observation.category Base preferred Observation Category Codes 📍4.0.1 FHIR Std.
    Observation.category:us-core Base required US Core Clinical Result Observation Category 📦10.0.0-ballot This IG
    Observation.code Base extensible US Core Laboratory Test Codes 📦10.0.0-ballot This IG
    Observation.dataAbsentReason Base extensible DataAbsentReason 📍4.0.1 FHIR Std.
    Observation.interpretation Base extensible Observation Interpretation Codes 📦4.0.1 FHIR Std.

    Constraints

    Id Grade Path(s) Description Expression
    us-core-4 best practice Observation.value[x] SHOULD use SNOMED CT for coded Results ofType(CodeableConcept).coding.system.empty() or (ofType(CodeableConcept).coding.system contains 'http://snomed.info/sct')
    us-core-22 error Observation.referenceRange The system SHALL be UCUM for coded quantity units. (low.system.empty() or low.system = 'http://unitsofmeasure.org') and (high.system.empty() or high.system = 'http://unitsofmeasure.org')

    This structure is derived from USCoreObservationClinicalResultProfile

    NameFlagsCard.TypeDescription & Constraints    Filter: doco
    Observation 0..* USCoreObservationClinicalResultProfile Measurements and simple assertions
    Observation.meta This element must be supported. 0..1 Meta Metadata about the resource
    Observation.meta.lastUpdated This element must be supported. 0..1 instant When the resource last changed
    Observation.Slices for category Content/Rules for all slices
    Observation.Slices for category.category:us-core This element must be supported. 1..1 CodeableConcept Classification of type of observation
    Required Pattern:
    {
      "coding" : [
        {
          "system" : "http://terminology.hl7.org/CodeSystem/observation-category",
          "code" : "laboratory"
        }
      ]
    }
    Observation.code This element must be supported. 1..1 CodeableConcept Laboratory Test Name
    Binding: US Core Laboratory Test Codes (extensible): Laboratory LOINC Codes
    Observation.code.text 0..1 string 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜: The name of the test that was performed.
    Observation.value[x] This element must be supported. C 0..1 Result Value
    Constraints: us-core-4
    Observation.value[x].valueQuantity Quantity This type must be supported.
    Observation.value[x].valueCodeableConcept CodeableConcept This type must be supported.
    Observation.value[x].valueString string This target must be supported.
    Observation.value[x].valueBoolean boolean
    Observation.value[x].valueInteger integer
    Observation.value[x].valueRange Range
    Observation.value[x].valueRatio Ratio
    Observation.value[x].valueSampledData SampledData
    Observation.value[x].valueTime time
    Observation.value[x].valueDateTime dateTime
    Observation.value[x].valuePeriod Period
    Observation.interpretation This element must be supported. 0..* CodeableConcept Result interpretation
    Binding: ObservationInterpretationCodes (extensible): Observation Interpretation Codes
    Observation.specimen This element must be supported. 0..1 Reference(US Core Specimen Profile) Specimen used for this observation
    Observation.referenceRange This element must be supported. C 0..* BackboneElement Result reference range
    Constraints: us-core-22

    doco Documentation for this format

    Terminology Bindings (Differential)

    Path Status Usage ValueSet Version Source
    Observation.code Base extensible US Core Laboratory Test Codes 📦10.0.0-ballot This IG
    Observation.interpretation Base extensible Observation Interpretation Codes 📦4.0.1 FHIR Std.

    Constraints

    Id Grade Path(s) Description Expression
    us-core-4 best practice Observation.value[x] SHOULD use SNOMED CT for coded Results ofType(CodeableConcept).coding.system.empty() or (ofType(CodeableConcept).coding.system contains 'http://snomed.info/sct')
    us-core-22 error Observation.referenceRange The system SHALL be UCUM for coded quantity units. (low.system.empty() or low.system = 'http://unitsofmeasure.org') and (high.system.empty() or high.system = 'http://unitsofmeasure.org')
    NameFlagsCard.TypeDescription & Constraints    Filter: doco
    Observation C 0..* USCoreObservationClinicalResultProfile Measurements and simple assertions
    Constraints: obs-6, obs-7, us-core-2
    Observation.id This element is included in summaries. 0..1 id Logical id of this artifact
    Observation.meta This element must be supported. This element is included in summaries. 0..1 Meta Metadata about the resource
    Observation.meta.id 0..1 string Unique id for inter-element referencing
    Observation.meta.extension 0..* Extension Additional content defined by implementations
    Slice: Unordered, Open by value:url
    Observation.meta.versionId This element is included in summaries. 0..1 id Version specific identifier
    Observation.meta.lastUpdated This element must be supported. This element is included in summaries. 0..1 instant When the resource last changed
    Observation.meta.source This element is included in summaries. 0..1 uri Identifies where the resource comes from
    Observation.meta.profile This element is included in summaries. 0..* canonical(StructureDefinition) Profiles this resource claims to conform to
    Observation.meta.security This element is included in summaries. 0..* Coding Security Labels applied to this resource
    Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.
    Observation.meta.tag This element is included in summaries. 0..* Coding Tags applied to this resource
    Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".
    Observation.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
    Observation.language 0..1 code Language of the resource content
    Binding: CommonLanguages (preferred): A human language.
    Additional BindingsPurpose
    AllLanguages Max Binding
    Observation.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
    Observation.contained 0..* Resource Contained, inline Resources
    Observation.extension 0..* Extension Additional content defined by implementations
    Observation.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
    Observation.identifier This element is included in summaries. 0..* Identifier Business Identifier for observation
    Observation.basedOn This element is included in summaries. 0..* Reference(CarePlan | DeviceRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest) Fulfills plan, proposal or order
    Observation.partOf This element is included in summaries. 0..* Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Immunization | ImagingStudy) Part of referenced event
    Observation.status This element is a modifier element. This element must be supported. This element is included in summaries. 1..1 code registered | preliminary | final | amended +
    Binding: ObservationStatus (required): Codes providing the status of an observation.
    Observation.Slices for category This element must be supported. 1..* CodeableConcept Classification of type of observation
    Slice: Unordered, Open by value:$this
    Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.

    Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
    Observation.Slices for category.category:us-core This element must be supported. 1..1 CodeableConcept Classification of type of observation
    Binding: US Core Clinical Result Observation Category (required): Note that other codes are permitted in other slices, see Required Bindings When Slicing by Value Sets

    Required Pattern:
    {
      "coding" : [
        {
          "system" : "http://terminology.hl7.org/CodeSystem/observation-category",
          "code" : "laboratory"
        }
      ]
    }
    Observation.code This element must be supported. This element is included in summaries. 1..1 CodeableConcept Laboratory Test Name
    Binding: US Core Laboratory Test Codes (extensible): Laboratory LOINC Codes
    Observation.code.id 0..1 string Unique id for inter-element referencing
    Observation.code.extension 0..* Extension Additional content defined by implementations
    Slice: Unordered, Open by value:url
    Observation.code.coding This element is included in summaries. 0..* Coding Code defined by a terminology system
    Observation.code.text This element is included in summaries. 0..1 string 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜: The name of the test that was performed.
    Observation.subject This element must be supported. This element is included in summaries. 1..1 Reference(US Core Patient Profile This type must be supported. | Group | US Core Device Profile | US Core Location Profile) Who and/or what the observation is about
    Observation.focus This element is included in summaries. 0..* Reference(Resource) What the observation is about, when it is not about the subject of record
    Observation.encounter This element must be supported. This element is included in summaries. 0..1 Reference(US Core Encounter Profile) Encounter associated with Observation
    Observation.effective[x] This element must be supported. This element is included in summaries. C 0..1 Clinically relevant time/time-period for observation
    Constraints: us-core-1
    Observation.effective[x].effectiveDateTime dateTime This target must be supported.
    Observation.effective[x].effectivePeriod Period
    Observation.effective[x].effectiveTiming Timing
    Observation.effective[x].effectiveInstant instant
    Observation.issued This element is included in summaries. 0..1 instant Date/Time this version was made available
    Observation.performer This element must be supported. This element is included in summaries. 0..* Reference(US Core Practitioner Profile This type must be supported. | US Core Organization Profile | US Core Patient Profile | PractitionerRole | US Core CareTeam Profile | US Core RelatedPerson Profile) Who is responsible for the observation
    Observation.value[x] This element must be supported. This element is included in summaries. C 0..1 Result Value
    Constraints: us-core-3, us-core-4
    Observation.value[x].valueQuantity Quantity This type must be supported.
    Observation.value[x].valueCodeableConcept CodeableConcept This type must be supported.
    Observation.value[x].valueString string This target must be supported.
    Observation.value[x].valueBoolean boolean
    Observation.value[x].valueInteger integer
    Observation.value[x].valueRange Range
    Observation.value[x].valueRatio Ratio
    Observation.value[x].valueSampledData SampledData
    Observation.value[x].valueTime time
    Observation.value[x].valueDateTime dateTime
    Observation.value[x].valuePeriod Period
    Observation.dataAbsentReason This element must be supported. C 0..1 CodeableConcept Why the result is missing
    Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.
    Observation.interpretation This element must be supported. 0..* CodeableConcept Result interpretation
    Binding: ObservationInterpretationCodes (extensible): Observation Interpretation Codes
    Observation.note 0..* Annotation Comments about the observation
    Observation.bodySite 0..1 CodeableConcept Observed body part
    Binding: SNOMEDCTBodyStructures (example): Codes describing anatomical locations. May include laterality.
    Observation.method 0..1 CodeableConcept How it was done
    Binding: ObservationMethods (example): Methods for simple observations.
    Observation.specimen This element must be supported. 0..1 Reference(US Core Specimen Profile) Specimen used for this observation
    Observation.device 0..1 Reference(Device | DeviceMetric) (Measurement) Device
    Observation.referenceRange This element must be supported. C 0..* BackboneElement Result reference range
    Constraints: obs-3, us-core-22
    Observation.referenceRange.id 0..1 string Unique id for inter-element referencing
    Observation.referenceRange.extension 0..* Extension Additional content defined by implementations
    Observation.referenceRange.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
    Observation.referenceRange.low C 0..1 SimpleQuantity(4.0.1) Low Range, if relevant
    Constraints: sqty-1
    Observation.referenceRange.high C 0..1 SimpleQuantity(4.0.1) High Range, if relevant
    Constraints: sqty-1
    Observation.referenceRange.type 0..1 CodeableConcept Reference range qualifier
    Binding: ObservationReferenceRangeMeaningCodes (preferred): Code for the meaning of a reference range.
    Observation.referenceRange.appliesTo 0..* CodeableConcept Reference range population
    Binding: ObservationReferenceRangeAppliesToCodes (example): Codes identifying the population the reference range applies to.
    Observation.referenceRange.age 0..1 Range Applicable age range, if relevant
    Observation.referenceRange.text 0..1 string Text based reference range in an observation
    Observation.hasMember This element is included in summaries. 0..* Reference(Observation | QuestionnaireResponse | MolecularSequence) Related resource that belongs to the Observation group
    Observation.derivedFrom This element is included in summaries. 0..* Reference(DocumentReference | ImagingStudy | Media | QuestionnaireResponse | Observation | MolecularSequence) Related measurements the observation is made from
    Observation.component This element is included in summaries. 0..* BackboneElement Component results
    Observation.component.id 0..1 string Unique id for inter-element referencing
    Observation.component.extension 0..* Extension Additional content defined by implementations
    Observation.component.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
    Observation.component.code This element is included in summaries. 1..1 CodeableConcept Type of component observation (code / type)
    Binding: LOINCCodes (example): Codes identifying names of simple observations.
    Observation.component.value[x] This element is included in summaries. 0..1 Actual component result
    Observation.component.value[x].valueQuantity Quantity
    Observation.component.value[x].valueCodeableConcept CodeableConcept
    Observation.component.value[x].valueString string
    Observation.component.value[x].valueBoolean boolean
    Observation.component.value[x].valueInteger integer
    Observation.component.value[x].valueRange Range
    Observation.component.value[x].valueRatio Ratio
    Observation.component.value[x].valueSampledData SampledData
    Observation.component.value[x].valueTime time
    Observation.component.value[x].valueDateTime dateTime
    Observation.component.value[x].valuePeriod Period
    Observation.component.dataAbsentReason C 0..1 CodeableConcept Why the component result is missing
    Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.
    Observation.component.interpretation 0..* CodeableConcept High, low, normal, etc.
    Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations.
    Observation.component.referenceRange 0..* See referenceRange (Observation) Provides guide for interpretation of component result

    doco Documentation for this format

    Terminology Bindings

    Path Status Usage ValueSet Version Source
    Observation.meta.security Base extensible SecurityLabels 📍4.0.1 FHIR Std.
    Observation.meta.tag Base example Common Tags 📍4.0.1 FHIR Std.
    Observation.language Base preferred Common Languages 📍4.0.1 FHIR Std.
    Observation.status Base required ObservationStatus 📍4.0.1 FHIR Std.
    Observation.category Base preferred Observation Category Codes 📍4.0.1 FHIR Std.
    Observation.category:us-core Base required US Core Clinical Result Observation Category 📦10.0.0-ballot This IG
    Observation.code Base extensible US Core Laboratory Test Codes 📦10.0.0-ballot This IG
    Observation.dataAbsentReason Base extensible DataAbsentReason 📍4.0.1 FHIR Std.
    Observation.interpretation Base extensible Observation Interpretation Codes 📦4.0.1 FHIR Std.
    Observation.bodySite Base example SNOMED CT Body Structures 📍4.0.1 FHIR Std.
    Observation.method Base example Observation Methods 📍4.0.1 FHIR Std.
    Observation.referenceRange.​type Base preferred Observation Reference Range Meaning Codes 📍4.0.1 FHIR Std.
    Observation.referenceRange.​appliesTo Base example Observation Reference Range Applies To Codes 📍4.0.1 FHIR Std.
    Observation.component.​code Base example LOINC Codes 📍4.0.1 FHIR Std.
    Observation.component.​dataAbsentReason Base extensible DataAbsentReason 📍4.0.1 FHIR Std.
    Observation.component.​interpretation Base extensible Observation Interpretation Codes 📍4.0.1 FHIR Std.

    Constraints

    Id Grade Path(s) Description Expression
    us-core-4 best practice Observation.value[x] SHOULD use SNOMED CT for coded Results ofType(CodeableConcept).coding.system.empty() or (ofType(CodeableConcept).coding.system contains 'http://snomed.info/sct')
    us-core-22 error Observation.referenceRange The system SHALL be UCUM for coded quantity units. (low.system.empty() or low.system = 'http://unitsofmeasure.org') and (high.system.empty() or high.system = 'http://unitsofmeasure.org')

    This structure is derived from USCoreObservationClinicalResultProfile

    Summary

    Mandatory: 1 element
    Must-Support: 8 elements

    Structures

    This structure refers to these other structures:

    Maturity: 5

    Key Elements View

    NameFlagsCard.TypeDescription & Constraints    Filter: doco
    Observation C 0..* USCoreObservationClinicalResultProfile Measurements and simple assertions
    Constraints: obs-6, obs-7, us-core-2
    Observation.meta This element must be supported. This element is included in summaries. 0..1 Meta Metadata about the resource
    Observation.meta.lastUpdated This element must be supported. This element is included in summaries. 0..1 instant When the resource last changed
    Observation.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
    Observation.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
    Observation.status This element is a modifier element. This element must be supported. This element is included in summaries. 1..1 code registered | preliminary | final | amended +
    Binding: ObservationStatus (required): Codes providing the status of an observation.
    Observation.Slices for category This element must be supported. 1..* CodeableConcept Classification of type of observation
    Slice: Unordered, Open by value:$this
    Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.

    Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
    Observation.Slices for category.category:us-core This element must be supported. 1..1 CodeableConcept Classification of type of observation
    Binding: US Core Clinical Result Observation Category (required): Note that other codes are permitted in other slices, see Required Bindings When Slicing by Value Sets

    Required Pattern:
    {
      "coding" : [
        {
          "system" : "http://terminology.hl7.org/CodeSystem/observation-category",
          "code" : "laboratory"
        }
      ]
    }
    Observation.code This element must be supported. This element is included in summaries. 1..1 CodeableConcept Laboratory Test Name
    Binding: US Core Laboratory Test Codes (extensible): Laboratory LOINC Codes
    Observation.code.text This element is included in summaries. 0..1 string 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜: The name of the test that was performed.
    Observation.subject This element must be supported. This element is included in summaries. 1..1 Reference(US Core Patient Profile This type must be supported. | Group | US Core Device Profile | US Core Location Profile) Who and/or what the observation is about
    Observation.encounter This element must be supported. This element is included in summaries. 0..1 Reference(US Core Encounter Profile) Encounter associated with Observation
    Observation.effective[x] This element must be supported. This element is included in summaries. C 0..1 Clinically relevant time/time-period for observation
    Constraints: us-core-1
    Observation.effective[x].effectiveDateTime dateTime This target must be supported.
    Observation.effective[x].effectivePeriod Period
    Observation.effective[x].effectiveTiming Timing
    Observation.effective[x].effectiveInstant instant
    Observation.performer This element must be supported. This element is included in summaries. 0..* Reference(US Core Practitioner Profile This type must be supported. | US Core Organization Profile | US Core Patient Profile | PractitionerRole | US Core CareTeam Profile | US Core RelatedPerson Profile) Who is responsible for the observation
    Observation.value[x] This element must be supported. This element is included in summaries. C 0..1 Result Value
    Constraints: us-core-3, us-core-4
    Observation.value[x].valueQuantity Quantity This type must be supported.
    Observation.value[x].valueCodeableConcept CodeableConcept This type must be supported.
    Observation.value[x].valueString string This target must be supported.
    Observation.value[x].valueBoolean boolean
    Observation.value[x].valueInteger integer
    Observation.value[x].valueRange Range
    Observation.value[x].valueRatio Ratio
    Observation.value[x].valueSampledData SampledData
    Observation.value[x].valueTime time
    Observation.value[x].valueDateTime dateTime
    Observation.value[x].valuePeriod Period
    Observation.dataAbsentReason This element must be supported. C 0..1 CodeableConcept Why the result is missing
    Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.
    Observation.interpretation This element must be supported. 0..* CodeableConcept Result interpretation
    Binding: ObservationInterpretationCodes (extensible): Observation Interpretation Codes
    Observation.specimen This element must be supported. 0..1 Reference(US Core Specimen Profile) Specimen used for this observation
    Observation.referenceRange This element must be supported. C 0..* BackboneElement Result reference range
    Constraints: obs-3, us-core-22
    Observation.referenceRange.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized

    doco Documentation for this format

    Terminology Bindings

    Path Status Usage ValueSet Version Source
    Observation.status Base required ObservationStatus 📍4.0.1 FHIR Std.
    Observation.category Base preferred Observation Category Codes 📍4.0.1 FHIR Std.
    Observation.category:us-core Base required US Core Clinical Result Observation Category 📦10.0.0-ballot This IG
    Observation.code Base extensible US Core Laboratory Test Codes 📦10.0.0-ballot This IG
    Observation.dataAbsentReason Base extensible DataAbsentReason 📍4.0.1 FHIR Std.
    Observation.interpretation Base extensible Observation Interpretation Codes 📦4.0.1 FHIR Std.

    Constraints

    Id Grade Path(s) Description Expression
    us-core-4 best practice Observation.value[x] SHOULD use SNOMED CT for coded Results ofType(CodeableConcept).coding.system.empty() or (ofType(CodeableConcept).coding.system contains 'http://snomed.info/sct')
    us-core-22 error Observation.referenceRange The system SHALL be UCUM for coded quantity units. (low.system.empty() or low.system = 'http://unitsofmeasure.org') and (high.system.empty() or high.system = 'http://unitsofmeasure.org')

    Differential View

    This structure is derived from USCoreObservationClinicalResultProfile

    NameFlagsCard.TypeDescription & Constraints    Filter: doco
    Observation 0..* USCoreObservationClinicalResultProfile Measurements and simple assertions
    Observation.meta This element must be supported. 0..1 Meta Metadata about the resource
    Observation.meta.lastUpdated This element must be supported. 0..1 instant When the resource last changed
    Observation.Slices for category Content/Rules for all slices
    Observation.Slices for category.category:us-core This element must be supported. 1..1 CodeableConcept Classification of type of observation
    Required Pattern:
    {
      "coding" : [
        {
          "system" : "http://terminology.hl7.org/CodeSystem/observation-category",
          "code" : "laboratory"
        }
      ]
    }
    Observation.code This element must be supported. 1..1 CodeableConcept Laboratory Test Name
    Binding: US Core Laboratory Test Codes (extensible): Laboratory LOINC Codes
    Observation.code.text 0..1 string 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜: The name of the test that was performed.
    Observation.value[x] This element must be supported. C 0..1 Result Value
    Constraints: us-core-4
    Observation.value[x].valueQuantity Quantity This type must be supported.
    Observation.value[x].valueCodeableConcept CodeableConcept This type must be supported.
    Observation.value[x].valueString string This target must be supported.
    Observation.value[x].valueBoolean boolean
    Observation.value[x].valueInteger integer
    Observation.value[x].valueRange Range
    Observation.value[x].valueRatio Ratio
    Observation.value[x].valueSampledData SampledData
    Observation.value[x].valueTime time
    Observation.value[x].valueDateTime dateTime
    Observation.value[x].valuePeriod Period
    Observation.interpretation This element must be supported. 0..* CodeableConcept Result interpretation
    Binding: ObservationInterpretationCodes (extensible): Observation Interpretation Codes
    Observation.specimen This element must be supported. 0..1 Reference(US Core Specimen Profile) Specimen used for this observation
    Observation.referenceRange This element must be supported. C 0..* BackboneElement Result reference range
    Constraints: us-core-22

    doco Documentation for this format

    Terminology Bindings (Differential)

    Path Status Usage ValueSet Version Source
    Observation.code Base extensible US Core Laboratory Test Codes 📦10.0.0-ballot This IG
    Observation.interpretation Base extensible Observation Interpretation Codes 📦4.0.1 FHIR Std.

    Constraints

    Id Grade Path(s) Description Expression
    us-core-4 best practice Observation.value[x] SHOULD use SNOMED CT for coded Results ofType(CodeableConcept).coding.system.empty() or (ofType(CodeableConcept).coding.system contains 'http://snomed.info/sct')
    us-core-22 error Observation.referenceRange The system SHALL be UCUM for coded quantity units. (low.system.empty() or low.system = 'http://unitsofmeasure.org') and (high.system.empty() or high.system = 'http://unitsofmeasure.org')

    Snapshot View

    NameFlagsCard.TypeDescription & Constraints    Filter: doco
    Observation C 0..* USCoreObservationClinicalResultProfile Measurements and simple assertions
    Constraints: obs-6, obs-7, us-core-2
    Observation.id This element is included in summaries. 0..1 id Logical id of this artifact
    Observation.meta This element must be supported. This element is included in summaries. 0..1 Meta Metadata about the resource
    Observation.meta.id 0..1 string Unique id for inter-element referencing
    Observation.meta.extension 0..* Extension Additional content defined by implementations
    Slice: Unordered, Open by value:url
    Observation.meta.versionId This element is included in summaries. 0..1 id Version specific identifier
    Observation.meta.lastUpdated This element must be supported. This element is included in summaries. 0..1 instant When the resource last changed
    Observation.meta.source This element is included in summaries. 0..1 uri Identifies where the resource comes from
    Observation.meta.profile This element is included in summaries. 0..* canonical(StructureDefinition) Profiles this resource claims to conform to
    Observation.meta.security This element is included in summaries. 0..* Coding Security Labels applied to this resource
    Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.
    Observation.meta.tag This element is included in summaries. 0..* Coding Tags applied to this resource
    Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".
    Observation.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
    Observation.language 0..1 code Language of the resource content
    Binding: CommonLanguages (preferred): A human language.
    Additional BindingsPurpose
    AllLanguages Max Binding
    Observation.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
    Observation.contained 0..* Resource Contained, inline Resources
    Observation.extension 0..* Extension Additional content defined by implementations
    Observation.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
    Observation.identifier This element is included in summaries. 0..* Identifier Business Identifier for observation
    Observation.basedOn This element is included in summaries. 0..* Reference(CarePlan | DeviceRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest) Fulfills plan, proposal or order
    Observation.partOf This element is included in summaries. 0..* Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Immunization | ImagingStudy) Part of referenced event
    Observation.status This element is a modifier element. This element must be supported. This element is included in summaries. 1..1 code registered | preliminary | final | amended +
    Binding: ObservationStatus (required): Codes providing the status of an observation.
    Observation.Slices for category This element must be supported. 1..* CodeableConcept Classification of type of observation
    Slice: Unordered, Open by value:$this
    Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.

    Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
    Observation.Slices for category.category:us-core This element must be supported. 1..1 CodeableConcept Classification of type of observation
    Binding: US Core Clinical Result Observation Category (required): Note that other codes are permitted in other slices, see Required Bindings When Slicing by Value Sets

    Required Pattern:
    {
      "coding" : [
        {
          "system" : "http://terminology.hl7.org/CodeSystem/observation-category",
          "code" : "laboratory"
        }
      ]
    }
    Observation.code This element must be supported. This element is included in summaries. 1..1 CodeableConcept Laboratory Test Name
    Binding: US Core Laboratory Test Codes (extensible): Laboratory LOINC Codes
    Observation.code.id 0..1 string Unique id for inter-element referencing
    Observation.code.extension 0..* Extension Additional content defined by implementations
    Slice: Unordered, Open by value:url
    Observation.code.coding This element is included in summaries. 0..* Coding Code defined by a terminology system
    Observation.code.text This element is included in summaries. 0..1 string 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜: The name of the test that was performed.
    Observation.subject This element must be supported. This element is included in summaries. 1..1 Reference(US Core Patient Profile This type must be supported. | Group | US Core Device Profile | US Core Location Profile) Who and/or what the observation is about
    Observation.focus This element is included in summaries. 0..* Reference(Resource) What the observation is about, when it is not about the subject of record
    Observation.encounter This element must be supported. This element is included in summaries. 0..1 Reference(US Core Encounter Profile) Encounter associated with Observation
    Observation.effective[x] This element must be supported. This element is included in summaries. C 0..1 Clinically relevant time/time-period for observation
    Constraints: us-core-1
    Observation.effective[x].effectiveDateTime dateTime This target must be supported.
    Observation.effective[x].effectivePeriod Period
    Observation.effective[x].effectiveTiming Timing
    Observation.effective[x].effectiveInstant instant
    Observation.issued This element is included in summaries. 0..1 instant Date/Time this version was made available
    Observation.performer This element must be supported. This element is included in summaries. 0..* Reference(US Core Practitioner Profile This type must be supported. | US Core Organization Profile | US Core Patient Profile | PractitionerRole | US Core CareTeam Profile | US Core RelatedPerson Profile) Who is responsible for the observation
    Observation.value[x] This element must be supported. This element is included in summaries. C 0..1 Result Value
    Constraints: us-core-3, us-core-4
    Observation.value[x].valueQuantity Quantity This type must be supported.
    Observation.value[x].valueCodeableConcept CodeableConcept This type must be supported.
    Observation.value[x].valueString string This target must be supported.
    Observation.value[x].valueBoolean boolean
    Observation.value[x].valueInteger integer
    Observation.value[x].valueRange Range
    Observation.value[x].valueRatio Ratio
    Observation.value[x].valueSampledData SampledData
    Observation.value[x].valueTime time
    Observation.value[x].valueDateTime dateTime
    Observation.value[x].valuePeriod Period
    Observation.dataAbsentReason This element must be supported. C 0..1 CodeableConcept Why the result is missing
    Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.
    Observation.interpretation This element must be supported. 0..* CodeableConcept Result interpretation
    Binding: ObservationInterpretationCodes (extensible): Observation Interpretation Codes
    Observation.note 0..* Annotation Comments about the observation
    Observation.bodySite 0..1 CodeableConcept Observed body part
    Binding: SNOMEDCTBodyStructures (example): Codes describing anatomical locations. May include laterality.
    Observation.method 0..1 CodeableConcept How it was done
    Binding: ObservationMethods (example): Methods for simple observations.
    Observation.specimen This element must be supported. 0..1 Reference(US Core Specimen Profile) Specimen used for this observation
    Observation.device 0..1 Reference(Device | DeviceMetric) (Measurement) Device
    Observation.referenceRange This element must be supported. C 0..* BackboneElement Result reference range
    Constraints: obs-3, us-core-22
    Observation.referenceRange.id 0..1 string Unique id for inter-element referencing
    Observation.referenceRange.extension 0..* Extension Additional content defined by implementations
    Observation.referenceRange.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
    Observation.referenceRange.low C 0..1 SimpleQuantity(4.0.1) Low Range, if relevant
    Constraints: sqty-1
    Observation.referenceRange.high C 0..1 SimpleQuantity(4.0.1) High Range, if relevant
    Constraints: sqty-1
    Observation.referenceRange.type 0..1 CodeableConcept Reference range qualifier
    Binding: ObservationReferenceRangeMeaningCodes (preferred): Code for the meaning of a reference range.
    Observation.referenceRange.appliesTo 0..* CodeableConcept Reference range population
    Binding: ObservationReferenceRangeAppliesToCodes (example): Codes identifying the population the reference range applies to.
    Observation.referenceRange.age 0..1 Range Applicable age range, if relevant
    Observation.referenceRange.text 0..1 string Text based reference range in an observation
    Observation.hasMember This element is included in summaries. 0..* Reference(Observation | QuestionnaireResponse | MolecularSequence) Related resource that belongs to the Observation group
    Observation.derivedFrom This element is included in summaries. 0..* Reference(DocumentReference | ImagingStudy | Media | QuestionnaireResponse | Observation | MolecularSequence) Related measurements the observation is made from
    Observation.component This element is included in summaries. 0..* BackboneElement Component results
    Observation.component.id 0..1 string Unique id for inter-element referencing
    Observation.component.extension 0..* Extension Additional content defined by implementations
    Observation.component.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
    Observation.component.code This element is included in summaries. 1..1 CodeableConcept Type of component observation (code / type)
    Binding: LOINCCodes (example): Codes identifying names of simple observations.
    Observation.component.value[x] This element is included in summaries. 0..1 Actual component result
    Observation.component.value[x].valueQuantity Quantity
    Observation.component.value[x].valueCodeableConcept CodeableConcept
    Observation.component.value[x].valueString string
    Observation.component.value[x].valueBoolean boolean
    Observation.component.value[x].valueInteger integer
    Observation.component.value[x].valueRange Range
    Observation.component.value[x].valueRatio Ratio
    Observation.component.value[x].valueSampledData SampledData
    Observation.component.value[x].valueTime time
    Observation.component.value[x].valueDateTime dateTime
    Observation.component.value[x].valuePeriod Period
    Observation.component.dataAbsentReason C 0..1 CodeableConcept Why the component result is missing
    Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.
    Observation.component.interpretation 0..* CodeableConcept High, low, normal, etc.
    Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations.
    Observation.component.referenceRange 0..* See referenceRange (Observation) Provides guide for interpretation of component result

    doco Documentation for this format

    Terminology Bindings

    Path Status Usage ValueSet Version Source
    Observation.meta.security Base extensible SecurityLabels 📍4.0.1 FHIR Std.
    Observation.meta.tag Base example Common Tags 📍4.0.1 FHIR Std.
    Observation.language Base preferred Common Languages 📍4.0.1 FHIR Std.
    Observation.status Base required ObservationStatus 📍4.0.1 FHIR Std.
    Observation.category Base preferred Observation Category Codes 📍4.0.1 FHIR Std.
    Observation.category:us-core Base required US Core Clinical Result Observation Category 📦10.0.0-ballot This IG
    Observation.code Base extensible US Core Laboratory Test Codes 📦10.0.0-ballot This IG
    Observation.dataAbsentReason Base extensible DataAbsentReason 📍4.0.1 FHIR Std.
    Observation.interpretation Base extensible Observation Interpretation Codes 📦4.0.1 FHIR Std.
    Observation.bodySite Base example SNOMED CT Body Structures 📍4.0.1 FHIR Std.
    Observation.method Base example Observation Methods 📍4.0.1 FHIR Std.
    Observation.referenceRange.​type Base preferred Observation Reference Range Meaning Codes 📍4.0.1 FHIR Std.
    Observation.referenceRange.​appliesTo Base example Observation Reference Range Applies To Codes 📍4.0.1 FHIR Std.
    Observation.component.​code Base example LOINC Codes 📍4.0.1 FHIR Std.
    Observation.component.​dataAbsentReason Base extensible DataAbsentReason 📍4.0.1 FHIR Std.
    Observation.component.​interpretation Base extensible Observation Interpretation Codes 📍4.0.1 FHIR Std.

    Constraints

    Id Grade Path(s) Description Expression
    us-core-4 best practice Observation.value[x] SHOULD use SNOMED CT for coded Results ofType(CodeableConcept).coding.system.empty() or (ofType(CodeableConcept).coding.system contains 'http://snomed.info/sct')
    us-core-22 error Observation.referenceRange The system SHALL be UCUM for coded quantity units. (low.system.empty() or low.system = 'http://unitsofmeasure.org') and (high.system.empty() or high.system = 'http://unitsofmeasure.org')

    This structure is derived from USCoreObservationClinicalResultProfile

    Summary

    Mandatory: 1 element
    Must-Support: 8 elements

    Structures

    This structure refers to these other structures:

    Maturity: 5

     

    Other representations of profile: CSV, Excel, Schematron

    Notes:


    Quick Start


    Below is an overview of the required Server RESTful FHIR interactions for this profile - for example, search and read operations - when supporting the US Core interactions to access this profile's information (Profile Support + Interaction Support). Note that systems that support only US Core Profiles (Profile Only Support) are not required to support these interactions. See the US Core Server CapabilityStatement for a complete list of supported RESTful interactions for this IG.

    • See the Scopes Format section for a description of the SMART scopes syntax.
    • See the Search Syntax section for a description of the US Core search syntax.
    • See the General Requirements section for additional rules and expectations when a Server requires status parameters.
    • See the General Guidance section for additional guidance on searching for multiple patients.

    US Core Scopes

    Servers providing access to laboratory data SHALL support these US Core SMART Scopes:

    • resource level scopes: <patient|user|system>/Observation.rs §

    • granular scopes: <patient|user|system>/Observation.rs?category=http://terminology.hl7.org/CodeSystem/observation-category|laboratory §


    Mandatory Search Parameters:

    The following search parameters and search parameter combinations SHALL be supported:

    1. SHALL support searching for all Observations using the combination of the patient and category search parameters

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

      Example:

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

      Implementation Notes: Fetches a bundle of all US Core Laboratory Result Observation Profile resources for the specified patient and a category code = "laboratory" ( see how to search by reference and how to search by token).

    2. SHALL support searching for all Observations by code using the combination of the patient and code search parameters

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

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

      Examples:

      1. GET [base]/Observation?patient=Patient/1137192&code=http://loinc.org|2339-0

      2. GET [base]/Observation?patient=Patient/1137192&code=http://loinc.org|2339-0,http://loinc.org|25428-4,http://loinc.org|2514-8

      Implementation Notes: Fetches a bundle of all US Core Laboratory Result Observation Profile resources for the specified patient and observation code(s). SHOULD support search by multiple codes. The US Core Laboratory Result Observation Profile "code" parameter searches only .code and not component.code. ( see how to search by reference and how to search by token).

    3. SHALL support searching for all Observations by date (for example, results after 2018) using the combination of the patient and category and date search parameters

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

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

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

      Example:

      1. GET [base]/Observation?patient=Patient/1137192&category=http://terminology.hl7.org/CodeSystem/observation-category|laboratory&date=ge2018-03-14T00:00:00Z

      Implementation Notes: Fetches a bundle of all US Core Laboratory Result Observation Profile resources for the specified patient and date and a category code = "laboratory" ( see how to search by reference and how to search by token and how to search by date).

    Optional Search Parameters:

    The following search parameters and search parameter combinations SHOULD be supported

    1. SHOULD support searching for all Observations for a patient for a given status (for example all observations marked as final) using the combination of the patient and category and status search parameters

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

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

      Example:

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

      Implementation Notes: Fetches a bundle of all US Core Laboratory Result Observation Profile resources for the specified patient and category = "laboratory" and status ( see how to search by reference and how to search by token).

    2. SHOULD support searching using the combination of the patient and category and _lastUpdated search parameters

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

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

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

      Example:

      1. GET [base]/Observation?patient=Patient/1137192&category=http://terminology.hl7.org/CodeSystem/observation-category|laboratory&_lastUpdated=ge2024-01-01T00:00:00Z

      Implementation Notes: Fetches a bundle of all US Core Laboratory Result Observation Profile resources for the specified patient and category code = "laboratory" and _lastUpdated. See the US Core General Guidance page for Searching Using lastUpdated. ( see how to search by reference and how to search by token and how to search by date).

    3. SHOULD support searching Observations by code and date using the combination of the patient and code and date search parameters

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

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

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

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

      Example:

      1. GET [base]/Observation?patient=Patient/1137192&code=http://loinc.org|2339-0&date=ge2019-01-01T00:00:00Z

      Implementation Notes: Fetches a bundle of all US Core Laboratory Result Observation Profile resources for the specified patient and date and code(s). SHOULD support search by multiple codes. ( see how to search by reference and how to search by token and how to search by date).