NHDR Implementation Guide Release 1.0
0.1.0 - ci-build

NHDR Implementation Guide Release 1.0, published by NHDR. This guide is not an authorized publication; it is the continuous build for version 0.1.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/PROJ-PHILHEALTH-EA-NHDR/PhilHealth-NHDR-IG-Review/ and changes regularly. See the Directory of published versions

Resource Profile: PH Medication

Official URL: https://nhdr.gov.ph/fhir/StructureDefinition/PH-Medication Version: 0.1.0
Standards status: Draft Computable Name: PH_Medication

Copyright/Legal: Used by permission of HL7 International, all rights reserved Creative Commons License

This resource is primarily used for the identification and definition of a medication, including ingredients, for the purposes of prescribing, dispensing, and administering a medication as well as for making statements about medication use.

Usage Notes

  • This profile is aligned with the national health data strategy in the Philippines.
  • Medication coding will transition to SNOMED CT once officially implemented in the country.
  • Other supported terminologies may include applicable FDA drug codes and relevant FHIR-based terminologies

Usages:

Formal Views of Profile Content

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

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Medication 0..* Medication Definition of a Medication
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:packaging 0..* CodeableConcept Detailed description on the medication packaging
URL: https://nhdr.gov.ph/fhir/StructureDefinition/Packaging
Binding: Drug Codes (required)
.... extension:medicationType 0..1 CodeableConcept Medication Type
URL: https://nhdr.gov.ph/fhir/StructureDefinition/MedicationType
... code Σ 0..1 CodeableConcept Codes that identify this medication
Binding: Drug Codes (required)
... form 0..1 CodeableConcept powder | tablets | capsule +
Binding: OrderableDrugForm (required)

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Medication.coderequiredDrugCodesVS(a valid code from Drug Codes)
https://nhdr.gov.ph/fhir/ValueSet/DrugCodesVS
From this IG
Medication.formrequiredOrderableDrugForm
http://terminology.hl7.org/ValueSet/v3-OrderableDrugForm

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorMedicationIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorMedicationIf 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-4errorMedicationIf 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-5errorMedicationIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceMedicationA 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()

This structure is derived from Medication

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Medication 0..* Medication Definition of a Medication
... implicitRules 0..0
... language 0..0
... text 0..0
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:packaging 0..* CodeableConcept Detailed description on the medication packaging
URL: https://nhdr.gov.ph/fhir/StructureDefinition/Packaging
Binding: Drug Codes (required)
.... extension:medicationType 0..1 CodeableConcept Medication Type
URL: https://nhdr.gov.ph/fhir/StructureDefinition/MedicationType
... modifierExtension 0..0
... code 0..1 CodeableConcept Codes that identify this medication
Binding: Drug Codes (required)
... status 0..0
... manufacturer 0..0
... form 0..1 CodeableConcept powder | tablets | capsule +
Binding: OrderableDrugForm (required)
... amount 0..0
... ingredient
.... id 0..0
.... extension 0..0
.... modifierExtension 0..0
.... isActive 0..0
... batch 0..0

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
Medication.coderequiredDrugCodesVS(a valid code from Drug Codes)
https://nhdr.gov.ph/fhir/ValueSet/DrugCodesVS
From this IG
Medication.formrequiredOrderableDrugForm
http://terminology.hl7.org/ValueSet/v3-OrderableDrugForm
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Medication 0..* Medication Definition of a Medication
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:packaging 0..* CodeableConcept Detailed description on the medication packaging
URL: https://nhdr.gov.ph/fhir/StructureDefinition/Packaging
Binding: Drug Codes (required)
.... extension:medicationType 0..1 CodeableConcept Medication Type
URL: https://nhdr.gov.ph/fhir/StructureDefinition/MedicationType
... code Σ 0..1 CodeableConcept Codes that identify this medication
Binding: Drug Codes (required)
... form 0..1 CodeableConcept powder | tablets | capsule +
Binding: OrderableDrugForm (required)
... ingredient 0..* BackboneElement Active or inactive ingredient
.... item[x] 1..1 The actual ingredient or content
..... itemCodeableConcept CodeableConcept
..... itemReference Reference(Substance | Medication)
.... strength 0..1 Ratio Quantity of ingredient present

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Medication.coderequiredDrugCodesVS(a valid code from Drug Codes)
https://nhdr.gov.ph/fhir/ValueSet/DrugCodesVS
From this IG
Medication.formrequiredOrderableDrugForm
http://terminology.hl7.org/ValueSet/v3-OrderableDrugForm

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorMedicationIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorMedicationIf 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-4errorMedicationIf 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-5errorMedicationIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceMedicationA 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()

This structure is derived from Medication

Summary

Prohibited: 13 elements

Extensions

This structure refers to these extensions:

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Medication 0..* Medication Definition of a Medication
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:packaging 0..* CodeableConcept Detailed description on the medication packaging
URL: https://nhdr.gov.ph/fhir/StructureDefinition/Packaging
Binding: Drug Codes (required)
.... extension:medicationType 0..1 CodeableConcept Medication Type
URL: https://nhdr.gov.ph/fhir/StructureDefinition/MedicationType
... code Σ 0..1 CodeableConcept Codes that identify this medication
Binding: Drug Codes (required)
... form 0..1 CodeableConcept powder | tablets | capsule +
Binding: OrderableDrugForm (required)

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Medication.coderequiredDrugCodesVS(a valid code from Drug Codes)
https://nhdr.gov.ph/fhir/ValueSet/DrugCodesVS
From this IG
Medication.formrequiredOrderableDrugForm
http://terminology.hl7.org/ValueSet/v3-OrderableDrugForm

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorMedicationIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorMedicationIf 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-4errorMedicationIf 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-5errorMedicationIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceMedicationA 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()

Differential View

This structure is derived from Medication

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Medication 0..* Medication Definition of a Medication
... implicitRules 0..0
... language 0..0
... text 0..0
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:packaging 0..* CodeableConcept Detailed description on the medication packaging
URL: https://nhdr.gov.ph/fhir/StructureDefinition/Packaging
Binding: Drug Codes (required)
.... extension:medicationType 0..1 CodeableConcept Medication Type
URL: https://nhdr.gov.ph/fhir/StructureDefinition/MedicationType
... modifierExtension 0..0
... code 0..1 CodeableConcept Codes that identify this medication
Binding: Drug Codes (required)
... status 0..0
... manufacturer 0..0
... form 0..1 CodeableConcept powder | tablets | capsule +
Binding: OrderableDrugForm (required)
... amount 0..0
... ingredient
.... id 0..0
.... extension 0..0
.... modifierExtension 0..0
.... isActive 0..0
... batch 0..0

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
Medication.coderequiredDrugCodesVS(a valid code from Drug Codes)
https://nhdr.gov.ph/fhir/ValueSet/DrugCodesVS
From this IG
Medication.formrequiredOrderableDrugForm
http://terminology.hl7.org/ValueSet/v3-OrderableDrugForm

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Medication 0..* Medication Definition of a Medication
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:packaging 0..* CodeableConcept Detailed description on the medication packaging
URL: https://nhdr.gov.ph/fhir/StructureDefinition/Packaging
Binding: Drug Codes (required)
.... extension:medicationType 0..1 CodeableConcept Medication Type
URL: https://nhdr.gov.ph/fhir/StructureDefinition/MedicationType
... code Σ 0..1 CodeableConcept Codes that identify this medication
Binding: Drug Codes (required)
... form 0..1 CodeableConcept powder | tablets | capsule +
Binding: OrderableDrugForm (required)
... ingredient 0..* BackboneElement Active or inactive ingredient
.... item[x] 1..1 The actual ingredient or content
..... itemCodeableConcept CodeableConcept
..... itemReference Reference(Substance | Medication)
.... strength 0..1 Ratio Quantity of ingredient present

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Medication.coderequiredDrugCodesVS(a valid code from Drug Codes)
https://nhdr.gov.ph/fhir/ValueSet/DrugCodesVS
From this IG
Medication.formrequiredOrderableDrugForm
http://terminology.hl7.org/ValueSet/v3-OrderableDrugForm

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorMedicationIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorMedicationIf 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-4errorMedicationIf 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-5errorMedicationIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceMedicationA 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()

This structure is derived from Medication

Summary

Prohibited: 13 elements

Extensions

This structure refers to these extensions:

 

Other representations of profile: CSV, Excel, Schematron