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: AdministerVaccine to FHIR Resources - JSON Representation

Active as of 2025-08-04

Raw json | Download

{
  "resourceType" : "StructureMap",
  "id" : "adminvaccine-to-immunization",
  "text" : {
    "status" : "generated",
    "div" : "<div xmlns=\"http://www.w3.org/1999/xhtml\"><p class=\"res-header-id\"><b>Generated Narrative: StructureMap adminvaccine-to-immunization</b></p><a name=\"adminvaccine-to-immunization\"> </a><a name=\"hcadminvaccine-to-immunization\"> </a><pre class=\"fml\">\r\n<b>map</b><span style=\"color: navy\"> &quot;</span>https://nphcda.gov.ng/immunizationIG/StructureMap/adminvaccine-to-immunization<span style=\"color: navy\">&quot; = &quot;</span>AdministerVaccineToFHIRResources<span style=\"color: navy\">&quot;\r\n\r\n</span><span style=\"color: navy\">// </span><span style=\"color: green\">Map logical AdministerVaccine to NgImmImmunization, NgImmLocation, NgImmPractitioner, and NgImmEncounter profiles</span>\r\n\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>https://nphcda.gov.ng/immunizationIG/StructureDefinition/administervaccine<span style=\"color: navy\">&quot; </span><b>alias </b>AV <b>as </b><b>source</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>https://nphcda.gov.ng/immunizationIG/StructureDefinition/ng-imm-immunization<span style=\"color: navy\">&quot; </span><b>alias </b>IMM <b>as </b><b>target</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>https://nphcda.gov.ng/immunizationIG/StructureDefinition/ng-imm-location<span style=\"color: navy\">&quot; </span><b>alias </b>LOC <b>as </b><b>target</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>https://nphcda.gov.ng/immunizationIG/StructureDefinition/ng-imm-practitioner<span style=\"color: navy\">&quot; </span><b>alias </b>PRAC <b>as </b><b>target</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>https://nphcda.gov.ng/immunizationIG/StructureDefinition/ng-imm-encounter<span style=\"color: navy\">&quot; </span><b>alias </b>ENC <b>as </b><b>target</b>\r\n\r\n<b>group </b>administerVaccineToImmunization<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">AV</span>, <b>target</b> <span style=\"color: maroon\">IMM</span><span style=\"color: navy\">)</span><span style=\"color: navy\"> {\r\n</span>  AV.vaccineType<span style=\"color: navy\"><b> -&gt; </b></span>IMM.vaccineCode = <b>copy</b><span style=\"color: navy\">(</span><span style=\"color: navy\">)</span> <i>&quot;vaccineCode&quot;</i><span style=\"color: navy\">;</span>\r\n  AV.contraindicated<span style=\"color: navy\"><b> -&gt; </b></span>IMM.doNotPerform = <b>copy</b><span style=\"color: navy\">(</span><span style=\"color: navy\">)</span><span style=\"color: navy\">;</span>\r\n  AV.contraindications<span style=\"color: navy\"><b> -&gt; </b></span>IMM.reasonCode = <b>copy</b><span style=\"color: navy\">(</span><span style=\"color: navy\">)</span><span style=\"color: navy\">;</span>\r\n  AV.vaccinationDateTime<span style=\"color: navy\"><b> -&gt; </b></span>IMM.occurrenceDateTime = <b>copy</b><span style=\"color: navy\">(</span><span style=\"color: navy\">)</span> <i>&quot;occurrenceDateTime&quot;</i><span style=\"color: navy\">;</span>\r\n  AV.vaccineBatchNumber<span style=\"color: navy\"><b> -&gt; </b></span>IMM.lotNumber = <b>copy</b><span style=\"color: navy\">(</span><span style=\"color: navy\">)</span> <i>&quot;lotNumber&quot;</i><span style=\"color: navy\">;</span>\r\n  AV.expirationDate<span style=\"color: navy\"><b> -&gt; </b></span>IMM.expirationDate = <b>copy</b><span style=\"color: navy\">(</span><span style=\"color: navy\">)</span><span style=\"color: navy\">;</span>\r\n  AV.siteAdministered<span style=\"color: navy\"><b> -&gt; </b></span>IMM.site = <b>copy</b><span style=\"color: navy\">(</span><span style=\"color: navy\">)</span> <i>&quot;site&quot;</i><span style=\"color: navy\">;</span>\r\n  AV.routeOfAdministration<span style=\"color: navy\"><b> -&gt; </b></span>IMM.route = <b>copy</b><span style=\"color: navy\">(</span><span style=\"color: navy\">)</span> <i>&quot;route&quot;</i><span style=\"color: navy\">;</span>\r\n  AV.doseQuantity<span style=\"color: navy\"><b> -&gt; </b></span>IMM.doseQuantity = <b>copy</b><span style=\"color: navy\">(</span><span style=\"color: navy\">)</span><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>administerVaccineToLocation<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">AV</span>, <b>target</b> <span style=\"color: maroon\">LOC</span><span style=\"color: navy\">)</span><span style=\"color: navy\"> {\r\n</span>  AV.nameOfHealthFacility<span style=\"color: navy\"><b> -&gt; </b></span>LOC.name = <b>copy</b><span style=\"color: navy\">(</span><span style=\"color: navy\">)</span> <i>&quot;locationName&quot;</i><span style=\"color: navy\">;</span>\r\n  AV.facilityType<span style=\"color: navy\"><b> -&gt; </b></span>LOC.type = <b>copy</b><span style=\"color: navy\">(</span><span style=\"color: navy\">)</span><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>administerVaccineToPractitioner<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">AV</span>, <b>target</b> <span style=\"color: maroon\">PRAC</span><span style=\"color: navy\">)</span><span style=\"color: navy\"> {\r\n</span>  AV.healthWorkerIdentifier<span style=\"color: navy\"><b> -&gt; </b></span>PRAC.identifier.value = <b>copy</b><span style=\"color: navy\">(</span><span style=\"color: navy\">)</span> <i>&quot;identifier&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>administerVaccineToEncounter<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">AV</span>, <b>target</b> <span style=\"color: maroon\">ENC</span><span style=\"color: navy\">)</span><span style=\"color: navy\"> {\r\n</span>  AV.sessionType<span style=\"color: navy\"><b> -&gt; </b></span>ENC.class = <b>copy</b><span style=\"color: navy\">(</span><span style=\"color: navy\">)</span><span style=\"color: navy\">;</span>\r\n  AV.vaccinationDateTime<span style=\"color: navy\"><b> -&gt; </b></span>ENC.period.start = <b>copy</b><span style=\"color: navy\">(</span><span style=\"color: navy\">)</span> <i>&quot;periodStartEnd&quot;</i><span style=\"color: navy\">;</span>\r\n  AV.vaccinationDateTime<span style=\"color: navy\"><b> -&gt; </b></span>ENC.period.end = <b>copy</b><span style=\"color: navy\">(</span><span style=\"color: navy\">)</span> <i>&quot;periodEnd&quot;</i><span style=\"color: navy\">;</span>\r\n  AV<span style=\"color: navy\"><b> -&gt; </b></span>ENC.status = <span style=\"color: blue\">'finished'</span> <i>&quot;status&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span></pre></div>"
  },
  "url" : "https://nphcda.gov.ng/immunizationIG/StructureMap/adminvaccine-to-immunization",
  "version" : "1.0.0",
  "name" : "AdministerVaccineToFHIRResources",
  "title" : "StructureMap: AdministerVaccine to FHIR Resources",
  "status" : "active",
  "date" : "2025-08-04T10:06:52+00:00",
  "publisher" : "https://nphcda.gov.ng",
  "contact" : [
    {
      "name" : "https://nphcda.gov.ng",
      "telecom" : [
        {
          "system" : "url",
          "value" : "https://nphcda.gov.ng"
        },
        {
          "system" : "email",
          "value" : "kasim.sani@nphcda.gov.ng"
        }
      ]
    },
    {
      "name" : "Nigeria Primary Healthcare Development Agency.",
      "telecom" : [
        {
          "system" : "email",
          "value" : "ig@nphcda.gov.ng",
          "use" : "work"
        }
      ]
    }
  ],
  "description" : "Map logical AdministerVaccine to NgImmImmunization, NgImmLocation, NgImmPractitioner, and NgImmEncounter profiles",
  "jurisdiction" : [
    {
      "coding" : [
        {
          "system" : "urn:iso:std:iso:3166",
          "code" : "NG",
          "display" : "Nigeria"
        }
      ]
    }
  ],
  "structure" : [
    {
      "url" : "https://nphcda.gov.ng/immunizationIG/StructureDefinition/administervaccine",
      "mode" : "source",
      "alias" : "AV"
    },
    {
      "url" : "https://nphcda.gov.ng/immunizationIG/StructureDefinition/ng-imm-immunization",
      "mode" : "target",
      "alias" : "IMM"
    },
    {
      "url" : "https://nphcda.gov.ng/immunizationIG/StructureDefinition/ng-imm-location",
      "mode" : "target",
      "alias" : "LOC"
    },
    {
      "url" : "https://nphcda.gov.ng/immunizationIG/StructureDefinition/ng-imm-practitioner",
      "mode" : "target",
      "alias" : "PRAC"
    },
    {
      "url" : "https://nphcda.gov.ng/immunizationIG/StructureDefinition/ng-imm-encounter",
      "mode" : "target",
      "alias" : "ENC"
    }
  ],
  "group" : [
    {
      "name" : "administerVaccineToImmunization",
      "typeMode" : "none",
      "input" : [
        {
          "name" : "AV",
          "mode" : "source"
        },
        {
          "name" : "IMM",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "vaccineCode",
          "source" : [
            {
              "context" : "AV",
              "element" : "vaccineType"
            }
          ],
          "target" : [
            {
              "context" : "IMM",
              "contextType" : "variable",
              "element" : "vaccineCode",
              "transform" : "copy"
            }
          ]
        },
        {
          "name" : "contraindicated",
          "source" : [
            {
              "context" : "AV",
              "element" : "contraindicated"
            }
          ],
          "target" : [
            {
              "context" : "IMM",
              "contextType" : "variable",
              "element" : "doNotPerform",
              "transform" : "copy"
            }
          ]
        },
        {
          "name" : "contraindications",
          "source" : [
            {
              "context" : "AV",
              "element" : "contraindications"
            }
          ],
          "target" : [
            {
              "context" : "IMM",
              "contextType" : "variable",
              "element" : "reasonCode",
              "transform" : "copy"
            }
          ]
        },
        {
          "name" : "occurrenceDateTime",
          "source" : [
            {
              "context" : "AV",
              "element" : "vaccinationDateTime"
            }
          ],
          "target" : [
            {
              "context" : "IMM",
              "contextType" : "variable",
              "element" : "occurrenceDateTime",
              "transform" : "copy"
            }
          ]
        },
        {
          "name" : "lotNumber",
          "source" : [
            {
              "context" : "AV",
              "element" : "vaccineBatchNumber"
            }
          ],
          "target" : [
            {
              "context" : "IMM",
              "contextType" : "variable",
              "element" : "lotNumber",
              "transform" : "copy"
            }
          ]
        },
        {
          "name" : "expirationDate",
          "source" : [
            {
              "context" : "AV",
              "element" : "expirationDate"
            }
          ],
          "target" : [
            {
              "context" : "IMM",
              "contextType" : "variable",
              "element" : "expirationDate",
              "transform" : "copy"
            }
          ]
        },
        {
          "name" : "site",
          "source" : [
            {
              "context" : "AV",
              "element" : "siteAdministered"
            }
          ],
          "target" : [
            {
              "context" : "IMM",
              "contextType" : "variable",
              "element" : "site",
              "transform" : "copy"
            }
          ]
        },
        {
          "name" : "route",
          "source" : [
            {
              "context" : "AV",
              "element" : "routeOfAdministration"
            }
          ],
          "target" : [
            {
              "context" : "IMM",
              "contextType" : "variable",
              "element" : "route",
              "transform" : "copy"
            }
          ]
        },
        {
          "name" : "doseQuantity",
          "source" : [
            {
              "context" : "AV",
              "element" : "doseQuantity"
            }
          ],
          "target" : [
            {
              "context" : "IMM",
              "contextType" : "variable",
              "element" : "doseQuantity",
              "transform" : "copy"
            }
          ]
        }
      ]
    },
    {
      "name" : "administerVaccineToLocation",
      "typeMode" : "none",
      "input" : [
        {
          "name" : "AV",
          "mode" : "source"
        },
        {
          "name" : "LOC",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "locationName",
          "source" : [
            {
              "context" : "AV",
              "element" : "nameOfHealthFacility"
            }
          ],
          "target" : [
            {
              "context" : "LOC",
              "contextType" : "variable",
              "element" : "name",
              "transform" : "copy"
            }
          ]
        },
        {
          "name" : "facilityType",
          "source" : [
            {
              "context" : "AV",
              "element" : "facilityType"
            }
          ],
          "target" : [
            {
              "context" : "LOC",
              "contextType" : "variable",
              "element" : "type",
              "transform" : "copy"
            }
          ]
        }
      ]
    },
    {
      "name" : "administerVaccineToPractitioner",
      "typeMode" : "none",
      "input" : [
        {
          "name" : "AV",
          "mode" : "source"
        },
        {
          "name" : "PRAC",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "identifier",
          "source" : [
            {
              "context" : "AV",
              "element" : "healthWorkerIdentifier"
            }
          ],
          "target" : [
            {
              "context" : "PRAC",
              "contextType" : "variable",
              "element" : "identifier.value",
              "transform" : "copy"
            }
          ]
        }
      ]
    },
    {
      "name" : "administerVaccineToEncounter",
      "typeMode" : "none",
      "input" : [
        {
          "name" : "AV",
          "mode" : "source"
        },
        {
          "name" : "ENC",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "sessionType",
          "source" : [
            {
              "context" : "AV",
              "element" : "sessionType"
            }
          ],
          "target" : [
            {
              "context" : "ENC",
              "contextType" : "variable",
              "element" : "class",
              "transform" : "copy"
            }
          ]
        },
        {
          "name" : "periodStartEnd",
          "source" : [
            {
              "context" : "AV",
              "element" : "vaccinationDateTime"
            }
          ],
          "target" : [
            {
              "context" : "ENC",
              "contextType" : "variable",
              "element" : "period.start",
              "transform" : "copy"
            }
          ]
        },
        {
          "name" : "periodEnd",
          "source" : [
            {
              "context" : "AV",
              "element" : "vaccinationDateTime"
            }
          ],
          "target" : [
            {
              "context" : "ENC",
              "contextType" : "variable",
              "element" : "period.end",
              "transform" : "copy"
            }
          ]
        },
        {
          "name" : "status",
          "source" : [
            {
              "context" : "AV"
            }
          ],
          "target" : [
            {
              "context" : "ENC",
              "contextType" : "variable",
              "element" : "status",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueString" : "finished"
                }
              ]
            }
          ]
        }
      ]
    }
  ]
}