NPHCDA Immunization FHIR IG
1.0.0 - ci-build Nigeria flag

NPHCDA Immunization FHIR IG, published by https://nphcda.gov.ng. 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/Nigeria-FHIR-Community/ImmunizationIG/ and changes regularly. See the Directory of published versions

StructureMap: StructureMap: DefaulterTracking to Immunization and related profiles

Official URL: https://nphcda.gov.ng/immunizationIG/StructureMap/defaultertracking-to-immunization Version: 1.0.0
Active as of 2025-08-04 Computable Name: DefaulterTrackingToImmunization

Map logical DefaulterTracking model to NgImmImmunization, NgImmPatient, NgImmEncounter, and NgImmPractitioner profiles

map "https://nphcda.gov.ng/immunizationIG/StructureMap/defaultertracking-to-immunization" = "DefaulterTrackingToImmunization"

// Map logical DefaulterTracking model to NgImmImmunization, NgImmPatient, NgImmEncounter, and NgImmPractitioner profiles

uses "https://nphcda.gov.ng/immunizationIG/StructureDefinition/defaultertracking" alias DT as source
uses "https://nphcda.gov.ng/immunizationIG/StructureDefinition/ng-imm-patient" alias PAT as target
uses "https://nphcda.gov.ng/immunizationIG/StructureDefinition/ng-imm-immunization" alias IMM as target
uses "https://nphcda.gov.ng/immunizationIG/StructureDefinition/ng-imm-encounter" alias ENC as target
uses "https://nphcda.gov.ng/immunizationIG/StructureDefinition/ng-imm-practitioner" alias PRAC as target

group defaulterTrackingToPatient(source DT, target PAT) {
  DT.clientName -> PAT.name[0].text = copy();
  DT.clientSex -> PAT.gender = copy();
  DT.clientAge -> PAT.extension[ageInMonths].valueInteger = copy();
}

group defaulterTrackingToImmunization(source DT, target IMM) {
  DT.missedVaccine -> IMM.vaccineCode = copy();
  DT.missedVaccineDate -> IMM.occurrenceDateTime = copy();
  DT.missedReason -> IMM.note[0].text = copy();
}

group defaulterTrackingToEncounter(source DT, target ENC) {
  DT.missedVaccineDate -> ENC.period.start = copy() "encounterPeriod";
}

group defaulterTrackingToPractitioner(source DT, target PRAC) {
  DT.caregiverName -> PRAC.name[0].text = copy();
  DT.caregiverPhone -> PRAC.telecom[0].value = copy();
}