HL7 FHIR Implementation Guide - New Zealand Formulary/NZULM IG
1.0.0 - ci-build

HL7 FHIR Implementation Guide - New Zealand Formulary/NZULM IG, published by New Zealand Medicines Formulary LP. This guide is not an authorized publication; it is the continuous build for version 1.0.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7NZ/nzf/ and changes regularly. See the Directory of published versions

Extension: Funding

Official URL: http://hl7.org.nz/fhir/StructureDefinition/nzf-funding Version: 1.0.0
Draft as of 2024-12-12 Computable Name: Funding

Core funding information specific to NZ. The extension can be added multiple times to a product for each PHARMAC schedule. These can be differentiated via the scheduleDate field.

Context of Use

This extension may be used on the following element(s):

  • Element ID Medication

Funding information is added to Containered Trade Product Packs where applicable. The funding information is derived from both the PHARMAC schedule.

There are two extensions added that store this information. The first is nzf-funding. This stores the general information around funding for a specific product such as price and subsidy. This also includes a 'type' field which indicates whether it applies to community, hml or both. To cater for the existence of multiple schedules this extension can be added to a product multiple times, once per schedule. This allows vendors to see both the current schedule information as well as an upcoming schedule. To determine which set of information to use the 'scheduleDate' field can be used.

To determine what schedules are available at any given time there is a 'Basic' resource that provides metadata (id and code =metadata). This metadata object contains a list of pharmacSchedule details, including the schedule dates.

To determine the appropriate pharmac subsidy code:

  • Community – the pharmacode associated with the given CTPP should always be used. This is in the code field for the CTPP Medication resource.
  • HML – some items are HML due to generic level funding (e.g. at the MPUU level). If this is the case then the genericLevelFundingCode will be populated for the core funding extension and should be used. This should only be used for HML. If no genericLevelFundingCode exists then the pharmacode associated with the given CTPP should be used.

Usage info

Usage:

Formal Views of Extension Content

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

This structure is derived from Extension

Summary

Complex Extension: Core funding information specific to NZ. The extension can be added multiple times to a product for each PHARMAC schedule. These can be differentiated via the scheduleDate field.

  • scheduleDate: date: The date this item was placed on the schedule
  • status: CodeableConcept: status of community funding - no subsidy, partial subsidy, full subsidy
  • subsidy: Money: The subsided price
  • higherSubsidy: Money: The higher subsided price
  • price: Money: The manufacturer price.
  • claimUnit: CodeableConcept: Pharmac claim unit
  • type: CodeableConcept: A list of funding types, currently either community or hml

This structure is derived from Extension

NameFlagsCard.TypeDescription & Constraintsdoco
.. Extension 0..* Extension Extension
... extension 2..* Extension Extension
... Slices for extension Content/Rules for all slices
.... extension:scheduleDate 1..1 Extension The date this item was placed on the schedule
..... extension 0..0
..... url 1..1 uri "scheduleDate"
..... value[x] 0..1 date Value of extension
.... extension:status 0..1 Extension status of community funding - no subsidy, partial subsidy, full subsidy
..... extension 0..0
..... url 1..1 uri "status"
..... value[x] 0..1 CodeableConcept Value of extension
Binding: https://nzhts.digital.health.nz/fhir/ValueSet/nzf-funding-code (required)
.... extension:subsidy 0..1 Extension The subsided price
..... extension 0..0
..... url 1..1 uri "subsidy"
..... value[x] 0..1 Money Value of extension
.... extension:higherSubsidy 0..1 Extension The higher subsided price
..... extension 0..0
..... url 1..1 uri "higherSubsidy"
..... value[x] 0..1 Money Value of extension
.... extension:price 0..1 Extension The manufacturer price.
..... extension 0..0
..... url 1..1 uri "price"
..... value[x] 0..1 Money Value of extension
.... extension:claimUnit 0..1 Extension Pharmac claim unit
..... extension 0..0
..... url 1..1 uri "claimUnit"
..... value[x] 0..1 CodeableConcept Value of extension
.... extension:type 1..* Extension A list of funding types, currently either community or hml
..... extension 0..0
..... url 1..1 uri "type"
..... value[x] 0..1 CodeableConcept Value of extension
Binding: PHARMAC funding type (required)
... url 1..1 uri "http://hl7.org.nz/fhir/StructureDefinition/nzf-funding"

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. Extension 0..* Extension Extension
... id 0..1 id Unique id for inter-element referencing
... Slices for extension 2..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:scheduleDate 1..1 Extension The date this item was placed on the schedule
..... id 0..1 id Unique id for inter-element referencing
..... extension 0..0
..... url 1..1 uri "scheduleDate"
..... value[x] 0..1 date Value of extension
.... extension:status 0..1 Extension status of community funding - no subsidy, partial subsidy, full subsidy
..... id 0..1 id Unique id for inter-element referencing
..... extension 0..0
..... url 1..1 uri "status"
..... value[x] 0..1 CodeableConcept Value of extension
Binding: https://nzhts.digital.health.nz/fhir/ValueSet/nzf-funding-code (required)
.... extension:subsidy 0..1 Extension The subsided price
..... id 0..1 id Unique id for inter-element referencing
..... extension 0..0
..... url 1..1 uri "subsidy"
..... value[x] 0..1 Money Value of extension
.... extension:higherSubsidy 0..1 Extension The higher subsided price
..... id 0..1 id Unique id for inter-element referencing
..... extension 0..0
..... url 1..1 uri "higherSubsidy"
..... value[x] 0..1 Money Value of extension
.... extension:price 0..1 Extension The manufacturer price.
..... id 0..1 id Unique id for inter-element referencing
..... extension 0..0
..... url 1..1 uri "price"
..... value[x] 0..1 Money Value of extension
.... extension:claimUnit 0..1 Extension Pharmac claim unit
..... id 0..1 id Unique id for inter-element referencing
..... extension 0..0
..... url 1..1 uri "claimUnit"
..... value[x] 0..1 CodeableConcept Value of extension
.... extension:type 1..* Extension A list of funding types, currently either community or hml
..... id 0..1 id Unique id for inter-element referencing
..... extension 0..0
..... url 1..1 uri "type"
..... value[x] 0..1 CodeableConcept Value of extension
Binding: PHARMAC funding type (required)
... url 1..1 uri "http://hl7.org.nz/fhir/StructureDefinition/nzf-funding"

doco Documentation for this format

This structure is derived from Extension

Summary

Complex Extension: Core funding information specific to NZ. The extension can be added multiple times to a product for each PHARMAC schedule. These can be differentiated via the scheduleDate field.

  • scheduleDate: date: The date this item was placed on the schedule
  • status: CodeableConcept: status of community funding - no subsidy, partial subsidy, full subsidy
  • subsidy: Money: The subsided price
  • higherSubsidy: Money: The higher subsided price
  • price: Money: The manufacturer price.
  • claimUnit: CodeableConcept: Pharmac claim unit
  • type: CodeableConcept: A list of funding types, currently either community or hml

Differential View

This structure is derived from Extension

NameFlagsCard.TypeDescription & Constraintsdoco
.. Extension 0..* Extension Extension
... extension 2..* Extension Extension
... Slices for extension Content/Rules for all slices
.... extension:scheduleDate 1..1 Extension The date this item was placed on the schedule
..... extension 0..0
..... url 1..1 uri "scheduleDate"
..... value[x] 0..1 date Value of extension
.... extension:status 0..1 Extension status of community funding - no subsidy, partial subsidy, full subsidy
..... extension 0..0
..... url 1..1 uri "status"
..... value[x] 0..1 CodeableConcept Value of extension
Binding: https://nzhts.digital.health.nz/fhir/ValueSet/nzf-funding-code (required)
.... extension:subsidy 0..1 Extension The subsided price
..... extension 0..0
..... url 1..1 uri "subsidy"
..... value[x] 0..1 Money Value of extension
.... extension:higherSubsidy 0..1 Extension The higher subsided price
..... extension 0..0
..... url 1..1 uri "higherSubsidy"
..... value[x] 0..1 Money Value of extension
.... extension:price 0..1 Extension The manufacturer price.
..... extension 0..0
..... url 1..1 uri "price"
..... value[x] 0..1 Money Value of extension
.... extension:claimUnit 0..1 Extension Pharmac claim unit
..... extension 0..0
..... url 1..1 uri "claimUnit"
..... value[x] 0..1 CodeableConcept Value of extension
.... extension:type 1..* Extension A list of funding types, currently either community or hml
..... extension 0..0
..... url 1..1 uri "type"
..... value[x] 0..1 CodeableConcept Value of extension
Binding: PHARMAC funding type (required)
... url 1..1 uri "http://hl7.org.nz/fhir/StructureDefinition/nzf-funding"

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Extension 0..* Extension Extension
... id 0..1 id Unique id for inter-element referencing
... Slices for extension 2..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:scheduleDate 1..1 Extension The date this item was placed on the schedule
..... id 0..1 id Unique id for inter-element referencing
..... extension 0..0
..... url 1..1 uri "scheduleDate"
..... value[x] 0..1 date Value of extension
.... extension:status 0..1 Extension status of community funding - no subsidy, partial subsidy, full subsidy
..... id 0..1 id Unique id for inter-element referencing
..... extension 0..0
..... url 1..1 uri "status"
..... value[x] 0..1 CodeableConcept Value of extension
Binding: https://nzhts.digital.health.nz/fhir/ValueSet/nzf-funding-code (required)
.... extension:subsidy 0..1 Extension The subsided price
..... id 0..1 id Unique id for inter-element referencing
..... extension 0..0
..... url 1..1 uri "subsidy"
..... value[x] 0..1 Money Value of extension
.... extension:higherSubsidy 0..1 Extension The higher subsided price
..... id 0..1 id Unique id for inter-element referencing
..... extension 0..0
..... url 1..1 uri "higherSubsidy"
..... value[x] 0..1 Money Value of extension
.... extension:price 0..1 Extension The manufacturer price.
..... id 0..1 id Unique id for inter-element referencing
..... extension 0..0
..... url 1..1 uri "price"
..... value[x] 0..1 Money Value of extension
.... extension:claimUnit 0..1 Extension Pharmac claim unit
..... id 0..1 id Unique id for inter-element referencing
..... extension 0..0
..... url 1..1 uri "claimUnit"
..... value[x] 0..1 CodeableConcept Value of extension
.... extension:type 1..* Extension A list of funding types, currently either community or hml
..... id 0..1 id Unique id for inter-element referencing
..... extension 0..0
..... url 1..1 uri "type"
..... value[x] 0..1 CodeableConcept Value of extension
Binding: PHARMAC funding type (required)
... url 1..1 uri "http://hl7.org.nz/fhir/StructureDefinition/nzf-funding"

doco Documentation for this format

 

Other representations of profile: CSV, Excel, Schematron

Terminology Bindings

PathConformanceValueSetURI
Extension.extension:status.value[x]requiredhttps://nzhts.digital.health.nz/fhir/ValueSet/nzf-funding-code
https://nzhts.digital.health.nz/fhir/ValueSet/nzf-funding-code
Extension.extension:type.value[x]requiredPharmacFundingTypeHB (a valid code from Possible values for PHARMAC funding type)
https://nzhts.digital.health.nz/fhir/ValueSet/nzf-funding-type
from this IG

Constraints

IdGradePath(s)DetailsRequirements
ele-1error**ALL** elementsAll FHIR elements must have a @value or children unless an empty Parameters resource
: hasValue() or (children().count() > id.count()) or $this is Parameters
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()