1.0.0 - release
            
          
CambioOpenServicesIG - Local Development build (v1.0.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions
| Official URL: https://fhir.cambio.se/StructureDefinition/ObservationBodyWeightLite/v1 | Version: 1.1.0 | |||
| Active as of 2022-03-10 | Computable Name: ObservationBodyWeightLite | |||
The ObservationBodyWeightLite profile represents the vital parameter body weight and is a profile created from the resource Observation. Body weight is an observation concerning body weight of a person. The profile is derived from the standard FHIR profile Body weight which makes the profile compliant with the FHIR standardized way of communicating vital sign data.
The profile ObservationBodyWeightLite is used for communicating an entry of a patients body weight by sending a value in the element observation.value. The API can be used to create and read patient body weight information from/to COSMIC.
| Type | Description | 
|---|---|
| Rule | This API should not be used to transfer data between caregivers. | 
| Rule | If the performer is Patient, the subject should be the same as given performer. | 
| Rule | The consumer of the API is responsible for making sure data retrieved is filtered in compliance with laws and regulations prior to presenting it to any end-users. | 
| Rule | For reading vital sign observations, the external system needs to be able to evaluate PDL. This means whether the information can be displayed for a healthcare professional with a specific assignment. PDL data needed (HSA care unit and HSA care provider) is retrieved by including the organization referenced from Observation.performer.organization (OrganizationSEVendorLite). | 
| Rule | POST: It is not supported to create body weight entries with the Snomed CT concept 364589006(Birth weight). Only the concept 27113001(Body weight) is supported for POST. | 
| Rule | POST: The data should not be patient initiated. If patient generated, it should be ordered by a care giver and belong to a specific unit. | 
| Rule | POST: It is not supported to create vital sign entries with statuses preliminary, entered-in-error or cancelled. Only status final is supported for POST. | 
| Rule | POST: dateTime cannot be 1st of the month with the time 00:00:00.000+01:00 (See error messages described below) | 
| Rule | POST: dateTime cannot be only date component, also time component will be needed (See error messages described below) | 
| Rule | POST: COSMIC does not support displaying continuous values and hence the external product should not send values to COSMIC more often than every 15 minutes per patient. All values received in COSMIC will be saved and displayed but because it cannot be displayed in a proper way it should not be sent more often as standard | 
| COS version | Profile version | Required COSMIC version | Date | Description | 
|---|---|---|---|---|
| 3.0.0 | 1.1.0 | R8.3.05 | May 2022 | Updates in target profile for performer.organization which makes it possible to retrieve PDL units | 
| 2.4.0 | 1.0.0 | R8.3.04 | Feb 2022 | Initial version, support for GET and POST. | 
| HTTP Method | Description | 
|---|---|
| GET | Used to get or search for body weight registrations | 
| POST | Used to create a body weight entry. If successful, the operation will return id in response | 
| Parameter | Format | Mandatory | Comment | 
|---|---|---|---|
date | 
      date (ddmmyy) | Yes | Obtained date/time. The date is always a range, i.e. two dates are used as search parameters. | 
status | 
      token | No | The status of the observation. See supported statuses in #Statuses | 
patient | 
      reference | Yes | The subject that the observation is about (if patient). The reference can be a literal reference ex: subject=1 or a Business identifier as well.ex: subject.identifier=urn:oid:1.2.752.129.2.1.3.1|20200109-6078 | 
code | 
      token | No | SNOMED CT code of the observation type | 
_profile | 
      string | No | search on the profile url. Either code or profile is needed as search parameter. | 
GET [baseURL]/Observation/_search?patient= (Search)GET [baseURL]/Observation/_search?status= (Search)GET [baseURL]/Observation/_search?date=[gt_date]&date=[lt_date] (Search)GET [baseURL]/Observation/_search?code= (Search)GET [baseURL]/Observation/_search?_profile= (Search)GET [baseURL]/Observation/_search?patient=&_include=Observation:performer (Search)GET [baseURL]/Observation/_search?status=[status]&_include=[] (Search)GET [baseURL]/Observation/_search?date=[gt_date]&date=[lt_date]&_include=[] (Search)GET [baseURL]/Observation/_search?code=[code]&_include=[] (Search)GET [baseURL]/Observation/_search?_profile=[url]&_include=[] (Search)POST [baseURL]/Observation (Post)In the table below, a few error messages specific for Observation are listed.
| Code | Description | Comment | 
|---|---|---|
| 400 | "Subject and Performer Patient references does not match." | |
| 400 | "The date time: < date > is invalid" | the dateTime must contain a time component | 
| 400 | "Server supports only final status when posting Observations" | 
      Statuses preliminary, entered-in-error or cancelled are not supported for POST. | 
| 400 | "Only supported Snomed code is 27113001 for Body weight." | 364589006 (Birth weight) is not supported for POST | 
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..* | ObservationBodyWeightCore | FHIR Body Weight Profile Constraints: obs-6, obs-7, vs-2  | 
![]() ![]()  | 
?!Σ | 0..1 | uri | A set of rules under which this content was created | 
![]() ![]()  | 
?! | 0..* | Extension | Extensions that cannot be ignored | 
![]() ![]()  | 
?!SΣ | 1..1 | code | Preliminary | final | amended | entered in error | cancelled Binding: VitalSignStatus (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 | Body Weight Binding: VitalSigns (extensible): This identifies the vital sign result type.  | 
![]() ![]() ![]()  | 
Σ | 2..2 | Coding | Code defined by a terminology system Slice: Unordered, Closed by value:code, value:system  | 
![]() ![]() ![]() ![]()  | 
Σ | 1..1 | Coding | Code defined by a terminology system | 
![]() ![]() ![]() ![]() ![]()  | 
Σ | 1..1 | uri | Identity of the terminology system Fixed Value: http://loinc.org  | 
![]() ![]() ![]() ![]() ![]()  | 
Σ | 1..1 | code | Symbol in syntax defined by the system Fixed Value: 29463-7  | 
![]() ![]() ![]() ![]()  | 
Σ | 0..1 | Coding | Code defined by a terminology system | 
![]() ![]() ![]() ![]() ![]()  | 
Σ | 1..1 | uri | Identity of the terminology system Fixed Value: http://snomed.info/sct  | 
![]() ![]() ![]() ![]() ![]()  | 
Σ | 1..1 | code | Symbol in syntax defined by the system Fixed Value: 27113001  | 
![]() ![]() ![]() ![]()  | 
Σ | 0..1 | Coding | Code defined by a terminology system | 
![]() ![]() ![]() ![]() ![]()  | 
Σ | 1..1 | uri | Identity of the terminology system Fixed Value: http://snomed.info/sct  | 
![]() ![]() ![]() ![]() ![]()  | 
Σ | 1..1 | code | Symbol in syntax defined by the system Fixed Value: 364589006  | 
![]() ![]()  | 
SΣ | 1..1 | Reference(Patient) | Who and/or what the observation is about | 
![]() ![]()  | 
SΣC | 1..1 | dateTime | Often just a dateTime for Vital Signs Constraints: vs-1  | 
![]() ![]()  | 
Σ | 1..2 | Reference(Practitioner | Organization | Patient | RelatedPerson | PractitionerRoleLiteSe) | Who is responsible for the observation Slice: Unordered, Open by type:$this  | 
![]() ![]() ![]()  | 
Σ | 0..2 | Reference(Patient) | Who is responsible for the observation | 
![]() ![]() ![]()  | 
Σ | 0..2 | Reference(Organization) | Who is responsible for the observation | 
![]() ![]() ![]()  | 
Σ | 0..2 | Reference(PractitionerRoleLiteSe) | Who is responsible for the observation | 
![]() ![]() ![]()  | 
Σ | 0..2 | Reference(Practitioner) | Who is responsible for the observation | 
![]() ![]()  | 
SΣC | 0..1 | Quantity | 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, Closed by type:$this  | 
![]() ![]() ![]()  | 
SΣC | 0..1 | Quantity | Vital Signs value are recorded using the Quantity data type. For supporting observations such as Cuff size could use other datatypes such as CodeableConcept. Binding: HeartRateBodySite (preferred): BodyWeightUnits  | 
![]() ![]() ![]() ![]()  | 
SΣ | 1..1 | decimal | Numerical value (with implicit precision) | 
![]() ![]() ![]() ![]()  | 
?!Σ | 0..1 | code | < | <= | >= | > - how to understand the value Binding: QuantityComparator (required): How the Quantity should be understood and represented.  | 
![]() ![]() ![]() ![]()  | 
SΣ | 1..1 | string | Unit representation | 
![]() ![]() ![]() ![]()  | 
SΣC | 1..1 | uri | System that defines coded unit form Fixed Value: http://unitsofmeasure.org  | 
![]() ![]() ![]() ![]()  | 
SΣ | 1..1 | code | Coded responses from the common UCUM units for vital signs value set. Binding: BodyWeightUnits (required): BodyWeightUnits.  | 
![]() ![]()  | 
SC | 0..1 | CodeableConcept | Why the result is missing Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.  | 
![]() ![]() ![]()  | 
Σ | 0..1 | Coding | Code defined by a terminology system | 
![]() ![]() ![]() ![]()  | 
Σ | 1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org/CodeSystem/data-absent-reason  | 
![]() ![]() ![]() ![]()  | 
Σ | 1..1 | code | Symbol in syntax defined by the system Fixed Value: unsupported  | 
![]() ![]()  | 
0..1 | Annotation | Comments about the observation | |
  Documentation for this format | ||||
| Path | Conformance | ValueSet | URI | 
| Observation.status | required | VitalSignStatushttps://cambio.codes/fhir/vs/vital-sign-status/v1From this IG  | |
| Observation.category | preferred | ObservationCategoryCodeshttp://hl7.org/fhir/ValueSet/observation-categoryFrom the FHIR Standard  | |
| Observation.category:VSCat | preferred | ObservationCategoryCodeshttp://hl7.org/fhir/ValueSet/observation-categoryFrom the FHIR Standard  | |
| Observation.code | extensible | VitalSignshttp://hl7.org/fhir/ValueSet/observation-vitalsignresultFrom the FHIR Standard  | |
| Observation.value[x]:valueQuantity | preferred | HeartRateBodySitehttps://cambio.codes/snomed/heart-rate-body-site/v1From this IG  | |
| Observation.value[x]:valueQuantity.comparator | required | QuantityComparatorhttp://hl7.org/fhir/ValueSet/quantity-comparator|4.0.1From the FHIR Standard  | |
| Observation.value[x]:valueQuantity.code | required | BodyWeightUnitshttps://fhir.cambio.se/ValueSet/BodyWeightUnits/v1From this IG  | |
| Observation.dataAbsentReason | extensible | DataAbsentReasonhttp://hl7.org/fhir/ValueSet/data-absent-reasonFrom the FHIR Standard  | |
| Observation.component.code | extensible | VitalSignshttp://hl7.org/fhir/ValueSet/observation-vitalsignresultFrom the FHIR Standard  | |
| Observation.component.value[x] | required | VitalSignsUnitshttp://hl7.org/fhir/ValueSet/ucum-vitals-common|4.0.1From the FHIR Standard  | |
| Observation.component.dataAbsentReason | extensible | DataAbsentReasonhttp://hl7.org/fhir/ValueSet/data-absent-reasonFrom the FHIR Standard  | 
| Id | Grade | Path(s) | Details | Requirements | 
| 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()  | |
| 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 as dateTime).toString().length() >= 8  | |
| 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())  | 
This structure is derived from ObservationBodyWeightCore
| Name | Flags | Card. | Type | Description & Constraints    Filter:  ![]() ![]()  | 
|---|---|---|---|---|
![]()  | 
0..* | ObservationBodyWeightCore | FHIR Body Weight Profile | |
![]() ![]()  | 
0..0 | |||
![]() ![]()  | 
0..0 | |||
![]() ![]()  | 
1..1 | code | Preliminary | final | amended | entered in error | cancelled Binding: VitalSignStatus (required)  | |
![]() ![]()  | 
||||
![]() ![]() ![]()  | 
2..2 | Coding | Code defined by a terminology system Slice: Unordered, Closed by value:code, value:system  | |
![]() ![]() ![]() ![]()  | 
0..1 | Coding | Code defined by a terminology system | |
![]() ![]() ![]() ![]() ![]()  | 
1..1 | code | Symbol in syntax defined by the system Fixed Value: 27113001  | |
![]() ![]() ![]() ![]()  | 
0..1 | Coding | Code defined by a terminology system | |
![]() ![]() ![]() ![]() ![]()  | 
1..1 | uri | Identity of the terminology system Fixed Value: http://snomed.info/sct  | |
![]() ![]() ![]() ![]() ![]()  | 
1..1 | code | Symbol in syntax defined by the system Fixed Value: 364589006  | |
![]() ![]()  | 
0..0 | |||
![]() ![]()  | 
0..0 | |||
![]() ![]()  | 
1..2 | Reference(Practitioner | Organization | Patient | RelatedPerson | PractitionerRoleLiteSe) | Who is responsible for the observation Slice: Unordered, Open by type:$this  | |
![]() ![]() ![]()  | 
0..2 | Reference(Patient) | Who is responsible for the observation | |
![]() ![]() ![]()  | 
0..2 | Reference(Organization) | Who is responsible for the observation | |
![]() ![]() ![]()  | 
0..2 | Reference(PractitionerRoleLiteSe) | Who is responsible for the observation | |
![]() ![]() ![]()  | 
0..2 | Reference(Practitioner) | Who is responsible for the observation | |
![]() ![]()  | 
0..1 | Quantity | Vital Signs value are recorded using the Quantity data type. For supporting observations such as Cuff size could use other datatypes such as CodeableConcept. | |
![]() ![]()  | 
Content/Rules for all slices | |||
![]() ![]() ![]()  | 
0..1 | Quantity | Vital Signs value are recorded using the Quantity data type. For supporting observations such as Cuff size could use other datatypes such as CodeableConcept. | |
![]() ![]() ![]() ![]()  | 
1..1 | decimal | Numerical value (with implicit precision) | |
![]() ![]()  | 
||||
![]() ![]() ![]()  | 
0..1 | Coding | Code defined by a terminology system | |
![]() ![]() ![]() ![]()  | 
1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org/CodeSystem/data-absent-reason  | |
![]() ![]() ![]() ![]()  | 
1..1 | code | Symbol in syntax defined by the system Fixed Value: unsupported  | |
![]() ![]()  | 
0..0 | |||
![]() ![]()  | 
0..1 | Annotation | Comments about the observation | |
![]() ![]()  | 
0..0 | |||
![]() ![]()  | 
0..0 | |||
![]() ![]()  | 
0..0 | |||
![]() ![]()  | 
0..0 | |||
![]() ![]()  | 
0..0 | |||
![]() ![]()  | 
0..0 | |||
![]() ![]()  | 
0..0 | |||
![]() ![]()  | 
0..0 | |||
  Documentation for this format | ||||
| Path | Conformance | ValueSet | URI | 
| Observation.status | required | VitalSignStatushttps://cambio.codes/fhir/vs/vital-sign-status/v1From this IG  | 
| Name | Flags | Card. | Type | Description & Constraints    Filter:  ![]() ![]()  | ||||
|---|---|---|---|---|---|---|---|---|
![]()  | 
C | 0..* | ObservationBodyWeightCore | FHIR Body Weight 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 | 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 | ||||
![]() ![]()  | 
?!SΣ | 1..1 | code | Preliminary | final | amended | entered in error | cancelled Binding: VitalSignStatus (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 | Body Weight Binding: VitalSigns (extensible): This identifies the vital sign result type.  | ||||
![]() ![]() ![]()  | 
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]()  | 
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url  | |||||
![]() ![]() ![]()  | 
Σ | 2..2 | Coding | Code defined by a terminology system Slice: Unordered, Closed by value:code, value:system  | ||||
![]() ![]() ![]() ![]()  | 
Σ | 1..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  | |||||
![]() ![]() ![]() ![]() ![]()  | 
Σ | 1..1 | uri | Identity of the terminology system Fixed Value: http://loinc.org  | ||||
![]() ![]() ![]() ![]() ![]()  | 
Σ | 0..1 | string | Version of the system - if relevant | ||||
![]() ![]() ![]() ![]() ![]()  | 
Σ | 1..1 | code | Symbol in syntax defined by the system Fixed Value: 29463-7  | ||||
![]() ![]() ![]() ![]() ![]()  | 
Σ | 0..1 | string | Representation defined by the system | ||||
![]() ![]() ![]() ![]() ![]()  | 
Σ | 0..1 | boolean | If this coding was chosen directly by the user | ||||
![]() ![]() ![]() ![]()  | 
Σ | 0..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  | |||||
![]() ![]() ![]() ![]() ![]()  | 
Σ | 1..1 | uri | Identity of the terminology system Fixed Value: http://snomed.info/sct  | ||||
![]() ![]() ![]() ![]() ![]()  | 
Σ | 0..1 | string | Version of the system - if relevant | ||||
![]() ![]() ![]() ![]() ![]()  | 
Σ | 1..1 | code | Symbol in syntax defined by the system Fixed Value: 27113001  | ||||
![]() ![]() ![]() ![]() ![]()  | 
Σ | 0..1 | string | Representation defined by the system | ||||
![]() ![]() ![]() ![]() ![]()  | 
Σ | 0..1 | boolean | If this coding was chosen directly by the user | ||||
![]() ![]() ![]() ![]()  | 
Σ | 0..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  | |||||
![]() ![]() ![]() ![]() ![]()  | 
Σ | 1..1 | uri | Identity of the terminology system Fixed Value: http://snomed.info/sct  | ||||
![]() ![]() ![]() ![]() ![]()  | 
Σ | 0..1 | string | Version of the system - if relevant | ||||
![]() ![]() ![]() ![]() ![]()  | 
Σ | 1..1 | code | Symbol in syntax defined by the system Fixed Value: 364589006  | ||||
![]() ![]() ![]() ![]() ![]()  | 
Σ | 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 | Reference(Patient) | Who and/or what the observation is about | ||||
![]() ![]()  | 
Σ | 0..1 | Reference(Encounter) | Healthcare event during which this observation is made | ||||
![]() ![]()  | 
SΣC | 1..1 | dateTime | Often just a dateTime for Vital Signs Constraints: vs-1  | ||||
![]() ![]()  | 
Σ | 1..2 | Reference(Practitioner | Organization | Patient | RelatedPerson | PractitionerRoleLiteSe) | Who is responsible for the observation Slice: Unordered, Open by type:$this  | ||||
![]() ![]() ![]()  | 
Σ | 0..2 | Reference(Patient) | Who is responsible for the observation | ||||
![]() ![]() ![]()  | 
Σ | 0..2 | Reference(Organization) | Who is responsible for the observation | ||||
![]() ![]() ![]()  | 
Σ | 0..2 | Reference(PractitionerRoleLiteSe) | Who is responsible for the observation | ||||
![]() ![]() ![]()  | 
Σ | 0..2 | Reference(Practitioner) | Who is responsible for the observation | ||||
![]() ![]()  | 
SΣC | 0..1 | Quantity | 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, Closed by type:$this  | ||||
![]() ![]() ![]()  | 
SΣC | 0..1 | Quantity | Vital Signs value are recorded using the Quantity data type. For supporting observations such as Cuff size could use other datatypes such as CodeableConcept. Binding: HeartRateBodySite (preferred): BodyWeightUnits  | ||||
![]() ![]() ![]() ![]()  | 
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 | decimal | Numerical value (with implicit precision) | ||||
![]() ![]() ![]() ![]()  | 
?!Σ | 0..1 | code | < | <= | >= | > - how to understand the value Binding: QuantityComparator (required): How the Quantity should be understood and represented.  | ||||
![]() ![]() ![]() ![]()  | 
SΣ | 1..1 | string | Unit representation | ||||
![]() ![]() ![]() ![]()  | 
SΣC | 1..1 | uri | System that defines coded unit form Fixed Value: http://unitsofmeasure.org  | ||||
![]() ![]() ![]() ![]()  | 
SΣ | 1..1 | code | Coded responses from the common UCUM units for vital signs value set. Binding: BodyWeightUnits (required): BodyWeightUnits.  | ||||
![]() ![]()  | 
SC | 0..1 | CodeableConcept | Why the result is missing Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.  | ||||
![]() ![]() ![]()  | 
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]()  | 
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url  | |||||
![]() ![]() ![]()  | 
Σ | 0..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  | |||||
![]() ![]() ![]() ![]()  | 
Σ | 1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org/CodeSystem/data-absent-reason  | ||||
![]() ![]() ![]() ![]()  | 
Σ | 0..1 | string | Version of the system - if relevant | ||||
![]() ![]() ![]() ![]()  | 
Σ | 1..1 | code | Symbol in syntax defined by the system Fixed Value: unsupported  | ||||
![]() ![]() ![]() ![]()  | 
Σ | 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 | ||||
![]() ![]()  | 
0..1 | Annotation | Comments about the observation | |||||
  Documentation for this format | ||||||||
| Path | Conformance | ValueSet | URI | |||
| Observation.language | preferred | CommonLanguageshttp://hl7.org/fhir/ValueSet/languagesFrom the FHIR Standard 
  | ||||
| Observation.status | required | VitalSignStatushttps://cambio.codes/fhir/vs/vital-sign-status/v1From this IG  | ||||
| Observation.category | preferred | ObservationCategoryCodeshttp://hl7.org/fhir/ValueSet/observation-categoryFrom the FHIR Standard  | ||||
| Observation.category:VSCat | preferred | ObservationCategoryCodeshttp://hl7.org/fhir/ValueSet/observation-categoryFrom the FHIR Standard  | ||||
| Observation.code | extensible | VitalSignshttp://hl7.org/fhir/ValueSet/observation-vitalsignresultFrom the FHIR Standard  | ||||
| Observation.value[x]:valueQuantity | preferred | HeartRateBodySitehttps://cambio.codes/snomed/heart-rate-body-site/v1From this IG  | ||||
| Observation.value[x]:valueQuantity.comparator | required | QuantityComparatorhttp://hl7.org/fhir/ValueSet/quantity-comparator|4.0.1From the FHIR Standard  | ||||
| Observation.value[x]:valueQuantity.code | required | BodyWeightUnitshttps://fhir.cambio.se/ValueSet/BodyWeightUnits/v1From this IG  | ||||
| Observation.dataAbsentReason | extensible | DataAbsentReasonhttp://hl7.org/fhir/ValueSet/data-absent-reasonFrom the FHIR Standard  | ||||
| Observation.referenceRange.type | preferred | ObservationReferenceRangeMeaningCodeshttp://hl7.org/fhir/ValueSet/referencerange-meaningFrom the FHIR Standard  | ||||
| Observation.referenceRange.appliesTo | example | ObservationReferenceRangeAppliesToCodeshttp://hl7.org/fhir/ValueSet/referencerange-appliestoFrom the FHIR Standard  | ||||
| Observation.component.code | extensible | VitalSignshttp://hl7.org/fhir/ValueSet/observation-vitalsignresultFrom the FHIR Standard  | ||||
| Observation.component.value[x] | required | VitalSignsUnitshttp://hl7.org/fhir/ValueSet/ucum-vitals-common|4.0.1From the FHIR Standard  | ||||
| Observation.component.dataAbsentReason | extensible | DataAbsentReasonhttp://hl7.org/fhir/ValueSet/data-absent-reasonFrom the FHIR Standard  | ||||
| Observation.component.interpretation | extensible | ObservationInterpretationCodeshttp://hl7.org/fhir/ValueSet/observation-interpretationFrom the FHIR Standard  | 
| Id | Grade | Path(s) | Details | Requirements | 
| 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()  | |
| 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 as dateTime).toString().length() >= 8  | |
| 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())  | 
This structure is derived from ObservationBodyWeightCore
Summary
Mandatory: 0 element(4 nested mandatory elements)
 Fixed: 5 elements
 Prohibited: 13 elements
Structures
This structure refers to these other structures:
Slices
This structure defines the following Slices:
Key Elements View
| Name | Flags | Card. | Type | Description & Constraints    Filter:  ![]() ![]()  | 
|---|---|---|---|---|
![]()  | 
C | 0..* | ObservationBodyWeightCore | FHIR Body Weight Profile Constraints: obs-6, obs-7, vs-2  | 
![]() ![]()  | 
?!Σ | 0..1 | uri | A set of rules under which this content was created | 
![]() ![]()  | 
?! | 0..* | Extension | Extensions that cannot be ignored | 
![]() ![]()  | 
?!SΣ | 1..1 | code | Preliminary | final | amended | entered in error | cancelled Binding: VitalSignStatus (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 | Body Weight Binding: VitalSigns (extensible): This identifies the vital sign result type.  | 
![]() ![]() ![]()  | 
Σ | 2..2 | Coding | Code defined by a terminology system Slice: Unordered, Closed by value:code, value:system  | 
![]() ![]() ![]() ![]()  | 
Σ | 1..1 | Coding | Code defined by a terminology system | 
![]() ![]() ![]() ![]() ![]()  | 
Σ | 1..1 | uri | Identity of the terminology system Fixed Value: http://loinc.org  | 
![]() ![]() ![]() ![]() ![]()  | 
Σ | 1..1 | code | Symbol in syntax defined by the system Fixed Value: 29463-7  | 
![]() ![]() ![]() ![]()  | 
Σ | 0..1 | Coding | Code defined by a terminology system | 
![]() ![]() ![]() ![]() ![]()  | 
Σ | 1..1 | uri | Identity of the terminology system Fixed Value: http://snomed.info/sct  | 
![]() ![]() ![]() ![]() ![]()  | 
Σ | 1..1 | code | Symbol in syntax defined by the system Fixed Value: 27113001  | 
![]() ![]() ![]() ![]()  | 
Σ | 0..1 | Coding | Code defined by a terminology system | 
![]() ![]() ![]() ![]() ![]()  | 
Σ | 1..1 | uri | Identity of the terminology system Fixed Value: http://snomed.info/sct  | 
![]() ![]() ![]() ![]() ![]()  | 
Σ | 1..1 | code | Symbol in syntax defined by the system Fixed Value: 364589006  | 
![]() ![]()  | 
SΣ | 1..1 | Reference(Patient) | Who and/or what the observation is about | 
![]() ![]()  | 
SΣC | 1..1 | dateTime | Often just a dateTime for Vital Signs Constraints: vs-1  | 
![]() ![]()  | 
Σ | 1..2 | Reference(Practitioner | Organization | Patient | RelatedPerson | PractitionerRoleLiteSe) | Who is responsible for the observation Slice: Unordered, Open by type:$this  | 
![]() ![]() ![]()  | 
Σ | 0..2 | Reference(Patient) | Who is responsible for the observation | 
![]() ![]() ![]()  | 
Σ | 0..2 | Reference(Organization) | Who is responsible for the observation | 
![]() ![]() ![]()  | 
Σ | 0..2 | Reference(PractitionerRoleLiteSe) | Who is responsible for the observation | 
![]() ![]() ![]()  | 
Σ | 0..2 | Reference(Practitioner) | Who is responsible for the observation | 
![]() ![]()  | 
SΣC | 0..1 | Quantity | 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, Closed by type:$this  | 
![]() ![]() ![]()  | 
SΣC | 0..1 | Quantity | Vital Signs value are recorded using the Quantity data type. For supporting observations such as Cuff size could use other datatypes such as CodeableConcept. Binding: HeartRateBodySite (preferred): BodyWeightUnits  | 
![]() ![]() ![]() ![]()  | 
SΣ | 1..1 | decimal | Numerical value (with implicit precision) | 
![]() ![]() ![]() ![]()  | 
?!Σ | 0..1 | code | < | <= | >= | > - how to understand the value Binding: QuantityComparator (required): How the Quantity should be understood and represented.  | 
![]() ![]() ![]() ![]()  | 
SΣ | 1..1 | string | Unit representation | 
![]() ![]() ![]() ![]()  | 
SΣC | 1..1 | uri | System that defines coded unit form Fixed Value: http://unitsofmeasure.org  | 
![]() ![]() ![]() ![]()  | 
SΣ | 1..1 | code | Coded responses from the common UCUM units for vital signs value set. Binding: BodyWeightUnits (required): BodyWeightUnits.  | 
![]() ![]()  | 
SC | 0..1 | CodeableConcept | Why the result is missing Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.  | 
![]() ![]() ![]()  | 
Σ | 0..1 | Coding | Code defined by a terminology system | 
![]() ![]() ![]() ![]()  | 
Σ | 1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org/CodeSystem/data-absent-reason  | 
![]() ![]() ![]() ![]()  | 
Σ | 1..1 | code | Symbol in syntax defined by the system Fixed Value: unsupported  | 
![]() ![]()  | 
0..1 | Annotation | Comments about the observation | |
  Documentation for this format | ||||
| Path | Conformance | ValueSet | URI | 
| Observation.status | required | VitalSignStatushttps://cambio.codes/fhir/vs/vital-sign-status/v1From this IG  | |
| Observation.category | preferred | ObservationCategoryCodeshttp://hl7.org/fhir/ValueSet/observation-categoryFrom the FHIR Standard  | |
| Observation.category:VSCat | preferred | ObservationCategoryCodeshttp://hl7.org/fhir/ValueSet/observation-categoryFrom the FHIR Standard  | |
| Observation.code | extensible | VitalSignshttp://hl7.org/fhir/ValueSet/observation-vitalsignresultFrom the FHIR Standard  | |
| Observation.value[x]:valueQuantity | preferred | HeartRateBodySitehttps://cambio.codes/snomed/heart-rate-body-site/v1From this IG  | |
| Observation.value[x]:valueQuantity.comparator | required | QuantityComparatorhttp://hl7.org/fhir/ValueSet/quantity-comparator|4.0.1From the FHIR Standard  | |
| Observation.value[x]:valueQuantity.code | required | BodyWeightUnitshttps://fhir.cambio.se/ValueSet/BodyWeightUnits/v1From this IG  | |
| Observation.dataAbsentReason | extensible | DataAbsentReasonhttp://hl7.org/fhir/ValueSet/data-absent-reasonFrom the FHIR Standard  | |
| Observation.component.code | extensible | VitalSignshttp://hl7.org/fhir/ValueSet/observation-vitalsignresultFrom the FHIR Standard  | |
| Observation.component.value[x] | required | VitalSignsUnitshttp://hl7.org/fhir/ValueSet/ucum-vitals-common|4.0.1From the FHIR Standard  | |
| Observation.component.dataAbsentReason | extensible | DataAbsentReasonhttp://hl7.org/fhir/ValueSet/data-absent-reasonFrom the FHIR Standard  | 
| Id | Grade | Path(s) | Details | Requirements | 
| 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()  | |
| 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 as dateTime).toString().length() >= 8  | |
| 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())  | 
Differential View
This structure is derived from ObservationBodyWeightCore
| Name | Flags | Card. | Type | Description & Constraints    Filter:  ![]() ![]()  | 
|---|---|---|---|---|
![]()  | 
0..* | ObservationBodyWeightCore | FHIR Body Weight Profile | |
![]() ![]()  | 
0..0 | |||
![]() ![]()  | 
0..0 | |||
![]() ![]()  | 
1..1 | code | Preliminary | final | amended | entered in error | cancelled Binding: VitalSignStatus (required)  | |
![]() ![]()  | 
||||
![]() ![]() ![]()  | 
2..2 | Coding | Code defined by a terminology system Slice: Unordered, Closed by value:code, value:system  | |
![]() ![]() ![]() ![]()  | 
0..1 | Coding | Code defined by a terminology system | |
![]() ![]() ![]() ![]() ![]()  | 
1..1 | code | Symbol in syntax defined by the system Fixed Value: 27113001  | |
![]() ![]() ![]() ![]()  | 
0..1 | Coding | Code defined by a terminology system | |
![]() ![]() ![]() ![]() ![]()  | 
1..1 | uri | Identity of the terminology system Fixed Value: http://snomed.info/sct  | |
![]() ![]() ![]() ![]() ![]()  | 
1..1 | code | Symbol in syntax defined by the system Fixed Value: 364589006  | |
![]() ![]()  | 
0..0 | |||
![]() ![]()  | 
0..0 | |||
![]() ![]()  | 
1..2 | Reference(Practitioner | Organization | Patient | RelatedPerson | PractitionerRoleLiteSe) | Who is responsible for the observation Slice: Unordered, Open by type:$this  | |
![]() ![]() ![]()  | 
0..2 | Reference(Patient) | Who is responsible for the observation | |
![]() ![]() ![]()  | 
0..2 | Reference(Organization) | Who is responsible for the observation | |
![]() ![]() ![]()  | 
0..2 | Reference(PractitionerRoleLiteSe) | Who is responsible for the observation | |
![]() ![]() ![]()  | 
0..2 | Reference(Practitioner) | Who is responsible for the observation | |
![]() ![]()  | 
0..1 | Quantity | Vital Signs value are recorded using the Quantity data type. For supporting observations such as Cuff size could use other datatypes such as CodeableConcept. | |
![]() ![]()  | 
Content/Rules for all slices | |||
![]() ![]() ![]()  | 
0..1 | Quantity | Vital Signs value are recorded using the Quantity data type. For supporting observations such as Cuff size could use other datatypes such as CodeableConcept. | |
![]() ![]() ![]() ![]()  | 
1..1 | decimal | Numerical value (with implicit precision) | |
![]() ![]()  | 
||||
![]() ![]() ![]()  | 
0..1 | Coding | Code defined by a terminology system | |
![]() ![]() ![]() ![]()  | 
1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org/CodeSystem/data-absent-reason  | |
![]() ![]() ![]() ![]()  | 
1..1 | code | Symbol in syntax defined by the system Fixed Value: unsupported  | |
![]() ![]()  | 
0..0 | |||
![]() ![]()  | 
0..1 | Annotation | Comments about the observation | |
![]() ![]()  | 
0..0 | |||
![]() ![]()  | 
0..0 | |||
![]() ![]()  | 
0..0 | |||
![]() ![]()  | 
0..0 | |||
![]() ![]()  | 
0..0 | |||
![]() ![]()  | 
0..0 | |||
![]() ![]()  | 
0..0 | |||
![]() ![]()  | 
0..0 | |||
  Documentation for this format | ||||
| Path | Conformance | ValueSet | URI | 
| Observation.status | required | VitalSignStatushttps://cambio.codes/fhir/vs/vital-sign-status/v1From this IG  | 
Snapshot View
| Name | Flags | Card. | Type | Description & Constraints    Filter:  ![]() ![]()  | ||||
|---|---|---|---|---|---|---|---|---|
![]()  | 
C | 0..* | ObservationBodyWeightCore | FHIR Body Weight 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 | 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 | ||||
![]() ![]()  | 
?!SΣ | 1..1 | code | Preliminary | final | amended | entered in error | cancelled Binding: VitalSignStatus (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 | Body Weight Binding: VitalSigns (extensible): This identifies the vital sign result type.  | ||||
![]() ![]() ![]()  | 
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]()  | 
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url  | |||||
![]() ![]() ![]()  | 
Σ | 2..2 | Coding | Code defined by a terminology system Slice: Unordered, Closed by value:code, value:system  | ||||
![]() ![]() ![]() ![]()  | 
Σ | 1..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  | |||||
![]() ![]() ![]() ![]() ![]()  | 
Σ | 1..1 | uri | Identity of the terminology system Fixed Value: http://loinc.org  | ||||
![]() ![]() ![]() ![]() ![]()  | 
Σ | 0..1 | string | Version of the system - if relevant | ||||
![]() ![]() ![]() ![]() ![]()  | 
Σ | 1..1 | code | Symbol in syntax defined by the system Fixed Value: 29463-7  | ||||
![]() ![]() ![]() ![]() ![]()  | 
Σ | 0..1 | string | Representation defined by the system | ||||
![]() ![]() ![]() ![]() ![]()  | 
Σ | 0..1 | boolean | If this coding was chosen directly by the user | ||||
![]() ![]() ![]() ![]()  | 
Σ | 0..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  | |||||
![]() ![]() ![]() ![]() ![]()  | 
Σ | 1..1 | uri | Identity of the terminology system Fixed Value: http://snomed.info/sct  | ||||
![]() ![]() ![]() ![]() ![]()  | 
Σ | 0..1 | string | Version of the system - if relevant | ||||
![]() ![]() ![]() ![]() ![]()  | 
Σ | 1..1 | code | Symbol in syntax defined by the system Fixed Value: 27113001  | ||||
![]() ![]() ![]() ![]() ![]()  | 
Σ | 0..1 | string | Representation defined by the system | ||||
![]() ![]() ![]() ![]() ![]()  | 
Σ | 0..1 | boolean | If this coding was chosen directly by the user | ||||
![]() ![]() ![]() ![]()  | 
Σ | 0..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  | |||||
![]() ![]() ![]() ![]() ![]()  | 
Σ | 1..1 | uri | Identity of the terminology system Fixed Value: http://snomed.info/sct  | ||||
![]() ![]() ![]() ![]() ![]()  | 
Σ | 0..1 | string | Version of the system - if relevant | ||||
![]() ![]() ![]() ![]() ![]()  | 
Σ | 1..1 | code | Symbol in syntax defined by the system Fixed Value: 364589006  | ||||
![]() ![]() ![]() ![]() ![]()  | 
Σ | 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 | Reference(Patient) | Who and/or what the observation is about | ||||
![]() ![]()  | 
Σ | 0..1 | Reference(Encounter) | Healthcare event during which this observation is made | ||||
![]() ![]()  | 
SΣC | 1..1 | dateTime | Often just a dateTime for Vital Signs Constraints: vs-1  | ||||
![]() ![]()  | 
Σ | 1..2 | Reference(Practitioner | Organization | Patient | RelatedPerson | PractitionerRoleLiteSe) | Who is responsible for the observation Slice: Unordered, Open by type:$this  | ||||
![]() ![]() ![]()  | 
Σ | 0..2 | Reference(Patient) | Who is responsible for the observation | ||||
![]() ![]() ![]()  | 
Σ | 0..2 | Reference(Organization) | Who is responsible for the observation | ||||
![]() ![]() ![]()  | 
Σ | 0..2 | Reference(PractitionerRoleLiteSe) | Who is responsible for the observation | ||||
![]() ![]() ![]()  | 
Σ | 0..2 | Reference(Practitioner) | Who is responsible for the observation | ||||
![]() ![]()  | 
SΣC | 0..1 | Quantity | 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, Closed by type:$this  | ||||
![]() ![]() ![]()  | 
SΣC | 0..1 | Quantity | Vital Signs value are recorded using the Quantity data type. For supporting observations such as Cuff size could use other datatypes such as CodeableConcept. Binding: HeartRateBodySite (preferred): BodyWeightUnits  | ||||
![]() ![]() ![]() ![]()  | 
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 | decimal | Numerical value (with implicit precision) | ||||
![]() ![]() ![]() ![]()  | 
?!Σ | 0..1 | code | < | <= | >= | > - how to understand the value Binding: QuantityComparator (required): How the Quantity should be understood and represented.  | ||||
![]() ![]() ![]() ![]()  | 
SΣ | 1..1 | string | Unit representation | ||||
![]() ![]() ![]() ![]()  | 
SΣC | 1..1 | uri | System that defines coded unit form Fixed Value: http://unitsofmeasure.org  | ||||
![]() ![]() ![]() ![]()  | 
SΣ | 1..1 | code | Coded responses from the common UCUM units for vital signs value set. Binding: BodyWeightUnits (required): BodyWeightUnits.  | ||||
![]() ![]()  | 
SC | 0..1 | CodeableConcept | Why the result is missing Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.  | ||||
![]() ![]() ![]()  | 
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]()  | 
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url  | |||||
![]() ![]() ![]()  | 
Σ | 0..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  | |||||
![]() ![]() ![]() ![]()  | 
Σ | 1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org/CodeSystem/data-absent-reason  | ||||
![]() ![]() ![]() ![]()  | 
Σ | 0..1 | string | Version of the system - if relevant | ||||
![]() ![]() ![]() ![]()  | 
Σ | 1..1 | code | Symbol in syntax defined by the system Fixed Value: unsupported  | ||||
![]() ![]() ![]() ![]()  | 
Σ | 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 | ||||
![]() ![]()  | 
0..1 | Annotation | Comments about the observation | |||||
  Documentation for this format | ||||||||
| Path | Conformance | ValueSet | URI | |||
| Observation.language | preferred | CommonLanguageshttp://hl7.org/fhir/ValueSet/languagesFrom the FHIR Standard 
  | ||||
| Observation.status | required | VitalSignStatushttps://cambio.codes/fhir/vs/vital-sign-status/v1From this IG  | ||||
| Observation.category | preferred | ObservationCategoryCodeshttp://hl7.org/fhir/ValueSet/observation-categoryFrom the FHIR Standard  | ||||
| Observation.category:VSCat | preferred | ObservationCategoryCodeshttp://hl7.org/fhir/ValueSet/observation-categoryFrom the FHIR Standard  | ||||
| Observation.code | extensible | VitalSignshttp://hl7.org/fhir/ValueSet/observation-vitalsignresultFrom the FHIR Standard  | ||||
| Observation.value[x]:valueQuantity | preferred | HeartRateBodySitehttps://cambio.codes/snomed/heart-rate-body-site/v1From this IG  | ||||
| Observation.value[x]:valueQuantity.comparator | required | QuantityComparatorhttp://hl7.org/fhir/ValueSet/quantity-comparator|4.0.1From the FHIR Standard  | ||||
| Observation.value[x]:valueQuantity.code | required | BodyWeightUnitshttps://fhir.cambio.se/ValueSet/BodyWeightUnits/v1From this IG  | ||||
| Observation.dataAbsentReason | extensible | DataAbsentReasonhttp://hl7.org/fhir/ValueSet/data-absent-reasonFrom the FHIR Standard  | ||||
| Observation.referenceRange.type | preferred | ObservationReferenceRangeMeaningCodeshttp://hl7.org/fhir/ValueSet/referencerange-meaningFrom the FHIR Standard  | ||||
| Observation.referenceRange.appliesTo | example | ObservationReferenceRangeAppliesToCodeshttp://hl7.org/fhir/ValueSet/referencerange-appliestoFrom the FHIR Standard  | ||||
| Observation.component.code | extensible | VitalSignshttp://hl7.org/fhir/ValueSet/observation-vitalsignresultFrom the FHIR Standard  | ||||
| Observation.component.value[x] | required | VitalSignsUnitshttp://hl7.org/fhir/ValueSet/ucum-vitals-common|4.0.1From the FHIR Standard  | ||||
| Observation.component.dataAbsentReason | extensible | DataAbsentReasonhttp://hl7.org/fhir/ValueSet/data-absent-reasonFrom the FHIR Standard  | ||||
| Observation.component.interpretation | extensible | ObservationInterpretationCodeshttp://hl7.org/fhir/ValueSet/observation-interpretationFrom the FHIR Standard  | 
| Id | Grade | Path(s) | Details | Requirements | 
| 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()  | |
| 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 as dateTime).toString().length() >= 8  | |
| 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())  | 
This structure is derived from ObservationBodyWeightCore
Summary
Mandatory: 0 element(4 nested mandatory elements)
 Fixed: 5 elements
 Prohibited: 13 elements
Structures
This structure refers to these other structures:
Slices
This structure defines the following Slices:
Other representations of profile: CSV, Excel, Schematron