This page is part of the Data Access Framework (v1.6.0: STU 2 Ballot 1) based on FHIR v1.6.0. . For a full list of available versions, see the Directory of published versions
This profile sets minimum expectations for the Observation resource to record, search and fetch smoking status data associated with a patient. It identifies which core elements, extensions, vocabularies and value sets SHALL be present in the resource when using this profile.
Example Usage Scenarios:
The following are example usage scenarios for the DAF-SmokingStatus profile:
The following data-elements are mandatory (i.e data MUST be present). These are presented below in a simple human-readable explanation. Profile specific guidance and an example are provided as well. The Formal Profile Definition below provides the formal summary, definitions, and terminology requirements.
Each Observation must have:
Profile specific implementation guidance:
The official URL for this profile is:
http://hl7.org/fhir/us/daf/StructureDefinition/daf-core-smokingstatus
This profile was published on Mon Aug 01 00:00:00 AEST 2016 as a draft by Health Level Seven International (FHIR-Infrastructure).
Description of Profiles, Differentials, Snapshots, and how the XML and JSON presentations work.
This structure is derived from Observation
Observation.status
which has an required binding to:
Observation.code
Observation.code.coding.system
= http://loinc.orgObservation.code.coding.code
=72166-2Observation.subject
Observation.issued
Observation.valueCodeableConcept
which has an required binding to:
This structure is derived from Observation
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Observation | 0..* | |||
status | S | 1..1 | code | Binding: ObservationStatus (required) |
code | S | 1..1 | CodeableConcept | Required Pattern: {"coding":[{"system":"http://loinc.org","code":"72166-2"}]} |
subject | S | 1..1 | Reference(Profile daf-core-patient) | |
issued | S | 1..1 | instant | |
valueCodeableConcept | S | 1..1 | CodeableConcept | Binding: Smoking Status (required) |
Documentation for this format |
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Observation | I | 0..* | Measurements and simple assertions dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources dom-1: If the resource is contained in another resource, it SHALL NOT contain any narrative dom-4: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated dom-3: If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource obs-7: If code is the same as a component code then the value element associated with the code SHALL NOT be present obs-6: dataAbsentReason SHALL only be present if Observation.value[x] is not 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: Common Languages (extensible) | |
text | I | 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 | Unique Id for this particular observation | |
status | ?!S | 1..1 | code | registered | preliminary | final | amended + Binding: ObservationStatus (required) |
category | 0..* | CodeableConcept | Classification of type of observation Binding: Observation Category Codes (example) | |
code | S | 1..1 | CodeableConcept | Type of observation (code / type) Binding: LOINC Codes (example) Required Pattern: {"coding":[{"system":"http://loinc.org","code":"72166-2"}]} |
subject | S | 1..1 | Reference(Profile daf-core-patient) | Who and/or what this is about |
encounter | 0..1 | Reference(Encounter) | Healthcare event during which this observation is made | |
effective[x] | ∑ | 0..1 | dateTime, Period | Clinically relevant time/time-period for observation |
issued | S | 1..1 | instant | Date/Time this was made available |
performer | ∑ | 0..* | Reference(Practitioner | Organization | Patient | RelatedPerson) | Who is responsible for the observation |
valueCodeableConcept | SI | 1..1 | CodeableConcept | Actual result Binding: Smoking Status (required) |
dataAbsentReason | I | 0..1 | CodeableConcept | Why the result is missing Binding: Observation Value Absent Reason (extensible) |
interpretation | 0..1 | CodeableConcept | High, low, normal, etc. Binding: Observation Interpretation Codes (extensible) | |
comment | 0..1 | string | Comments about result | |
bodySite | 0..1 | CodeableConcept | Observed body part Binding: SNOMED CT Body Structures (example) | |
method | 0..1 | CodeableConcept | How it was done Binding: Observation Methods (example) | |
specimen | 0..1 | Reference(Specimen) | Specimen used for this observation | |
device | 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 | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Additional Content defined by implementations | |
modifierExtension | ?!∑ | 0..* | Extension | Extensions that cannot be ignored |
low | I | 0..1 | SimpleQuantity | Low Range, if relevant |
high | I | 0..1 | SimpleQuantity | High Range, if relevant |
meaning | 0..* | CodeableConcept | Reference range qualifier Binding: Observation Reference Range Meaning Codes (example) | |
age | 0..1 | Range | Applicable age range, if relevant | |
text | 0..1 | string | Text based reference range in an observation | |
related | ∑ | 0..* | BackboneElement | Resource related to this observation |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Additional Content defined by implementations | |
modifierExtension | ?!∑ | 0..* | Extension | Extensions that cannot be ignored |
type | 0..1 | code | has-member | derived-from | sequel-to | replaces | qualified-by | interfered-by Binding: ObservationRelationshipType (required) | |
target | 1..1 | Reference(Observation | QuestionnaireResponse | Sequence) | Resource that is related to this one | |
component | ∑ | 0..* | BackboneElement | Component results |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Additional Content defined by implementations | |
modifierExtension | ?!∑ | 0..* | Extension | Extensions that cannot be ignored |
code | ∑ | 1..1 | CodeableConcept | Type of component observation (code / type) Binding: LOINC Codes (example) |
value[x] | ∑ | 0..1 | Quantity, CodeableConcept, string, Range, Ratio, SampledData, Attachment, time, dateTime, Period | Actual component result |
dataAbsentReason | I | 0..1 | CodeableConcept | Why the component result is missing Binding: Observation Value Absent Reason (extensible) |
interpretation | 0..1 | CodeableConcept | High, low, normal, etc. Binding: Observation Interpretation Codes (extensible) | |
referenceRange | 0..* | Unknown reference to #Observation:dafcoresmokingstatus.referenceRange Provides guide for interpretation of component result | ||
Documentation for this format |
yet to be done: Xml template
yet to be done: Json template
This structure is derived from Observation
Differential View
This structure is derived from Observation
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Observation | 0..* | |||
status | S | 1..1 | code | Binding: ObservationStatus (required) |
code | S | 1..1 | CodeableConcept | Required Pattern: {"coding":[{"system":"http://loinc.org","code":"72166-2"}]} |
subject | S | 1..1 | Reference(Profile daf-core-patient) | |
issued | S | 1..1 | instant | |
valueCodeableConcept | S | 1..1 | CodeableConcept | Binding: Smoking Status (required) |
Documentation for this format |
Snapshot View
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Observation | I | 0..* | Measurements and simple assertions dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources dom-1: If the resource is contained in another resource, it SHALL NOT contain any narrative dom-4: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated dom-3: If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource obs-7: If code is the same as a component code then the value element associated with the code SHALL NOT be present obs-6: dataAbsentReason SHALL only be present if Observation.value[x] is not 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: Common Languages (extensible) | |
text | I | 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 | Unique Id for this particular observation | |
status | ?!S | 1..1 | code | registered | preliminary | final | amended + Binding: ObservationStatus (required) |
category | 0..* | CodeableConcept | Classification of type of observation Binding: Observation Category Codes (example) | |
code | S | 1..1 | CodeableConcept | Type of observation (code / type) Binding: LOINC Codes (example) Required Pattern: {"coding":[{"system":"http://loinc.org","code":"72166-2"}]} |
subject | S | 1..1 | Reference(Profile daf-core-patient) | Who and/or what this is about |
encounter | 0..1 | Reference(Encounter) | Healthcare event during which this observation is made | |
effective[x] | ∑ | 0..1 | dateTime, Period | Clinically relevant time/time-period for observation |
issued | S | 1..1 | instant | Date/Time this was made available |
performer | ∑ | 0..* | Reference(Practitioner | Organization | Patient | RelatedPerson) | Who is responsible for the observation |
valueCodeableConcept | SI | 1..1 | CodeableConcept | Actual result Binding: Smoking Status (required) |
dataAbsentReason | I | 0..1 | CodeableConcept | Why the result is missing Binding: Observation Value Absent Reason (extensible) |
interpretation | 0..1 | CodeableConcept | High, low, normal, etc. Binding: Observation Interpretation Codes (extensible) | |
comment | 0..1 | string | Comments about result | |
bodySite | 0..1 | CodeableConcept | Observed body part Binding: SNOMED CT Body Structures (example) | |
method | 0..1 | CodeableConcept | How it was done Binding: Observation Methods (example) | |
specimen | 0..1 | Reference(Specimen) | Specimen used for this observation | |
device | 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 | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Additional Content defined by implementations | |
modifierExtension | ?!∑ | 0..* | Extension | Extensions that cannot be ignored |
low | I | 0..1 | SimpleQuantity | Low Range, if relevant |
high | I | 0..1 | SimpleQuantity | High Range, if relevant |
meaning | 0..* | CodeableConcept | Reference range qualifier Binding: Observation Reference Range Meaning Codes (example) | |
age | 0..1 | Range | Applicable age range, if relevant | |
text | 0..1 | string | Text based reference range in an observation | |
related | ∑ | 0..* | BackboneElement | Resource related to this observation |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Additional Content defined by implementations | |
modifierExtension | ?!∑ | 0..* | Extension | Extensions that cannot be ignored |
type | 0..1 | code | has-member | derived-from | sequel-to | replaces | qualified-by | interfered-by Binding: ObservationRelationshipType (required) | |
target | 1..1 | Reference(Observation | QuestionnaireResponse | Sequence) | Resource that is related to this one | |
component | ∑ | 0..* | BackboneElement | Component results |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Additional Content defined by implementations | |
modifierExtension | ?!∑ | 0..* | Extension | Extensions that cannot be ignored |
code | ∑ | 1..1 | CodeableConcept | Type of component observation (code / type) Binding: LOINC Codes (example) |
value[x] | ∑ | 0..1 | Quantity, CodeableConcept, string, Range, Ratio, SampledData, Attachment, time, dateTime, Period | Actual component result |
dataAbsentReason | I | 0..1 | CodeableConcept | Why the component result is missing Binding: Observation Value Absent Reason (extensible) |
interpretation | 0..1 | CodeableConcept | High, low, normal, etc. Binding: Observation Interpretation Codes (extensible) | |
referenceRange | 0..* | Unknown reference to #Observation:dafcoresmokingstatus.referenceRange Provides guide for interpretation of component result | ||
Documentation for this format |
XML Template
yet to be done: Xml template
JSON Template
yet to be done: Json template
Downloads: StructureDefinition: (XML, JSON), Schema: XML Schematron
Path | Name | Conformance | ValueSet |
Observation.language | Common Languages | extensible | Common Languages |
Observation.status | ObservationStatus | required | ObservationStatus |
Observation.category | Observation Category Codes | example | Observation Category Codes |
Observation.code | LOINC Codes | example | LOINC Codes |
Observation.valueCodeableConcept | Smoking Status | required | Smoking Status |
Observation.dataAbsentReason | Observation Value Absent Reason | extensible | Observation Value Absent Reason |
Observation.interpretation | Observation Interpretation Codes | extensible | Observation Interpretation Codes |
Observation.bodySite | SNOMED CT Body Structures | example | SNOMED CT Body Structures |
Observation.method | Observation Methods | example | Observation Methods |
Observation.referenceRange.meaning | Observation Reference Range Meaning Codes | example | Observation Reference Range Meaning Codes |
Observation.related.type | ObservationRelationshipType | required | ObservationRelationshipType |
Observation.component.code | LOINC Codes | example | LOINC Codes |
Observation.component.dataAbsentReason | Observation Value Absent Reason | extensible | Observation Value Absent Reason |
Observation.component.interpretation | Observation Interpretation Codes | extensible | Observation Interpretation Codes |
Id | Path | Details | Requirements |
dom-2 | Observation | If the resource is contained in another resource, it SHALL NOT contain nested Resources XPath: not(parent::f:contained and f:contained) | |
dom-1 | Observation | If the resource is contained in another resource, it SHALL NOT contain any narrative XPath: not(parent::f:contained and f:text) | |
dom-4 | Observation | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated XPath: not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated)) | |
dom-3 | Observation | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource XPath: not(exists(for $id in f:contained/*/@id return $id[not(ancestor::f:contained/parent::*/descendant::f:reference/@value=concat('#', $id))])) | |
obs-7 | Observation | If code is the same as a component code then the value element associated with the code SHALL NOT be present XPath: not(exists(f:value)) or not(count(for $coding in f:code/f:coding return parent::*/f:component/f:code/f:coding[f:code/@value=$coding/f:code/@value and f:system/@value=$coding/f:system/@value])=0) | |
obs-6 | Observation | dataAbsentReason SHALL only be present if Observation.value[x] is not present XPath: not(exists(f:dataAbsentReason)) or (not(exists(*[starts-with(local-name(.), 'value')]))) | |
obs-3 | Observation.referenceRange | Must have at least a low or a high or text XPath: (exists(f:low) or exists(f:high)or exists(f:text)) |