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

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

Extension: FundingRule

Official URL: http://hl7.org.nz/fhir/StructureDefinition/nzf-funding-rule Version: 0.1.0
Draft as of 2022-04-20 Realm: New Zealand flag Computable Name: FundingRule

Funding restriction information which complements the general funding information provided in the nzf-funding extension. The extension can be added multiple times to a product for each given rule as well as 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):

  • Medication

Funding information is added to Container 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.

The second extension is nzf-funding-rule. This extension once again has a schedule date so vendors can determine which schedule they would like to look at. The purpose of this extension is to provide the pharmac funding rules that apply to the given product. Most of the data here comes from the ps_rule table (in the NZMT releases) however a number of attribute rules are also added. These are:

Name Condition Rule Type Rule value Rule text
Sole subsidy When a CTPP associated with a ps_brand entry has the sole_supply flag set SoleSupply Sole Subsided Supply
Principal Sole Supply When a CTPP associated with a ps_brand entry has the pss flag set PrincipalSoleSupply Principal Sole Supply
Cost Brand Source When a CTPP associated with ps_pack entry has cost brand source = 1 CostBrandSource CBS
Original Pack When a CTPP associated with ps_pack entry has originalPack = 1 OriginalPack Original Pack
Hospital Supply Status When a CTPP associated with a ps_brand entry has the hss set HospitalSupplyStatus Hospital Supply Status
Safety: Uncompounded ps_formulary.safety = Uncompounded Safety Uncompounded Safety cap required
Safety: Compounded ps_formulary.safety = compounded Safety Compounded Safety cap required for extemporaneously compounded oral liquid preparations
Statim ps_formulary.statim = Must Statim Must Statim: Three months or six months, as applicable, dispensed all-at-once.
Statim ps_formulary.statim = Must Statim Must Statim: Three months or six months, as applicable, dispensed all-at-once.

Note - If only part of the schedule is released at a given date (i.e. a mid month community release) then the previous complementary release is also provided at that given schedule date. This means that a complete schedule is available for any given schedule date.

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

Mandatory: 3 elements
Fixed Value: 9 elements
Prohibited: 9 elements

This structure is derived from Extension

NameFlagsCard.TypeDescription & Constraintsdoco
.. Extension 0..*ExtensionExtension
... extension 3..*ExtensionExtension
... extension:scheduleDate 1..1ExtensionThe date this item was placed on the schedule
.... extension 0..0
.... url 1..1uri"scheduleDate"
.... value[x] 0..1dateValue of extension
... extension:type 1..1ExtensionType of funding - hml, community.
.... extension 0..0
.... url 1..1uri"type"
.... value[x] 0..1CodeableConceptValue of extension
Binding: Pharmac funding type (required)
.... extension 0..0
.... url 1..1uri"ruleType"
.... value[x] 0..1CodeableConceptValue of extension
... extension:ruleAttribute 0..1ExtensionThe attribute from the ps_rule table
.... extension 0..0
.... url 1..1uri"ruleAttribute"
.... value[x] 0..1stringValue of extension
... extension:ruleValue 0..1ExtensionThe value from the ps_rule table except for attribute based rules
.... extension 0..0
.... url 1..1uri"ruleValue"
.... value[x] 0..1stringValue of extension
... extension:ruleText 0..1ExtensionDerived text based on the rule
.... extension 0..0
.... url 1..1uri"ruleText"
.... value[x] 0..1stringValue of extension
... extension:ruleWaiver 0..1ExtensionThe waiver from the ps_rule table
.... extension 0..0
.... url 1..1uri"ruleWaiver"
.... value[x] 0..1stringValue of extension
... extension:ruleXlinkHref 0..1ExtensionThe xlinkHref from the ps_rule table
.... extension 0..0
.... url 1..1uri"ruleXlinkHref"
.... value[x] 0..1stringValue of extension
... url 1..1uri"http://hl7.org.nz/fhir/StructureDefinition/nzf-funding-rule"
... value[x] 0..0

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. Extension 0..*ExtensionExtension
... id 0..1stringUnique id for inter-element referencing
... Slices for extension 3..*ExtensionExtension
Slice: Unordered, Open by value:url
... extension:scheduleDate 1..1ExtensionThe date this item was placed on the schedule
.... id 0..1stringUnique id for inter-element referencing
.... Slices for extension 0..0
.... url 1..1uri"scheduleDate"
.... value[x] 0..1dateValue of extension
.... id 0..1stringUnique id for inter-element referencing
.... Slices for extension 0..0
.... url 1..1uri"type"
.... value[x] 0..1CodeableConceptValue of extension
Binding: Pharmac funding type (required)
... extension:ruleType 1..1ExtensionThe type of pharmac rule - primarily sourced from the ps_rule table but can be derived for attribute based rules
.... id 0..1stringUnique id for inter-element referencing
.... Slices for extension 0..0
.... url 1..1uri"ruleType"
.... value[x] 0..1CodeableConceptValue of extension
... extension:ruleAttribute 0..1ExtensionThe attribute from the ps_rule table
.... id 0..1stringUnique id for inter-element referencing
.... Slices for extension 0..0
.... url 1..1uri"ruleAttribute"
.... value[x] 0..1stringValue of extension
... extension:ruleValue 0..1ExtensionThe value from the ps_rule table except for attribute based rules
.... id 0..1stringUnique id for inter-element referencing
.... Slices for extension 0..0
.... url 1..1uri"ruleValue"
.... value[x] 0..1stringValue of extension
... extension:ruleText 0..1ExtensionDerived text based on the rule
.... id 0..1stringUnique id for inter-element referencing
.... Slices for extension 0..0
.... url 1..1uri"ruleText"
.... value[x] 0..1stringValue of extension
... extension:ruleWaiver 0..1ExtensionThe waiver from the ps_rule table
.... id 0..1stringUnique id for inter-element referencing
.... Slices for extension 0..0
.... url 1..1uri"ruleWaiver"
.... value[x] 0..1stringValue of extension
... extension:ruleXlinkHref 0..1ExtensionThe xlinkHref from the ps_rule table
.... id 0..1stringUnique id for inter-element referencing
.... Slices for extension 0..0
.... url 1..1uri"ruleXlinkHref"
.... value[x] 0..1stringValue of extension
... url 1..1uri"http://hl7.org.nz/fhir/StructureDefinition/nzf-funding-rule"

doco Documentation for this format

This structure is derived from Extension

Summary

Mandatory: 3 elements
Fixed Value: 9 elements
Prohibited: 9 elements

Differential View

This structure is derived from Extension

NameFlagsCard.TypeDescription & Constraintsdoco
.. Extension 0..*ExtensionExtension
... extension 3..*ExtensionExtension
... extension:scheduleDate 1..1ExtensionThe date this item was placed on the schedule
.... extension 0..0
.... url 1..1uri"scheduleDate"
.... value[x] 0..1dateValue of extension
... extension:type 1..1ExtensionType of funding - hml, community.
.... extension 0..0
.... url 1..1uri"type"
.... value[x] 0..1CodeableConceptValue of extension
Binding: Pharmac funding type (required)
.... extension 0..0
.... url 1..1uri"ruleType"
.... value[x] 0..1CodeableConceptValue of extension
... extension:ruleAttribute 0..1ExtensionThe attribute from the ps_rule table
.... extension 0..0
.... url 1..1uri"ruleAttribute"
.... value[x] 0..1stringValue of extension
... extension:ruleValue 0..1ExtensionThe value from the ps_rule table except for attribute based rules
.... extension 0..0
.... url 1..1uri"ruleValue"
.... value[x] 0..1stringValue of extension
... extension:ruleText 0..1ExtensionDerived text based on the rule
.... extension 0..0
.... url 1..1uri"ruleText"
.... value[x] 0..1stringValue of extension
... extension:ruleWaiver 0..1ExtensionThe waiver from the ps_rule table
.... extension 0..0
.... url 1..1uri"ruleWaiver"
.... value[x] 0..1stringValue of extension
... extension:ruleXlinkHref 0..1ExtensionThe xlinkHref from the ps_rule table
.... extension 0..0
.... url 1..1uri"ruleXlinkHref"
.... value[x] 0..1stringValue of extension
... url 1..1uri"http://hl7.org.nz/fhir/StructureDefinition/nzf-funding-rule"
... value[x] 0..0

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Extension 0..*ExtensionExtension
... id 0..1stringUnique id for inter-element referencing
... Slices for extension 3..*ExtensionExtension
Slice: Unordered, Open by value:url
... extension:scheduleDate 1..1ExtensionThe date this item was placed on the schedule
.... id 0..1stringUnique id for inter-element referencing
.... Slices for extension 0..0
.... url 1..1uri"scheduleDate"
.... value[x] 0..1dateValue of extension
.... id 0..1stringUnique id for inter-element referencing
.... Slices for extension 0..0
.... url 1..1uri"type"
.... value[x] 0..1CodeableConceptValue of extension
Binding: Pharmac funding type (required)
... extension:ruleType 1..1ExtensionThe type of pharmac rule - primarily sourced from the ps_rule table but can be derived for attribute based rules
.... id 0..1stringUnique id for inter-element referencing
.... Slices for extension 0..0
.... url 1..1uri"ruleType"
.... value[x] 0..1CodeableConceptValue of extension
... extension:ruleAttribute 0..1ExtensionThe attribute from the ps_rule table
.... id 0..1stringUnique id for inter-element referencing
.... Slices for extension 0..0
.... url 1..1uri"ruleAttribute"
.... value[x] 0..1stringValue of extension
... extension:ruleValue 0..1ExtensionThe value from the ps_rule table except for attribute based rules
.... id 0..1stringUnique id for inter-element referencing
.... Slices for extension 0..0
.... url 1..1uri"ruleValue"
.... value[x] 0..1stringValue of extension
... extension:ruleText 0..1ExtensionDerived text based on the rule
.... id 0..1stringUnique id for inter-element referencing
.... Slices for extension 0..0
.... url 1..1uri"ruleText"
.... value[x] 0..1stringValue of extension
... extension:ruleWaiver 0..1ExtensionThe waiver from the ps_rule table
.... id 0..1stringUnique id for inter-element referencing
.... Slices for extension 0..0
.... url 1..1uri"ruleWaiver"
.... value[x] 0..1stringValue of extension
... extension:ruleXlinkHref 0..1ExtensionThe xlinkHref from the ps_rule table
.... id 0..1stringUnique id for inter-element referencing
.... Slices for extension 0..0
.... url 1..1uri"ruleXlinkHref"
.... value[x] 0..1stringValue of extension
... url 1..1uri"http://hl7.org.nz/fhir/StructureDefinition/nzf-funding-rule"

doco Documentation for this format

 

Other representations of profile: CSV, Excel, Schematron

Terminology Bindings

PathConformanceValueSet
Extension.extension:type.value[x]requiredPharmacFundingTypeHB

Constraints

IdGradePathDetailsRequirements
ele-1errorExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorExtension.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorExtension.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorExtension.extension:scheduleDateAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorExtension.extension:scheduleDateMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorExtension.extension:scheduleDate.value[x]All FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorExtension.extension:typeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorExtension.extension:typeMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorExtension.extension:type.value[x]All FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorExtension.extension:ruleTypeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorExtension.extension:ruleTypeMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorExtension.extension:ruleType.value[x]All FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorExtension.extension:ruleAttributeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorExtension.extension:ruleAttributeMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorExtension.extension:ruleAttribute.value[x]All FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorExtension.extension:ruleValueAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorExtension.extension:ruleValueMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorExtension.extension:ruleValue.value[x]All FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorExtension.extension:ruleTextAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorExtension.extension:ruleTextMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorExtension.extension:ruleText.value[x]All FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorExtension.extension:ruleWaiverAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorExtension.extension:ruleWaiverMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorExtension.extension:ruleWaiver.value[x]All FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorExtension.extension:ruleXlinkHrefAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorExtension.extension:ruleXlinkHrefMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorExtension.extension:ruleXlinkHref.value[x]All FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())