MaxMD AMA IG - Local Development build (v0.0.1). See the Directory of published versions
Blood pressure measurement observations that adhere to this profile may, but do not necessarily, conform to stricter constraints (also referred to in this document as "clinically valid blood pressures") which specify that the measurements should only be at the brachial artery (with laterality), in sitting position, at rest, using an automatic blood pressure monitor with cuff size specified. (Note: To constrain to only "clinically valid blood pressure" observations, use AMA-IHMI-observation-blood-pressure-3.)
This profile allows the Observation Resource to be extended to include body position and exertional status as Observation components (i.e., Observation.component bodyPosition and Observation.component exertionalStatus). This is not the AMA IHMI preferred approach for extending the Observation Resource to include body position and exertional status. However, this option was provided based on feedback from some implementers who expressed a preference for using components to extend the Observation Resource. As an alternative option for implementer feedback, AMA-IHMI-observation-blood-pressure-2 is identical to AMA-IHMI-observation-blood-pressure-1 except that AMA-IHMI-observation-blood-pressure-2 includes body position and exertional status as Observation extension elements (i.e., Observation.extension bodyPosition and Observation.extension exertionalStatus).
AMA-IHMI-observation-blood-pressure-1 is intended to be paired with AMA-IHMI-observation-heart-rate-1 which constrains heart rate measurements using a similar approach.
This element references the SNOMED CT refset 5241000207108 American Medical Association Integrated Health Model Initiative, body structure, refset 2, simple type reference set (foundation metadata concept) as follows:
To transform the concept definition of a SNOMED CT blood pressure concept used as an Observation Code or Component Code in this profile (i.e., 4011000207100 Measurement of blood pressure (procedure), 4131000207105 Measurement of diastolic blood pressure (procedure) or 4351000207102 Measurement of systolic blood pressure (procedure)) to arrive at a more granular precoordinated SNOMED CT concept in the AMA IHMI SNOMED CT Extension, the concepts in the SNOMED CT refset for Observation.body.Site correspond to the two SNOMED CT attribute-value pairs as shown in the two right columns.
Observation.bodySite SNOMED CT Refset Member | SNOMED CT attribute: 704319004 Inheres in (attribute) | SNOMED CT attribute: 405814001 Procedure site - Indirect (attribute) |
---|---|---|
40983000 Upper arm structure (body structure) | 17137000 Structure of brachial artery (body structure) | 40983000 Upper arm structure (body structure) |
368209003 Right upper arm structure (body structure) | 723962009 Structure of right brachial artery (body structure) | 368209003 Right upper arm structure (body structure) |
368208006 Left upper arm structure (body structure) | 723961002 Structure of left brachial artery (body structure) | 368208006 Left upper arm structure (body structure) |
8205005 Wrist region structure (body structure) | 45631007 Structure of radial artery (body structure) | 8205005 Wrist region structure (body structure) |
9736006 Structure of right wrist (body structure) | 368503001 Structure of right radial artery (body structure) | 9736006 Structure of right wrist (body structure) |
5951000 Structure of left wrist (body structure) | 368504007 Structure of left radial artery (body structure) | 5951000 Structure of left wrist (body structure) |
This element references a URL for an AMA IHMI profile of Type Device as follows:
The referenced AMA-IHMI-device-blood-pressure-2 profile's Device.type.coding.code references the SNOMED CT refset 5251000207105 American Medical Association Integrated Health Model Initiative, device, refset 2, simple type reference set (foundation metadata concept).
To transform the concept definition of a SNOMED CT blood pressure concept used as an Observation Code or Component Code in this profile (i.e., 4011000207100 Measurement of blood pressure (procedure), 4131000207105 Measurement of diastolic blood pressure (procedure) or 4351000207102 Measurement of systolic blood pressure (procedure)) to arrive at a more granular precoordinated SNOMED CT concept in the AMA IHMI SNOMED CT Extension, the concepts in the SNOMED CT refset for Device.type correspond to the SNOMED CT attribute-value pairs as shown in the right column.
Device.type SNOMED CT Refset Member | SNOMED CT attribute: 424226004 Using device (attribute) |
---|---|
3901000207100 Automatic blood pressure monitor (physical object) | 3901000207100 Automatic blood pressure monitor (physical object) |
3941000207103 Automatic blood pressure monitor with small adult cuff (physical object) | 3941000207103 Automatic blood pressure monitor with small adult cuff (physical object) |
3931000207106 Automatic blood pressure monitor with medium adult cuff (physical object) | 3931000207106 Automatic blood pressure monitor with medium adult cuff (physical object) |
3921000207108 Automatic blood pressure monitor with large adult cuff (physical object) | 3921000207108 Automatic blood pressure monitor with large adult cuff (physical object) |
4851000207105 Automatic blood pressure monitor with extra large adult cuff (physical object) | 4851000207105 Automatic blood pressure monitor with extra large adult cuff (physical object) |
This element references the SNOMED CT concept 33586001 Sitting position (finding) as follows:
To transform the concept definition of a SNOMED CT blood pressure concept used as an Observation Code or Component Code in this profile (i.e., 4011000207100 Measurement of blood pressure (procedure), 4131000207105 Measurement of diastolic blood pressure (procedure) or 4351000207102 Measurement of systolic blood pressure (procedure)) to arrive at a more granular precoordinated SNOMED CT concept in the AMA IHMI SNOMED CT Extension, the SNOMED CT concepts for Observation.component.valueCodeableConcept (bodyPosition) AND/OR Observation.component.valueCodeableConcept (exertionalStatus) correspond to the SNOMED CT attribute-value pairs as shown in the right column.
Observation.component bodyPosition | Observation.component exertionalStatus | SNOMED CT attribute: 704326004 Precondition (attribute) |
---|---|---|
33586001 Sitting position (finding) | 33586001 Sitting position (finding) | |
128975004 Resting state (finding) | 128975004 Resting state (finding) | |
33586001 Sitting position (finding) | 128975004 Resting state (finding) | 4001000207103 In sitting position at rest (finding) |
For exertionalStatus, the ElementDefinition.short and ElementDefinition.definition (below) were created and added by AMA IHMI.
exertionalStatus is an AMA IHMI Observation Component extension to capture associated exertional states that may impact the observation result. For example, a blood pressure measurement observation result that specifies "resting state" is intended to indicate that the individual was at rest (e.g., for 5 minutes) prior to the measurement. It is anticipated that this element might evolve or require refinement. For example, as AMA IHMI moves to FHIR R4 (v4.0.0), exertionalStatus could possibly be captured using the FHIR Observation Resource Extension: Precondition (http://hl7.org/fhir/StructureDefinition/observation-precondition).
This element references the SNOMED CT concept 128975004 Resting state (finding) as follows:
To transform the concept definition of a SNOMED CT blood pressure concept used as an Observation Code or Component Code in this profile (i.e., 4011000207100 Measurement of blood pressure (procedure), 4131000207105 Measurement of diastolic blood pressure (procedure) or 4351000207102 Measurement of systolic blood pressure (procedure)) to arrive at a more granular precoordinated SNOMED CT concept in the AMA IHMI SNOMED CT Extension, the SNOMED CT concepts for Observation.component.valueCodeableConcept (bodyPosition) AND/OR Observation.component.valueCodeableConcept (exertionalStatus) correspond to the SNOMED CT attribute-value pairs as shown in the right column.
Observation.component bodyPosition | Observation.component exertionalStatus | 704326004 Precondition (attribute) |
---|---|---|
33586001 Sitting position (finding) | 33586001 Sitting position (finding) | |
128975004 Resting state (finding) | 128975004 Resting state (finding) | |
33586001 Sitting position (finding) | 128975004 Resting state (finding) | 4001000207103 In sitting position at rest (finding) |
The official URL for this profile is:
http://example.org/fhir/StructureDefinition/StructureDefinition/TestObservation3
Description of Profiles, Differentials, Snapshots and how the different presentations work.
This structure is derived from Observation
This structure is derived from Observation
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Observation | 0..* | Observation | Measurements and simple assertions | |
extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |
Extension-Observation-ExertionalStatus | 0..1 | CodeableConcept | The state of exertion preceding or during the observation. URL: https://trifolia-fhir-dev.lantanagroup.com/igs/lantana_prod_hapi_r4/MaxMD-AMA-Test-IG/StructureDefinition/Extension-Observation-ExertionalStatus | |
status | 1..1 | code | registered | preliminary | final | amended + Fixed Value: final | |
code | ||||
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: 65653002 | |
display | 1..1 | string | Representation defined by the system Fixed Value: Pulse taking (procedure) | |
userSelected | 0..0 | |||
subject | 1..1 | Reference(Patient) | Who and/or what the observation is about | |
effective[x] | 1..1 | dateTime | Clinically relevant time/time-period for observation | |
effective[x]:effectiveDateTime | 1..1 | dateTime | Clinically relevant time/time-period for observation | |
value[x] | 1..1 | Quantity | Actual result | |
value[x]:valueQuantity | 1..1 | Quantity | Actual result | |
value | 1..1 | decimal | Numerical value (with implicit precision) | |
comparator | 0..0 | |||
unit | 1..1 | string | Unit representation | |
system | 1..1 | uri | System that defines coded unit form Fixed Value: http://unitsofmeasure.org | |
code | 1..1 | code | Coded form of the unit Fixed Value: /min | |
dataAbsentReason | 0..0 | |||
interpretation | 0..0 | |||
bodySite | ||||
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 Binding: AMA IHMI valueSet body structure 1 instance (required) | |
display | 1..1 | string | Representation defined by the system | |
method | 0..0 | |||
specimen | 0..0 | |||
Documentation for this format |
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Observation | I | 0..* | Observation | Measurements and simple assertions |
id | Σ | 0..1 | string | Logical id of this artifact |
meta | ΣI | 0..1 | Meta | Metadata about the resource |
implicitRules | ?!ΣI | 0..1 | uri | A set of rules under which this content was created |
language | I | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred) Max Binding: AllLanguages |
text | I | 0..1 | Narrative | Text summary of the resource, for human interpretation |
contained | 0..* | Resource | Contained, inline Resources | |
extension | I | 0..* | Extension | Extension Slice: Unordered, Open by value:url |
Extension-Observation-ExertionalStatus | I | 0..1 | CodeableConcept | The state of exertion preceding or during the observation. URL: https://trifolia-fhir-dev.lantanagroup.com/igs/lantana_prod_hapi_r4/MaxMD-AMA-Test-IG/StructureDefinition/Extension-Observation-ExertionalStatus |
modifierExtension | ?!I | 0..* | Extension | Extensions that cannot be ignored |
identifier | ΣI | 0..* | Identifier | Business Identifier for observation |
basedOn | ΣI | 0..* | Reference(CarePlan | DeviceRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest) | Fulfills plan, proposal or order |
partOf | ΣI | 0..* | Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Immunization | ImagingStudy) | Part of referenced event |
status | ?!ΣI | 1..1 | code | registered | preliminary | final | amended + Binding: ObservationStatus (required) Fixed Value: final |
category | I | 0..* | CodeableConcept | Classification of type of observation Binding: ObservationCategoryCodes (preferred) |
code | ΣI | 1..1 | CodeableConcept | Type of observation (code / type) Binding: LOINCCodes (example) |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | I | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url |
coding | ΣI | 1..1 | Coding | Code defined by a terminology system |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | I | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url |
system | ΣI | 1..1 | uri | Identity of the terminology system Fixed Value: http://snomed.info/sct |
version | ΣI | 0..1 | string | Version of the system - if relevant |
code | ΣI | 1..1 | code | Symbol in syntax defined by the system Fixed Value: 65653002 |
display | ΣI | 1..1 | string | Representation defined by the system Fixed Value: Pulse taking (procedure) |
text | ΣI | 0..1 | string | Plain text representation of the concept |
subject | ΣI | 1..1 | Reference(Patient) | Who and/or what the observation is about |
focus | ΣI | 0..* | Reference(Resource) | What the observation is about, when it is not about the subject of record |
encounter | ΣI | 0..1 | Reference(Encounter) | Healthcare event during which this observation is made |
effective[x] | ΣI | 1..1 | (Slice Definition) | Clinically relevant time/time-period for observation Slice: Unordered, Closed by type:$this |
effective[x]:effectiveDateTime | ΣI | 1..1 | dateTime | Clinically relevant time/time-period for observation |
issued | ΣI | 0..1 | instant | Date/Time this version was made available |
performer | ΣI | 0..* | Reference(Practitioner | PractitionerRole | Organization | CareTeam | Patient | RelatedPerson) | Who is responsible for the observation |
value[x] | ΣI | 1..1 | (Slice Definition) | Actual result Slice: Unordered, Closed by type:$this |
value[x]:valueQuantity | ΣI | 1..1 | Quantity | Actual result |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | I | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url |
value | ΣI | 1..1 | decimal | Numerical value (with implicit precision) |
unit | ΣI | 1..1 | string | Unit representation |
system | ΣI | 1..1 | uri | System that defines coded unit form Fixed Value: http://unitsofmeasure.org |
code | ΣI | 1..1 | code | Coded form of the unit Fixed Value: /min |
note | I | 0..* | Annotation | Comments about the observation |
bodySite | I | 0..1 | CodeableConcept | Observed body part Binding: SNOMEDCTBodyStructures (example) |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | I | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url |
coding | ΣI | 1..1 | Coding | Code defined by a terminology system |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | I | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url |
system | ΣI | 1..1 | uri | Identity of the terminology system Fixed Value: http://snomed.info/sct |
version | ΣI | 0..1 | string | Version of the system - if relevant |
code | ΣI | 1..1 | code | Symbol in syntax defined by the system Binding: AMA IHMI valueSet body structure 1 instance (required) |
display | ΣI | 1..1 | string | Representation defined by the system |
userSelected | ΣI | 0..1 | boolean | If this coding was chosen directly by the user |
text | ΣI | 0..1 | string | Plain text representation of the concept |
device | I | 0..1 | Reference(Device | DeviceMetric) | (Measurement) Device |
referenceRange | I | 0..* | BackboneElement | Provides guide for interpretation obs-3: Must have at least a low or a high or text |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | I | 0..* | Extension | Additional content defined by implementations |
modifierExtension | ?!ΣI | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
low | I | 0..1 | SimpleQuantity | Low Range, if relevant |
high | I | 0..1 | SimpleQuantity | High Range, if relevant |
type | I | 0..1 | CodeableConcept | Reference range qualifier Binding: ObservationReferenceRangeMeaningCodes (preferred) |
appliesTo | I | 0..* | CodeableConcept | Reference range population Binding: ObservationReferenceRangeAppliesToCodes (example) |
age | I | 0..1 | Range | Applicable age range, if relevant |
text | I | 0..1 | string | Text based reference range in an observation |
hasMember | ΣI | 0..* | Reference(Observation | QuestionnaireResponse | MolecularSequence) | Related resource that belongs to the Observation group |
derivedFrom | ΣI | 0..* | Reference(DocumentReference | ImagingStudy | Media | QuestionnaireResponse | Observation | MolecularSequence) | Related measurements the observation is made from |
component | ΣI | 0..* | BackboneElement | Component results |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | I | 0..* | Extension | Additional content defined by implementations |
modifierExtension | ?!ΣI | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
code | ΣI | 1..1 | CodeableConcept | Type of component observation (code / type) Binding: LOINCCodes (example) |
value[x] | ΣI | 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 | I | 0..1 | CodeableConcept | Why the component result is missing Binding: DataAbsentReason (extensible) |
interpretation | I | 0..* | CodeableConcept | High, low, normal, etc. Binding: ObservationInterpretationCodes (extensible) |
referenceRange | I | 0..* | Unknown reference to #Observation.referenceRange Provides guide for interpretation of component result | |
Documentation for this format |
This structure is derived from Observation
Differential View
This structure is derived from Observation
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Observation | 0..* | Observation | Measurements and simple assertions | |
extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |
Extension-Observation-ExertionalStatus | 0..1 | CodeableConcept | The state of exertion preceding or during the observation. URL: https://trifolia-fhir-dev.lantanagroup.com/igs/lantana_prod_hapi_r4/MaxMD-AMA-Test-IG/StructureDefinition/Extension-Observation-ExertionalStatus | |
status | 1..1 | code | registered | preliminary | final | amended + Fixed Value: final | |
code | ||||
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: 65653002 | |
display | 1..1 | string | Representation defined by the system Fixed Value: Pulse taking (procedure) | |
userSelected | 0..0 | |||
subject | 1..1 | Reference(Patient) | Who and/or what the observation is about | |
effective[x] | 1..1 | dateTime | Clinically relevant time/time-period for observation | |
effective[x]:effectiveDateTime | 1..1 | dateTime | Clinically relevant time/time-period for observation | |
value[x] | 1..1 | Quantity | Actual result | |
value[x]:valueQuantity | 1..1 | Quantity | Actual result | |
value | 1..1 | decimal | Numerical value (with implicit precision) | |
comparator | 0..0 | |||
unit | 1..1 | string | Unit representation | |
system | 1..1 | uri | System that defines coded unit form Fixed Value: http://unitsofmeasure.org | |
code | 1..1 | code | Coded form of the unit Fixed Value: /min | |
dataAbsentReason | 0..0 | |||
interpretation | 0..0 | |||
bodySite | ||||
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 Binding: AMA IHMI valueSet body structure 1 instance (required) | |
display | 1..1 | string | Representation defined by the system | |
method | 0..0 | |||
specimen | 0..0 | |||
Documentation for this format |
Snapshot View
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Observation | I | 0..* | Observation | Measurements and simple assertions |
id | Σ | 0..1 | string | Logical id of this artifact |
meta | ΣI | 0..1 | Meta | Metadata about the resource |
implicitRules | ?!ΣI | 0..1 | uri | A set of rules under which this content was created |
language | I | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred) Max Binding: AllLanguages |
text | I | 0..1 | Narrative | Text summary of the resource, for human interpretation |
contained | 0..* | Resource | Contained, inline Resources | |
extension | I | 0..* | Extension | Extension Slice: Unordered, Open by value:url |
Extension-Observation-ExertionalStatus | I | 0..1 | CodeableConcept | The state of exertion preceding or during the observation. URL: https://trifolia-fhir-dev.lantanagroup.com/igs/lantana_prod_hapi_r4/MaxMD-AMA-Test-IG/StructureDefinition/Extension-Observation-ExertionalStatus |
modifierExtension | ?!I | 0..* | Extension | Extensions that cannot be ignored |
identifier | ΣI | 0..* | Identifier | Business Identifier for observation |
basedOn | ΣI | 0..* | Reference(CarePlan | DeviceRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest) | Fulfills plan, proposal or order |
partOf | ΣI | 0..* | Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Immunization | ImagingStudy) | Part of referenced event |
status | ?!ΣI | 1..1 | code | registered | preliminary | final | amended + Binding: ObservationStatus (required) Fixed Value: final |
category | I | 0..* | CodeableConcept | Classification of type of observation Binding: ObservationCategoryCodes (preferred) |
code | ΣI | 1..1 | CodeableConcept | Type of observation (code / type) Binding: LOINCCodes (example) |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | I | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url |
coding | ΣI | 1..1 | Coding | Code defined by a terminology system |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | I | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url |
system | ΣI | 1..1 | uri | Identity of the terminology system Fixed Value: http://snomed.info/sct |
version | ΣI | 0..1 | string | Version of the system - if relevant |
code | ΣI | 1..1 | code | Symbol in syntax defined by the system Fixed Value: 65653002 |
display | ΣI | 1..1 | string | Representation defined by the system Fixed Value: Pulse taking (procedure) |
text | ΣI | 0..1 | string | Plain text representation of the concept |
subject | ΣI | 1..1 | Reference(Patient) | Who and/or what the observation is about |
focus | ΣI | 0..* | Reference(Resource) | What the observation is about, when it is not about the subject of record |
encounter | ΣI | 0..1 | Reference(Encounter) | Healthcare event during which this observation is made |
effective[x] | ΣI | 1..1 | (Slice Definition) | Clinically relevant time/time-period for observation Slice: Unordered, Closed by type:$this |
effective[x]:effectiveDateTime | ΣI | 1..1 | dateTime | Clinically relevant time/time-period for observation |
issued | ΣI | 0..1 | instant | Date/Time this version was made available |
performer | ΣI | 0..* | Reference(Practitioner | PractitionerRole | Organization | CareTeam | Patient | RelatedPerson) | Who is responsible for the observation |
value[x] | ΣI | 1..1 | (Slice Definition) | Actual result Slice: Unordered, Closed by type:$this |
value[x]:valueQuantity | ΣI | 1..1 | Quantity | Actual result |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | I | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url |
value | ΣI | 1..1 | decimal | Numerical value (with implicit precision) |
unit | ΣI | 1..1 | string | Unit representation |
system | ΣI | 1..1 | uri | System that defines coded unit form Fixed Value: http://unitsofmeasure.org |
code | ΣI | 1..1 | code | Coded form of the unit Fixed Value: /min |
note | I | 0..* | Annotation | Comments about the observation |
bodySite | I | 0..1 | CodeableConcept | Observed body part Binding: SNOMEDCTBodyStructures (example) |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | I | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url |
coding | ΣI | 1..1 | Coding | Code defined by a terminology system |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | I | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url |
system | ΣI | 1..1 | uri | Identity of the terminology system Fixed Value: http://snomed.info/sct |
version | ΣI | 0..1 | string | Version of the system - if relevant |
code | ΣI | 1..1 | code | Symbol in syntax defined by the system Binding: AMA IHMI valueSet body structure 1 instance (required) |
display | ΣI | 1..1 | string | Representation defined by the system |
userSelected | ΣI | 0..1 | boolean | If this coding was chosen directly by the user |
text | ΣI | 0..1 | string | Plain text representation of the concept |
device | I | 0..1 | Reference(Device | DeviceMetric) | (Measurement) Device |
referenceRange | I | 0..* | BackboneElement | Provides guide for interpretation obs-3: Must have at least a low or a high or text |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | I | 0..* | Extension | Additional content defined by implementations |
modifierExtension | ?!ΣI | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
low | I | 0..1 | SimpleQuantity | Low Range, if relevant |
high | I | 0..1 | SimpleQuantity | High Range, if relevant |
type | I | 0..1 | CodeableConcept | Reference range qualifier Binding: ObservationReferenceRangeMeaningCodes (preferred) |
appliesTo | I | 0..* | CodeableConcept | Reference range population Binding: ObservationReferenceRangeAppliesToCodes (example) |
age | I | 0..1 | Range | Applicable age range, if relevant |
text | I | 0..1 | string | Text based reference range in an observation |
hasMember | ΣI | 0..* | Reference(Observation | QuestionnaireResponse | MolecularSequence) | Related resource that belongs to the Observation group |
derivedFrom | ΣI | 0..* | Reference(DocumentReference | ImagingStudy | Media | QuestionnaireResponse | Observation | MolecularSequence) | Related measurements the observation is made from |
component | ΣI | 0..* | BackboneElement | Component results |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | I | 0..* | Extension | Additional content defined by implementations |
modifierExtension | ?!ΣI | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
code | ΣI | 1..1 | CodeableConcept | Type of component observation (code / type) Binding: LOINCCodes (example) |
value[x] | ΣI | 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 | I | 0..1 | CodeableConcept | Why the component result is missing Binding: DataAbsentReason (extensible) |
interpretation | I | 0..* | CodeableConcept | High, low, normal, etc. Binding: ObservationInterpretationCodes (extensible) |
referenceRange | I | 0..* | Unknown reference to #Observation.referenceRange Provides guide for interpretation of component result | |
Documentation for this format |
Other representations of profile: Schematron
Path | Conformance | ValueSet / Code |
Observation.language | preferred | CommonLanguages Max Binding: AllLanguages |
Observation.status | required | Fixed Value: final |
Observation.category | preferred | ObservationCategoryCodes |
Observation.code | example | LOINCCodes |
Observation.bodySite | example | SNOMEDCTBodyStructures |
Observation.bodySite.coding.code | required | AMA-IHMI-valueSet-body-structure-1-instance |
Observation.referenceRange.type | preferred | ObservationReferenceRangeMeaningCodes |
Observation.referenceRange.appliesTo | example | ObservationReferenceRangeAppliesToCodes |
Observation.component.code | example | LOINCCodes |
Observation.component.dataAbsentReason | extensible | DataAbsentReason |
Observation.component.interpretation | extensible | ObservationInterpretationCodes |
Id | Path | Details | Requirements |
dom-2 | Observation | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | 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 | 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 | Observation | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | Observation | A resource should have narrative for robust management : text.`div`.exists() | |
obs-6 | Observation | dataAbsentReason SHALL only be present if Observation.value[x] is not present : dataAbsentReason.empty() or value.empty() | |
obs-7 | 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() | |
ele-1 | Observation.meta | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.implicitRules | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.language | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.text | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | Observation.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | Observation.extension:myExtension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | Observation.extension:myExtension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | Observation.modifierExtension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | Observation.modifierExtension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | Observation.identifier | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.basedOn | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.partOf | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.status | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.category | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.code | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.code.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | Observation.code.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | Observation.code.coding | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.code.coding.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | Observation.code.coding.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | Observation.code.coding.system | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.code.coding.version | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.code.coding.code | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.code.coding.display | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.code.text | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.subject | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.focus | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.encounter | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.effective[x] | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.effective[x]:effectiveDateTime | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.issued | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.performer | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.value[x] | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.value[x]:valueQuantity | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.value[x]:valueQuantity.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | Observation.value[x]:valueQuantity.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | Observation.value[x]:valueQuantity.value | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.value[x]:valueQuantity.unit | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.value[x]:valueQuantity.system | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.value[x]:valueQuantity.code | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.note | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.bodySite | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.bodySite.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | Observation.bodySite.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | Observation.bodySite.coding | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.bodySite.coding.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | Observation.bodySite.coding.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | Observation.bodySite.coding.system | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.bodySite.coding.version | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.bodySite.coding.code | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.bodySite.coding.display | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.bodySite.coding.userSelected | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.bodySite.text | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.device | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.referenceRange | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
obs-3 | Observation.referenceRange | Must have at least a low or a high or text : low.exists() or high.exists() or text.exists() | |
ele-1 | Observation.referenceRange.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | Observation.referenceRange.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | Observation.referenceRange.modifierExtension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | Observation.referenceRange.modifierExtension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | Observation.referenceRange.low | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.referenceRange.high | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.referenceRange.type | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.referenceRange.appliesTo | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.referenceRange.age | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.referenceRange.text | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.hasMember | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.derivedFrom | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.component | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.component.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | Observation.component.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | Observation.component.modifierExtension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | Observation.component.modifierExtension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | Observation.component.code | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.component.value[x] | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.component.dataAbsentReason | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.component.interpretation | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | Observation.component.referenceRange | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |