CIBMTR Reporting Implementation Guide
0.1.11 - Trial Use 1
This page is part of the CIBMTR Reporting Implementation Guide (v0.1.11: Release) based on FHIR (HL7® FHIR® Standard) R4. This is the current published version. For a full list of available versions, see the Directory of published versions
| Official URL: http://fhir.nmdp.org/ig/cibmtr-reporting/StructureDefinition/cibmtr-observation-lab | Version: 0.1.11 | |||
| Draft as of 2026-06-25 | Computable Name: CIBMTRObservationLab | |||
Laboratory Observation FHIR resources may be submitted to the CIBMTR Direct FHIR API (see the R4 Connection Guide). These profiles are derived from profiles defined in the US Core Implementation Guide. The CIBMTR profiles extend the base profiles by requiring the meta.security element to identify the submitting center and by applying bindings to CIBMTR-defined or laboratory-specific ValueSets where applicable. The Laboratory Observation resource is patient-specific and represents laboratory test results and related laboratory observations for an individual subject.
The following data elements must always be present (Must Have) or must be supported if the data is present in the sending system (Must Support).
Each Laboratory Observation Must Have:
Each Laboratory Observation Must Support:
Security label requirement (meta.security)
The CIBMTR observation laboratory results profile requires a meta.security label identifying the Transplant Center context (e.g., rc_<CCN>). This security tag is used as part of the query pattern for searching and for access scoping.
subject
The subject element is mandatory and must contain a reference to a Patient resource identifying the subject of the laboratory result.
code
The code element identifies the laboratory test or observation being reported. Laboratory test codes are typically represented using LOINC codes or CIBMTR-defined laboratory ValueSets where applicable.
value[x]
Observation result values may be represented in multiple forms. CIBMTR currently supports only valueQuantity for numeric results and valueCodeableConcept for categorical results. For valueCodeableConcept, only coded values are supported. Other value types, such as valueString, are not currently supported.
valueQuantity.comparator
There are cases where the laboratory result exceeds the measurable limits of the test and a comparator such as < or > is required. In these cases, the valueQuantity.comparator element MUST be used.
referenceRange
For CMV LOINC codes that use valueQuantity, a corresponding referenceRange element MUST also be provided.
Usages:
You can also check for usages in the FHIR IG Statistics
Description of Profiles, Differentials, Snapshots and how the different presentations work.
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | USCoreLaboratoryResultObservationProfile(8.0.0) | Measurements and simple assertions Constraints: obs-6, obs-7, us-core-2 |
![]() ![]() |
SΣ | 0..1 | Meta | Metadata about the resource |
![]() ![]() ![]() |
SΣ | 0..1 | instant | When the resource last changed |
![]() ![]() ![]() |
Σ | 1..* | Coding | Security Labels applied to this resource Slice: Unordered, Open by pattern:system Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System. |
![]() ![]() ![]() ![]() |
SΣ | 1..1 | Coding | Security Labels applied to this resource Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System. |
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Identity of the terminology system Required Pattern: http://terminology.cibmtr.org/codesystem/transplant-center |
![]() ![]() ![]() ![]() ![]() |
ΣC | 1..1 | code | Symbol in syntax defined by the system Constraints: sec-rc |
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created |
![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored |
![]() ![]() |
?!SΣ | 1..1 | code | registered | preliminary | final | amended + Binding: ObservationStatus (required): Codes providing the status of an observation. |
![]() ![]() |
S | 1..* | CodeableConcept | Classification of type of observation Slice: Unordered, Open by value:$this Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories. |
![]() ![]() ![]() |
S | 1..1 | CodeableConcept | Classification of type of observation Binding: US Core Clinical Result Observation Category (required): Note that other codes are permitted, see Required Bindings When Slicing by Value Sets Required Pattern: At least the following |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |
![]() ![]() ![]() ![]() |
1..* | Coding | Code defined by a terminology system Fixed Value: (Complex) | |
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |
![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org/CodeSystem/observation-category | |
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Version of the system - if relevant | |
![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system Fixed Value: laboratory | |
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Representation defined by the system | |
![]() ![]() ![]() ![]() ![]() |
0..1 | boolean | If this coding was chosen directly by the user | |
![]() ![]() ![]() ![]() |
0..1 | string | Plain text representation of the concept | |
![]() ![]() |
SΣ | 1..1 | CodeableConcept | Laboratory Test Name Binding: US Core Laboratory Test Codes (extensible): Laboratory LOINC Codes |
![]() ![]() |
SΣ | 1..1 | Reference(US Core Patient Profile(8.0.0) S | Group | Device | US Core Location Profile(8.0.0)) | Who and/or what the observation is about |
![]() ![]() |
SΣ | 0..1 | Reference(US Core Encounter Profile(8.0.0)) | Encounter associated with Observation |
![]() ![]() |
SΣC | 1..1 | Clinically relevant time/time-period for observation Constraints: us-core-1 | |
![]() ![]() ![]() |
dateTime S | |||
![]() ![]() ![]() |
Period | |||
![]() ![]() ![]() |
Timing | |||
![]() ![]() ![]() |
instant | |||
![]() ![]() |
SΣ | 0..* | Reference(US Core Practitioner Profile(8.0.0) S | US Core Organization Profile(8.0.0) | US Core Patient Profile(8.0.0) | PractitionerRole | US Core CareTeam Profile(8.0.0) | US Core RelatedPerson Profile(8.0.0)) | Who is responsible for the observation |
![]() ![]() |
SΣC | 0..1 | Result Value Constraints: us-core-3, us-core-4 | |
![]() ![]() ![]() |
Quantity S | |||
![]() ![]() ![]() |
CodeableConcept S | |||
![]() ![]() |
SC | 0..1 | CodeableConcept | Why the result is missing Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing. |
![]() ![]() |
S | 0..* | CodeableConcept | Result interpretation Binding: ObservationInterpretationCodes (extensible): Observation Interpretation Codes |
![]() ![]() |
S | 0..1 | Reference(US Core Specimen Profile(8.0.0)) | Specimen used for this observation |
![]() ![]() |
SC | 0..* | BackboneElement | Result reference range Constraints: obs-3, us-core-22 |
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| Observation.meta.security | Base | extensible | SecurityLabels | 📦4.0.1 | FHIR Std. |
| Observation.meta.security:TransplantCenter | Base | extensible | SecurityLabels | 📦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 | 📦8.0.0 | US Core v8.0 |
| Observation.code | Base | extensible | US Core Laboratory Test Codes | 📦8.0.0 | US Core v8.0 |
| Observation.dataAbsentReason | Base | extensible | DataAbsentReason | 📦4.0.1 | FHIR Std. |
| Observation.interpretation | Base | extensible | Observation Interpretation Codes | 📦4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| dom-2 | error | Observation | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | Observation | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource |
contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
|
| dom-4 | error | Observation | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated |
contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
|
| dom-5 | error | Observation | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | Observation | A resource should have narrative for robust management |
text.`div`.exists()
|
| ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children |
hasValue() or (children().count() > id.count())
|
| ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both |
extension.exists() != value.exists()
|
| obs-3 | error | Observation.referenceRange | Must have at least a low or a high or text |
low.exists() or high.exists() or text.exists()
|
| obs-6 | error | Observation | dataAbsentReason SHALL only be present if Observation.value[x] is not present |
dataAbsentReason.empty() or value.empty()
|
| obs-7 | error | Observation | If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present |
value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()
|
| sec-rc | error | Observation.meta.security:TransplantCenter.code | Use transplant center identifier for security tag |
matches('^rc_[0-9]{5}$')
|
| us-core-1 | error | Observation.effective[x] | Datetime must be at least to day. |
$this is dateTime implies $this.toString().length() >= 10
|
| us-core-2 | error | Observation | If there is no component or hasMember element then either a value[x] or a data absent reason must be present |
(component.empty() and hasMember.empty()) implies (dataAbsentReason.exists() or value.exists())
|
| us-core-3 | error | Observation.value[x] | SHALL use UCUM for coded quantity units. |
ofType(Quantity).system.empty() or ofType(Quantity).system = 'http://unitsofmeasure.org'
|
| 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 | SHALL use 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 USCoreLaboratoryResultObservationProfile
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
0..* | USCoreLaboratoryResultObservationProfile(8.0.0) | Measurements and simple assertions | |
![]() ![]() |
||||
![]() ![]() ![]() |
1..* | Coding | Security Labels applied to this resource Slice: Unordered, Open by pattern:system | |
![]() ![]() ![]() ![]() |
S | 1..1 | Coding | Security Labels applied to this resource |
![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Required Pattern: http://terminology.cibmtr.org/codesystem/transplant-center | |
![]() ![]() ![]() ![]() ![]() |
C | 1..1 | code | Symbol in syntax defined by the system Constraints: sec-rc |
![]() ![]() |
1..1 | dateTime, Period, Timing, instant | Clinically relevant time/time-period for observation | |
![]() ![]() |
0..1 | Result Value | ||
![]() ![]() ![]() |
Quantity | |||
![]() ![]() ![]() |
CodeableConcept | |||
Documentation for this format | ||||
| Id | Grade | Path(s) | Description | Expression |
| sec-rc | error | Observation.meta.security:TransplantCenter.code | Use transplant center identifier for security tag |
matches('^rc_[0-9]{5}$')
|
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() | ||||
|---|---|---|---|---|---|---|---|---|
![]() |
C | 0..* | USCoreLaboratoryResultObservationProfile(8.0.0) | Measurements and simple assertions Constraints: obs-6, obs-7, us-core-2 | ||||
![]() ![]() |
Σ | 0..1 | id | Logical id of this artifact | ||||
![]() ![]() |
SΣ | 0..1 | Meta | Metadata about the resource | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() |
Σ | 0..1 | id | Version specific identifier | ||||
![]() ![]() ![]() |
SΣ | 0..1 | instant | When the resource last changed | ||||
![]() ![]() ![]() |
Σ | 0..1 | uri | Identifies where the resource comes from | ||||
![]() ![]() ![]() |
Σ | 0..* | canonical(StructureDefinition) | Profiles this resource claims to conform to | ||||
![]() ![]() ![]() |
Σ | 1..* | Coding | Security Labels applied to this resource Slice: Unordered, Open by pattern:system Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System. | ||||
![]() ![]() ![]() ![]() |
SΣ | 1..1 | Coding | Security Labels applied to this resource Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System. | ||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Identity of the terminology system Required Pattern: http://terminology.cibmtr.org/codesystem/transplant-center | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Version of the system - if relevant | ||||
![]() ![]() ![]() ![]() ![]() |
ΣC | 1..1 | code | Symbol in syntax defined by the system Constraints: sec-rc | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Representation defined by the system | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | boolean | If this coding was chosen directly by the user | ||||
![]() ![]() ![]() |
Σ | 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". | ||||
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
![]() ![]() |
0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
![]() ![]() |
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 | |||||
![]() ![]() |
0..* | Resource | Contained, inline Resources | |||||
![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored | ||||
![]() ![]() |
Σ | 0..* | Identifier | Business Identifier for observation | ||||
![]() ![]() |
Σ | 0..* | Reference(CarePlan | DeviceRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest) | Fulfills plan, proposal or order | ||||
![]() ![]() |
Σ | 0..* | Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Immunization | ImagingStudy) | Part of referenced event | ||||
![]() ![]() |
?!SΣ | 1..1 | code | registered | preliminary | final | amended + Binding: ObservationStatus (required): Codes providing the status of an observation. | ||||
![]() ![]() |
S | 1..* | CodeableConcept | Classification of type of observation Slice: Unordered, Open by value:$this Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories. | ||||
![]() ![]() ![]() |
S | 1..1 | CodeableConcept | Classification of type of observation Binding: US Core Clinical Result Observation Category (required): Note that other codes are permitted, see Required Bindings When Slicing by Value Sets Required Pattern: At least the following | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
1..* | Coding | Code defined by a terminology system Fixed Value: (Complex) | |||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org/CodeSystem/observation-category | |||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Version of the system - if relevant | |||||
![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system Fixed Value: laboratory | |||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Representation defined by the system | |||||
![]() ![]() ![]() ![]() ![]() |
0..1 | boolean | If this coding was chosen directly by the user | |||||
![]() ![]() ![]() ![]() |
0..1 | string | Plain text representation of the concept | |||||
![]() ![]() |
SΣ | 1..1 | CodeableConcept | Laboratory Test Name Binding: US Core Laboratory Test Codes (extensible): Laboratory LOINC Codes | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() |
Σ | 0..* | Coding | Code defined by a terminology system | ||||
![]() ![]() ![]() |
Σ | 0..1 | string | 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜: The name of the test that was performed. | ||||
![]() ![]() |
SΣ | 1..1 | Reference(US Core Patient Profile(8.0.0) S | Group | Device | US Core Location Profile(8.0.0)) | Who and/or what the observation is about | ||||
![]() ![]() |
Σ | 0..* | Reference(Resource) | What the observation is about, when it is not about the subject of record | ||||
![]() ![]() |
SΣ | 0..1 | Reference(US Core Encounter Profile(8.0.0)) | Encounter associated with Observation | ||||
![]() ![]() |
SΣC | 1..1 | Clinically relevant time/time-period for observation Constraints: us-core-1 | |||||
![]() ![]() ![]() |
dateTime S | |||||||
![]() ![]() ![]() |
Period | |||||||
![]() ![]() ![]() |
Timing | |||||||
![]() ![]() ![]() |
instant | |||||||
![]() ![]() |
Σ | 0..1 | instant | Date/Time this version was made available | ||||
![]() ![]() |
SΣ | 0..* | Reference(US Core Practitioner Profile(8.0.0) S | US Core Organization Profile(8.0.0) | US Core Patient Profile(8.0.0) | PractitionerRole | US Core CareTeam Profile(8.0.0) | US Core RelatedPerson Profile(8.0.0)) | Who is responsible for the observation | ||||
![]() ![]() |
SΣC | 0..1 | Result Value Constraints: us-core-3, us-core-4 | |||||
![]() ![]() ![]() |
Quantity S | |||||||
![]() ![]() ![]() |
CodeableConcept S | |||||||
![]() ![]() |
SC | 0..1 | CodeableConcept | Why the result is missing Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing. | ||||
![]() ![]() |
S | 0..* | CodeableConcept | Result interpretation Binding: ObservationInterpretationCodes (extensible): Observation Interpretation Codes | ||||
![]() ![]() |
0..* | Annotation | Comments about the observation | |||||
![]() ![]() |
0..1 | CodeableConcept | Observed body part Binding: SNOMEDCTBodyStructures (example): Codes describing anatomical locations. May include laterality. | |||||
![]() ![]() |
0..1 | CodeableConcept | How it was done Binding: ObservationMethods (example): Methods for simple observations. | |||||
![]() ![]() |
S | 0..1 | Reference(US Core Specimen Profile(8.0.0)) | Specimen used for this observation | ||||
![]() ![]() |
0..1 | Reference(Device | DeviceMetric) | (Measurement) Device | |||||
![]() ![]() |
SC | 0..* | BackboneElement | Result reference range Constraints: obs-3, us-core-22 | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() |
C | 0..1 | SimpleQuantity | Low Range, if relevant | ||||
![]() ![]() ![]() |
C | 0..1 | SimpleQuantity | High Range, if relevant | ||||
![]() ![]() ![]() |
0..1 | CodeableConcept | Reference range qualifier Binding: ObservationReferenceRangeMeaningCodes (preferred): Code for the meaning of a reference range. | |||||
![]() ![]() ![]() |
0..* | CodeableConcept | Reference range population Binding: ObservationReferenceRangeAppliesToCodes (example): Codes identifying the population the reference range applies to. | |||||
![]() ![]() ![]() |
0..1 | Range | Applicable age range, if relevant | |||||
![]() ![]() ![]() |
0..1 | string | Text based reference range in an observation | |||||
![]() ![]() |
Σ | 0..* | Reference(Observation | QuestionnaireResponse | MolecularSequence) | Related resource that belongs to the Observation group | ||||
![]() ![]() |
Σ | 0..* | Reference(DocumentReference | ImagingStudy | Media | QuestionnaireResponse | Observation | MolecularSequence) | Related measurements the observation is made from | ||||
![]() ![]() |
Σ | 0..* | BackboneElement | Component results | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() |
Σ | 1..1 | CodeableConcept | Type of component observation (code / type) Binding: LOINCCodes (example): Codes identifying names of simple observations. | ||||
![]() ![]() ![]() |
Σ | 0..1 | Actual component result | |||||
![]() ![]() ![]() ![]() |
Quantity | |||||||
![]() ![]() ![]() ![]() |
CodeableConcept | |||||||
![]() ![]() ![]() ![]() |
string | |||||||
![]() ![]() ![]() ![]() |
boolean | |||||||
![]() ![]() ![]() ![]() |
integer | |||||||
![]() ![]() ![]() ![]() |
Range | |||||||
![]() ![]() ![]() ![]() |
Ratio | |||||||
![]() ![]() ![]() ![]() |
SampledData | |||||||
![]() ![]() ![]() ![]() |
time | |||||||
![]() ![]() ![]() ![]() |
dateTime | |||||||
![]() ![]() ![]() ![]() |
Period | |||||||
![]() ![]() ![]() |
C | 0..1 | CodeableConcept | Why the component result is missing Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing. | ||||
![]() ![]() ![]() |
0..* | CodeableConcept | High, low, normal, etc. Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations. | |||||
![]() ![]() ![]() |
0..* | See referenceRange (Observation) | Provides guide for interpretation of component result | |||||
Documentation for this format | ||||||||
| Path | Status | Usage | ValueSet | Version | Source |
| Observation.meta.security | Base | extensible | SecurityLabels | 📦4.0.1 | FHIR Std. |
| Observation.meta.security:TransplantCenter | 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 | 📦8.0.0 | US Core v8.0 |
| Observation.code | Base | extensible | US Core Laboratory Test Codes | 📦8.0.0 | US Core v8.0 |
| 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. |
| Id | Grade | Path(s) | Description | Expression |
| dom-2 | error | Observation | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | Observation | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource |
contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
|
| dom-4 | error | Observation | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated |
contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
|
| dom-5 | error | Observation | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | Observation | A resource should have narrative for robust management |
text.`div`.exists()
|
| ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children |
hasValue() or (children().count() > id.count())
|
| ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both |
extension.exists() != value.exists()
|
| obs-3 | error | Observation.referenceRange | Must have at least a low or a high or text |
low.exists() or high.exists() or text.exists()
|
| obs-6 | error | Observation | dataAbsentReason SHALL only be present if Observation.value[x] is not present |
dataAbsentReason.empty() or value.empty()
|
| obs-7 | error | Observation | If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present |
value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()
|
| sec-rc | error | Observation.meta.security:TransplantCenter.code | Use transplant center identifier for security tag |
matches('^rc_[0-9]{5}$')
|
| us-core-1 | error | Observation.effective[x] | Datetime must be at least to day. |
$this is dateTime implies $this.toString().length() >= 10
|
| us-core-2 | error | Observation | If there is no component or hasMember element then either a value[x] or a data absent reason must be present |
(component.empty() and hasMember.empty()) implies (dataAbsentReason.exists() or value.exists())
|
| us-core-3 | error | Observation.value[x] | SHALL use UCUM for coded quantity units. |
ofType(Quantity).system.empty() or ofType(Quantity).system = 'http://unitsofmeasure.org'
|
| 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 | SHALL use 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 USCoreLaboratoryResultObservationProfile
Summary
Mandatory: 1 element(4 nested mandatory elements)
Must-Support: 1 element
Slices
This structure defines the following Slices:
Key Elements View
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | USCoreLaboratoryResultObservationProfile(8.0.0) | Measurements and simple assertions Constraints: obs-6, obs-7, us-core-2 |
![]() ![]() |
SΣ | 0..1 | Meta | Metadata about the resource |
![]() ![]() ![]() |
SΣ | 0..1 | instant | When the resource last changed |
![]() ![]() ![]() |
Σ | 1..* | Coding | Security Labels applied to this resource Slice: Unordered, Open by pattern:system Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System. |
![]() ![]() ![]() ![]() |
SΣ | 1..1 | Coding | Security Labels applied to this resource Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System. |
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Identity of the terminology system Required Pattern: http://terminology.cibmtr.org/codesystem/transplant-center |
![]() ![]() ![]() ![]() ![]() |
ΣC | 1..1 | code | Symbol in syntax defined by the system Constraints: sec-rc |
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created |
![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored |
![]() ![]() |
?!SΣ | 1..1 | code | registered | preliminary | final | amended + Binding: ObservationStatus (required): Codes providing the status of an observation. |
![]() ![]() |
S | 1..* | CodeableConcept | Classification of type of observation Slice: Unordered, Open by value:$this Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories. |
![]() ![]() ![]() |
S | 1..1 | CodeableConcept | Classification of type of observation Binding: US Core Clinical Result Observation Category (required): Note that other codes are permitted, see Required Bindings When Slicing by Value Sets Required Pattern: At least the following |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |
![]() ![]() ![]() ![]() |
1..* | Coding | Code defined by a terminology system Fixed Value: (Complex) | |
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |
![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org/CodeSystem/observation-category | |
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Version of the system - if relevant | |
![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system Fixed Value: laboratory | |
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Representation defined by the system | |
![]() ![]() ![]() ![]() ![]() |
0..1 | boolean | If this coding was chosen directly by the user | |
![]() ![]() ![]() ![]() |
0..1 | string | Plain text representation of the concept | |
![]() ![]() |
SΣ | 1..1 | CodeableConcept | Laboratory Test Name Binding: US Core Laboratory Test Codes (extensible): Laboratory LOINC Codes |
![]() ![]() |
SΣ | 1..1 | Reference(US Core Patient Profile(8.0.0) S | Group | Device | US Core Location Profile(8.0.0)) | Who and/or what the observation is about |
![]() ![]() |
SΣ | 0..1 | Reference(US Core Encounter Profile(8.0.0)) | Encounter associated with Observation |
![]() ![]() |
SΣC | 1..1 | Clinically relevant time/time-period for observation Constraints: us-core-1 | |
![]() ![]() ![]() |
dateTime S | |||
![]() ![]() ![]() |
Period | |||
![]() ![]() ![]() |
Timing | |||
![]() ![]() ![]() |
instant | |||
![]() ![]() |
SΣ | 0..* | Reference(US Core Practitioner Profile(8.0.0) S | US Core Organization Profile(8.0.0) | US Core Patient Profile(8.0.0) | PractitionerRole | US Core CareTeam Profile(8.0.0) | US Core RelatedPerson Profile(8.0.0)) | Who is responsible for the observation |
![]() ![]() |
SΣC | 0..1 | Result Value Constraints: us-core-3, us-core-4 | |
![]() ![]() ![]() |
Quantity S | |||
![]() ![]() ![]() |
CodeableConcept S | |||
![]() ![]() |
SC | 0..1 | CodeableConcept | Why the result is missing Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing. |
![]() ![]() |
S | 0..* | CodeableConcept | Result interpretation Binding: ObservationInterpretationCodes (extensible): Observation Interpretation Codes |
![]() ![]() |
S | 0..1 | Reference(US Core Specimen Profile(8.0.0)) | Specimen used for this observation |
![]() ![]() |
SC | 0..* | BackboneElement | Result reference range Constraints: obs-3, us-core-22 |
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| Observation.meta.security | Base | extensible | SecurityLabels | 📦4.0.1 | FHIR Std. |
| Observation.meta.security:TransplantCenter | Base | extensible | SecurityLabels | 📦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 | 📦8.0.0 | US Core v8.0 |
| Observation.code | Base | extensible | US Core Laboratory Test Codes | 📦8.0.0 | US Core v8.0 |
| Observation.dataAbsentReason | Base | extensible | DataAbsentReason | 📦4.0.1 | FHIR Std. |
| Observation.interpretation | Base | extensible | Observation Interpretation Codes | 📦4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| dom-2 | error | Observation | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | Observation | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource |
contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
|
| dom-4 | error | Observation | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated |
contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
|
| dom-5 | error | Observation | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | Observation | A resource should have narrative for robust management |
text.`div`.exists()
|
| ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children |
hasValue() or (children().count() > id.count())
|
| ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both |
extension.exists() != value.exists()
|
| obs-3 | error | Observation.referenceRange | Must have at least a low or a high or text |
low.exists() or high.exists() or text.exists()
|
| obs-6 | error | Observation | dataAbsentReason SHALL only be present if Observation.value[x] is not present |
dataAbsentReason.empty() or value.empty()
|
| obs-7 | error | Observation | If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present |
value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()
|
| sec-rc | error | Observation.meta.security:TransplantCenter.code | Use transplant center identifier for security tag |
matches('^rc_[0-9]{5}$')
|
| us-core-1 | error | Observation.effective[x] | Datetime must be at least to day. |
$this is dateTime implies $this.toString().length() >= 10
|
| us-core-2 | error | Observation | If there is no component or hasMember element then either a value[x] or a data absent reason must be present |
(component.empty() and hasMember.empty()) implies (dataAbsentReason.exists() or value.exists())
|
| us-core-3 | error | Observation.value[x] | SHALL use UCUM for coded quantity units. |
ofType(Quantity).system.empty() or ofType(Quantity).system = 'http://unitsofmeasure.org'
|
| 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 | SHALL use 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 USCoreLaboratoryResultObservationProfile
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
0..* | USCoreLaboratoryResultObservationProfile(8.0.0) | Measurements and simple assertions | |
![]() ![]() |
||||
![]() ![]() ![]() |
1..* | Coding | Security Labels applied to this resource Slice: Unordered, Open by pattern:system | |
![]() ![]() ![]() ![]() |
S | 1..1 | Coding | Security Labels applied to this resource |
![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Required Pattern: http://terminology.cibmtr.org/codesystem/transplant-center | |
![]() ![]() ![]() ![]() ![]() |
C | 1..1 | code | Symbol in syntax defined by the system Constraints: sec-rc |
![]() ![]() |
1..1 | dateTime, Period, Timing, instant | Clinically relevant time/time-period for observation | |
![]() ![]() |
0..1 | Result Value | ||
![]() ![]() ![]() |
Quantity | |||
![]() ![]() ![]() |
CodeableConcept | |||
Documentation for this format | ||||
| Id | Grade | Path(s) | Description | Expression |
| sec-rc | error | Observation.meta.security:TransplantCenter.code | Use transplant center identifier for security tag |
matches('^rc_[0-9]{5}$')
|
Snapshot View
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() | ||||
|---|---|---|---|---|---|---|---|---|
![]() |
C | 0..* | USCoreLaboratoryResultObservationProfile(8.0.0) | Measurements and simple assertions Constraints: obs-6, obs-7, us-core-2 | ||||
![]() ![]() |
Σ | 0..1 | id | Logical id of this artifact | ||||
![]() ![]() |
SΣ | 0..1 | Meta | Metadata about the resource | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() |
Σ | 0..1 | id | Version specific identifier | ||||
![]() ![]() ![]() |
SΣ | 0..1 | instant | When the resource last changed | ||||
![]() ![]() ![]() |
Σ | 0..1 | uri | Identifies where the resource comes from | ||||
![]() ![]() ![]() |
Σ | 0..* | canonical(StructureDefinition) | Profiles this resource claims to conform to | ||||
![]() ![]() ![]() |
Σ | 1..* | Coding | Security Labels applied to this resource Slice: Unordered, Open by pattern:system Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System. | ||||
![]() ![]() ![]() ![]() |
SΣ | 1..1 | Coding | Security Labels applied to this resource Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System. | ||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Identity of the terminology system Required Pattern: http://terminology.cibmtr.org/codesystem/transplant-center | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Version of the system - if relevant | ||||
![]() ![]() ![]() ![]() ![]() |
ΣC | 1..1 | code | Symbol in syntax defined by the system Constraints: sec-rc | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Representation defined by the system | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | boolean | If this coding was chosen directly by the user | ||||
![]() ![]() ![]() |
Σ | 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". | ||||
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
![]() ![]() |
0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
![]() ![]() |
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 | |||||
![]() ![]() |
0..* | Resource | Contained, inline Resources | |||||
![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored | ||||
![]() ![]() |
Σ | 0..* | Identifier | Business Identifier for observation | ||||
![]() ![]() |
Σ | 0..* | Reference(CarePlan | DeviceRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest) | Fulfills plan, proposal or order | ||||
![]() ![]() |
Σ | 0..* | Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Immunization | ImagingStudy) | Part of referenced event | ||||
![]() ![]() |
?!SΣ | 1..1 | code | registered | preliminary | final | amended + Binding: ObservationStatus (required): Codes providing the status of an observation. | ||||
![]() ![]() |
S | 1..* | CodeableConcept | Classification of type of observation Slice: Unordered, Open by value:$this Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories. | ||||
![]() ![]() ![]() |
S | 1..1 | CodeableConcept | Classification of type of observation Binding: US Core Clinical Result Observation Category (required): Note that other codes are permitted, see Required Bindings When Slicing by Value Sets Required Pattern: At least the following | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
1..* | Coding | Code defined by a terminology system Fixed Value: (Complex) | |||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org/CodeSystem/observation-category | |||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Version of the system - if relevant | |||||
![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system Fixed Value: laboratory | |||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Representation defined by the system | |||||
![]() ![]() ![]() ![]() ![]() |
0..1 | boolean | If this coding was chosen directly by the user | |||||
![]() ![]() ![]() ![]() |
0..1 | string | Plain text representation of the concept | |||||
![]() ![]() |
SΣ | 1..1 | CodeableConcept | Laboratory Test Name Binding: US Core Laboratory Test Codes (extensible): Laboratory LOINC Codes | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() |
Σ | 0..* | Coding | Code defined by a terminology system | ||||
![]() ![]() ![]() |
Σ | 0..1 | string | 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜: The name of the test that was performed. | ||||
![]() ![]() |
SΣ | 1..1 | Reference(US Core Patient Profile(8.0.0) S | Group | Device | US Core Location Profile(8.0.0)) | Who and/or what the observation is about | ||||
![]() ![]() |
Σ | 0..* | Reference(Resource) | What the observation is about, when it is not about the subject of record | ||||
![]() ![]() |
SΣ | 0..1 | Reference(US Core Encounter Profile(8.0.0)) | Encounter associated with Observation | ||||
![]() ![]() |
SΣC | 1..1 | Clinically relevant time/time-period for observation Constraints: us-core-1 | |||||
![]() ![]() ![]() |
dateTime S | |||||||
![]() ![]() ![]() |
Period | |||||||
![]() ![]() ![]() |
Timing | |||||||
![]() ![]() ![]() |
instant | |||||||
![]() ![]() |
Σ | 0..1 | instant | Date/Time this version was made available | ||||
![]() ![]() |
SΣ | 0..* | Reference(US Core Practitioner Profile(8.0.0) S | US Core Organization Profile(8.0.0) | US Core Patient Profile(8.0.0) | PractitionerRole | US Core CareTeam Profile(8.0.0) | US Core RelatedPerson Profile(8.0.0)) | Who is responsible for the observation | ||||
![]() ![]() |
SΣC | 0..1 | Result Value Constraints: us-core-3, us-core-4 | |||||
![]() ![]() ![]() |
Quantity S | |||||||
![]() ![]() ![]() |
CodeableConcept S | |||||||
![]() ![]() |
SC | 0..1 | CodeableConcept | Why the result is missing Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing. | ||||
![]() ![]() |
S | 0..* | CodeableConcept | Result interpretation Binding: ObservationInterpretationCodes (extensible): Observation Interpretation Codes | ||||
![]() ![]() |
0..* | Annotation | Comments about the observation | |||||
![]() ![]() |
0..1 | CodeableConcept | Observed body part Binding: SNOMEDCTBodyStructures (example): Codes describing anatomical locations. May include laterality. | |||||
![]() ![]() |
0..1 | CodeableConcept | How it was done Binding: ObservationMethods (example): Methods for simple observations. | |||||
![]() ![]() |
S | 0..1 | Reference(US Core Specimen Profile(8.0.0)) | Specimen used for this observation | ||||
![]() ![]() |
0..1 | Reference(Device | DeviceMetric) | (Measurement) Device | |||||
![]() ![]() |
SC | 0..* | BackboneElement | Result reference range Constraints: obs-3, us-core-22 | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() |
C | 0..1 | SimpleQuantity | Low Range, if relevant | ||||
![]() ![]() ![]() |
C | 0..1 | SimpleQuantity | High Range, if relevant | ||||
![]() ![]() ![]() |
0..1 | CodeableConcept | Reference range qualifier Binding: ObservationReferenceRangeMeaningCodes (preferred): Code for the meaning of a reference range. | |||||
![]() ![]() ![]() |
0..* | CodeableConcept | Reference range population Binding: ObservationReferenceRangeAppliesToCodes (example): Codes identifying the population the reference range applies to. | |||||
![]() ![]() ![]() |
0..1 | Range | Applicable age range, if relevant | |||||
![]() ![]() ![]() |
0..1 | string | Text based reference range in an observation | |||||
![]() ![]() |
Σ | 0..* | Reference(Observation | QuestionnaireResponse | MolecularSequence) | Related resource that belongs to the Observation group | ||||
![]() ![]() |
Σ | 0..* | Reference(DocumentReference | ImagingStudy | Media | QuestionnaireResponse | Observation | MolecularSequence) | Related measurements the observation is made from | ||||
![]() ![]() |
Σ | 0..* | BackboneElement | Component results | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() |
Σ | 1..1 | CodeableConcept | Type of component observation (code / type) Binding: LOINCCodes (example): Codes identifying names of simple observations. | ||||
![]() ![]() ![]() |
Σ | 0..1 | Actual component result | |||||
![]() ![]() ![]() ![]() |
Quantity | |||||||
![]() ![]() ![]() ![]() |
CodeableConcept | |||||||
![]() ![]() ![]() ![]() |
string | |||||||
![]() ![]() ![]() ![]() |
boolean | |||||||
![]() ![]() ![]() ![]() |
integer | |||||||
![]() ![]() ![]() ![]() |
Range | |||||||
![]() ![]() ![]() ![]() |
Ratio | |||||||
![]() ![]() ![]() ![]() |
SampledData | |||||||
![]() ![]() ![]() ![]() |
time | |||||||
![]() ![]() ![]() ![]() |
dateTime | |||||||
![]() ![]() ![]() ![]() |
Period | |||||||
![]() ![]() ![]() |
C | 0..1 | CodeableConcept | Why the component result is missing Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing. | ||||
![]() ![]() ![]() |
0..* | CodeableConcept | High, low, normal, etc. Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations. | |||||
![]() ![]() ![]() |
0..* | See referenceRange (Observation) | Provides guide for interpretation of component result | |||||
Documentation for this format | ||||||||
| Path | Status | Usage | ValueSet | Version | Source |
| Observation.meta.security | Base | extensible | SecurityLabels | 📦4.0.1 | FHIR Std. |
| Observation.meta.security:TransplantCenter | 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 | 📦8.0.0 | US Core v8.0 |
| Observation.code | Base | extensible | US Core Laboratory Test Codes | 📦8.0.0 | US Core v8.0 |
| 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. |
| Id | Grade | Path(s) | Description | Expression |
| dom-2 | error | Observation | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | Observation | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource |
contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
|
| dom-4 | error | Observation | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated |
contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
|
| dom-5 | error | Observation | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | Observation | A resource should have narrative for robust management |
text.`div`.exists()
|
| ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children |
hasValue() or (children().count() > id.count())
|
| ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both |
extension.exists() != value.exists()
|
| obs-3 | error | Observation.referenceRange | Must have at least a low or a high or text |
low.exists() or high.exists() or text.exists()
|
| obs-6 | error | Observation | dataAbsentReason SHALL only be present if Observation.value[x] is not present |
dataAbsentReason.empty() or value.empty()
|
| obs-7 | error | Observation | If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present |
value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()
|
| sec-rc | error | Observation.meta.security:TransplantCenter.code | Use transplant center identifier for security tag |
matches('^rc_[0-9]{5}$')
|
| us-core-1 | error | Observation.effective[x] | Datetime must be at least to day. |
$this is dateTime implies $this.toString().length() >= 10
|
| us-core-2 | error | Observation | If there is no component or hasMember element then either a value[x] or a data absent reason must be present |
(component.empty() and hasMember.empty()) implies (dataAbsentReason.exists() or value.exists())
|
| us-core-3 | error | Observation.value[x] | SHALL use UCUM for coded quantity units. |
ofType(Quantity).system.empty() or ofType(Quantity).system = 'http://unitsofmeasure.org'
|
| 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 | SHALL use 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 USCoreLaboratoryResultObservationProfile
Summary
Mandatory: 1 element(4 nested mandatory elements)
Must-Support: 1 element
Slices
This structure defines the following Slices:
Other representations of profile: CSV, Excel, Schematron
Observation result values may be represented in multiple forms. CIBMTR currently supports only the following value types:
valueQuantity
"valueQuantity" : {
"value" : 5,
"unit" : "gram per deciliter",
"system" : "http://unitsofmeasure.org",
"code" : "g/dL"
}
valueCodeableConcept
"valueCodeableConcept" : {
"coding" : [
{
"system" : "http://snomed.info/sct",
"code" : "10828004",
"display" : "Positive (qualifier value)"
}
]
}
CIBMTR does NOT currently support any other value types, such as valueString.
valueQuantityIn some cases, the laboratory result exceeds the measurable limits of the test and requires a comparator such as < or >. In these cases, the valueQuantity.comparator MUST be used. For example:
"valueQuantity" : {
"value" : 13700,
"comparator" : "<",
"unit" : "international unit per milliliter",
"system" : "http://unitsofmeasure.org",
"code" : "[IU]/mL"
}
valueQuantity, a corresponding referenceRange element MUST also be provided. For example:"referenceRange" : [
{
"low" : {
"value" : 13700,
"unit" : "international unit per milliliter",
"system" : "http://unitsofmeasure.org",
"code" : "[IU]/mL"
},
"high" : {
"value" : 9000000,
"unit" : "international unit per milliliter",
"system" : "http://unitsofmeasure.org",
"code" : "[IU]/mL"
}
}
]