WHO Immunization Implementation Guide
0.2.0 - ci-build
WHO Immunization Implementation Guide, published by WHO. This guide is not an authorized publication; it is the continuous build for version 0.2.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/WorldHealthOrganization/smart-immunizations/ and changes regularly. See the Directory of published versions
Draft as of 2025-09-10 |
<StructureMap xmlns="http://hl7.org/fhir">
<id value="IMMZ.D17.QRToLM"/>
<text>
<status value="generated"/>
<div xmlns="http://www.w3.org/1999/xhtml"><p class="res-header-id"><b>Generated Narrative: StructureMap IMMZ.D17.QRToLM</b></p><a name="IMMZ.D17.QRToLM"> </a><a name="hcIMMZ.D17.QRToLM"> </a><pre class="fml">
<b>map</b><span style="color: navy"> "</span>http://smart.who.int/immunizations/StructureMap/IMMZ.D17.QRToLM<span style="color: navy">" = "</span>IMMZ.D17.QRToLM<span style="color: navy">"
</span><span style="color: navy">// </span><span style="color: green">Immunization Report AEFI - Transform QuestionnaireResponse to Logical Model</span>
<b>uses</b><span style="color: navy"> "</span><a href="http://hl7.org/fhir/R4/questionnaireresponse.html" title="QuestionnaireResponse">http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse</a><span style="color: navy">" </span><b>alias </b>QResp <b>as </b><b>source</b>
<b>uses</b><span style="color: navy"> "</span><a href="StructureDefinition-IMMZD17.html" title="IMMZ.D17.Report AEFI">http://smart.who.int/immunizations/StructureDefinition/IMMZD17</a><span style="color: navy">" </span><b>alias </b>IMMZD17 <b>as </b><b>target</b>
<b>imports</b><span style="color: navy"> "</span><a href="StructureMap-IMMZ.Helpers.html" title="IMMZ.Helpers">http://smart.who.int/immunizations/StructureMap/IMMZ.Helpers</a><span style="color: navy">"
</span>
<b>group </b>QRespToIMMZD17<span style="color: navy">(</span><b>source</b> <span style="color: maroon">qr</span><span style="color: navy"> : </span>QResp, <b>target</b> <span style="color: maroon">immz</span><span style="color: navy"> : </span>IMMZD17<span style="color: navy">)</span><span style="color: navy"> {
</span> qr.subject<b> as </b><span style="color: maroon">subject</span><span style="color: navy"><b> -> </b></span>immz.patient = <span style="color: maroon">subject</span> <i>"setPatient"</i><span style="color: navy">;</span>
qr.item<b> as </b><span style="color: maroon">item</span><b> where </b>linkId = 'reactionReported'<span style="color: navy"><b> -> </b></span>immz.reactionReported<b> as </b><span style="color: maroon">field</span><b> then </b>ItemToValue<span style="color: navy">(</span><span style="color: maroon">item</span><span style="color: navy">, </span><span style="color: maroon">field</span><span style="color: navy">)</span> <i>"reactionReported"</i><span style="color: navy">;</span>
qr.item<b> as </b><span style="color: maroon">item</span><b> where </b>linkId = 'reactionDate'<span style="color: navy"><b> -> </b></span>immz.reactionDate<b> as </b><span style="color: maroon">field</span><b> then </b>ItemToValue<span style="color: navy">(</span><span style="color: maroon">item</span><span style="color: navy">, </span><span style="color: maroon">field</span><span style="color: navy">)</span> <i>"reactionDate"</i><span style="color: navy">;</span>
qr.item<b> as </b><span style="color: maroon">item</span><b> where </b>linkId = 'reactionManifestation'<span style="color: navy"><b> -> </b></span>immz.reactionManifestation<b> as </b><span style="color: maroon">field</span><b> then </b>ItemToCoding<span style="color: navy">(</span><span style="color: maroon">item</span><span style="color: navy">, </span><span style="color: maroon">field</span><span style="color: navy">)</span> <i>"reactionManifestation"</i><span style="color: navy">;</span>
qr.item<b> as </b><span style="color: maroon">item</span><b> where </b>linkId = 'typeOfReaction'<span style="color: navy"><b> -> </b></span>immz.typeOfReaction<b> as </b><span style="color: maroon">field</span><b> then </b>ItemToCoding<span style="color: navy">(</span><span style="color: maroon">item</span><span style="color: navy">, </span><span style="color: maroon">field</span><span style="color: navy">)</span> <i>"typeOfReaction"</i><span style="color: navy">;</span>
qr.item<b> as </b><span style="color: maroon">item</span><b> where </b>linkId = 'otherImportantMedicalEvent'<span style="color: navy"><b> -> </b></span>immz.otherImportantMedicalEvent<b> as </b><span style="color: maroon">field</span><b> then </b>ItemToValue<span style="color: navy">(</span><span style="color: maroon">item</span><span style="color: navy">, </span><span style="color: maroon">field</span><span style="color: navy">)</span> <i>"otherImportantMedicalEvent"</i><span style="color: navy">;</span>
qr.item<b> as </b><span style="color: maroon">item</span><b> where </b>linkId = 'reactionOutcome'<span style="color: navy"><b> -> </b></span>immz.reactionOutcome<b> as </b><span style="color: maroon">field</span><b> then </b>ItemToCoding<span style="color: navy">(</span><span style="color: maroon">item</span><span style="color: navy">, </span><span style="color: maroon">field</span><span style="color: navy">)</span> <i>"reactionOutcome"</i><span style="color: navy">;</span>
<span style="color: navy">}
</span></pre></div>
</text>
<url
value="http://smart.who.int/immunizations/StructureMap/IMMZ.D17.QRToLM"/>
<version value="0.2.0"/>
<name value="IMMZ.D17.QRToLM"/>
<status value="draft"/>
<date value="2025-09-10T05:58:29+00:00"/>
<publisher value="WHO"/>
<contact>
<name value="WHO"/>
<telecom>
<system value="url"/>
<value value="http://who.int"/>
</telecom>
</contact>
<description
value="Immunization Report AEFI - Transform QuestionnaireResponse to Logical Model"/>
<structure>
<url
value="http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse"/>
<mode value="source"/>
<alias value="QResp"/>
</structure>
<structure>
<url
value="http://smart.who.int/immunizations/StructureDefinition/IMMZD17"/>
<mode value="target"/>
<alias value="IMMZD17"/>
</structure>
<import
value="http://smart.who.int/immunizations/StructureMap/IMMZ.Helpers"/>
<group>
<name value="QRespToIMMZD17"/>
<typeMode value="none"/>
<input>
<name value="qr"/>
<type value="QResp"/>
<mode value="source"/>
</input>
<input>
<name value="immz"/>
<type value="IMMZD17"/>
<mode value="target"/>
</input>
<rule>
<name value="setPatient"/>
<source>
<context value="qr"/>
<element value="subject"/>
<variable value="subject"/>
</source>
<target>
<context value="immz"/>
<contextType value="variable"/>
<element value="patient"/>
<transform value="copy"/>
<parameter>
<valueId value="subject"/>
</parameter>
</target>
</rule>
<rule>
<name value="reactionReported"/>
<source>
<context value="qr"/>
<element value="item"/>
<variable value="item"/>
<condition value="linkId = 'reactionReported'"/>
</source>
<target>
<context value="immz"/>
<contextType value="variable"/>
<element value="reactionReported"/>
<variable value="field"/>
</target>
<dependent>
<name value="ItemToValue"/>
<variable value="item"/>
<variable value="field"/>
</dependent>
</rule>
<rule>
<name value="reactionDate"/>
<source>
<context value="qr"/>
<element value="item"/>
<variable value="item"/>
<condition value="linkId = 'reactionDate'"/>
</source>
<target>
<context value="immz"/>
<contextType value="variable"/>
<element value="reactionDate"/>
<variable value="field"/>
</target>
<dependent>
<name value="ItemToValue"/>
<variable value="item"/>
<variable value="field"/>
</dependent>
</rule>
<rule>
<name value="reactionManifestation"/>
<source>
<context value="qr"/>
<element value="item"/>
<variable value="item"/>
<condition value="linkId = 'reactionManifestation'"/>
</source>
<target>
<context value="immz"/>
<contextType value="variable"/>
<element value="reactionManifestation"/>
<variable value="field"/>
</target>
<dependent>
<name value="ItemToCoding"/>
<variable value="item"/>
<variable value="field"/>
</dependent>
</rule>
<rule>
<name value="typeOfReaction"/>
<source>
<context value="qr"/>
<element value="item"/>
<variable value="item"/>
<condition value="linkId = 'typeOfReaction'"/>
</source>
<target>
<context value="immz"/>
<contextType value="variable"/>
<element value="typeOfReaction"/>
<variable value="field"/>
</target>
<dependent>
<name value="ItemToCoding"/>
<variable value="item"/>
<variable value="field"/>
</dependent>
</rule>
<rule>
<name value="otherImportantMedicalEvent"/>
<source>
<context value="qr"/>
<element value="item"/>
<variable value="item"/>
<condition value="linkId = 'otherImportantMedicalEvent'"/>
</source>
<target>
<context value="immz"/>
<contextType value="variable"/>
<element value="otherImportantMedicalEvent"/>
<variable value="field"/>
</target>
<dependent>
<name value="ItemToValue"/>
<variable value="item"/>
<variable value="field"/>
</dependent>
</rule>
<rule>
<name value="reactionOutcome"/>
<source>
<context value="qr"/>
<element value="item"/>
<variable value="item"/>
<condition value="linkId = 'reactionOutcome'"/>
</source>
<target>
<context value="immz"/>
<contextType value="variable"/>
<element value="reactionOutcome"/>
<variable value="field"/>
</target>
<dependent>
<name value="ItemToCoding"/>
<variable value="item"/>
<variable value="field"/>
</dependent>
</rule>
</group>
</StructureMap>