Canadian Baseline
1.1.0 - CI Build
Canadian Baseline, published by HL7 Canada - FHIR Implementation Work Group. This guide is not an authorized publication; it is the continuous build for version 1.1.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7-Canada/ca-baseline/ and changes regularly. See the Directory of published versions
Official URL: http://hl7.org/fhir/ca/baseline/StructureDefinition/profile-smokingstatus | Version: 1.1.0 | |||
Draft as of 2022-06-08 | Computable Name: ObservationTobaccoSmokingStatusProfile |
Proposed constraints and extensions on the Observation Resource to support collection of tobacco smoking status information. Generated as a first step toward creating a set of Canadian Baseline FHIR profiles.
This profile is seeking broader community and implementer feedback.
There is no single standardized Canadian value set for collecting coded responses to a person's tobacco smoking status. A variety of codes exist across ICD-10 CA, SNOMED CT, LOINC etc. Given the patient summary initiative that is ongoing in Canada - we have pointed to the IPS-UV smoking status as an example.
This profile is seeking feedback from implementers on which code systems they use to capture tobacco smoking status to ensure we're aligning to a preferred value set that is being used across jurisdictions.
This profile is also interested in gauging community interest in a vaping profile given the use of vaping codes in the Canadian landscape.
Feedback can be provided using the Simplifier issue log for this profile.
This profile sets minimum expectations for the Procedure resource to record, search and fetch current or historical procedures performed on or for a patient. It identifies which elements and value sets SHALL be present in the resource when using this profile.
This profile defines localization concepts for use in an Canadian context.
All elements or attributes defined in FHIR have cardinality as part of their definition - a minimum number of required appearances and a maximum number.
Most elements in FHIR specification have a minimum cardinality of 0, which means that they may be missing from a resource when it is exchanged between systems.
Required elements:
Some elements are labeled as MustSupport meaning that implementations that produce or consume resources SHALL provide "support" for the element in some meaningful way (see Must Support definition).
Following elements are marked as Must Support in the Procedure profile to aid record matching in databases with many pediatric records.
Must Support elements:
This Procedure profile is used to provide summary information about the occurrence of current or historical procedures performed on or for a patient, and is not intended to provide real-time snapshots of a procedure as it unfolds. Examples include surgical procedures, diagnostic procedures, endoscopic procedures, biopsies, counseling, physiotherapy, personal support services, adult day care services, non-emergency transportation, home modification, exercise and so on.
A slice for absentOrUnknownProcedure comes from the IPS-UV specification and has been socialized in the profile as a way to represent a standard set of codes for identifying absent or unknown procedures. While the profile expects that a procedure.code be present (cardinality of 1..1) the use of the slice is entirely optional.
Usage:
Description of Profiles, Differentials, Snapshots and how the different presentations work.
This structure is derived from Observation
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Observation | 0..* | Observation | Tobacco Smoking Status Profile | |
status | 1..1 | code | registered | preliminary | final | amended + Binding: ObservationStatus (required) | |
code | S | 1..1 | CodeableConcept | Smoking Status: LOINC 72166-2 = Tobacco smoking status NHIS 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://loinc.org | |
code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: 72166-2 | |
subject | S | 1..1 | Reference(Patient Profile) | The patient that the smoking status observation refers to |
effective[x] | C | 0..1 | dateTime, Period, Timing, instant | Clinically relevant time/time-period for the smoking status observation Obs-1: Observation.effective or Observation.issued SHOULD be present |
issued | C | 0..1 | instant | Date/Time this version of the smoking status observation was made available Obs-1: Observation.effective or Observation.issued SHOULD be present |
value[x] | S | 1..1 | CodeableConcept | Coded Responses for Tobacco Smoking Status ValueSet Binding: http://hl7.org/fhir/uv/ips/ValueSet/current-smoking-status-uv-ips (example) |
Documentation for this format |
Path | Conformance | ValueSet | URI |
Observation.status | required | ObservationStatushttp://hl7.org/fhir/ValueSet/observation-status from the FHIR Standard | |
Observation.value[x] | example | http://hl7.org/fhir/uv/ips/ValueSet/current-smoking-status-uv-ipshttp://hl7.org/fhir/uv/ips/ValueSet/current-smoking-status-uv-ips |
Id | Grade | Path(s) | Details | Requirements |
Obs-1 | error | Observation.effective[x], Observation.issued | Observation.effective or Observation.issued SHOULD be present : effective.exists() or issued.exists(). |
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Observation | C | 0..* | Observation | Tobacco Smoking Status Profile obs-6: dataAbsentReason SHALL only be present if Observation.value[x] is not present obs-7: If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored |
status | ?!Σ | 1..1 | code | registered | preliminary | final | amended + Binding: ObservationStatus (required) |
code | SΣ | 1..1 | CodeableConcept | Smoking Status: LOINC 72166-2 = Tobacco smoking status NHIS Binding: LOINCCodes (example): Codes identifying names of simple observations. 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://loinc.org | |
code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: 72166-2 | |
subject | SΣ | 1..1 | Reference(Patient Profile) | The patient that the smoking status observation refers to |
effective[x] | ΣC | 0..1 | Clinically relevant time/time-period for the smoking status observation Obs-1: Observation.effective or Observation.issued SHOULD be present | |
effectiveDateTime | dateTime | |||
effectivePeriod | Period | |||
effectiveTiming | Timing | |||
effectiveInstant | instant | |||
issued | ΣC | 0..1 | instant | Date/Time this version of the smoking status observation was made available Obs-1: Observation.effective or Observation.issued SHOULD be present |
value[x] | SΣC | 1..1 | CodeableConcept | Coded Responses for Tobacco Smoking Status ValueSet Binding: http://hl7.org/fhir/uv/ips/ValueSet/current-smoking-status-uv-ips (example) |
Documentation for this format |
Path | Conformance | ValueSet / Code | URI |
Observation.status | required | ObservationStatushttp://hl7.org/fhir/ValueSet/observation-status from the FHIR Standard | |
Observation.code | example | Pattern: LOINC Code 72166-2http://hl7.org/fhir/ValueSet/observation-codes from the FHIR Standard | |
Observation.value[x] | example | http://hl7.org/fhir/uv/ips/ValueSet/current-smoking-status-uv-ipshttp://hl7.org/fhir/uv/ips/ValueSet/current-smoking-status-uv-ips |
Id | Grade | Path(s) | Details | Requirements |
Obs-1 | error | Observation.effective[x], Observation.issued | Observation.effective or Observation.issued SHOULD be present : effective.exists() or issued.exists(). | |
dom-2 | error | Observation | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | Observation | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource : contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | Observation | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated : contained.meta.versionId.empty() and contained.meta.lastUpdated.empty() | |
dom-5 | error | Observation | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | Observation | A resource should have narrative for robust management : text.`div`.exists() | |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
obs-6 | error | Observation | dataAbsentReason SHALL only be present if Observation.value[x] is not present : dataAbsentReason.empty() or value.empty() | |
obs-7 | error | Observation | If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present : value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty() |
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
Observation | C | 0..* | Observation | Tobacco Smoking Status Profile obs-6: dataAbsentReason SHALL only be present if Observation.value[x] is not present obs-7: If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present | ||||
id | Σ | 0..1 | id | Logical id of this artifact | ||||
meta | Σ | 0..1 | Meta | Metadata about the resource | ||||
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
language | 0..1 | code | Language of the resource content Binding: 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 | |||||
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored | ||||
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 | ?!Σ | 1..1 | code | registered | preliminary | final | amended + Binding: ObservationStatus (required) | ||||
category | 0..* | CodeableConcept | Classification of type of observation Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories. | |||||
code | SΣ | 1..1 | CodeableConcept | Smoking Status: LOINC 72166-2 = Tobacco smoking status NHIS Binding: LOINCCodes (example): Codes identifying names of simple observations. 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://loinc.org | |||||
version | 0..1 | string | Version of the system - if relevant | |||||
code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: 72166-2 | |||||
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(Patient Profile) | The patient that the smoking status observation refers to | ||||
focus | Σ | 0..* | Reference(Resource) | What the observation is about, when it is not about the subject of record | ||||
encounter | Σ | 0..1 | Reference(Encounter) | Healthcare event during which this observation is made | ||||
effective[x] | ΣC | 0..1 | Clinically relevant time/time-period for the smoking status observation Obs-1: Observation.effective or Observation.issued SHOULD be present | |||||
effectiveDateTime | dateTime | |||||||
effectivePeriod | Period | |||||||
effectiveTiming | Timing | |||||||
effectiveInstant | instant | |||||||
issued | ΣC | 0..1 | instant | Date/Time this version of the smoking status observation was made available Obs-1: Observation.effective or Observation.issued SHOULD be present | ||||
performer | Σ | 0..* | Reference(Practitioner | PractitionerRole | Organization | CareTeam | Patient | RelatedPerson) | Who is responsible for the observation | ||||
value[x] | SΣC | 1..1 | CodeableConcept | Coded Responses for Tobacco Smoking Status ValueSet Binding: http://hl7.org/fhir/uv/ips/ValueSet/current-smoking-status-uv-ips (example) | ||||
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 | 0..* | Annotation | Comments about the observation | |||||
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. | |||||
specimen | 0..1 | Reference(Specimen) | Specimen used for this observation | |||||
device | 0..1 | Reference(Device | DeviceMetric) | (Measurement) Device | |||||
referenceRange | C | 0..* | BackboneElement | Provides guide for interpretation obs-3: Must have at least a low or a high or text | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
low | C | 0..1 | SimpleQuantity | Low Range, if relevant | ||||
high | C | 0..1 | SimpleQuantity | High Range, if relevant | ||||
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 | Σ | 0..* | Reference(Observation | QuestionnaireResponse | MolecularSequence) | 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 | URI | |||
Observation.language | preferred | CommonLanguages
http://hl7.org/fhir/ValueSet/languages from the FHIR Standard | ||||
Observation.status | required | ObservationStatushttp://hl7.org/fhir/ValueSet/observation-status from the FHIR Standard | ||||
Observation.category | preferred | ObservationCategoryCodeshttp://hl7.org/fhir/ValueSet/observation-category from the FHIR Standard | ||||
Observation.code | example | Pattern: LOINC Code 72166-2http://hl7.org/fhir/ValueSet/observation-codes from the FHIR Standard | ||||
Observation.value[x] | example | http://hl7.org/fhir/uv/ips/ValueSet/current-smoking-status-uv-ipshttp://hl7.org/fhir/uv/ips/ValueSet/current-smoking-status-uv-ips | ||||
Observation.dataAbsentReason | extensible | DataAbsentReasonhttp://hl7.org/fhir/ValueSet/data-absent-reason from the FHIR Standard | ||||
Observation.interpretation | extensible | ObservationInterpretationCodeshttp://hl7.org/fhir/ValueSet/observation-interpretation from the FHIR Standard | ||||
Observation.bodySite | example | SNOMEDCTBodyStructureshttp://hl7.org/fhir/ValueSet/body-site from the FHIR Standard | ||||
Observation.method | example | ObservationMethodshttp://hl7.org/fhir/ValueSet/observation-methods from the FHIR Standard | ||||
Observation.referenceRange.type | preferred | ObservationReferenceRangeMeaningCodeshttp://hl7.org/fhir/ValueSet/referencerange-meaning from the FHIR Standard | ||||
Observation.referenceRange.appliesTo | example | ObservationReferenceRangeAppliesToCodeshttp://hl7.org/fhir/ValueSet/referencerange-appliesto from the FHIR Standard | ||||
Observation.component.code | example | LOINCCodes (a valid code from LOINC)http://hl7.org/fhir/ValueSet/observation-codes from the FHIR Standard | ||||
Observation.component.dataAbsentReason | extensible | DataAbsentReasonhttp://hl7.org/fhir/ValueSet/data-absent-reason from the FHIR Standard | ||||
Observation.component.interpretation | extensible | ObservationInterpretationCodeshttp://hl7.org/fhir/ValueSet/observation-interpretation from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
Obs-1 | error | Observation.effective[x], Observation.issued | Observation.effective or Observation.issued SHOULD be present : effective.exists() or issued.exists(). | |
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 Observation
Differential View
This structure is derived from Observation
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Observation | 0..* | Observation | Tobacco Smoking Status Profile | |
status | 1..1 | code | registered | preliminary | final | amended + Binding: ObservationStatus (required) | |
code | S | 1..1 | CodeableConcept | Smoking Status: LOINC 72166-2 = Tobacco smoking status NHIS 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://loinc.org | |
code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: 72166-2 | |
subject | S | 1..1 | Reference(Patient Profile) | The patient that the smoking status observation refers to |
effective[x] | C | 0..1 | dateTime, Period, Timing, instant | Clinically relevant time/time-period for the smoking status observation Obs-1: Observation.effective or Observation.issued SHOULD be present |
issued | C | 0..1 | instant | Date/Time this version of the smoking status observation was made available Obs-1: Observation.effective or Observation.issued SHOULD be present |
value[x] | S | 1..1 | CodeableConcept | Coded Responses for Tobacco Smoking Status ValueSet Binding: http://hl7.org/fhir/uv/ips/ValueSet/current-smoking-status-uv-ips (example) |
Documentation for this format |
Path | Conformance | ValueSet | URI |
Observation.status | required | ObservationStatushttp://hl7.org/fhir/ValueSet/observation-status from the FHIR Standard | |
Observation.value[x] | example | http://hl7.org/fhir/uv/ips/ValueSet/current-smoking-status-uv-ipshttp://hl7.org/fhir/uv/ips/ValueSet/current-smoking-status-uv-ips |
Id | Grade | Path(s) | Details | Requirements |
Obs-1 | error | Observation.effective[x], Observation.issued | Observation.effective or Observation.issued SHOULD be present : effective.exists() or issued.exists(). |
Key Elements View
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Observation | C | 0..* | Observation | Tobacco Smoking Status Profile obs-6: dataAbsentReason SHALL only be present if Observation.value[x] is not present obs-7: If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored |
status | ?!Σ | 1..1 | code | registered | preliminary | final | amended + Binding: ObservationStatus (required) |
code | SΣ | 1..1 | CodeableConcept | Smoking Status: LOINC 72166-2 = Tobacco smoking status NHIS Binding: LOINCCodes (example): Codes identifying names of simple observations. 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://loinc.org | |
code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: 72166-2 | |
subject | SΣ | 1..1 | Reference(Patient Profile) | The patient that the smoking status observation refers to |
effective[x] | ΣC | 0..1 | Clinically relevant time/time-period for the smoking status observation Obs-1: Observation.effective or Observation.issued SHOULD be present | |
effectiveDateTime | dateTime | |||
effectivePeriod | Period | |||
effectiveTiming | Timing | |||
effectiveInstant | instant | |||
issued | ΣC | 0..1 | instant | Date/Time this version of the smoking status observation was made available Obs-1: Observation.effective or Observation.issued SHOULD be present |
value[x] | SΣC | 1..1 | CodeableConcept | Coded Responses for Tobacco Smoking Status ValueSet Binding: http://hl7.org/fhir/uv/ips/ValueSet/current-smoking-status-uv-ips (example) |
Documentation for this format |
Path | Conformance | ValueSet / Code | URI |
Observation.status | required | ObservationStatushttp://hl7.org/fhir/ValueSet/observation-status from the FHIR Standard | |
Observation.code | example | Pattern: LOINC Code 72166-2http://hl7.org/fhir/ValueSet/observation-codes from the FHIR Standard | |
Observation.value[x] | example | http://hl7.org/fhir/uv/ips/ValueSet/current-smoking-status-uv-ipshttp://hl7.org/fhir/uv/ips/ValueSet/current-smoking-status-uv-ips |
Id | Grade | Path(s) | Details | Requirements |
Obs-1 | error | Observation.effective[x], Observation.issued | Observation.effective or Observation.issued SHOULD be present : effective.exists() or issued.exists(). | |
dom-2 | error | Observation | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | Observation | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource : contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | Observation | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated : contained.meta.versionId.empty() and contained.meta.lastUpdated.empty() | |
dom-5 | error | Observation | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | Observation | A resource should have narrative for robust management : text.`div`.exists() | |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
obs-6 | error | Observation | dataAbsentReason SHALL only be present if Observation.value[x] is not present : dataAbsentReason.empty() or value.empty() | |
obs-7 | error | Observation | If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present : value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty() |
Snapshot View
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
Observation | C | 0..* | Observation | Tobacco Smoking Status Profile obs-6: dataAbsentReason SHALL only be present if Observation.value[x] is not present obs-7: If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present | ||||
id | Σ | 0..1 | id | Logical id of this artifact | ||||
meta | Σ | 0..1 | Meta | Metadata about the resource | ||||
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
language | 0..1 | code | Language of the resource content Binding: 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 | |||||
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored | ||||
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 | ?!Σ | 1..1 | code | registered | preliminary | final | amended + Binding: ObservationStatus (required) | ||||
category | 0..* | CodeableConcept | Classification of type of observation Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories. | |||||
code | SΣ | 1..1 | CodeableConcept | Smoking Status: LOINC 72166-2 = Tobacco smoking status NHIS Binding: LOINCCodes (example): Codes identifying names of simple observations. 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://loinc.org | |||||
version | 0..1 | string | Version of the system - if relevant | |||||
code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: 72166-2 | |||||
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(Patient Profile) | The patient that the smoking status observation refers to | ||||
focus | Σ | 0..* | Reference(Resource) | What the observation is about, when it is not about the subject of record | ||||
encounter | Σ | 0..1 | Reference(Encounter) | Healthcare event during which this observation is made | ||||
effective[x] | ΣC | 0..1 | Clinically relevant time/time-period for the smoking status observation Obs-1: Observation.effective or Observation.issued SHOULD be present | |||||
effectiveDateTime | dateTime | |||||||
effectivePeriod | Period | |||||||
effectiveTiming | Timing | |||||||
effectiveInstant | instant | |||||||
issued | ΣC | 0..1 | instant | Date/Time this version of the smoking status observation was made available Obs-1: Observation.effective or Observation.issued SHOULD be present | ||||
performer | Σ | 0..* | Reference(Practitioner | PractitionerRole | Organization | CareTeam | Patient | RelatedPerson) | Who is responsible for the observation | ||||
value[x] | SΣC | 1..1 | CodeableConcept | Coded Responses for Tobacco Smoking Status ValueSet Binding: http://hl7.org/fhir/uv/ips/ValueSet/current-smoking-status-uv-ips (example) | ||||
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 | 0..* | Annotation | Comments about the observation | |||||
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. | |||||
specimen | 0..1 | Reference(Specimen) | Specimen used for this observation | |||||
device | 0..1 | Reference(Device | DeviceMetric) | (Measurement) Device | |||||
referenceRange | C | 0..* | BackboneElement | Provides guide for interpretation obs-3: Must have at least a low or a high or text | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
low | C | 0..1 | SimpleQuantity | Low Range, if relevant | ||||
high | C | 0..1 | SimpleQuantity | High Range, if relevant | ||||
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 | Σ | 0..* | Reference(Observation | QuestionnaireResponse | MolecularSequence) | 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 | URI | |||
Observation.language | preferred | CommonLanguages
http://hl7.org/fhir/ValueSet/languages from the FHIR Standard | ||||
Observation.status | required | ObservationStatushttp://hl7.org/fhir/ValueSet/observation-status from the FHIR Standard | ||||
Observation.category | preferred | ObservationCategoryCodeshttp://hl7.org/fhir/ValueSet/observation-category from the FHIR Standard | ||||
Observation.code | example | Pattern: LOINC Code 72166-2http://hl7.org/fhir/ValueSet/observation-codes from the FHIR Standard | ||||
Observation.value[x] | example | http://hl7.org/fhir/uv/ips/ValueSet/current-smoking-status-uv-ipshttp://hl7.org/fhir/uv/ips/ValueSet/current-smoking-status-uv-ips | ||||
Observation.dataAbsentReason | extensible | DataAbsentReasonhttp://hl7.org/fhir/ValueSet/data-absent-reason from the FHIR Standard | ||||
Observation.interpretation | extensible | ObservationInterpretationCodeshttp://hl7.org/fhir/ValueSet/observation-interpretation from the FHIR Standard | ||||
Observation.bodySite | example | SNOMEDCTBodyStructureshttp://hl7.org/fhir/ValueSet/body-site from the FHIR Standard | ||||
Observation.method | example | ObservationMethodshttp://hl7.org/fhir/ValueSet/observation-methods from the FHIR Standard | ||||
Observation.referenceRange.type | preferred | ObservationReferenceRangeMeaningCodeshttp://hl7.org/fhir/ValueSet/referencerange-meaning from the FHIR Standard | ||||
Observation.referenceRange.appliesTo | example | ObservationReferenceRangeAppliesToCodeshttp://hl7.org/fhir/ValueSet/referencerange-appliesto from the FHIR Standard | ||||
Observation.component.code | example | LOINCCodes (a valid code from LOINC)http://hl7.org/fhir/ValueSet/observation-codes from the FHIR Standard | ||||
Observation.component.dataAbsentReason | extensible | DataAbsentReasonhttp://hl7.org/fhir/ValueSet/data-absent-reason from the FHIR Standard | ||||
Observation.component.interpretation | extensible | ObservationInterpretationCodeshttp://hl7.org/fhir/ValueSet/observation-interpretation from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
Obs-1 | error | Observation.effective[x], Observation.issued | Observation.effective or Observation.issued SHOULD be present : effective.exists() or issued.exists(). | |
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 Observation
Other representations of profile: CSV, Excel, Schematron