This is the Continuous Integration Build of FHIR (will be incorrect/inconsistent at times).
See the Directory of published versions
Orders and Observations Work Group | Maturity Level: 0 | Trial Use | Use Context: Any |
The canonical URL for this profile is:
http://hl7.org/fhir/StructureDefinition/vitalsigns
FHIR Vital Signs Base Profile
This profile was published on Sat, Aug 11, 2018 00:00+0000 as a draft by HL7 International / Orders and Observations.
Description of Profiles, Differentials, Snapshots, and how the XML and JSON presentations work.
This structure is derived from Observation.
Summary
One status in Observation.status
which has a required binding to:
A category in Observation.category
which must have:
Observation.category.coding.system
="http://terminology.hl7.org/CodeSystem/observation-category"Observation.category.coding.code
= "vital-signs"A code in Observation.code
Observation.code.coding.system
= "http://loinc.org""Observation.code.coding.code
which has an extensible binding to:
One patient in Observation.subject
A date and time in effectiveDateTime
or effectivePeriod
Either one Observation.value[x]
or a populated component (with component.code
and component.value[x]
), if there is no value, one code in Observation.DataAbsentReason
When using a panel code to group component observations (Note: See
the comments regarding blood pressure in the table above), one or
more Observation.component.code
each of which must have:
Observation.component.code.coding.system
=""http://loinc.org""
Observation.code.coding.code
which has an extensible binding to:
Either one Observation.component.valueQuantity
or, if there is
no value, one code in Observation.component.DataAbsentReason
When using a panel code to group observations, one or more reference
to Vitals Signs Observations in Observation.related.target
Observation.related.type
= "has-member""Mandatory: 6 elements (+1 nested mandatory element)
Must-Support: 14 elements
Slices
This structure defines the following Slices:
This indicates the differences between this profile and the base Observation structure.
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Observation | C | 0..* | Observation | FHIR Vital Signs Base Profile vs-2: If there is no component or hasMember element then either a value[x] or a data absent reason must be present. |
status | S | 1..1 | code | registered | specimen-in-process | preliminary | final | amended | corrected | appended | cancelled | entered-in-error | unknown | cannot-be-obtained Binding: Observation Status (required) |
Slices for category | S | 1..* | CodeableConcept | Classification of type of observation Slice: Unordered, Open by pattern:$this Binding: Vital Signs Category (preferred): This value set includes the required vital sign interoperability categories. |
category:VSCat | S | 1..1 | CodeableConcept | Classification of type of observation Required Pattern: At least the following |
coding | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex) | |
system | 1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org/CodeSystem/observation-category | |
code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: vital-signs | |
code | S | 1..1 | CodeableConcept | Vital Sign Measurement Binding: Vital Signs Measurement (preferred): This identifies the vital sign measurement. |
subject | S | 1..1 | Reference(Patient) | Who and/or what the observation is about |
effective[x] | SC | 1..1 | Often just a dateTime for Vital Signs vs-1: if Observation.effective[x] is dateTime and has a value then that value shall be precise to the day | |
effectiveDateTime | dateTime | |||
effectivePeriod | Period | |||
value[x] | SC | 0..1 | Quantity, CodeableConcept, string, boolean, integer, Range, Ratio, SampledData, time, dateTime, Period, Attachment, Reference(MolecularSequence) | Vital Signs value are recorded using the Quantity data type. For supporting observations such as Cuff size could use other datatypes such as CodeableConcept. |
valueQuantity | S | 0..1 | Quantity | Vital Sign Value recorded with UCUM (preferred) Binding: Vital Signs Units (preferred): Commonly encountered UCUM units for recording Vital Signs. |
dataAbsentReason | SC | 0..1 | CodeableConcept | Why the result value is missing |
hasMember | 0..* | Reference(QuestionnaireResponse | MolecularSequence | Vital Signs Base Profile) | Used when reporting vital signs panel components | |
derivedFrom | 0..* | Reference(DocumentReference | ImagingStudy | QuestionnaireResponse | MolecularSequence | Vital Signs Base Profile) | Related resource from which the observation is made | |
component | SC | 0..* | BackboneElement | Used when reporting systolic and diastolic blood pressure. vs-3: If there is no a value a data absent reason must be present |
code | S | 1..1 | CodeableConcept | Type of component observation (code / type) Binding: Vital Signs Component Measurement (preferred): This identifies the vital sign component measurement. |
value[x] | SC | 0..1 | Quantity, CodeableConcept, string, boolean, integer, Range, Ratio, SampledData, time, dateTime, Period, Attachment, Reference(MolecularSequence) | Vital Sign Value |
valueQuantity | S | 0..1 | Quantity | Vital Sign Component Value recorded with UCUM (preferred) Binding: Vital Signs Units (preferred): Commonly encountered UCUM units for recording Vital Signs Components. |
dataAbsentReason | SC | 0..1 | CodeableConcept | Why the component result value is missing |
Documentation for this format |
This provides the consolidated view (aka snapshot) of the profile after applying the changes in this profile to the base Observation structure.
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
Observation | C | 0..* | Observation | FHIR Vital Signs Base Profile obs-6: dataAbsentReason SHALL only be present if Observation.value[x] is not present obs-7: If Observation.component.code is the same as Observation.code, then Observation.value SHALL NOT be present (the Observation.component.value[x] holds the value). obs-8: bodyStructure SHALL only be present if Observation.bodySite is not present vs-2: If there is no component or hasMember element then either a value[x] or a data absent reason must be present. | ||||
id | Σ | 0..1 | id | Logical id of this artifact | ||||
meta | Σ | 0..1 | Meta | Metadata about the resource | ||||
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
language | 0..1 | code | Language of the resource content Binding: All Languages (required): IETF language tag for a human language
| |||||
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |||||
contained | 0..* | Resource | Contained, inline Resources | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored | ||||
identifier | Σ | 0..* | Identifier | Business Identifier for observation | ||||
instantiates[x] | Σ | 0..1 | canonical(ObservationDefinition), Reference(ObservationDefinition) | Instantiates FHIR ObservationDefinition | ||||
basedOn | Σ | 0..* | Reference(CarePlan | DeviceRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest) | Fulfills plan, proposal or order | ||||
triggeredBy | 0..* | BackboneElement | Triggering observation(s) | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
observation | Σ | 1..1 | Reference(Observation) | Triggering observation | ||||
type | Σ | 1..1 | code | reflex | repeat | re-run Binding: triggered Bytype (required): The type of TriggeredBy Observation. | ||||
reason | 0..1 | string | Reason that the observation was triggered | |||||
partOf | Σ | 0..* | Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Immunization | ImagingStudy | GenomicStudy) | Part of referenced event | ||||
status | ?!SΣ | 1..1 | code | registered | specimen-in-process | preliminary | final | amended | corrected | appended | cancelled | entered-in-error | unknown | cannot-be-obtained Binding: Observation Status (required) | ||||
Slices for category | S | 1..* | CodeableConcept | Classification of type of observation Slice: Unordered, Open by pattern:$this Binding: Vital Signs Category (preferred): This value set includes the required vital sign interoperability categories. | ||||
category:VSCat | S | 1..1 | CodeableConcept | Classification of type of observation Binding: Observation Category Codes (preferred): Codes for high level observation categories. Required Pattern: At least the following | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
coding | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex) | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
system | 1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org/CodeSystem/observation-category | |||||
version | 0..1 | string | Version of the system - if relevant | |||||
code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: vital-signs | |||||
display | 0..1 | string | Representation defined by the system | |||||
userSelected | 0..1 | boolean | If this coding was chosen directly by the user | |||||
text | 0..1 | string | Plain text representation of the concept | |||||
code | SΣC | 1..1 | CodeableConcept | Vital Sign Measurement Binding: Vital Signs Measurement (preferred): This identifies the vital sign measurement. | ||||
subject | SΣ | 1..1 | Reference(Patient) | Who and/or what the observation is about | ||||
focus | ?!Σ | 0..* | Reference(Resource) | What the observation is about, when it is not about the subject of record | ||||
encounter | Σ | 0..1 | Reference(Encounter) | Healthcare event during which this observation is made | ||||
effective[x] | SΣC | 1..1 | Often just a dateTime for Vital Signs vs-1: if Observation.effective[x] is dateTime and has a value then that value shall be precise to the day | |||||
effectiveDateTime | dateTime | |||||||
effectivePeriod | Period | |||||||
issued | Σ | 0..1 | instant | Date/Time this version was made available | ||||
performer | Σ | 0..* | Reference(Practitioner | PractitionerRole | Organization | CareTeam | Patient | RelatedPerson) | Who is responsible for the observation | ||||
Slices for value[x] | SΣC | 0..1 | Vital Signs value are recorded using the Quantity data type. For supporting observations such as Cuff size could use other datatypes such as CodeableConcept. Slice: Unordered, Open by type:$this | |||||
valueQuantity | Quantity | |||||||
valueCodeableConcept | CodeableConcept | |||||||
valueString | string | |||||||
valueBoolean | boolean | |||||||
valueInteger | integer | |||||||
valueRange | Range | |||||||
valueRatio | Ratio | |||||||
valueSampledData | SampledData | |||||||
valueTime | time | |||||||
valueDateTime | dateTime | |||||||
valuePeriod | Period | |||||||
valueAttachment | Attachment | |||||||
valueReference | Reference(MolecularSequence) | |||||||
value[x]:valueQuantity | SΣC | 0..1 | Quantity | Vital Sign Value recorded with UCUM (preferred) Binding: Vital Signs Units (preferred): Commonly encountered UCUM units for recording Vital Signs. | ||||
dataAbsentReason | SC | 0..1 | CodeableConcept | Why the result value is missing Binding: Data Absent Reason (extensible): Codes specifying why the result (Observation.value[x]) is missing. | ||||
interpretation | 0..* | CodeableConcept | High, low, normal, etc Binding: Observation Interpretation Codes (extensible): Codes identifying interpretations of observations. | |||||
note | 0..* | Annotation | Comments about the observation | |||||
bodySite | C | 0..1 | CodeableConcept | Observed body part Binding: SNOMED CT Body Structures (example): SNOMED CT Body site concepts | ||||
bodyStructure | C | 0..1 | Reference(BodyStructure) | Observed body structure | ||||
method | 0..1 | CodeableConcept | How it was done Binding: Observation Methods (example): Methods for simple observations. | |||||
specimen | C | 0..1 | Reference(Specimen | Group) | Specimen used for this observation obs-9: If Observation.specimen is a reference to Group, the group can only have specimens | ||||
device | 0..1 | Reference(Device | DeviceMetric) | A reference to the device that generates the measurements or the device settings for the device | |||||
referenceRange | C | 0..* | BackboneElement | Provides guide for interpretation obs-3: Must have at least a low or a high or text | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
low | C | 0..1 | SimpleQuantity | Low Range, if relevant | ||||
high | C | 0..1 | SimpleQuantity | High Range, if relevant | ||||
normalValue | 0..1 | CodeableConcept | Normal value, if relevant Binding: Observation Reference Range Normal Value Codes (extensible): Codes identifying the normal value of the observation. | |||||
type | 0..1 | CodeableConcept | Reference range qualifier Binding: Observation Reference Range Meaning Codes (preferred): Code for the meaning of a reference range. | |||||
appliesTo | 0..* | CodeableConcept | Reference range population Binding: Observation Reference Range Applies To Codes (example): Codes identifying the population the reference range applies to. | |||||
age | 0..1 | Range | Applicable age range, if relevant | |||||
text | C | 0..1 | markdown | Text based reference range in an observation | ||||
hasMember | Σ | 0..* | Reference(QuestionnaireResponse | MolecularSequence | Vital Signs Base Profile) | Used when reporting vital signs panel components | ||||
derivedFrom | Σ | 0..* | Reference(DocumentReference | ImagingStudy | QuestionnaireResponse | MolecularSequence | Vital Signs Base Profile) | Related resource from which the observation is made | ||||
component | SΣC | 0..* | BackboneElement | Used when reporting systolic and diastolic blood pressure. vs-3: If there is no a value a data absent reason must be present | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
code | SΣC | 1..1 | CodeableConcept | Type of component observation (code / type) Binding: Vital Signs Component Measurement (preferred): This identifies the vital sign component measurement. | ||||
Slices for value[x] | SΣC | 0..1 | Vital Sign Value Slice: Unordered, Open by type:$this | |||||
valueQuantity | Quantity | |||||||
valueCodeableConcept | CodeableConcept | |||||||
valueString | string | |||||||
valueBoolean | boolean | |||||||
valueInteger | integer | |||||||
valueRange | Range | |||||||
valueRatio | Ratio | |||||||
valueSampledData | SampledData | |||||||
valueTime | time | |||||||
valueDateTime | dateTime | |||||||
valuePeriod | Period | |||||||
valueAttachment | Attachment | |||||||
valueReference | Reference(MolecularSequence) | |||||||
value[x]:valueQuantity | SΣ | 0..1 | Quantity | Vital Sign Component Value recorded with UCUM (preferred) Binding: Vital Signs Units (preferred): Commonly encountered UCUM units for recording Vital Signs Components. | ||||
dataAbsentReason | SC | 0..1 | CodeableConcept | Why the component result value is missing Binding: Data Absent Reason (extensible): Codes specifying why the result (Observation.value[x]) is missing. | ||||
interpretation | 0..* | CodeableConcept | High, low, normal, etc Binding: Observation Interpretation Codes (extensible): Codes identifying interpretations of observations. | |||||
referenceRange | 0..* | See referenceRange (Observation) | Provides guide for interpretation of component result value | |||||
Documentation for this format |
<!-- Observationvitalsignsbase --> <Observation xmlns="http://hl7.org/fhir" > <!-- from Element: extension --> <id value="[id]"/><!-- 0..1 Logical id of this artifact --> <meta><!-- I 0..1 Meta Metadata about the resource --></meta> <implicitRules value="[uri]"/><!-- I 0..1 A set of rules under which this content was created --> <language value="[code]"/><!-- I 0..1 Language of the resource content --> <text><!-- I 0..1 Narrative Text summary of the resource, for human interpretation --></text> <contained><!-- 0..* Resource Contained, inline Resources --></contained> <modifierExtension><!-- I 0..* Extension Extensions that cannot be ignored --></modifierExtension> <identifier><!-- I 0..* Identifier Business Identifier for observation --></identifier> <instantiates[x]><!-- I 0..1 canonical|Reference(ObservationDefinition) Instantiates FHIR ObservationDefinition --></instantiates[x]> <basedOn><!-- I 0..* Reference(CarePlan) Fulfills plan, proposal or order --></basedOn> <triggeredBy> I 0..* BackboneElement <!-- I 0..* Triggering observation(s) --> <modifierExtension><!-- I 0..* Extension Extensions that cannot be ignored even if unrecognized --></modifierExtension> <observation><!-- I 1..1 Reference(Observation) Triggering observation --></observation> <type value="[code]"/><!-- I 1..1 reflex | repeat | re-run --> <reason value="[string]"/><!-- I 0..1 Reason that the observation was triggered --> </triggeredBy> <partOf><!-- I 0..* Reference(MedicationAdministration) Part of referenced event --></partOf> <status value="[code]"/><!-- I 1..1 registered | specimen-in-process | preliminary | final | amended | corrected | appended | cancelled | entered-in-error | unknown | cannot-be-obtained --> <-- category sliced by pattern:$this in the specified orderOpen--> <category><!-- I 1..1 CodeableConcept Classification of type of observation --></category> <code><!-- I 1..1 CodeableConcept Vital Sign Measurement --></code> <subject><!-- I 1..1 Reference(Patient) Who and/or what the observation is about --></subject> <focus><!-- I 0..* Reference(Resource) What the observation is about, when it is not about the subject of record --></focus> <encounter><!-- I 0..1 Reference(Encounter) Healthcare event during which this observation is made --></encounter> <effective[x]><!-- I 1..1 dateTime|Period Often just a dateTime for Vital Signs --></effective[x]> <issued value="[instant]"/><!-- I 0..1 Date/Time this version was made available --> <performer><!-- I 0..* Reference(Practitioner) Who is responsible for the observation --></performer> <-- value[x] sliced by type:$this in the specified orderOpen--> <valueQuantity><!-- I 0..1 Quantity Vital Sign Value recorded with UCUM (preferred) --></valueQuantity> <dataAbsentReason><!-- I 0..1 CodeableConcept Why the result value is missing --></dataAbsentReason> <interpretation><!-- I 0..* CodeableConcept High, low, normal, etc --></interpretation> <note><!-- I 0..* Annotation Comments about the observation --></note> <bodySite><!-- I 0..1 CodeableConcept Observed body part --></bodySite> <bodyStructure><!-- I 0..1 Reference(BodyStructure) Observed body structure --></bodyStructure> <method><!-- I 0..1 CodeableConcept How it was done --></method> <specimen><!-- I 0..1 Reference(Specimen) Specimen used for this observation --></specimen> <device><!-- I 0..1 Reference(Device) A reference to the device that generates the measurements or the device settings for the device --></device> <referenceRange> I 0..* BackboneElement <!-- I 0..* Provides guide for interpretation --> <modifierExtension><!-- I 0..* Extension Extensions that cannot be ignored even if unrecognized --></modifierExtension> <low><!-- I 0..1 Quantity Low Range, if relevant --></low> <high><!-- I 0..1 Quantity High Range, if relevant --></high> <normalValue><!-- I 0..1 CodeableConcept Normal value, if relevant --></normalValue> <type><!-- I 0..1 CodeableConcept Reference range qualifier --></type> <appliesTo><!-- I 0..* CodeableConcept Reference range population --></appliesTo> <age><!-- I 0..1 Range Applicable age range, if relevant --></age> <text value="[markdown]"/><!-- I 0..1 Text based reference range in an observation --> </referenceRange> <hasMember><!-- I 0..* Reference(QuestionnaireResponse) Used when reporting vital signs panel components --></hasMember> <derivedFrom><!-- I 0..* Reference(DocumentReference) Related resource from which the observation is made --></derivedFrom> <component> I 0..* BackboneElement <!-- I 0..* Used when reporting systolic and diastolic blood pressure. --> <modifierExtension><!-- I 0..* Extension Extensions that cannot be ignored even if unrecognized --></modifierExtension> <code><!-- I 1..1 CodeableConcept Type of component observation (code / type) --></code> <-- value[x] sliced by type:$this in the specified orderOpen--> <valueQuantity><!-- I 0..1 Quantity Vital Sign Component Value recorded with UCUM (preferred) --></valueQuantity> <dataAbsentReason><!-- I 0..1 CodeableConcept Why the component result value is missing --></dataAbsentReason> <interpretation><!-- I 0..* CodeableConcept High, low, normal, etc --></interpretation> <referenceRange><!-- See http://hl7.org/fhir/StructureDefinition/Observation#Observation.referenceRange Provides guide for interpretation of component result value --></referenceRange> </component> </Observation>
{ // Observationvitalsignsbase // from Element: extension "meta" : { Meta }, // IMetadata about the resource "implicitRules" : "<uri>", // IA set of rules under which this content was created "language" : "<code>", // ILanguage of the resource content "text" : { Narrative }, // IText summary of the resource, for human interpretation "contained" : [{ Resource }], //Contained, inline Resources "modifierExtension" : [{ Extension }], // IExtensions that cannot be ignored "identifier" : [{ Identifier }], // IBusiness Identifier for observation // value[x]: Instantiates FHIR ObservationDefinition. One of these 2: "instantiatesCanonical" : "<canonical>", // IInstantiates FHIR ObservationDefinition "instantiatesReference" : { Reference(ObservationDefinition) }, // IInstantiates FHIR ObservationDefinition "basedOn" : [{ Reference(CarePlan) }], // IFulfills plan, proposal or order "triggeredBy" : [{ BackboneElement }], // ITriggering observation(s) "partOf" : [{ Reference(MedicationAdministration) }], // IPart of referenced event "status" : "<code>", // I R! registered | specimen-in-process | preliminary | final | amended | corrected | appended | cancelled | entered-in-error | unknown | cannot-be-obtained "category" : [ // sliced by pattern:$this in the specified order, Open { // Classification of type of observation // I R! // from Element: extension } ], "code" : { CodeableConcept }, // I R! Vital Sign Measurement "subject" : { Reference(Patient) }, // I R! Who and/or what the observation is about "focus" : [{ Reference(Resource) }], // IWhat the observation is about, when it is not about the subject of record "encounter" : { Reference(Encounter) }, // IHealthcare event during which this observation is made // value[x]: Often just a dateTime for Vital Signs. One of these 2: "effectiveDateTime" : "<dateTime>", // I R! Often just a dateTime for Vital Signs "effectivePeriod" : { Period }, // I R! Often just a dateTime for Vital Signs "issued" : "<instant>", // IDate/Time this version was made available "performer" : [{ Reference(Practitioner) }], // IWho is responsible for the observation "valueQuantity" : [ // sliced by type:$this in the specified order, Open { // Vital Sign Value recorded with UCUM (preferred) // I // from Element: extension } ], "dataAbsentReason" : { CodeableConcept }, // IWhy the result value is missing "interpretation" : [{ CodeableConcept }], // IHigh, low, normal, etc "note" : [{ Annotation }], // IComments about the observation "bodySite" : { CodeableConcept }, // IObserved body part "bodyStructure" : { Reference(BodyStructure) }, // IObserved body structure "method" : { CodeableConcept }, // IHow it was done "specimen" : { Reference(Specimen) }, // ISpecimen used for this observation "device" : { Reference(Device) }, // IA reference to the device that generates the measurements or the device settings for the device "referenceRange" : [{ BackboneElement }], // IProvides guide for interpretation "hasMember" : [{ Reference(QuestionnaireResponse) }], // IUsed when reporting vital signs panel components "derivedFrom" : [{ Reference(DocumentReference) }], // IRelated resource from which the observation is made "component" : [{ BackboneElement }], // IUsed when reporting systolic and diastolic blood pressure. }
This structure is derived from Observation.
Summary
One status in Observation.status
which has a required binding to:
A category in Observation.category
which must have:
Observation.category.coding.system
="http://terminology.hl7.org/CodeSystem/observation-category"Observation.category.coding.code
= "vital-signs"A code in Observation.code
Observation.code.coding.system
= "http://loinc.org""Observation.code.coding.code
which has an extensible binding to:
One patient in Observation.subject
A date and time in effectiveDateTime
or effectivePeriod
Either one Observation.value[x]
or a populated component (with component.code
and component.value[x]
), if there is no value, one code in Observation.DataAbsentReason
When using a panel code to group component observations (Note: See
the comments regarding blood pressure in the table above), one or
more Observation.component.code
each of which must have:
Observation.component.code.coding.system
=""http://loinc.org""
Observation.code.coding.code
which has an extensible binding to:
Either one Observation.component.valueQuantity
or, if there is
no value, one code in Observation.component.DataAbsentReason
When using a panel code to group observations, one or more reference
to Vitals Signs Observations in Observation.related.target
Observation.related.type
= "has-member""Mandatory: 6 elements (+1 nested mandatory element)
Must-Support: 14 elements
Slices
This structure defines the following Slices:
Differential View
This indicates the differences between this profile and the base Observation structure.
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Observation | C | 0..* | Observation | FHIR Vital Signs Base Profile vs-2: If there is no component or hasMember element then either a value[x] or a data absent reason must be present. |
status | S | 1..1 | code | registered | specimen-in-process | preliminary | final | amended | corrected | appended | cancelled | entered-in-error | unknown | cannot-be-obtained Binding: Observation Status (required) |
Slices for category | S | 1..* | CodeableConcept | Classification of type of observation Slice: Unordered, Open by pattern:$this Binding: Vital Signs Category (preferred): This value set includes the required vital sign interoperability categories. |
category:VSCat | S | 1..1 | CodeableConcept | Classification of type of observation Required Pattern: At least the following |
coding | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex) | |
system | 1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org/CodeSystem/observation-category | |
code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: vital-signs | |
code | S | 1..1 | CodeableConcept | Vital Sign Measurement Binding: Vital Signs Measurement (preferred): This identifies the vital sign measurement. |
subject | S | 1..1 | Reference(Patient) | Who and/or what the observation is about |
effective[x] | SC | 1..1 | Often just a dateTime for Vital Signs vs-1: if Observation.effective[x] is dateTime and has a value then that value shall be precise to the day | |
effectiveDateTime | dateTime | |||
effectivePeriod | Period | |||
value[x] | SC | 0..1 | Quantity, CodeableConcept, string, boolean, integer, Range, Ratio, SampledData, time, dateTime, Period, Attachment, Reference(MolecularSequence) | Vital Signs value are recorded using the Quantity data type. For supporting observations such as Cuff size could use other datatypes such as CodeableConcept. |
valueQuantity | S | 0..1 | Quantity | Vital Sign Value recorded with UCUM (preferred) Binding: Vital Signs Units (preferred): Commonly encountered UCUM units for recording Vital Signs. |
dataAbsentReason | SC | 0..1 | CodeableConcept | Why the result value is missing |
hasMember | 0..* | Reference(QuestionnaireResponse | MolecularSequence | Vital Signs Base Profile) | Used when reporting vital signs panel components | |
derivedFrom | 0..* | Reference(DocumentReference | ImagingStudy | QuestionnaireResponse | MolecularSequence | Vital Signs Base Profile) | Related resource from which the observation is made | |
component | SC | 0..* | BackboneElement | Used when reporting systolic and diastolic blood pressure. vs-3: If there is no a value a data absent reason must be present |
code | S | 1..1 | CodeableConcept | Type of component observation (code / type) Binding: Vital Signs Component Measurement (preferred): This identifies the vital sign component measurement. |
value[x] | SC | 0..1 | Quantity, CodeableConcept, string, boolean, integer, Range, Ratio, SampledData, time, dateTime, Period, Attachment, Reference(MolecularSequence) | Vital Sign Value |
valueQuantity | S | 0..1 | Quantity | Vital Sign Component Value recorded with UCUM (preferred) Binding: Vital Signs Units (preferred): Commonly encountered UCUM units for recording Vital Signs Components. |
dataAbsentReason | SC | 0..1 | CodeableConcept | Why the component result value is missing |
Documentation for this format |
Snapshot View
This provides the consolidated view (aka snapshot) of the profile after applying the changes in this profile to the base Observation structure.
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
Observation | C | 0..* | Observation | FHIR Vital Signs Base Profile obs-6: dataAbsentReason SHALL only be present if Observation.value[x] is not present obs-7: If Observation.component.code is the same as Observation.code, then Observation.value SHALL NOT be present (the Observation.component.value[x] holds the value). obs-8: bodyStructure SHALL only be present if Observation.bodySite is not present vs-2: If there is no component or hasMember element then either a value[x] or a data absent reason must be present. | ||||
id | Σ | 0..1 | id | Logical id of this artifact | ||||
meta | Σ | 0..1 | Meta | Metadata about the resource | ||||
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
language | 0..1 | code | Language of the resource content Binding: All Languages (required): IETF language tag for a human language
| |||||
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |||||
contained | 0..* | Resource | Contained, inline Resources | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored | ||||
identifier | Σ | 0..* | Identifier | Business Identifier for observation | ||||
instantiates[x] | Σ | 0..1 | canonical(ObservationDefinition), Reference(ObservationDefinition) | Instantiates FHIR ObservationDefinition | ||||
basedOn | Σ | 0..* | Reference(CarePlan | DeviceRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest) | Fulfills plan, proposal or order | ||||
triggeredBy | 0..* | BackboneElement | Triggering observation(s) | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
observation | Σ | 1..1 | Reference(Observation) | Triggering observation | ||||
type | Σ | 1..1 | code | reflex | repeat | re-run Binding: triggered Bytype (required): The type of TriggeredBy Observation. | ||||
reason | 0..1 | string | Reason that the observation was triggered | |||||
partOf | Σ | 0..* | Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Immunization | ImagingStudy | GenomicStudy) | Part of referenced event | ||||
status | ?!SΣ | 1..1 | code | registered | specimen-in-process | preliminary | final | amended | corrected | appended | cancelled | entered-in-error | unknown | cannot-be-obtained Binding: Observation Status (required) | ||||
Slices for category | S | 1..* | CodeableConcept | Classification of type of observation Slice: Unordered, Open by pattern:$this Binding: Vital Signs Category (preferred): This value set includes the required vital sign interoperability categories. | ||||
category:VSCat | S | 1..1 | CodeableConcept | Classification of type of observation Binding: Observation Category Codes (preferred): Codes for high level observation categories. Required Pattern: At least the following | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
coding | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex) | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
system | 1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org/CodeSystem/observation-category | |||||
version | 0..1 | string | Version of the system - if relevant | |||||
code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: vital-signs | |||||
display | 0..1 | string | Representation defined by the system | |||||
userSelected | 0..1 | boolean | If this coding was chosen directly by the user | |||||
text | 0..1 | string | Plain text representation of the concept | |||||
code | SΣC | 1..1 | CodeableConcept | Vital Sign Measurement Binding: Vital Signs Measurement (preferred): This identifies the vital sign measurement. | ||||
subject | SΣ | 1..1 | Reference(Patient) | Who and/or what the observation is about | ||||
focus | ?!Σ | 0..* | Reference(Resource) | What the observation is about, when it is not about the subject of record | ||||
encounter | Σ | 0..1 | Reference(Encounter) | Healthcare event during which this observation is made | ||||
effective[x] | SΣC | 1..1 | Often just a dateTime for Vital Signs vs-1: if Observation.effective[x] is dateTime and has a value then that value shall be precise to the day | |||||
effectiveDateTime | dateTime | |||||||
effectivePeriod | Period | |||||||
issued | Σ | 0..1 | instant | Date/Time this version was made available | ||||
performer | Σ | 0..* | Reference(Practitioner | PractitionerRole | Organization | CareTeam | Patient | RelatedPerson) | Who is responsible for the observation | ||||
Slices for value[x] | SΣC | 0..1 | Vital Signs value are recorded using the Quantity data type. For supporting observations such as Cuff size could use other datatypes such as CodeableConcept. Slice: Unordered, Open by type:$this | |||||
valueQuantity | Quantity | |||||||
valueCodeableConcept | CodeableConcept | |||||||
valueString | string | |||||||
valueBoolean | boolean | |||||||
valueInteger | integer | |||||||
valueRange | Range | |||||||
valueRatio | Ratio | |||||||
valueSampledData | SampledData | |||||||
valueTime | time | |||||||
valueDateTime | dateTime | |||||||
valuePeriod | Period | |||||||
valueAttachment | Attachment | |||||||
valueReference | Reference(MolecularSequence) | |||||||
value[x]:valueQuantity | SΣC | 0..1 | Quantity | Vital Sign Value recorded with UCUM (preferred) Binding: Vital Signs Units (preferred): Commonly encountered UCUM units for recording Vital Signs. | ||||
dataAbsentReason | SC | 0..1 | CodeableConcept | Why the result value is missing Binding: Data Absent Reason (extensible): Codes specifying why the result (Observation.value[x]) is missing. | ||||
interpretation | 0..* | CodeableConcept | High, low, normal, etc Binding: Observation Interpretation Codes (extensible): Codes identifying interpretations of observations. | |||||
note | 0..* | Annotation | Comments about the observation | |||||
bodySite | C | 0..1 | CodeableConcept | Observed body part Binding: SNOMED CT Body Structures (example): SNOMED CT Body site concepts | ||||
bodyStructure | C | 0..1 | Reference(BodyStructure) | Observed body structure | ||||
method | 0..1 | CodeableConcept | How it was done Binding: Observation Methods (example): Methods for simple observations. | |||||
specimen | C | 0..1 | Reference(Specimen | Group) | Specimen used for this observation obs-9: If Observation.specimen is a reference to Group, the group can only have specimens | ||||
device | 0..1 | Reference(Device | DeviceMetric) | A reference to the device that generates the measurements or the device settings for the device | |||||
referenceRange | C | 0..* | BackboneElement | Provides guide for interpretation obs-3: Must have at least a low or a high or text | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
low | C | 0..1 | SimpleQuantity | Low Range, if relevant | ||||
high | C | 0..1 | SimpleQuantity | High Range, if relevant | ||||
normalValue | 0..1 | CodeableConcept | Normal value, if relevant Binding: Observation Reference Range Normal Value Codes (extensible): Codes identifying the normal value of the observation. | |||||
type | 0..1 | CodeableConcept | Reference range qualifier Binding: Observation Reference Range Meaning Codes (preferred): Code for the meaning of a reference range. | |||||
appliesTo | 0..* | CodeableConcept | Reference range population Binding: Observation Reference Range Applies To Codes (example): Codes identifying the population the reference range applies to. | |||||
age | 0..1 | Range | Applicable age range, if relevant | |||||
text | C | 0..1 | markdown | Text based reference range in an observation | ||||
hasMember | Σ | 0..* | Reference(QuestionnaireResponse | MolecularSequence | Vital Signs Base Profile) | Used when reporting vital signs panel components | ||||
derivedFrom | Σ | 0..* | Reference(DocumentReference | ImagingStudy | QuestionnaireResponse | MolecularSequence | Vital Signs Base Profile) | Related resource from which the observation is made | ||||
component | SΣC | 0..* | BackboneElement | Used when reporting systolic and diastolic blood pressure. vs-3: If there is no a value a data absent reason must be present | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
code | SΣC | 1..1 | CodeableConcept | Type of component observation (code / type) Binding: Vital Signs Component Measurement (preferred): This identifies the vital sign component measurement. | ||||
Slices for value[x] | SΣC | 0..1 | Vital Sign Value Slice: Unordered, Open by type:$this | |||||
valueQuantity | Quantity | |||||||
valueCodeableConcept | CodeableConcept | |||||||
valueString | string | |||||||
valueBoolean | boolean | |||||||
valueInteger | integer | |||||||
valueRange | Range | |||||||
valueRatio | Ratio | |||||||
valueSampledData | SampledData | |||||||
valueTime | time | |||||||
valueDateTime | dateTime | |||||||
valuePeriod | Period | |||||||
valueAttachment | Attachment | |||||||
valueReference | Reference(MolecularSequence) | |||||||
value[x]:valueQuantity | SΣ | 0..1 | Quantity | Vital Sign Component Value recorded with UCUM (preferred) Binding: Vital Signs Units (preferred): Commonly encountered UCUM units for recording Vital Signs Components. | ||||
dataAbsentReason | SC | 0..1 | CodeableConcept | Why the component result value is missing Binding: Data Absent Reason (extensible): Codes specifying why the result (Observation.value[x]) is missing. | ||||
interpretation | 0..* | CodeableConcept | High, low, normal, etc Binding: Observation Interpretation Codes (extensible): Codes identifying interpretations of observations. | |||||
referenceRange | 0..* | See referenceRange (Observation) | Provides guide for interpretation of component result value | |||||
Documentation for this format |
XML Template
<!-- Observationvitalsignsbase --> <Observation xmlns="http://hl7.org/fhir" > <!-- from Element: extension --> <id value="[id]"/><!-- 0..1 Logical id of this artifact --> <meta><!-- I 0..1 Meta Metadata about the resource --></meta> <implicitRules value="[uri]"/><!-- I 0..1 A set of rules under which this content was created --> <language value="[code]"/><!-- I 0..1 Language of the resource content --> <text><!-- I 0..1 Narrative Text summary of the resource, for human interpretation --></text> <contained><!-- 0..* Resource Contained, inline Resources --></contained> <modifierExtension><!-- I 0..* Extension Extensions that cannot be ignored --></modifierExtension> <identifier><!-- I 0..* Identifier Business Identifier for observation --></identifier> <instantiates[x]><!-- I 0..1 canonical|Reference(ObservationDefinition) Instantiates FHIR ObservationDefinition --></instantiates[x]> <basedOn><!-- I 0..* Reference(CarePlan) Fulfills plan, proposal or order --></basedOn> <triggeredBy> I 0..* BackboneElement <!-- I 0..* Triggering observation(s) --> <modifierExtension><!-- I 0..* Extension Extensions that cannot be ignored even if unrecognized --></modifierExtension> <observation><!-- I 1..1 Reference(Observation) Triggering observation --></observation> <type value="[code]"/><!-- I 1..1 reflex | repeat | re-run --> <reason value="[string]"/><!-- I 0..1 Reason that the observation was triggered --> </triggeredBy> <partOf><!-- I 0..* Reference(MedicationAdministration) Part of referenced event --></partOf> <status value="[code]"/><!-- I 1..1 registered | specimen-in-process | preliminary | final | amended | corrected | appended | cancelled | entered-in-error | unknown | cannot-be-obtained --> <-- category sliced by pattern:$this in the specified orderOpen--> <category><!-- I 1..1 CodeableConcept Classification of type of observation --></category> <code><!-- I 1..1 CodeableConcept Vital Sign Measurement --></code> <subject><!-- I 1..1 Reference(Patient) Who and/or what the observation is about --></subject> <focus><!-- I 0..* Reference(Resource) What the observation is about, when it is not about the subject of record --></focus> <encounter><!-- I 0..1 Reference(Encounter) Healthcare event during which this observation is made --></encounter> <effective[x]><!-- I 1..1 dateTime|Period Often just a dateTime for Vital Signs --></effective[x]> <issued value="[instant]"/><!-- I 0..1 Date/Time this version was made available --> <performer><!-- I 0..* Reference(Practitioner) Who is responsible for the observation --></performer> <-- value[x] sliced by type:$this in the specified orderOpen--> <valueQuantity><!-- I 0..1 Quantity Vital Sign Value recorded with UCUM (preferred) --></valueQuantity> <dataAbsentReason><!-- I 0..1 CodeableConcept Why the result value is missing --></dataAbsentReason> <interpretation><!-- I 0..* CodeableConcept High, low, normal, etc --></interpretation> <note><!-- I 0..* Annotation Comments about the observation --></note> <bodySite><!-- I 0..1 CodeableConcept Observed body part --></bodySite> <bodyStructure><!-- I 0..1 Reference(BodyStructure) Observed body structure --></bodyStructure> <method><!-- I 0..1 CodeableConcept How it was done --></method> <specimen><!-- I 0..1 Reference(Specimen) Specimen used for this observation --></specimen> <device><!-- I 0..1 Reference(Device) A reference to the device that generates the measurements or the device settings for the device --></device> <referenceRange> I 0..* BackboneElement <!-- I 0..* Provides guide for interpretation --> <modifierExtension><!-- I 0..* Extension Extensions that cannot be ignored even if unrecognized --></modifierExtension> <low><!-- I 0..1 Quantity Low Range, if relevant --></low> <high><!-- I 0..1 Quantity High Range, if relevant --></high> <normalValue><!-- I 0..1 CodeableConcept Normal value, if relevant --></normalValue> <type><!-- I 0..1 CodeableConcept Reference range qualifier --></type> <appliesTo><!-- I 0..* CodeableConcept Reference range population --></appliesTo> <age><!-- I 0..1 Range Applicable age range, if relevant --></age> <text value="[markdown]"/><!-- I 0..1 Text based reference range in an observation --> </referenceRange> <hasMember><!-- I 0..* Reference(QuestionnaireResponse) Used when reporting vital signs panel components --></hasMember> <derivedFrom><!-- I 0..* Reference(DocumentReference) Related resource from which the observation is made --></derivedFrom> <component> I 0..* BackboneElement <!-- I 0..* Used when reporting systolic and diastolic blood pressure. --> <modifierExtension><!-- I 0..* Extension Extensions that cannot be ignored even if unrecognized --></modifierExtension> <code><!-- I 1..1 CodeableConcept Type of component observation (code / type) --></code> <-- value[x] sliced by type:$this in the specified orderOpen--> <valueQuantity><!-- I 0..1 Quantity Vital Sign Component Value recorded with UCUM (preferred) --></valueQuantity> <dataAbsentReason><!-- I 0..1 CodeableConcept Why the component result value is missing --></dataAbsentReason> <interpretation><!-- I 0..* CodeableConcept High, low, normal, etc --></interpretation> <referenceRange><!-- See http://hl7.org/fhir/StructureDefinition/Observation#Observation.referenceRange Provides guide for interpretation of component result value --></referenceRange> </component> </Observation>
JSON Template
{ // Observationvitalsignsbase // from Element: extension "meta" : { Meta }, // IMetadata about the resource "implicitRules" : "<uri>", // IA set of rules under which this content was created "language" : "<code>", // ILanguage of the resource content "text" : { Narrative }, // IText summary of the resource, for human interpretation "contained" : [{ Resource }], //Contained, inline Resources "modifierExtension" : [{ Extension }], // IExtensions that cannot be ignored "identifier" : [{ Identifier }], // IBusiness Identifier for observation // value[x]: Instantiates FHIR ObservationDefinition. One of these 2: "instantiatesCanonical" : "<canonical>", // IInstantiates FHIR ObservationDefinition "instantiatesReference" : { Reference(ObservationDefinition) }, // IInstantiates FHIR ObservationDefinition "basedOn" : [{ Reference(CarePlan) }], // IFulfills plan, proposal or order "triggeredBy" : [{ BackboneElement }], // ITriggering observation(s) "partOf" : [{ Reference(MedicationAdministration) }], // IPart of referenced event "status" : "<code>", // I R! registered | specimen-in-process | preliminary | final | amended | corrected | appended | cancelled | entered-in-error | unknown | cannot-be-obtained "category" : [ // sliced by pattern:$this in the specified order, Open { // Classification of type of observation // I R! // from Element: extension } ], "code" : { CodeableConcept }, // I R! Vital Sign Measurement "subject" : { Reference(Patient) }, // I R! Who and/or what the observation is about "focus" : [{ Reference(Resource) }], // IWhat the observation is about, when it is not about the subject of record "encounter" : { Reference(Encounter) }, // IHealthcare event during which this observation is made // value[x]: Often just a dateTime for Vital Signs. One of these 2: "effectiveDateTime" : "<dateTime>", // I R! Often just a dateTime for Vital Signs "effectivePeriod" : { Period }, // I R! Often just a dateTime for Vital Signs "issued" : "<instant>", // IDate/Time this version was made available "performer" : [{ Reference(Practitioner) }], // IWho is responsible for the observation "valueQuantity" : [ // sliced by type:$this in the specified order, Open { // Vital Sign Value recorded with UCUM (preferred) // I // from Element: extension } ], "dataAbsentReason" : { CodeableConcept }, // IWhy the result value is missing "interpretation" : [{ CodeableConcept }], // IHigh, low, normal, etc "note" : [{ Annotation }], // IComments about the observation "bodySite" : { CodeableConcept }, // IObserved body part "bodyStructure" : { Reference(BodyStructure) }, // IObserved body structure "method" : { CodeableConcept }, // IHow it was done "specimen" : { Reference(Specimen) }, // ISpecimen used for this observation "device" : { Reference(Device) }, // IA reference to the device that generates the measurements or the device settings for the device "referenceRange" : [{ BackboneElement }], // IProvides guide for interpretation "hasMember" : [{ Reference(QuestionnaireResponse) }], // IUsed when reporting vital signs panel components "derivedFrom" : [{ Reference(DocumentReference) }], // IRelated resource from which the observation is made "component" : [{ BackboneElement }], // IUsed when reporting systolic and diastolic blood pressure. }
Alternate definitions: Master Definition (XML, JSON), Schematron
Path | Name | Conformance | ValueSet |
Observation.language | All Languages | required | All Languages |
Observation.triggeredBy.type | triggered Bytype | required | triggered Bytype |
Observation.status | Observation Status | required | Observation Status |
Observation.category | Observation Category Codes | preferred | Observation Category Codes |
Observation.category | Observation Category Codes | preferred | Observation Category Codes |
Observation.code | Vital Signs Measurement | preferred | Vital Signs Measurement |
Observation.value[x] | Vital Signs Units | preferred | Vital Signs Units |
Observation.dataAbsentReason | Data Absent Reason | extensible | Data Absent Reason |
Observation.interpretation | Observation Interpretation Codes | extensible | Observation Interpretation Codes |
Observation.bodySite | SNOMED CT Body Structures | example | SNOMED CT Body Structures |
Observation.method | Observation Methods | example | Observation Methods |
Observation.referenceRange.normalValue | Observation Reference Range Normal Value Codes | extensible | Observation Reference Range Normal Value Codes |
Observation.referenceRange.type | Observation Reference Range Meaning Codes | preferred | Observation Reference Range Meaning Codes |
Observation.referenceRange.appliesTo | Observation Reference Range Applies To Codes | example | Observation Reference Range Applies To Codes |
Observation.component.code | Vital Signs Component Measurement | preferred | Vital Signs Component Measurement |
Observation.component.value[x] | Vital Signs Units | preferred | Vital Signs Units |
Observation.component.dataAbsentReason | Data Absent Reason | extensible | Data Absent Reason |
Observation.component.interpretation | Observation Interpretation Codes | extensible | Observation Interpretation Codes |
Id | Path | Details | Requirements |
vs-2 | Observation | If there is no component or hasMember element then either a value[x] or a data absent reason must be present. Expression : (component.empty() and hasMember.empty()) implies (dataAbsentReason.exists() or value.exists()) |
|
vs-1 | Observation.effective[x] | if Observation.effective[x] is dateTime and has a value then that value shall be precise to the day Expression : ($this as dateTime).toString().length() >= 8 |
|
vs-3 | Observation.component | If there is no a value a data absent reason must be present Expression : value.exists() or dataAbsentReason.exists() |