NZ Shared Digital Health Record API
0.3.0 - draft

NZ Shared Digital Health Record API - Local Development build (v0.3.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

Resource Profile: SDHRObservation

Official URL: https://fhir-ig.digital.health.nz/sdhr/StructureDefinition/SDHRObservation Version: 0.3.0
Active as of 2025-03-10 Computable Name: SDHRObservation

This profile constrains the Observation resource to represent Tobacco use assessment.

Usage:

Formal Views of Profile Content

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

NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation C 0..* Observation Measurements and simple assertions
dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
dom-3: 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
dom-4: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
dom-5: If a resource is contained in another resource, it SHALL NOT have a security label
dom-6: A resource should have narrative for robust management
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
ele-1: All FHIR elements must have a @value or children
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
... Slices for identifier Σ 0..* Identifier Business Identifier for observation
Slice: Unordered, Open by value:system
ele-1: All FHIR elements must have a @value or children
.... identifier:HealthRecordKey SΣ 0..1 Identifier Health Record Key - unique persistent identifier for this clinical FHIR resource
ele-1: All FHIR elements must have a @value or children
..... use ?!Σ 0..1 code fixed to official
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .


ele-1: All FHIR elements must have a @value or children
Fixed Value: offical
..... system Σ 1..1 uri The namespace for the identifier value
ele-1: All FHIR elements must have a @value or children
Fixed Value: https://standards.digital.health.nz/ns/health-record-key-id
..... value Σ 0..1 string The value of the identifier. Must be a GUID that is randomly generated to ensure collisions are avoided
ele-1: All FHIR elements must have a @value or children
Example General: 123456
... code Σ 1..1 CodeableConcept Type of observation (code / type)
Binding: LOINCCodes (example): Codes identifying names of simple observations.


ele-1: All FHIR elements must have a @value or children
... performer Σ 1..1 Reference(Practitioner) Who is responsible for the observation
ele-1: All FHIR elements must have a @value or children
.... reference ΣC 1..1 string Must be an absolute URL reference to the practitioner on the HPI system E.g. https://api.hip.digital.health.nz/fhir/Practitioner/99ZZZZ
ele-1: All FHIR elements must have a @value or children

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / CodeURI
Observation.identifier:HealthRecordKey.userequiredFixed Value: offical
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
from the FHIR Standard
Observation.statusrequiredObservationStatus
http://hl7.org/fhir/ValueSet/observation-status|4.0.1
from the FHIR Standard
Observation.codeexampleLOINCCodes (a valid code from LOINC)
http://hl7.org/fhir/ValueSet/observation-codes
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorObservationIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorObservationIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorObservationIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorObservationIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceObservationA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
obs-6errorObservationdataAbsentReason SHALL only be present if Observation.value[x] is not present
: dataAbsentReason.empty() or value.empty()
obs-7errorObservationIf Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present
: value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()

 

Other representations of profile: CSV, Excel, Schematron