WHO Immunization Implementation Guide
1.0.0 - release

This page is part of the Immunizations (v1.0.0: Release) based on FHIR (HL7® FHIR® Standard) R4. This is the current published version in its permanent home (it will always be available at this URL). For a full list of available versions, see the Directory of published versions

StructureMap: IMMZ.D17.QRToLM

Official URL: http://smart.who.int/immunizations/StructureMap/IMMZ.D17.QRToLM Version: 1.0.0
Draft as of 2026-10-02 Computable Name: IMMZ.D17.QRToLM

Immunization Report AEFI - Transform QuestionnaireResponse to Logical Model

map "http://smart.who.int/immunizations/StructureMap/IMMZ.D17.QRToLM" = "IMMZ.D17.QRToLM"

// Immunization Report AEFI - Transform QuestionnaireResponse to Logical Model

uses "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse" alias QResp as source
uses "http://smart.who.int/immunizations/StructureDefinition/IMMZD17" alias IMMZD17 as target

imports "http://smart.who.int/immunizations/StructureMap/IMMZ.Helpers"

group QRespToIMMZD17(source qr : QResp, target immz : IMMZD17) {
  qr.subject as subject -> immz.patient = subject "setPatient";
  qr.item as item where (linkId = 'reactionReported') -> immz.reactionReported as field then ItemToValue(item, field) "reactionReported";
  qr.item as item where (linkId = 'reactionDate') -> immz.reactionDate as field then ItemToValue(item, field) "reactionDate";
  qr.item as item where (linkId = 'reactionManifestation') -> immz.reactionManifestation as field then ItemToCoding(item, field) "reactionManifestation";
  qr.item as item where (linkId = 'typeOfReaction') -> immz.typeOfReaction as field then ItemToCoding(item, field) "typeOfReaction";
  qr.item as item where (linkId = 'otherImportantMedicalEvent') -> immz.otherImportantMedicalEvent as field then ItemToValue(item, field) "otherImportantMedicalEvent";
  qr.item as item where (linkId = 'reactionOutcome') -> immz.reactionOutcome as field then ItemToCoding(item, field) "reactionOutcome";
}