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

Resource Profile: ObservationArmSpanLite

Official URL: https://fhir.cambio.se/StructureDefinition/ObservationArmSpanLite/v1 Version: 1.0.0
Active as of 2022-02-18 Computable Name: ObservationArmSpanLite

Introduction

The ObservationArmSpanLite profile represents the parameter Arm span and is a profile created from the resource Observation which makes the profile compliant with the FHIR standardized way of communicating vital sign data. Arm span is an observation where a measurement taken of the length from one end of an individual's arm (measured at the fingertips) to the other arm, when raised parallel to the ground with shoulder height at a 90° angle.

Intended Use

The profile ObservationArmSpanLite is used for communicating an entry of a patient's measurement of the length from one end of an individual's arm (measured at the fingertips) to the other arm, when raised parallel to the ground with shoulder height at a 90° angle, by sending a value in the element observation.value.

Read Arm Span

Intended use is in first hand that the API is applied for direct access and should not be used to transfer data between caregivers. If it should be used for copying inbetween care givers patient consent must be handled outside the API.

Specific Rules and Limitations

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.

Statuses

User action in COSMIC FHIR status Status in COSMIC
Saved by signer preliminary ReadyToSign
Signed by signer final SignedComplete
Signed with counter signer and/or attester final Sign
Saved by secretary preliminary NotReadyToSign
Ready to sign by secretary preliminary ReadyToSign
Entered by patient final CompleteNonSignable
Parameter from a device final CompleteNonSignable
Correcting a previously signed parameter amended Resign
Remove a not signed parameter entered-in-error Deleted/Removed
Invalidate a signed parameter entered-in-error InvalidateComplete
Invalidate a parameter from a device or patient entered-in-error InvalidateComplete

Versions

COS version Profile version Required COSMIC version Date Description
3.0.0 1.0.0 R8.3.05 May 2022 Initial version, support for GET.

Supported Operations

HTTP Method Description
GET Used to get or search for registrations of Arm span

Query Operations

Parameter Format Mandatory Comment  
code token No SNOMED CT code of the observation type  
patient reference No 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

Supported Queries

  1. GET [baseURL]/Observation/_search?patient=&code= (search)

Error Codes

In the table below, a few error messages specific for observations 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

The profile ObservationArmspanLite is used for communicating an entry of a patients arms span by sending a value in the element observation.value. The API can be used to read patient armspan information from COSMIC.

Usages:

You can also check for usages in the FHIR IG Statistics

Formal Views of Profile Content

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

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Observation C 0..* ObservationArmSpanCore Measurements and simple assertions
Constraints: obs-6, obs-7
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... status ?!Σ 1..1 code registered | preliminary | final | amended +
Binding: VitalSignStatus (required): The status of th result value. FHIR - Cambio preliminary -> unsigned final -> signed and completednonSignable entered in error -> invalidated cancelled -> removed amended -> resigned
... code Σ 1..1 CodeableConcept Type of observation (code / type)
Binding: LOINCCodes (example): Codes identifying names of simple observations.
.... coding Σ 1..1 Coding Code defined by a terminology system
..... system Σ 1..1 uri Identity of the terminology system
Fixed Value: http://snomed.info/sct
..... code Σ 1..1 code Symbol in syntax defined by the system
Fixed Value: 456701000124107
..... display Σ 0..1 string Arm span as the longest distance between the fingertips
Fixed Value: Arm span
... effective[x] Σ 1..1 dateTime Clinically relevant time/time-period for observation
... Slices for performer Σ 1..2 Reference(Practitioner | PractitionerRole | Organization | CareTeam | Patient | RelatedPerson) Who is responsible for the observation
Slice: Unordered, Open by type:$this
.... performer:patient Σ 0..2 Reference(Patient) Who is responsible for the observation
.... performer:organization Σ 0..2 Reference(Organization) Who is responsible for the observation
.... performer:practitionerRole Σ 0..2 Reference(PractitionerRoleLiteSe) Who is responsible for the observation
.... performer:practitioner Σ 0..2 Reference(Practitioner) Who is responsible for the observation

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Observation.statusrequiredVitalSignStatus
https://cambio.codes/fhir/vs/vital-sign-status/v1
From this IG
Observation.codeexampleLOINCCodes(a valid code from LOINC)
http://hl7.org/fhir/ValueSet/observation-codes
From the FHIR Standard
Observation.component.codeexampleLOINCCodes(a valid code from LOINC)
http://hl7.org/fhir/ValueSet/observation-codes
From the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorObservationIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorObservationIf 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-4errorObservationIf 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-5errorObservationIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceObservationA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
obs-6errorObservationdataAbsentReason SHALL only be present if Observation.value[x] is not present
: dataAbsentReason.empty() or value.empty()
obs-7errorObservationIf 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()

This structure is derived from ObservationArmSpanCore

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Observation 0..* ObservationArmSpanCore Measurements and simple assertions
... implicitRules 0..0
... language 0..0
... text 0..0
... partOf 0..0
... status 1..1 code registered | preliminary | final | amended +
Binding: VitalSignStatus (required): The status of th result value. FHIR - Cambio preliminary -> unsigned final -> signed and completednonSignable entered in error -> invalidated cancelled -> removed amended -> resigned
... category 0..0
... focus 0..0
... issued 0..0
... performer 1..2 Reference(Practitioner | PractitionerRole | Organization | CareTeam | Patient | RelatedPerson) Who is responsible for the observation
... Slices for performer Content/Rules for all slices
.... performer:patient 0..2 Reference(Patient) Who is responsible for the observation
.... performer:organization 0..2 Reference(Organization) Who is responsible for the observation
.... performer:practitionerRole 0..2 Reference(PractitionerRoleLiteSe) Who is responsible for the observation
.... performer:practitioner 0..2 Reference(Practitioner) Who is responsible for the observation
... value[x]
.... unit 1..1 string centimeters
Fixed Value: cm
.... code 1..1 code Coded form of the unit
Fixed Value: cm
... dataAbsentReason
.... coding 1..1 Coding Code defined by a terminology system
..... system 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/data-absent-reason
..... code 1..1 code System isn't capable of supporting this element
Fixed Value: unsupported
... interpretation 0..0
... bodySite 0..0
... method 0..0
... specimen 0..0
... device 0..0
... referenceRange 0..0
... hasMember 0..0
... derivedFrom 0..0
... component 0..0

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
Observation.statusrequiredVitalSignStatus
https://cambio.codes/fhir/vs/vital-sign-status/v1
From this IG
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Observation C 0..* ObservationArmSpanCore Measurements and simple assertions
Constraints: obs-6, obs-7
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... contained 0..* Resource Contained, inline Resources
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier Σ 0..* Identifier Business Identifier for observation
... status ?!Σ 1..1 code registered | preliminary | final | amended +
Binding: VitalSignStatus (required): The status of th result value. FHIR - Cambio preliminary -> unsigned final -> signed and completednonSignable entered in error -> invalidated cancelled -> removed amended -> resigned
... code Σ 1..1 CodeableConcept Type of observation (code / type)
Binding: LOINCCodes (example): Codes identifying names of simple observations.
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... coding Σ 1..1 Coding Code defined by a terminology system
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... system Σ 1..1 uri Identity of the terminology system
Fixed Value: http://snomed.info/sct
..... version Σ 0..1 string Version of the system - if relevant
..... code Σ 1..1 code Symbol in syntax defined by the system
Fixed Value: 456701000124107
..... display Σ 0..1 string Arm span as the longest distance between the fingertips
Fixed Value: Arm span
..... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
.... text Σ 0..1 string Plain text representation of the concept
... subject Σ 1..1 Reference(Patient) Who and/or what the observation is about
... encounter Σ 0..1 Reference(Encounter) Healthcare event during which this observation is made
... effective[x] Σ 1..1 dateTime Clinically relevant time/time-period for observation
... Slices for performer Σ 1..2 Reference(Practitioner | PractitionerRole | Organization | CareTeam | Patient | RelatedPerson) Who is responsible for the observation
Slice: Unordered, Open by type:$this
.... performer:patient Σ 0..2 Reference(Patient) Who is responsible for the observation
.... performer:organization Σ 0..2 Reference(Organization) Who is responsible for the observation
.... performer:practitionerRole Σ 0..2 Reference(PractitionerRoleLiteSe) Who is responsible for the observation
.... performer:practitioner Σ 0..2 Reference(Practitioner) Who is responsible for the observation
... value[x] ΣC 0..1 Quantity Actual result
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... value Σ 1..1 decimal Numerical value (with implicit precision)
.... comparator ?!Σ 0..1 code < | <= | >= | > - how to understand the value
Binding: QuantityComparator (required): How the Quantity should be understood and represented.
.... unit Σ 1..1 string centimeters
Fixed Value: cm
.... system ΣC 1..1 uri System that defines coded unit form
Fixed Value: http://unitsofmeasure.org
.... code Σ 1..1 code Coded form of the unit
Binding: BodyLengthUnits (required)
Fixed Value: cm
... dataAbsentReason C 0..1 CodeableConcept Why the result is missing
Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... coding Σ 1..1 Coding Code defined by a terminology system
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... system Σ 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/data-absent-reason
..... version Σ 0..1 string Version of the system - if relevant
..... code Σ 1..1 code System isn't capable of supporting this element
Fixed Value: unsupported
..... 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
... note 0..* Annotation Comments about the observation

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / CodeURI
Observation.statusrequiredVitalSignStatus
https://cambio.codes/fhir/vs/vital-sign-status/v1
From this IG
Observation.codeexampleLOINCCodes(a valid code from LOINC)
http://hl7.org/fhir/ValueSet/observation-codes
From the FHIR Standard
Observation.value[x].comparatorrequiredQuantityComparator
http://hl7.org/fhir/ValueSet/quantity-comparator|4.0.1
From the FHIR Standard
Observation.value[x].coderequiredFixed Value: cm
http://hl7.org/fhir/ValueSet/ucum-bodylength|4.0.1
From the FHIR Standard
Observation.dataAbsentReasonextensibleDataAbsentReason
http://hl7.org/fhir/ValueSet/data-absent-reason
From the FHIR Standard
Observation.referenceRange.typepreferredObservationReferenceRangeMeaningCodes
http://hl7.org/fhir/ValueSet/referencerange-meaning
From the FHIR Standard
Observation.referenceRange.appliesToexampleObservationReferenceRangeAppliesToCodes
http://hl7.org/fhir/ValueSet/referencerange-appliesto
From the FHIR Standard
Observation.component.codeexampleLOINCCodes(a valid code from LOINC)
http://hl7.org/fhir/ValueSet/observation-codes
From the FHIR Standard
Observation.component.dataAbsentReasonextensibleDataAbsentReason
http://hl7.org/fhir/ValueSet/data-absent-reason
From the FHIR Standard
Observation.component.interpretationextensibleObservationInterpretationCodes
http://hl7.org/fhir/ValueSet/observation-interpretation
From the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorObservationIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorObservationIf 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-4errorObservationIf 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-5errorObservationIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceObservationA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
obs-6errorObservationdataAbsentReason SHALL only be present if Observation.value[x] is not present
: dataAbsentReason.empty() or value.empty()
obs-7errorObservationIf 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()

This structure is derived from ObservationArmSpanCore

Summary

Mandatory: 1 element(3 nested mandatory elements)
Fixed: 4 elements
Prohibited: 17 elements

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Observation C 0..* ObservationArmSpanCore Measurements and simple assertions
Constraints: obs-6, obs-7
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... status ?!Σ 1..1 code registered | preliminary | final | amended +
Binding: VitalSignStatus (required): The status of th result value. FHIR - Cambio preliminary -> unsigned final -> signed and completednonSignable entered in error -> invalidated cancelled -> removed amended -> resigned
... code Σ 1..1 CodeableConcept Type of observation (code / type)
Binding: LOINCCodes (example): Codes identifying names of simple observations.
.... coding Σ 1..1 Coding Code defined by a terminology system
..... system Σ 1..1 uri Identity of the terminology system
Fixed Value: http://snomed.info/sct
..... code Σ 1..1 code Symbol in syntax defined by the system
Fixed Value: 456701000124107
..... display Σ 0..1 string Arm span as the longest distance between the fingertips
Fixed Value: Arm span
... effective[x] Σ 1..1 dateTime Clinically relevant time/time-period for observation
... Slices for performer Σ 1..2 Reference(Practitioner | PractitionerRole | Organization | CareTeam | Patient | RelatedPerson) Who is responsible for the observation
Slice: Unordered, Open by type:$this
.... performer:patient Σ 0..2 Reference(Patient) Who is responsible for the observation
.... performer:organization Σ 0..2 Reference(Organization) Who is responsible for the observation
.... performer:practitionerRole Σ 0..2 Reference(PractitionerRoleLiteSe) Who is responsible for the observation
.... performer:practitioner Σ 0..2 Reference(Practitioner) Who is responsible for the observation

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Observation.statusrequiredVitalSignStatus
https://cambio.codes/fhir/vs/vital-sign-status/v1
From this IG
Observation.codeexampleLOINCCodes(a valid code from LOINC)
http://hl7.org/fhir/ValueSet/observation-codes
From the FHIR Standard
Observation.component.codeexampleLOINCCodes(a valid code from LOINC)
http://hl7.org/fhir/ValueSet/observation-codes
From the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorObservationIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorObservationIf 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-4errorObservationIf 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-5errorObservationIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceObservationA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
obs-6errorObservationdataAbsentReason SHALL only be present if Observation.value[x] is not present
: dataAbsentReason.empty() or value.empty()
obs-7errorObservationIf 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()

Differential View

This structure is derived from ObservationArmSpanCore

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Observation 0..* ObservationArmSpanCore Measurements and simple assertions
... implicitRules 0..0
... language 0..0
... text 0..0
... partOf 0..0
... status 1..1 code registered | preliminary | final | amended +
Binding: VitalSignStatus (required): The status of th result value. FHIR - Cambio preliminary -> unsigned final -> signed and completednonSignable entered in error -> invalidated cancelled -> removed amended -> resigned
... category 0..0
... focus 0..0
... issued 0..0
... performer 1..2 Reference(Practitioner | PractitionerRole | Organization | CareTeam | Patient | RelatedPerson) Who is responsible for the observation
... Slices for performer Content/Rules for all slices
.... performer:patient 0..2 Reference(Patient) Who is responsible for the observation
.... performer:organization 0..2 Reference(Organization) Who is responsible for the observation
.... performer:practitionerRole 0..2 Reference(PractitionerRoleLiteSe) Who is responsible for the observation
.... performer:practitioner 0..2 Reference(Practitioner) Who is responsible for the observation
... value[x]
.... unit 1..1 string centimeters
Fixed Value: cm
.... code 1..1 code Coded form of the unit
Fixed Value: cm
... dataAbsentReason
.... coding 1..1 Coding Code defined by a terminology system
..... system 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/data-absent-reason
..... code 1..1 code System isn't capable of supporting this element
Fixed Value: unsupported
... interpretation 0..0
... bodySite 0..0
... method 0..0
... specimen 0..0
... device 0..0
... referenceRange 0..0
... hasMember 0..0
... derivedFrom 0..0
... component 0..0

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
Observation.statusrequiredVitalSignStatus
https://cambio.codes/fhir/vs/vital-sign-status/v1
From this IG

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Observation C 0..* ObservationArmSpanCore Measurements and simple assertions
Constraints: obs-6, obs-7
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... contained 0..* Resource Contained, inline Resources
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier Σ 0..* Identifier Business Identifier for observation
... status ?!Σ 1..1 code registered | preliminary | final | amended +
Binding: VitalSignStatus (required): The status of th result value. FHIR - Cambio preliminary -> unsigned final -> signed and completednonSignable entered in error -> invalidated cancelled -> removed amended -> resigned
... code Σ 1..1 CodeableConcept Type of observation (code / type)
Binding: LOINCCodes (example): Codes identifying names of simple observations.
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... coding Σ 1..1 Coding Code defined by a terminology system
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... system Σ 1..1 uri Identity of the terminology system
Fixed Value: http://snomed.info/sct
..... version Σ 0..1 string Version of the system - if relevant
..... code Σ 1..1 code Symbol in syntax defined by the system
Fixed Value: 456701000124107
..... display Σ 0..1 string Arm span as the longest distance between the fingertips
Fixed Value: Arm span
..... userSelected Σ 0..1 boolean If this coding was chosen directly by the user
.... text Σ 0..1 string Plain text representation of the concept
... subject Σ 1..1 Reference(Patient) Who and/or what the observation is about
... encounter Σ 0..1 Reference(Encounter) Healthcare event during which this observation is made
... effective[x] Σ 1..1 dateTime Clinically relevant time/time-period for observation
... Slices for performer Σ 1..2 Reference(Practitioner | PractitionerRole | Organization | CareTeam | Patient | RelatedPerson) Who is responsible for the observation
Slice: Unordered, Open by type:$this
.... performer:patient Σ 0..2 Reference(Patient) Who is responsible for the observation
.... performer:organization Σ 0..2 Reference(Organization) Who is responsible for the observation
.... performer:practitionerRole Σ 0..2 Reference(PractitionerRoleLiteSe) Who is responsible for the observation
.... performer:practitioner Σ 0..2 Reference(Practitioner) Who is responsible for the observation
... value[x] ΣC 0..1 Quantity Actual result
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... value Σ 1..1 decimal Numerical value (with implicit precision)
.... comparator ?!Σ 0..1 code < | <= | >= | > - how to understand the value
Binding: QuantityComparator (required): How the Quantity should be understood and represented.
.... unit Σ 1..1 string centimeters
Fixed Value: cm
.... system ΣC 1..1 uri System that defines coded unit form
Fixed Value: http://unitsofmeasure.org
.... code Σ 1..1 code Coded form of the unit
Binding: BodyLengthUnits (required)
Fixed Value: cm
... dataAbsentReason C 0..1 CodeableConcept Why the result is missing
Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... coding Σ 1..1 Coding Code defined by a terminology system
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... system Σ 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/data-absent-reason
..... version Σ 0..1 string Version of the system - if relevant
..... code Σ 1..1 code System isn't capable of supporting this element
Fixed Value: unsupported
..... 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
... note 0..* Annotation Comments about the observation

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / CodeURI
Observation.statusrequiredVitalSignStatus
https://cambio.codes/fhir/vs/vital-sign-status/v1
From this IG
Observation.codeexampleLOINCCodes(a valid code from LOINC)
http://hl7.org/fhir/ValueSet/observation-codes
From the FHIR Standard
Observation.value[x].comparatorrequiredQuantityComparator
http://hl7.org/fhir/ValueSet/quantity-comparator|4.0.1
From the FHIR Standard
Observation.value[x].coderequiredFixed Value: cm
http://hl7.org/fhir/ValueSet/ucum-bodylength|4.0.1
From the FHIR Standard
Observation.dataAbsentReasonextensibleDataAbsentReason
http://hl7.org/fhir/ValueSet/data-absent-reason
From the FHIR Standard
Observation.referenceRange.typepreferredObservationReferenceRangeMeaningCodes
http://hl7.org/fhir/ValueSet/referencerange-meaning
From the FHIR Standard
Observation.referenceRange.appliesToexampleObservationReferenceRangeAppliesToCodes
http://hl7.org/fhir/ValueSet/referencerange-appliesto
From the FHIR Standard
Observation.component.codeexampleLOINCCodes(a valid code from LOINC)
http://hl7.org/fhir/ValueSet/observation-codes
From the FHIR Standard
Observation.component.dataAbsentReasonextensibleDataAbsentReason
http://hl7.org/fhir/ValueSet/data-absent-reason
From the FHIR Standard
Observation.component.interpretationextensibleObservationInterpretationCodes
http://hl7.org/fhir/ValueSet/observation-interpretation
From the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorObservationIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorObservationIf 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-4errorObservationIf 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-5errorObservationIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceObservationA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
obs-6errorObservationdataAbsentReason SHALL only be present if Observation.value[x] is not present
: dataAbsentReason.empty() or value.empty()
obs-7errorObservationIf 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()

This structure is derived from ObservationArmSpanCore

Summary

Mandatory: 1 element(3 nested mandatory elements)
Fixed: 4 elements
Prohibited: 17 elements

 

Other representations of profile: CSV, Excel, Schematron