This page is part of the U.S. Physical Activity IG (v1.0.0: STU 1.0) based on FHIR R4. This is the current published version. For a full list of available versions, see the Directory of published versions
Official URL: http://hl7.org/fhir/us/physical-activity/StructureDefinition/pa-observation-activity-group | Version: 1.0.0 | |||
Standards status: Trial-use | Maturity Level: 2 | Computable Name: PAObservationActivityGroup |
A profile for observations that collects a set of activity-related measures that all pertain to the same physical activity instance.
This Observation helps to organize the various activity-based measures so that it is easy to identify what measures are associated with the same physical activity episode (run, swim, work-out, etc.).
NOTE: While this guide defines a standardized code for the organization of physical activity information, additional codings can also be used if they are appropriate for the same collection of information. As well, observations may be collected under other 'grouping' observations if there's a desire to organize collected data in alternate ways. (E.g. an Observation with members that list all 'running' durations in a particular time-period.)
Usage:
Description of Profiles, Differentials, Snapshots and how the different presentations work.
This structure is derived from PAObservationBase
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Observation | 0..* | PAObservationBase | Measurements and simple assertions | |
code | 1..1 | CodeableConcept | Type of observation (code / type) 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://hl7.org/fhir/us/physical-activity/CodeSystem/pa-temporary-codes | |
code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: PAPanel | |
effective[x] | 1..1 | Clinically relevant time/time-period for observation | ||
effectiveDateTime | dateTime | |||
effectivePeriod | Period | |||
value[x] | 0..0 | |||
value[x]:valueCodeableConcept | 0..0 | |||
value[x]:valueQuantity | 0..0 | |||
hasMember | S | 1..* | Reference(PA Observation - Supporting, Activity-based) | Related resource that belongs to the Observation group |
Documentation for this format |
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Observation | C | 0..* | PAObservationBase | Measurements and simple assertions |
status | ?!SΣ | 1..1 | code | final | amended | corrected | entered-in-error Binding: ObservationStatus (required) |
Slices for category | 2..* | CodeableConcept | Classification of type of observation Slice: Unordered, Open by pattern:$this Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories. | |
category:Activity | S | 1..1 | CodeableConcept | Activity (Required for U.S. Core) Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories. 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: activity | |
category:PhysicalActivity | S | 1..1 | CodeableConcept | Physical Activity Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories. 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://hl7.org/fhir/us/physical-activity/CodeSystem/pa-temporary-codes | |
code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: PhysicalActivity | |
code | SΣ | 1..1 | CodeableConcept | Type of observation (code / type) Binding: LOINCCodes (preferred) 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://hl7.org/fhir/us/physical-activity/CodeSystem/pa-temporary-codes | |
code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: PAPanel | |
subject | SΣ | 1..1 | Reference(US Core Patient Profile) | Who and/or what the observation is about |
Slices for effective[x] | SΣ | 1..1 | Clinically relevant time/time-period for observation Slice: Unordered, Closed by type:$this | |
effectiveDateTime | dateTime | |||
effective[x]:effectiveDateTime | Σ | 0..1 | dateTime | Clinically relevant time/time-period for observation |
effective[x]:effectivePeriod | Σ | 0..1 | Period | Clinically relevant time/time-period for observation |
start | SΣC | 1..1 | dateTime | Starting time with inclusive boundary |
end | SΣC | 1..1 | dateTime | End time with inclusive boundary, if not ongoing |
performer | SΣ | 0..* | Reference(US Core Patient Profile | US Core Practitioner Profile) | Who is responsible for the observation |
note | S | 0..* | Annotation | Comments about the observation |
author[x] | SΣ | 1..1 | Reference(Practitioner | Patient) | Individual responsible for the annotation |
time | SΣ | 1..1 | dateTime | When the annotation was made |
text | SΣ | 1..1 | markdown | The annotation - text content (as markdown) |
hasMember | SΣ | 1..* | Reference(PA Observation - Supporting, Activity-based) | Related resource that belongs to the Observation group |
Documentation for this format |
Path | Conformance | ValueSet / Code |
Observation.status | required | ObservationStatus |
Observation.category | preferred | ObservationCategoryCodes |
Observation.category:Activity | preferred | Pattern: activity |
Observation.category:PhysicalActivity | preferred | Pattern: PhysicalActivity |
Observation.code | preferred | Pattern: PAPanel |
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()) | |
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() |
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
Observation | C | 0..* | PAObservationBase | Measurements and simple assertions | ||||
id | Σ | 0..1 | id | Logical id of this artifact | ||||
meta | Σ | 0..1 | Meta | Metadata about the resource | ||||
language | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): 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 | |||||
identifier | Σ | 0..* | Identifier | Business Identifier for observation | ||||
basedOn | Σ | 0..* | Reference(CarePlan | DeviceRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest) | Fulfills plan, proposal or order | ||||
partOf | Σ | 0..* | Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Immunization | ImagingStudy) | Part of referenced event | ||||
status | ?!SΣ | 1..1 | code | final | amended | corrected | entered-in-error Binding: ObservationStatus (required) | ||||
Slices for category | 2..* | CodeableConcept | Classification of type of observation Slice: Unordered, Open by pattern:$this Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories. | |||||
category:Activity | S | 1..1 | CodeableConcept | Activity (Required for U.S. Core) Binding: ObservationCategoryCodes (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: activity | |||||
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 | |||||
category:PhysicalActivity | S | 1..1 | CodeableConcept | Physical Activity Binding: ObservationCategoryCodes (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://hl7.org/fhir/us/physical-activity/CodeSystem/pa-temporary-codes | |||||
version | 0..1 | string | Version of the system - if relevant | |||||
code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: PhysicalActivity | |||||
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Σ | 1..1 | CodeableConcept | Type of observation (code / type) Binding: LOINCCodes (preferred) 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://hl7.org/fhir/us/physical-activity/CodeSystem/pa-temporary-codes | |||||
version | 0..1 | string | Version of the system - if relevant | |||||
code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: PAPanel | |||||
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 | |||||
subject | SΣ | 1..1 | Reference(US Core Patient Profile) | Who and/or what the observation is about | ||||
encounter | Σ | 0..1 | Reference(Encounter) | Healthcare event during which this observation is made | ||||
Slices for effective[x] | SΣ | 1..1 | Clinically relevant time/time-period for observation Slice: Unordered, Closed by type:$this | |||||
effectiveDateTime | dateTime S | |||||||
effectivePeriod | Period | |||||||
effective[x]:effectiveDateTime | Σ | 0..1 | dateTime | Clinically relevant time/time-period for observation | ||||
effective[x]:effectivePeriod | Σ | 0..1 | Period | Clinically relevant time/time-period for observation | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
start | SΣC | 1..1 | dateTime | Starting time with inclusive boundary | ||||
end | SΣC | 1..1 | dateTime | End time with inclusive boundary, if not ongoing | ||||
issued | Σ | 0..1 | instant | Date/Time this version was made available | ||||
performer | SΣ | 0..* | Reference(US Core Patient Profile S | US Core Practitioner Profile S | US Core PractitionerRole Profile | RelatedPerson) | Who is responsible for the observation | ||||
dataAbsentReason | C | 0..1 | CodeableConcept | Why the result is missing Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing. | ||||
interpretation | 0..* | CodeableConcept | High, low, normal, etc. Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations. | |||||
note | S | 0..* | Annotation | Comments about the observation | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
author[x] | SΣ | 1..1 | Reference(Practitioner S | Patient S | RelatedPerson) | Individual responsible for the annotation | ||||
time | SΣ | 1..1 | dateTime | When the annotation was made | ||||
text | SΣ | 1..1 | markdown | The annotation - text content (as markdown) | ||||
bodySite | 0..1 | CodeableConcept | Observed body part Binding: SNOMEDCTBodyStructures (example): Codes describing anatomical locations. May include laterality. | |||||
method | 0..1 | CodeableConcept | How it was done Binding: ObservationMethods (example): Methods for simple observations. | |||||
device | 0..1 | Reference(Device | DeviceMetric) | (Measurement) Device | |||||
referenceRange | C | 0..* | BackboneElement | Provides guide for interpretation | ||||
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 | ||||
type | 0..1 | CodeableConcept | Reference range qualifier Binding: ObservationReferenceRangeMeaningCodes (preferred): Code for the meaning of a reference range. | |||||
appliesTo | 0..* | CodeableConcept | Reference range population Binding: ObservationReferenceRangeAppliesToCodes (example): Codes identifying the population the reference range applies to. | |||||
age | 0..1 | Range | Applicable age range, if relevant | |||||
text | 0..1 | string | Text based reference range in an observation | |||||
hasMember | SΣ | 1..* | Reference(PA Observation - Supporting, Activity-based) | Related resource that belongs to the Observation group | ||||
derivedFrom | Σ | 0..* | Reference(DocumentReference | ImagingStudy | Media | QuestionnaireResponse | Observation | MolecularSequence) | Related measurements the observation is made from | ||||
component | Σ | 0..* | BackboneElement | Component results | ||||
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 | Σ | 1..1 | CodeableConcept | Type of component observation (code / type) Binding: LOINCCodes (example): Codes identifying names of simple observations. | ||||
value[x] | Σ | 0..1 | Actual component result | |||||
valueQuantity | Quantity | |||||||
valueCodeableConcept | CodeableConcept | |||||||
valueString | string | |||||||
valueBoolean | boolean | |||||||
valueInteger | integer | |||||||
valueRange | Range | |||||||
valueRatio | Ratio | |||||||
valueSampledData | SampledData | |||||||
valueTime | time | |||||||
valueDateTime | dateTime | |||||||
valuePeriod | Period | |||||||
dataAbsentReason | C | 0..1 | CodeableConcept | Why the component result is missing Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing. | ||||
interpretation | 0..* | CodeableConcept | High, low, normal, etc. Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations. | |||||
referenceRange | 0..* | See referenceRange (Observation) | Provides guide for interpretation of component result | |||||
Documentation for this format |
Path | Conformance | ValueSet / Code | ||||
Observation.language | preferred | CommonLanguages
| ||||
Observation.status | required | ObservationStatus | ||||
Observation.category | preferred | ObservationCategoryCodes | ||||
Observation.category:Activity | preferred | Pattern: activity | ||||
Observation.category:PhysicalActivity | preferred | Pattern: PhysicalActivity | ||||
Observation.code | preferred | Pattern: PAPanel | ||||
Observation.dataAbsentReason | extensible | DataAbsentReason | ||||
Observation.interpretation | extensible | ObservationInterpretationCodes | ||||
Observation.bodySite | example | SNOMEDCTBodyStructures | ||||
Observation.method | example | ObservationMethods | ||||
Observation.referenceRange.type | preferred | ObservationReferenceRangeMeaningCodes | ||||
Observation.referenceRange.appliesTo | example | ObservationReferenceRangeAppliesToCodes | ||||
Observation.component.code | example | LOINCCodes (a valid code from LOINC) | ||||
Observation.component.dataAbsentReason | extensible | DataAbsentReason | ||||
Observation.component.interpretation | extensible | ObservationInterpretationCodes |
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-3 | error | Observation.referenceRange | Must have at least a low or a high or text : low.exists() or high.exists() or text.exists() | |
obs-6 | error | Observation | dataAbsentReason SHALL only be present if Observation.value[x] is not present : dataAbsentReason.empty() or value.empty() | |
obs-7 | error | Observation | If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present : value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty() |
This structure is derived from PAObservationBase
Summary
Mandatory: 1 element
Must-Support: 1 element
Prohibited: 3 elements
Structures
This structure refers to these other structures:
Maturity: 2
Differential View
This structure is derived from PAObservationBase
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Observation | 0..* | PAObservationBase | Measurements and simple assertions | |
code | 1..1 | CodeableConcept | Type of observation (code / type) 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://hl7.org/fhir/us/physical-activity/CodeSystem/pa-temporary-codes | |
code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: PAPanel | |
effective[x] | 1..1 | Clinically relevant time/time-period for observation | ||
effectiveDateTime | dateTime | |||
effectivePeriod | Period | |||
value[x] | 0..0 | |||
value[x]:valueCodeableConcept | 0..0 | |||
value[x]:valueQuantity | 0..0 | |||
hasMember | S | 1..* | Reference(PA Observation - Supporting, Activity-based) | Related resource that belongs to the Observation group |
Documentation for this format |
Key Elements View
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Observation | C | 0..* | PAObservationBase | Measurements and simple assertions |
status | ?!SΣ | 1..1 | code | final | amended | corrected | entered-in-error Binding: ObservationStatus (required) |
Slices for category | 2..* | CodeableConcept | Classification of type of observation Slice: Unordered, Open by pattern:$this Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories. | |
category:Activity | S | 1..1 | CodeableConcept | Activity (Required for U.S. Core) Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories. 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: activity | |
category:PhysicalActivity | S | 1..1 | CodeableConcept | Physical Activity Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories. 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://hl7.org/fhir/us/physical-activity/CodeSystem/pa-temporary-codes | |
code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: PhysicalActivity | |
code | SΣ | 1..1 | CodeableConcept | Type of observation (code / type) Binding: LOINCCodes (preferred) 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://hl7.org/fhir/us/physical-activity/CodeSystem/pa-temporary-codes | |
code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: PAPanel | |
subject | SΣ | 1..1 | Reference(US Core Patient Profile) | Who and/or what the observation is about |
Slices for effective[x] | SΣ | 1..1 | Clinically relevant time/time-period for observation Slice: Unordered, Closed by type:$this | |
effectiveDateTime | dateTime | |||
effective[x]:effectiveDateTime | Σ | 0..1 | dateTime | Clinically relevant time/time-period for observation |
effective[x]:effectivePeriod | Σ | 0..1 | Period | Clinically relevant time/time-period for observation |
start | SΣC | 1..1 | dateTime | Starting time with inclusive boundary |
end | SΣC | 1..1 | dateTime | End time with inclusive boundary, if not ongoing |
performer | SΣ | 0..* | Reference(US Core Patient Profile | US Core Practitioner Profile) | Who is responsible for the observation |
note | S | 0..* | Annotation | Comments about the observation |
author[x] | SΣ | 1..1 | Reference(Practitioner | Patient) | Individual responsible for the annotation |
time | SΣ | 1..1 | dateTime | When the annotation was made |
text | SΣ | 1..1 | markdown | The annotation - text content (as markdown) |
hasMember | SΣ | 1..* | Reference(PA Observation - Supporting, Activity-based) | Related resource that belongs to the Observation group |
Documentation for this format |
Path | Conformance | ValueSet / Code |
Observation.status | required | ObservationStatus |
Observation.category | preferred | ObservationCategoryCodes |
Observation.category:Activity | preferred | Pattern: activity |
Observation.category:PhysicalActivity | preferred | Pattern: PhysicalActivity |
Observation.code | preferred | Pattern: PAPanel |
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()) | |
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() |
Snapshot View
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
Observation | C | 0..* | PAObservationBase | Measurements and simple assertions | ||||
id | Σ | 0..1 | id | Logical id of this artifact | ||||
meta | Σ | 0..1 | Meta | Metadata about the resource | ||||
language | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): 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 | |||||
identifier | Σ | 0..* | Identifier | Business Identifier for observation | ||||
basedOn | Σ | 0..* | Reference(CarePlan | DeviceRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest) | Fulfills plan, proposal or order | ||||
partOf | Σ | 0..* | Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Immunization | ImagingStudy) | Part of referenced event | ||||
status | ?!SΣ | 1..1 | code | final | amended | corrected | entered-in-error Binding: ObservationStatus (required) | ||||
Slices for category | 2..* | CodeableConcept | Classification of type of observation Slice: Unordered, Open by pattern:$this Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories. | |||||
category:Activity | S | 1..1 | CodeableConcept | Activity (Required for U.S. Core) Binding: ObservationCategoryCodes (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: activity | |||||
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 | |||||
category:PhysicalActivity | S | 1..1 | CodeableConcept | Physical Activity Binding: ObservationCategoryCodes (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://hl7.org/fhir/us/physical-activity/CodeSystem/pa-temporary-codes | |||||
version | 0..1 | string | Version of the system - if relevant | |||||
code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: PhysicalActivity | |||||
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Σ | 1..1 | CodeableConcept | Type of observation (code / type) Binding: LOINCCodes (preferred) 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://hl7.org/fhir/us/physical-activity/CodeSystem/pa-temporary-codes | |||||
version | 0..1 | string | Version of the system - if relevant | |||||
code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: PAPanel | |||||
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 | |||||
subject | SΣ | 1..1 | Reference(US Core Patient Profile) | Who and/or what the observation is about | ||||
encounter | Σ | 0..1 | Reference(Encounter) | Healthcare event during which this observation is made | ||||
Slices for effective[x] | SΣ | 1..1 | Clinically relevant time/time-period for observation Slice: Unordered, Closed by type:$this | |||||
effectiveDateTime | dateTime S | |||||||
effectivePeriod | Period | |||||||
effective[x]:effectiveDateTime | Σ | 0..1 | dateTime | Clinically relevant time/time-period for observation | ||||
effective[x]:effectivePeriod | Σ | 0..1 | Period | Clinically relevant time/time-period for observation | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
start | SΣC | 1..1 | dateTime | Starting time with inclusive boundary | ||||
end | SΣC | 1..1 | dateTime | End time with inclusive boundary, if not ongoing | ||||
issued | Σ | 0..1 | instant | Date/Time this version was made available | ||||
performer | SΣ | 0..* | Reference(US Core Patient Profile S | US Core Practitioner Profile S | US Core PractitionerRole Profile | RelatedPerson) | Who is responsible for the observation | ||||
dataAbsentReason | C | 0..1 | CodeableConcept | Why the result is missing Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing. | ||||
interpretation | 0..* | CodeableConcept | High, low, normal, etc. Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations. | |||||
note | S | 0..* | Annotation | Comments about the observation | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
author[x] | SΣ | 1..1 | Reference(Practitioner S | Patient S | RelatedPerson) | Individual responsible for the annotation | ||||
time | SΣ | 1..1 | dateTime | When the annotation was made | ||||
text | SΣ | 1..1 | markdown | The annotation - text content (as markdown) | ||||
bodySite | 0..1 | CodeableConcept | Observed body part Binding: SNOMEDCTBodyStructures (example): Codes describing anatomical locations. May include laterality. | |||||
method | 0..1 | CodeableConcept | How it was done Binding: ObservationMethods (example): Methods for simple observations. | |||||
device | 0..1 | Reference(Device | DeviceMetric) | (Measurement) Device | |||||
referenceRange | C | 0..* | BackboneElement | Provides guide for interpretation | ||||
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 | ||||
type | 0..1 | CodeableConcept | Reference range qualifier Binding: ObservationReferenceRangeMeaningCodes (preferred): Code for the meaning of a reference range. | |||||
appliesTo | 0..* | CodeableConcept | Reference range population Binding: ObservationReferenceRangeAppliesToCodes (example): Codes identifying the population the reference range applies to. | |||||
age | 0..1 | Range | Applicable age range, if relevant | |||||
text | 0..1 | string | Text based reference range in an observation | |||||
hasMember | SΣ | 1..* | Reference(PA Observation - Supporting, Activity-based) | Related resource that belongs to the Observation group | ||||
derivedFrom | Σ | 0..* | Reference(DocumentReference | ImagingStudy | Media | QuestionnaireResponse | Observation | MolecularSequence) | Related measurements the observation is made from | ||||
component | Σ | 0..* | BackboneElement | Component results | ||||
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 | Σ | 1..1 | CodeableConcept | Type of component observation (code / type) Binding: LOINCCodes (example): Codes identifying names of simple observations. | ||||
value[x] | Σ | 0..1 | Actual component result | |||||
valueQuantity | Quantity | |||||||
valueCodeableConcept | CodeableConcept | |||||||
valueString | string | |||||||
valueBoolean | boolean | |||||||
valueInteger | integer | |||||||
valueRange | Range | |||||||
valueRatio | Ratio | |||||||
valueSampledData | SampledData | |||||||
valueTime | time | |||||||
valueDateTime | dateTime | |||||||
valuePeriod | Period | |||||||
dataAbsentReason | C | 0..1 | CodeableConcept | Why the component result is missing Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing. | ||||
interpretation | 0..* | CodeableConcept | High, low, normal, etc. Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations. | |||||
referenceRange | 0..* | See referenceRange (Observation) | Provides guide for interpretation of component result | |||||
Documentation for this format |
Path | Conformance | ValueSet / Code | ||||
Observation.language | preferred | CommonLanguages
| ||||
Observation.status | required | ObservationStatus | ||||
Observation.category | preferred | ObservationCategoryCodes | ||||
Observation.category:Activity | preferred | Pattern: activity | ||||
Observation.category:PhysicalActivity | preferred | Pattern: PhysicalActivity | ||||
Observation.code | preferred | Pattern: PAPanel | ||||
Observation.dataAbsentReason | extensible | DataAbsentReason | ||||
Observation.interpretation | extensible | ObservationInterpretationCodes | ||||
Observation.bodySite | example | SNOMEDCTBodyStructures | ||||
Observation.method | example | ObservationMethods | ||||
Observation.referenceRange.type | preferred | ObservationReferenceRangeMeaningCodes | ||||
Observation.referenceRange.appliesTo | example | ObservationReferenceRangeAppliesToCodes | ||||
Observation.component.code | example | LOINCCodes (a valid code from LOINC) | ||||
Observation.component.dataAbsentReason | extensible | DataAbsentReason | ||||
Observation.component.interpretation | extensible | ObservationInterpretationCodes |
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-3 | error | Observation.referenceRange | Must have at least a low or a high or text : low.exists() or high.exists() or text.exists() | |
obs-6 | error | Observation | dataAbsentReason SHALL only be present if Observation.value[x] is not present : dataAbsentReason.empty() or value.empty() | |
obs-7 | error | Observation | If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present : value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty() |
This structure is derived from PAObservationBase
Summary
Mandatory: 1 element
Must-Support: 1 element
Prohibited: 3 elements
Structures
This structure refers to these other structures:
Maturity: 2
Other representations of profile: CSV, Excel, Schematron