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-vital-signs | Version: 0.1.11 | |||
| Draft as of 2026-06-25 | Computable Name: CIBMTRVitalSignsVariables | |||
The CIBMTR Vital Signs Profile inherits from the US Core Vital Signs Profile, which in turn inherits from the base FHIR Observation resource. This profile constrains the representation, coding, and usage of vital sign observations to support consistent reporting and downstream use in CIBMTR data collection and analysis workflows.
This profile establishes minimum expectations for representing vital sign measurements (e.g., body height, body weight) recorded for a patient and submitted to the CIBMTR FHIR server. It specifies the required elements, extensions, and identifier slices, and defines how they SHALL be used to support standardized reporting to CIBMTR.
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 Vital Signs Observation Must Have:
Each Vital Signs Observation Must Support:
Security label requirement (meta.security)
The CIBMTR vital signs 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 individual whose vital signs are being recorded.
code
The code element identifies the vital sign being measured. Vital sign codes are typically represented using LOINC codes or CIBMTR-defined laboratory ValueSets where applicable.
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..* | USCoreVitalSignsProfile(8.0.0) | US Core Vital Signs Profile Constraints: obs-6, obs-7, vs-2 |
![]() ![]() |
Σ | 0..1 | Meta | Metadata about the resource |
![]() ![]() ![]() |
Σ | 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) |
![]() ![]() |
S | 1..* | CodeableConcept | Classification of type of observation Slice: Unordered, Open by value:coding.code, value:coding.system Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories. |
![]() ![]() ![]() |
S | 1..1 | CodeableConcept | Classification of type of observation Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories. |
![]() ![]() ![]() ![]() |
SΣ | 1..* | Coding | Code defined by a terminology system |
![]() ![]() ![]() ![]() ![]() |
SΣ | 1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org/CodeSystem/observation-category |
![]() ![]() ![]() ![]() ![]() |
SΣ | 1..1 | code | Symbol in syntax defined by the system Fixed Value: vital-signs |
![]() ![]() |
SΣ | 1..1 | CodeableConcept | Coded vital sign result type Binding: https://vsac.nlm.nih.gov/valueset/2.16.840.1.113762.1.4.1295.1/expansion (extensible) |
![]() ![]() |
SΣ | 1..1 | Reference(US Core Patient Profile(8.0.0)) | Who and/or what the observation is about |
![]() ![]() |
SΣC | 1..1 | Often just a dateTime for Vital Signs Constraints: vs-1 | |
![]() ![]() ![]() |
dateTime S | |||
![]() ![]() ![]() |
Period | |||
![]() ![]() |
SΣ | 0..* | Reference(US Core Practitioner Profile(8.0.0) | 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 | Quantity S | Vital Signs Value Binding: VitalSignsUnits (extensible): Common UCUM units for recording Vital Signs. |
![]() ![]() |
SC | 0..1 | CodeableConcept | Why the result is missing Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing. |
![]() ![]() |
SΣC | 0..* | BackboneElement | Component observations Constraints: vs-3 |
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() |
SΣ | 1..1 | CodeableConcept | Coded vital sign result type Binding: Vital Sign Result Type (extensible): Vital sign result types |
![]() ![]() ![]() |
SΣC | 0..1 | Vital Sign Component Value Binding: VitalSignsUnits (extensible): Common UCUM units for recording Vital Signs. | |
![]() ![]() ![]() ![]() |
Quantity S | |||
![]() ![]() ![]() ![]() |
CodeableConcept | |||
![]() ![]() ![]() ![]() |
string | |||
![]() ![]() ![]() ![]() |
boolean | |||
![]() ![]() ![]() ![]() |
integer | |||
![]() ![]() ![]() ![]() |
Range | |||
![]() ![]() ![]() ![]() |
Ratio | |||
![]() ![]() ![]() ![]() |
SampledData | |||
![]() ![]() ![]() ![]() |
time | |||
![]() ![]() ![]() ![]() |
dateTime | |||
![]() ![]() ![]() ![]() |
Period | |||
![]() ![]() ![]() |
SC | 0..1 | CodeableConcept | Why the component result is missing Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing. |
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:VSCat | Base | preferred | Observation Category Codes | 📦4.0.1 | FHIR Std. |
| Observation.code | Base | extensible | https://vsac.nlm.nih.gov/valueset/2.16.840.1.113762.1.4.1295.1/expansion | Not State | Unknown |
| Observation.value[x] | Base | extensible | Vital Signs Units | 📍4.0.1 | FHIR Std. |
| Observation.dataAbsentReason | Base | extensible | DataAbsentReason | 📦4.0.1 | FHIR Std. |
| Observation.component.code | Base | extensible |
Vital Sign Result Type
|
📦20240322 | VSAC v0.23 |
| Observation.component.value[x] | Base | extensible | Vital Signs Units | 📍4.0.1 | FHIR Std. |
| Observation.component.dataAbsentReason | Base | extensible | DataAbsentReason | 📦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-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}$')
|
| vs-1 | error | Observation.effective[x] | if Observation.effective[x] is dateTime and has a value then that value shall be precise to the day |
$this is dateTime implies $this.toString().length() >= 10
|
| vs-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())
|
| vs-3 | error | Observation.component | If there is no a value a data absent reason must be present |
value.exists() or dataAbsentReason.exists()
|
This structure is derived from USCoreVitalSignsProfile
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
0..* | USCoreVitalSignsProfile(8.0.0) | US Core Vital Signs Profile | |
![]() ![]() |
||||
![]() ![]() ![]() |
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 | CodeableConcept | Coded vital sign result type Binding: https://vsac.nlm.nih.gov/valueset/2.16.840.1.113762.1.4.1295.1/expansion (extensible) | |
![]() ![]() |
0..1 | Quantity | Vital Signs Value | |
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| Observation.code | Base | extensible | https://vsac.nlm.nih.gov/valueset/2.16.840.1.113762.1.4.1295.1/expansion | Not State | Unknown |
| 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..* | USCoreVitalSignsProfile(8.0.0) | US Core Vital Signs Profile Constraints: obs-6, obs-7, vs-2 | ||||
![]() ![]() |
Σ | 0..1 | id | Logical id of this artifact | ||||
![]() ![]() |
Σ | 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 | ||||
![]() ![]() ![]() |
Σ | 0..1 | instant | When the resource version 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) | ||||
![]() ![]() |
S | 1..* | CodeableConcept | Classification of type of observation Slice: Unordered, Open by value:coding.code, value:coding.system Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories. | ||||
![]() ![]() ![]() |
S | 1..1 | CodeableConcept | Classification of type of observation Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories. | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() |
SΣ | 1..* | Coding | Code defined by a terminology system | ||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() ![]() |
SΣ | 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 | ||||
![]() ![]() ![]() ![]() ![]() |
SΣ | 1..1 | code | Symbol in syntax defined by the system Fixed Value: vital-signs | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 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 | Coded vital sign result type Binding: https://vsac.nlm.nih.gov/valueset/2.16.840.1.113762.1.4.1295.1/expansion (extensible) | ||||
![]() ![]() |
SΣ | 1..1 | Reference(US Core Patient 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 | ||||
![]() ![]() |
Σ | 0..1 | Reference(Encounter) | Healthcare event during which this observation is made | ||||
![]() ![]() |
SΣC | 1..1 | Often just a dateTime for Vital Signs Constraints: vs-1 | |||||
![]() ![]() ![]() |
dateTime S | |||||||
![]() ![]() ![]() |
Period | |||||||
![]() ![]() |
Σ | 0..1 | instant | Date/Time this version was made available | ||||
![]() ![]() |
SΣ | 0..* | Reference(US Core Practitioner Profile(8.0.0) | 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 | Quantity S | Vital Signs Value Binding: VitalSignsUnits (extensible): Common UCUM units for recording Vital Signs. | ||||
![]() ![]() |
SC | 0..1 | CodeableConcept | Why the 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..* | 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. | |||||
![]() ![]() |
0..1 | Reference(Specimen) | Specimen used for this observation | |||||
![]() ![]() |
0..1 | Reference(Device | DeviceMetric) | (Measurement) Device | |||||
![]() ![]() |
C | 0..* | BackboneElement | Provides guide for interpretation Constraints: obs-3 | ||||
![]() ![]() ![]() |
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(QuestionnaireResponse | MolecularSequence | Vital Signs Profile) | Used when reporting vital signs panel components | ||||
![]() ![]() |
Σ | 0..* | Reference(DocumentReference | ImagingStudy | Media | QuestionnaireResponse | MolecularSequence | Vital Signs Profile) | Related measurements the observation is made from | ||||
![]() ![]() |
SΣC | 0..* | BackboneElement | Component observations Constraints: vs-3 | ||||
![]() ![]() ![]() |
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 | ||||
![]() ![]() ![]() |
SΣ | 1..1 | CodeableConcept | Coded vital sign result type Binding: Vital Sign Result Type (extensible): Vital sign result types | ||||
![]() ![]() ![]() |
SΣC | 0..1 | Vital Sign Component Value Binding: VitalSignsUnits (extensible): Common UCUM units for recording Vital Signs. | |||||
![]() ![]() ![]() ![]() |
Quantity S | |||||||
![]() ![]() ![]() ![]() |
CodeableConcept | |||||||
![]() ![]() ![]() ![]() |
string | |||||||
![]() ![]() ![]() ![]() |
boolean | |||||||
![]() ![]() ![]() ![]() |
integer | |||||||
![]() ![]() ![]() ![]() |
Range | |||||||
![]() ![]() ![]() ![]() |
Ratio | |||||||
![]() ![]() ![]() ![]() |
SampledData | |||||||
![]() ![]() ![]() ![]() |
time | |||||||
![]() ![]() ![]() ![]() |
dateTime | |||||||
![]() ![]() ![]() ![]() |
Period | |||||||
![]() ![]() ![]() |
SC | 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:VSCat | Base | preferred | Observation Category Codes | 📦4.0.1 | FHIR Std. |
| Observation.code | Base | extensible | https://vsac.nlm.nih.gov/valueset/2.16.840.1.113762.1.4.1295.1/expansion | Not State | Unknown |
| Observation.value[x] | Base | extensible | Vital Signs Units | 📍4.0.1 | FHIR Std. |
| 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 | extensible |
Vital Sign Result Type
|
📦20240322 | VSAC v0.23 |
| Observation.component.value[x] | Base | extensible | Vital Signs Units | 📍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}$')
|
| vs-1 | error | Observation.effective[x] | if Observation.effective[x] is dateTime and has a value then that value shall be precise to the day |
$this is dateTime implies $this.toString().length() >= 10
|
| vs-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())
|
| vs-3 | error | Observation.component | If there is no a value a data absent reason must be present |
value.exists() or dataAbsentReason.exists()
|
This structure is derived from USCoreVitalSignsProfile
Summary
Mandatory: 0 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..* | USCoreVitalSignsProfile(8.0.0) | US Core Vital Signs Profile Constraints: obs-6, obs-7, vs-2 |
![]() ![]() |
Σ | 0..1 | Meta | Metadata about the resource |
![]() ![]() ![]() |
Σ | 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) |
![]() ![]() |
S | 1..* | CodeableConcept | Classification of type of observation Slice: Unordered, Open by value:coding.code, value:coding.system Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories. |
![]() ![]() ![]() |
S | 1..1 | CodeableConcept | Classification of type of observation Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories. |
![]() ![]() ![]() ![]() |
SΣ | 1..* | Coding | Code defined by a terminology system |
![]() ![]() ![]() ![]() ![]() |
SΣ | 1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org/CodeSystem/observation-category |
![]() ![]() ![]() ![]() ![]() |
SΣ | 1..1 | code | Symbol in syntax defined by the system Fixed Value: vital-signs |
![]() ![]() |
SΣ | 1..1 | CodeableConcept | Coded vital sign result type Binding: https://vsac.nlm.nih.gov/valueset/2.16.840.1.113762.1.4.1295.1/expansion (extensible) |
![]() ![]() |
SΣ | 1..1 | Reference(US Core Patient Profile(8.0.0)) | Who and/or what the observation is about |
![]() ![]() |
SΣC | 1..1 | Often just a dateTime for Vital Signs Constraints: vs-1 | |
![]() ![]() ![]() |
dateTime S | |||
![]() ![]() ![]() |
Period | |||
![]() ![]() |
SΣ | 0..* | Reference(US Core Practitioner Profile(8.0.0) | 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 | Quantity S | Vital Signs Value Binding: VitalSignsUnits (extensible): Common UCUM units for recording Vital Signs. |
![]() ![]() |
SC | 0..1 | CodeableConcept | Why the result is missing Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing. |
![]() ![]() |
SΣC | 0..* | BackboneElement | Component observations Constraints: vs-3 |
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() |
SΣ | 1..1 | CodeableConcept | Coded vital sign result type Binding: Vital Sign Result Type (extensible): Vital sign result types |
![]() ![]() ![]() |
SΣC | 0..1 | Vital Sign Component Value Binding: VitalSignsUnits (extensible): Common UCUM units for recording Vital Signs. | |
![]() ![]() ![]() ![]() |
Quantity S | |||
![]() ![]() ![]() ![]() |
CodeableConcept | |||
![]() ![]() ![]() ![]() |
string | |||
![]() ![]() ![]() ![]() |
boolean | |||
![]() ![]() ![]() ![]() |
integer | |||
![]() ![]() ![]() ![]() |
Range | |||
![]() ![]() ![]() ![]() |
Ratio | |||
![]() ![]() ![]() ![]() |
SampledData | |||
![]() ![]() ![]() ![]() |
time | |||
![]() ![]() ![]() ![]() |
dateTime | |||
![]() ![]() ![]() ![]() |
Period | |||
![]() ![]() ![]() |
SC | 0..1 | CodeableConcept | Why the component result is missing Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing. |
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:VSCat | Base | preferred | Observation Category Codes | 📦4.0.1 | FHIR Std. |
| Observation.code | Base | extensible | https://vsac.nlm.nih.gov/valueset/2.16.840.1.113762.1.4.1295.1/expansion | Not State | Unknown |
| Observation.value[x] | Base | extensible | Vital Signs Units | 📍4.0.1 | FHIR Std. |
| Observation.dataAbsentReason | Base | extensible | DataAbsentReason | 📦4.0.1 | FHIR Std. |
| Observation.component.code | Base | extensible |
Vital Sign Result Type
|
📦20240322 | VSAC v0.23 |
| Observation.component.value[x] | Base | extensible | Vital Signs Units | 📍4.0.1 | FHIR Std. |
| Observation.component.dataAbsentReason | Base | extensible | DataAbsentReason | 📦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-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}$')
|
| vs-1 | error | Observation.effective[x] | if Observation.effective[x] is dateTime and has a value then that value shall be precise to the day |
$this is dateTime implies $this.toString().length() >= 10
|
| vs-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())
|
| vs-3 | error | Observation.component | If there is no a value a data absent reason must be present |
value.exists() or dataAbsentReason.exists()
|
Differential View
This structure is derived from USCoreVitalSignsProfile
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
0..* | USCoreVitalSignsProfile(8.0.0) | US Core Vital Signs Profile | |
![]() ![]() |
||||
![]() ![]() ![]() |
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 | CodeableConcept | Coded vital sign result type Binding: https://vsac.nlm.nih.gov/valueset/2.16.840.1.113762.1.4.1295.1/expansion (extensible) | |
![]() ![]() |
0..1 | Quantity | Vital Signs Value | |
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| Observation.code | Base | extensible | https://vsac.nlm.nih.gov/valueset/2.16.840.1.113762.1.4.1295.1/expansion | Not State | Unknown |
| 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..* | USCoreVitalSignsProfile(8.0.0) | US Core Vital Signs Profile Constraints: obs-6, obs-7, vs-2 | ||||
![]() ![]() |
Σ | 0..1 | id | Logical id of this artifact | ||||
![]() ![]() |
Σ | 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 | ||||
![]() ![]() ![]() |
Σ | 0..1 | instant | When the resource version 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) | ||||
![]() ![]() |
S | 1..* | CodeableConcept | Classification of type of observation Slice: Unordered, Open by value:coding.code, value:coding.system Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories. | ||||
![]() ![]() ![]() |
S | 1..1 | CodeableConcept | Classification of type of observation Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories. | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() |
SΣ | 1..* | Coding | Code defined by a terminology system | ||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() ![]() |
SΣ | 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 | ||||
![]() ![]() ![]() ![]() ![]() |
SΣ | 1..1 | code | Symbol in syntax defined by the system Fixed Value: vital-signs | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 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 | Coded vital sign result type Binding: https://vsac.nlm.nih.gov/valueset/2.16.840.1.113762.1.4.1295.1/expansion (extensible) | ||||
![]() ![]() |
SΣ | 1..1 | Reference(US Core Patient 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 | ||||
![]() ![]() |
Σ | 0..1 | Reference(Encounter) | Healthcare event during which this observation is made | ||||
![]() ![]() |
SΣC | 1..1 | Often just a dateTime for Vital Signs Constraints: vs-1 | |||||
![]() ![]() ![]() |
dateTime S | |||||||
![]() ![]() ![]() |
Period | |||||||
![]() ![]() |
Σ | 0..1 | instant | Date/Time this version was made available | ||||
![]() ![]() |
SΣ | 0..* | Reference(US Core Practitioner Profile(8.0.0) | 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 | Quantity S | Vital Signs Value Binding: VitalSignsUnits (extensible): Common UCUM units for recording Vital Signs. | ||||
![]() ![]() |
SC | 0..1 | CodeableConcept | Why the 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..* | 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. | |||||
![]() ![]() |
0..1 | Reference(Specimen) | Specimen used for this observation | |||||
![]() ![]() |
0..1 | Reference(Device | DeviceMetric) | (Measurement) Device | |||||
![]() ![]() |
C | 0..* | BackboneElement | Provides guide for interpretation Constraints: obs-3 | ||||
![]() ![]() ![]() |
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(QuestionnaireResponse | MolecularSequence | Vital Signs Profile) | Used when reporting vital signs panel components | ||||
![]() ![]() |
Σ | 0..* | Reference(DocumentReference | ImagingStudy | Media | QuestionnaireResponse | MolecularSequence | Vital Signs Profile) | Related measurements the observation is made from | ||||
![]() ![]() |
SΣC | 0..* | BackboneElement | Component observations Constraints: vs-3 | ||||
![]() ![]() ![]() |
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 | ||||
![]() ![]() ![]() |
SΣ | 1..1 | CodeableConcept | Coded vital sign result type Binding: Vital Sign Result Type (extensible): Vital sign result types | ||||
![]() ![]() ![]() |
SΣC | 0..1 | Vital Sign Component Value Binding: VitalSignsUnits (extensible): Common UCUM units for recording Vital Signs. | |||||
![]() ![]() ![]() ![]() |
Quantity S | |||||||
![]() ![]() ![]() ![]() |
CodeableConcept | |||||||
![]() ![]() ![]() ![]() |
string | |||||||
![]() ![]() ![]() ![]() |
boolean | |||||||
![]() ![]() ![]() ![]() |
integer | |||||||
![]() ![]() ![]() ![]() |
Range | |||||||
![]() ![]() ![]() ![]() |
Ratio | |||||||
![]() ![]() ![]() ![]() |
SampledData | |||||||
![]() ![]() ![]() ![]() |
time | |||||||
![]() ![]() ![]() ![]() |
dateTime | |||||||
![]() ![]() ![]() ![]() |
Period | |||||||
![]() ![]() ![]() |
SC | 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:VSCat | Base | preferred | Observation Category Codes | 📦4.0.1 | FHIR Std. |
| Observation.code | Base | extensible | https://vsac.nlm.nih.gov/valueset/2.16.840.1.113762.1.4.1295.1/expansion | Not State | Unknown |
| Observation.value[x] | Base | extensible | Vital Signs Units | 📍4.0.1 | FHIR Std. |
| 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 | extensible |
Vital Sign Result Type
|
📦20240322 | VSAC v0.23 |
| Observation.component.value[x] | Base | extensible | Vital Signs Units | 📍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}$')
|
| vs-1 | error | Observation.effective[x] | if Observation.effective[x] is dateTime and has a value then that value shall be precise to the day |
$this is dateTime implies $this.toString().length() >= 10
|
| vs-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())
|
| vs-3 | error | Observation.component | If there is no a value a data absent reason must be present |
value.exists() or dataAbsentReason.exists()
|
This structure is derived from USCoreVitalSignsProfile
Summary
Mandatory: 0 element(4 nested mandatory elements)
Must-Support: 1 element
Slices
This structure defines the following Slices:
Other representations of profile: CSV, Excel, Schematron
Vital Signs values can be reported in many forms. CIBMTR currently supports only "valueQuantity" and does not support other value[x] data types (e.g., valueString, valueCodeableConcept).
Vital sign values SHALL be reported using UCUM units as defined by the US Core Vital Signs profile. Client systems SHALL ensure that numeric values and units are aligned to avoid misinterpretation or validation errors.
Example: valueQuantity using UCUM units
"valueQuantity" : {
"value" : 65.899999999999991,
"unit" : "in",
"system" : "http://unitsofmeasure.org",
"code" : "[in_i]"
}
One code in observation.code must have a fixed Observation.code.coding.code provided in the FHIR core specification vital signs table. For example, the fixed code 8302-2 is required in body height fhir data,
Each vital signs Observation SHALL include a LOINC code in Observation.code.coding.code that corresponds to one of the fixed codes defined in the FHIR core Vital Signs table. The required LOINC code identifies the type of vital sign being reported.
For example, a Body Height observation SHALL include the fixed LOINC code
8302-2:
"coding" : [{
"system" : "http://loinc.org",
"code" : "8302-2",
"display" : "Body height"
}]
An Observation MAY include additional codes in Observation.code.coding that further qualify, translate, or map to the primary vital sign code. Examples include:
-a local system-specific code -a more specific LOINC code in addition to the fixed code
For example, a Body Weight observation may include both the fixed code 29463-7 (Body weight) and a more specific code such as 3141-9 (Body weight Measured):
"coding" : [
{"system":"http://loinc.org",
"code":"29463-7",
"display":"Body weight"},
{"system":"http://loinc.org",
"code":"3141-9",
"display":"Body weight Measured"}
]
A code system value SHOULD be supplied for each additional code.