SMART ICVP
0.1.0 - ci-build

SMART ICVP, published by WHO. 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/WorldHealthOrganization/smart-icvp/tree/main and changes regularly. See the Directory of published versions

: null - JSON Representation

Draft as of 2024-12-11

Raw json | Download

{
  "resourceType" : "StructureMap",
  "id" : "DVCQRtoDVCLM",
  "text" : {
    "status" : "generated",
    "div" : "<div xmlns=\"http://www.w3.org/1999/xhtml\"><p class=\"res-header-id\"><b>Generated Narrative: StructureMap DVCQRtoDVCLM</b></p><a name=\"DVCQRtoDVCLM\"> </a><a name=\"hcDVCQRtoDVCLM\"> </a><a name=\"DVCQRtoDVCLM-en-US\"> </a><pre class=\"fml\">\r\n<b>map</b><span style=\"color: navy\"> &quot;</span>http://smart.who.int/icvp/StructureMap/DVCQRtoDVCLM<span style=\"color: navy\">&quot; = &quot;</span>DVCQRtoDVCLM<span style=\"color: navy\">&quot;\r\n\r\n</span><b>uses</b><span style=\"color: navy\"> &quot;</span><a href=\"http://hl7.org/fhir/R4/questionnaireresponse.html\" title=\"QuestionnaireResponse\">http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse</a><span style=\"color: navy\">&quot; </span><b>alias </b>QuestionnaireResponse <b>as </b><b>source</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span><a href=\"StructureDefinition-ModelDVC.html\" title=\"DVC\">http://smart.who.int/icvp/StructureDefinition/ModelDVC</a><span style=\"color: navy\">&quot; </span><b>alias </b>DVCLogicalModel <b>as </b><b>target</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span><a href=\"StructureDefinition-ModelVaccineDetails.html\" title=\"DVC - Vaccine Details\">http://smart.who.int/icvp/StructureDefinition/ModelVaccineDetails</a><span style=\"color: navy\">&quot; </span><b>alias </b>ModelVaccineDetails <b>as </b><b>target</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span><a href=\"StructureDefinition-DVCPayload.html\" title=\"DVC HCERT Payload\">http://smart.who.int/icvp/StructureDefinition/DVCPayload</a><span style=\"color: navy\">&quot; </span><b>alias </b>DVCClaim <b>as </b><b>target</b>\r\n\r\n<b>group </b>DVCQRtoDVCLM<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">qr</span><span style=\"color: navy\"> : </span>QuestionnaireResponse, <b>target</b> <span style=\"color: maroon\">lm</span><span style=\"color: navy\"> : </span>DVCLogicalModel<span style=\"color: navy\">)</span><span style=\"color: navy\"> {\r\n</span>  qr.item<b> as </b><span style=\"color: maroon\">item</span><b> where </b>linkId.value in ('name')<b> then</b><span style=\"color: navy\"> {\r\n</span>    item.answer<b> as </b><span style=\"color: maroon\">answer</span><b> then</b><span style=\"color: navy\"> {\r\n</span>      answer.value<b> as </b><span style=\"color: maroon\">name</span><span style=\"color: navy\"><b> -&gt; </b></span>lm.name = <span style=\"color: maroon\">name</span> <i>&quot;rule1&quot;</i><span style=\"color: navy\">;</span>\r\n    <span style=\"color: navy\">}</span> <i>&quot;rule1a&quot;</i><span style=\"color: navy\">;</span>\r\n  <span style=\"color: navy\">}</span> <i>&quot;rule1b&quot;</i><span style=\"color: navy\">;</span>\r\n  qr.item<b> as </b><span style=\"color: maroon\">item</span><b> where </b>linkId.value in ('dob')<b> then</b><span style=\"color: navy\"> {\r\n</span>    item.answer<b> as </b><span style=\"color: maroon\">answer</span><b> then</b><span style=\"color: navy\"> {\r\n</span>      answer.value<b> as </b><span style=\"color: maroon\">dob</span><span style=\"color: navy\"><b> -&gt; </b></span>lm.dob = <span style=\"color: maroon\">dob</span> <i>&quot;rule2&quot;</i><span style=\"color: navy\">;</span>\r\n    <span style=\"color: navy\">}</span> <i>&quot;rule2a&quot;</i><span style=\"color: navy\">;</span>\r\n  <span style=\"color: navy\">}</span> <i>&quot;rule2b&quot;</i><span style=\"color: navy\">;</span>\r\n  qr.item<b> as </b><span style=\"color: maroon\">item</span><b> where </b>linkId.value in ('sex')<b> then</b><span style=\"color: navy\"> {\r\n</span>    item.answer<b> as </b><span style=\"color: maroon\">answer</span><b> then</b><span style=\"color: navy\"> {\r\n</span>      answer.value<b> as </b><span style=\"color: maroon\">sex</span><span style=\"color: navy\"><b> -&gt; </b></span>lm.sex = <span style=\"color: maroon\">sex</span> <i>&quot;rule3&quot;</i><span style=\"color: navy\">;</span>\r\n    <span style=\"color: navy\">}</span> <i>&quot;rule3a&quot;</i><span style=\"color: navy\">;</span>\r\n  <span style=\"color: navy\">}</span> <i>&quot;rule3b&quot;</i><span style=\"color: navy\">;</span>\r\n  qr.item<b> as </b><span style=\"color: maroon\">item</span><b> where </b>linkId.value in ('nationality')<b> then</b><span style=\"color: navy\"> {\r\n</span>    item.answer<b> as </b><span style=\"color: maroon\">answer</span><b> then</b><span style=\"color: navy\"> {\r\n</span>      answer.value<b> as </b><span style=\"color: maroon\">nationality</span><span style=\"color: navy\"><b> -&gt; </b></span>lm.nationality = <span style=\"color: maroon\">nationality</span> <i>&quot;rule4&quot;</i><span style=\"color: navy\">;</span>\r\n    <span style=\"color: navy\">}</span> <i>&quot;rule4a&quot;</i><span style=\"color: navy\">;</span>\r\n  <span style=\"color: navy\">}</span> <i>&quot;rule4b&quot;</i><span style=\"color: navy\">;</span>\r\n  qr.item<b> as </b><span style=\"color: maroon\">item</span><b> where </b>linkId.value in ('nid')<b> then</b><span style=\"color: navy\"> {\r\n</span>    item.answer<b> as </b><span style=\"color: maroon\">answer</span><b> then</b><span style=\"color: navy\"> {\r\n</span>      answer.value<b> as </b><span style=\"color: maroon\">nid</span><span style=\"color: navy\"><b> -&gt; </b></span>lm.nid = <span style=\"color: maroon\">nid</span> <i>&quot;rule5&quot;</i><span style=\"color: navy\">;</span>\r\n    <span style=\"color: navy\">}</span> <i>&quot;rule5a&quot;</i><span style=\"color: navy\">;</span>\r\n  <span style=\"color: navy\">}</span> <i>&quot;rule5b&quot;</i><span style=\"color: navy\">;</span>\r\n  qr.item<b> as </b><span style=\"color: maroon\">item</span><b> where </b>linkId.value in ('guardian')<b> then</b><span style=\"color: navy\"> {\r\n</span>    item.answer<b> as </b><span style=\"color: maroon\">answer</span><b> then</b><span style=\"color: navy\"> {\r\n</span>      answer.value<b> as </b><span style=\"color: maroon\">guardian</span><span style=\"color: navy\"><b> -&gt; </b></span>lm.guardian = <span style=\"color: maroon\">guardian</span> <i>&quot;rule6&quot;</i><span style=\"color: navy\">;</span>\r\n    <span style=\"color: navy\">}</span> <i>&quot;rule6a&quot;</i><span style=\"color: navy\">;</span>\r\n  <span style=\"color: navy\">}</span> <i>&quot;rule6b&quot;</i><span style=\"color: navy\">;</span>\r\n  qr.item<b> as </b><span style=\"color: maroon\">item</span><b> where </b>linkId.value in ('vaccineDetails')<span style=\"color: navy\"><b> -&gt; </b></span>lm.vaccineDetails<b> as </b><span style=\"color: maroon\">v</span><b> then </b>mapVaccineDetails<span style=\"color: navy\">(</span><span style=\"color: maroon\">item</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">v</span><span style=\"color: navy\">)</span> <i>&quot;rule7&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>mapVaccineDetails<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">s</span><span style=\"color: navy\"> : </span>BackboneElement, <b>target</b> <span style=\"color: maroon\">v</span><span style=\"color: navy\"> : </span>ModelVaccineDetails<span style=\"color: navy\">)</span><span style=\"color: navy\"> {\r\n</span>  s.item<b> as </b><span style=\"color: maroon\">item</span><b> where </b>linkId.value in ('doseNumber')<b> then</b><span style=\"color: navy\"> {\r\n</span>    item.answer<b> as </b><span style=\"color: maroon\">answer</span><b> then</b><span style=\"color: navy\"> {\r\n</span>      answer.value<b> as </b><span style=\"color: maroon\">doseNumber</span><span style=\"color: navy\"><b> -&gt; </b></span>v.doseNumber = <span style=\"color: maroon\">doseNumber</span> <i>&quot;rule7&quot;</i><span style=\"color: navy\">;</span>\r\n    <span style=\"color: navy\">}</span> <i>&quot;rule7a&quot;</i><span style=\"color: navy\">;</span>\r\n  <span style=\"color: navy\">}</span> <i>&quot;rule7b&quot;</i><span style=\"color: navy\">;</span>\r\n  s.item<b> as </b><span style=\"color: maroon\">item</span><b> where </b>linkId.value in ('disease')<b> then</b><span style=\"color: navy\"> {\r\n</span>    item.answer<b> as </b><span style=\"color: maroon\">answer</span><b> then</b><span style=\"color: navy\"> {\r\n</span>      answer.value<b> as </b><span style=\"color: maroon\">disease</span><span style=\"color: navy\"><b> -&gt; </b></span>v.disease = <span style=\"color: maroon\">disease</span> <i>&quot;rule8&quot;</i><span style=\"color: navy\">;</span>\r\n    <span style=\"color: navy\">}</span> <i>&quot;rule8a&quot;</i><span style=\"color: navy\">;</span>\r\n  <span style=\"color: navy\">}</span> <i>&quot;rule8b&quot;</i><span style=\"color: navy\">;</span>\r\n  s.item<b> as </b><span style=\"color: maroon\">item</span><b> where </b>linkId.value in ('vaccineClassification')<b> then</b><span style=\"color: navy\"> {\r\n</span>    item.answer<b> as </b><span style=\"color: maroon\">answer</span><b> then</b><span style=\"color: navy\"> {\r\n</span>      answer.value<b> as </b><span style=\"color: maroon\">vaccine</span><span style=\"color: navy\"><b> -&gt; </b></span>v.vaccineClassification = <span style=\"color: maroon\">vaccine</span> <i>&quot;rule9&quot;</i><span style=\"color: navy\">;</span>\r\n    <span style=\"color: navy\">}</span> <i>&quot;rule9a&quot;</i><span style=\"color: navy\">;</span>\r\n  <span style=\"color: navy\">}</span> <i>&quot;rule9b&quot;</i><span style=\"color: navy\">;</span>\r\n  s.item<b> as </b><span style=\"color: maroon\">item</span><b> where </b>linkId.value in ('vaccineTradeItem')<b> then</b><span style=\"color: navy\"> {\r\n</span>    item.answer<b> as </b><span style=\"color: maroon\">answer</span><b> then</b><span style=\"color: navy\"> {\r\n</span>      answer.value<b> as </b><span style=\"color: maroon\">vaccine</span><span style=\"color: navy\"><b> -&gt; </b></span>v.vaccineTradeItem = <span style=\"color: maroon\">vaccine</span> <i>&quot;rule10&quot;</i><span style=\"color: navy\">;</span>\r\n    <span style=\"color: navy\">}</span> <i>&quot;rule10a&quot;</i><span style=\"color: navy\">;</span>\r\n  <span style=\"color: navy\">}</span> <i>&quot;rule10b&quot;</i><span style=\"color: navy\">;</span>\r\n  s.item<b> as </b><span style=\"color: maroon\">item</span><b> where </b>linkId.value in ('date')<b> then</b><span style=\"color: navy\"> {\r\n</span>    item.answer<b> as </b><span style=\"color: maroon\">answer</span><b> then</b><span style=\"color: navy\"> {\r\n</span>      answer.value<b> as </b><span style=\"color: maroon\">date</span><span style=\"color: navy\"><b> -&gt; </b></span>v.date = <span style=\"color: maroon\">date</span> <i>&quot;rule11&quot;</i><span style=\"color: navy\">;</span>\r\n    <span style=\"color: navy\">}</span> <i>&quot;rule11a&quot;</i><span style=\"color: navy\">;</span>\r\n  <span style=\"color: navy\">}</span> <i>&quot;rule11b&quot;</i><span style=\"color: navy\">;</span>\r\n  s.item<b> as </b><span style=\"color: maroon\">item</span><b> where </b>linkId.value in ('clinicianName')<b> then</b><span style=\"color: navy\"> {\r\n</span>    item.answer<b> as </b><span style=\"color: maroon\">answer</span><b> then</b><span style=\"color: navy\"> {\r\n</span>      answer.value<b> as </b><span style=\"color: maroon\">clinicianName</span><span style=\"color: navy\"><b> -&gt; </b></span>v.clinicianName = <span style=\"color: maroon\">clinicianName</span> <i>&quot;rule12&quot;</i><span style=\"color: navy\">;</span>\r\n    <span style=\"color: navy\">}</span> <i>&quot;rule12a&quot;</i><span style=\"color: navy\">;</span>\r\n  <span style=\"color: navy\">}</span> <i>&quot;rule12b&quot;</i><span style=\"color: navy\">;</span>\r\n  s.item<b> as </b><span style=\"color: maroon\">item</span><b> where </b>linkId.value in ('manufacturerId')<b> then</b><span style=\"color: navy\"> {\r\n</span>    item.answer<b> as </b><span style=\"color: maroon\">answer</span><b> then</b><span style=\"color: navy\"> {\r\n</span>      answer.value<b> as </b><span style=\"color: maroon\">mid</span><span style=\"color: navy\"><b> -&gt; </b></span>v.manufacturerId = <span style=\"color: maroon\">mid</span> <i>&quot;rule13&quot;</i><span style=\"color: navy\">;</span>\r\n    <span style=\"color: navy\">}</span> <i>&quot;rule13a&quot;</i><span style=\"color: navy\">;</span>\r\n  <span style=\"color: navy\">}</span> <i>&quot;rule13b&quot;</i><span style=\"color: navy\">;</span>\r\n  s.item<b> as </b><span style=\"color: maroon\">item</span><b> where </b>linkId.value in ('manufacturer')<b> then</b><span style=\"color: navy\"> {\r\n</span>    item.answer<b> as </b><span style=\"color: maroon\">answer</span><b> then</b><span style=\"color: navy\"> {\r\n</span>      answer.value<b> as </b><span style=\"color: maroon\">manufacturer</span><span style=\"color: navy\"><b> -&gt; </b></span>v.manufacturer = <span style=\"color: maroon\">manufacturer</span> <i>&quot;rule14&quot;</i><span style=\"color: navy\">;</span>\r\n    <span style=\"color: navy\">}</span> <i>&quot;rule14a&quot;</i><span style=\"color: navy\">;</span>\r\n  <span style=\"color: navy\">}</span> <i>&quot;rule14b&quot;</i><span style=\"color: navy\">;</span>\r\n  s.item<b> as </b><span style=\"color: maroon\">item</span><b> where </b>linkId.value in ('batchNo')<b> then</b><span style=\"color: navy\"> {\r\n</span>    item.answer<b> as </b><span style=\"color: maroon\">answer</span><b> then</b><span style=\"color: navy\"> {\r\n</span>      answer.value<b> as </b><span style=\"color: maroon\">batchNo</span><span style=\"color: navy\"><b> -&gt; </b></span>v.batchNo = <span style=\"color: maroon\">batchNo</span> <i>&quot;rule15&quot;</i><span style=\"color: navy\">;</span>\r\n    <span style=\"color: navy\">}</span> <i>&quot;rule15a&quot;</i><span style=\"color: navy\">;</span>\r\n  <span style=\"color: navy\">}</span> <i>&quot;rule15b&quot;</i><span style=\"color: navy\">;</span>\r\n  s.item<b> as </b><span style=\"color: maroon\">item</span><b> where </b>linkId.value in ('validityPeriod')<b> then</b><span style=\"color: navy\"> {\r\n</span>    item<span style=\"color: navy\"><b> -&gt; </b></span>v.validityPeriod<b> as </b><span style=\"color: maroon\">period</span><b> then</b><span style=\"color: navy\"> {\r\n</span>      item.item<b> as </b><span style=\"color: maroon\">item</span><b> where </b>linkId.value in ('startDate')<b> then</b><span style=\"color: navy\"> {\r\n</span>        item.answer<b> as </b><span style=\"color: maroon\">answer</span><b> then</b><span style=\"color: navy\"> {\r\n</span>          answer.validityPeriod<b> as </b><span style=\"color: maroon\">start</span><span style=\"color: navy\"><b> -&gt; </b></span>period.start = <span style=\"color: maroon\">start</span> <i>&quot;rule16&quot;</i><span style=\"color: navy\">;</span>\r\n        <span style=\"color: navy\">}</span> <i>&quot;rule16a&quot;</i><span style=\"color: navy\">;</span>\r\n      <span style=\"color: navy\">}</span> <i>&quot;rule16b&quot;</i><span style=\"color: navy\">;</span>\r\n      item.item<b> as </b><span style=\"color: maroon\">item</span><b> where </b>linkId.value in ('endDate')<b> then</b><span style=\"color: navy\"> {\r\n</span>        item.answer<b> as </b><span style=\"color: maroon\">answer</span><b> then</b><span style=\"color: navy\"> {\r\n</span>          answer.validityPeriod<b> as </b><span style=\"color: maroon\">end</span><span style=\"color: navy\"><b> -&gt; </b></span>period.end = <span style=\"color: maroon\">end</span> <i>&quot;rule17&quot;</i><span style=\"color: navy\">;</span>\r\n        <span style=\"color: navy\">}</span> <i>&quot;rule17a&quot;</i><span style=\"color: navy\">;</span>\r\n      <span style=\"color: navy\">}</span> <i>&quot;rule17b&quot;</i><span style=\"color: navy\">;</span>\r\n    <span style=\"color: navy\">}</span> <i>&quot;rule18&quot;</i><span style=\"color: navy\">;</span>\r\n  <span style=\"color: navy\">}</span> <i>&quot;rule19&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span></pre></div>"
  },
  "url" : "http://smart.who.int/icvp/StructureMap/DVCQRtoDVCLM",
  "version" : "0.1.0",
  "name" : "DVCQRtoDVCLM",
  "status" : "draft",
  "date" : "2024-12-11T15:43:16+00:00",
  "publisher" : "WHO",
  "contact" : [
    {
      "name" : "WHO",
      "telecom" : [
        {
          "system" : "url",
          "value" : "http://who.int"
        }
      ]
    }
  ],
  "structure" : [
    {
      "url" : "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse",
      "mode" : "source",
      "alias" : "QuestionnaireResponse"
    },
    {
      "url" : "http://smart.who.int/icvp/StructureDefinition/ModelDVC",
      "mode" : "target",
      "alias" : "DVCLogicalModel"
    },
    {
      "url" : "http://smart.who.int/icvp/StructureDefinition/ModelVaccineDetails",
      "mode" : "target",
      "alias" : "ModelVaccineDetails"
    },
    {
      "url" : "http://smart.who.int/icvp/StructureDefinition/DVCPayload",
      "mode" : "target",
      "alias" : "DVCClaim"
    }
  ],
  "group" : [
    {
      "name" : "DVCQRtoDVCLM",
      "typeMode" : "none",
      "input" : [
        {
          "name" : "qr",
          "type" : "QuestionnaireResponse",
          "mode" : "source"
        },
        {
          "name" : "lm",
          "type" : "DVCLogicalModel",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "rule1b",
          "source" : [
            {
              "context" : "qr",
              "element" : "item",
              "variable" : "item",
              "condition" : "linkId.value in ('name')"
            }
          ],
          "rule" : [
            {
              "name" : "rule1a",
              "source" : [
                {
                  "context" : "item",
                  "element" : "answer",
                  "variable" : "answer"
                }
              ],
              "rule" : [
                {
                  "name" : "rule1",
                  "source" : [
                    {
                      "context" : "answer",
                      "element" : "value",
                      "variable" : "name"
                    }
                  ],
                  "target" : [
                    {
                      "context" : "lm",
                      "contextType" : "variable",
                      "element" : "name",
                      "transform" : "copy",
                      "parameter" : [
                        {
                          "valueId" : "name"
                        }
                      ]
                    }
                  ]
                }
              ]
            }
          ]
        },
        {
          "name" : "rule2b",
          "source" : [
            {
              "context" : "qr",
              "element" : "item",
              "variable" : "item",
              "condition" : "linkId.value in ('dob')"
            }
          ],
          "rule" : [
            {
              "name" : "rule2a",
              "source" : [
                {
                  "context" : "item",
                  "element" : "answer",
                  "variable" : "answer"
                }
              ],
              "rule" : [
                {
                  "name" : "rule2",
                  "source" : [
                    {
                      "context" : "answer",
                      "element" : "value",
                      "variable" : "dob"
                    }
                  ],
                  "target" : [
                    {
                      "context" : "lm",
                      "contextType" : "variable",
                      "element" : "dob",
                      "transform" : "copy",
                      "parameter" : [
                        {
                          "valueId" : "dob"
                        }
                      ]
                    }
                  ]
                }
              ]
            }
          ]
        },
        {
          "name" : "rule3b",
          "source" : [
            {
              "context" : "qr",
              "element" : "item",
              "variable" : "item",
              "condition" : "linkId.value in ('sex')"
            }
          ],
          "rule" : [
            {
              "name" : "rule3a",
              "source" : [
                {
                  "context" : "item",
                  "element" : "answer",
                  "variable" : "answer"
                }
              ],
              "rule" : [
                {
                  "name" : "rule3",
                  "source" : [
                    {
                      "context" : "answer",
                      "element" : "value",
                      "variable" : "sex"
                    }
                  ],
                  "target" : [
                    {
                      "context" : "lm",
                      "contextType" : "variable",
                      "element" : "sex",
                      "transform" : "copy",
                      "parameter" : [
                        {
                          "valueId" : "sex"
                        }
                      ]
                    }
                  ]
                }
              ]
            }
          ]
        },
        {
          "name" : "rule4b",
          "source" : [
            {
              "context" : "qr",
              "element" : "item",
              "variable" : "item",
              "condition" : "linkId.value in ('nationality')"
            }
          ],
          "rule" : [
            {
              "name" : "rule4a",
              "source" : [
                {
                  "context" : "item",
                  "element" : "answer",
                  "variable" : "answer"
                }
              ],
              "rule" : [
                {
                  "name" : "rule4",
                  "source" : [
                    {
                      "context" : "answer",
                      "element" : "value",
                      "variable" : "nationality"
                    }
                  ],
                  "target" : [
                    {
                      "context" : "lm",
                      "contextType" : "variable",
                      "element" : "nationality",
                      "transform" : "copy",
                      "parameter" : [
                        {
                          "valueId" : "nationality"
                        }
                      ]
                    }
                  ]
                }
              ]
            }
          ]
        },
        {
          "name" : "rule5b",
          "source" : [
            {
              "context" : "qr",
              "element" : "item",
              "variable" : "item",
              "condition" : "linkId.value in ('nid')"
            }
          ],
          "rule" : [
            {
              "name" : "rule5a",
              "source" : [
                {
                  "context" : "item",
                  "element" : "answer",
                  "variable" : "answer"
                }
              ],
              "rule" : [
                {
                  "name" : "rule5",
                  "source" : [
                    {
                      "context" : "answer",
                      "element" : "value",
                      "variable" : "nid"
                    }
                  ],
                  "target" : [
                    {
                      "context" : "lm",
                      "contextType" : "variable",
                      "element" : "nid",
                      "transform" : "copy",
                      "parameter" : [
                        {
                          "valueId" : "nid"
                        }
                      ]
                    }
                  ]
                }
              ]
            }
          ]
        },
        {
          "name" : "rule6b",
          "source" : [
            {
              "context" : "qr",
              "element" : "item",
              "variable" : "item",
              "condition" : "linkId.value in ('guardian')"
            }
          ],
          "rule" : [
            {
              "name" : "rule6a",
              "source" : [
                {
                  "context" : "item",
                  "element" : "answer",
                  "variable" : "answer"
                }
              ],
              "rule" : [
                {
                  "name" : "rule6",
                  "source" : [
                    {
                      "context" : "answer",
                      "element" : "value",
                      "variable" : "guardian"
                    }
                  ],
                  "target" : [
                    {
                      "context" : "lm",
                      "contextType" : "variable",
                      "element" : "guardian",
                      "transform" : "copy",
                      "parameter" : [
                        {
                          "valueId" : "guardian"
                        }
                      ]
                    }
                  ]
                }
              ]
            }
          ]
        },
        {
          "name" : "rule7",
          "source" : [
            {
              "context" : "qr",
              "element" : "item",
              "variable" : "item",
              "condition" : "linkId.value in ('vaccineDetails')"
            }
          ],
          "target" : [
            {
              "context" : "lm",
              "contextType" : "variable",
              "element" : "vaccineDetails",
              "variable" : "v"
            }
          ],
          "dependent" : [
            {
              "name" : "mapVaccineDetails",
              "variable" : [
                "item",
                "v"
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "mapVaccineDetails",
      "typeMode" : "none",
      "input" : [
        {
          "name" : "s",
          "type" : "BackboneElement",
          "mode" : "source"
        },
        {
          "name" : "v",
          "type" : "ModelVaccineDetails",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "rule7b",
          "source" : [
            {
              "context" : "s",
              "element" : "item",
              "variable" : "item",
              "condition" : "linkId.value in ('doseNumber')"
            }
          ],
          "rule" : [
            {
              "name" : "rule7a",
              "source" : [
                {
                  "context" : "item",
                  "element" : "answer",
                  "variable" : "answer"
                }
              ],
              "rule" : [
                {
                  "name" : "rule7",
                  "source" : [
                    {
                      "context" : "answer",
                      "element" : "value",
                      "variable" : "doseNumber"
                    }
                  ],
                  "target" : [
                    {
                      "context" : "v",
                      "contextType" : "variable",
                      "element" : "doseNumber",
                      "transform" : "copy",
                      "parameter" : [
                        {
                          "valueId" : "doseNumber"
                        }
                      ]
                    }
                  ]
                }
              ]
            }
          ]
        },
        {
          "name" : "rule8b",
          "source" : [
            {
              "context" : "s",
              "element" : "item",
              "variable" : "item",
              "condition" : "linkId.value in ('disease')"
            }
          ],
          "rule" : [
            {
              "name" : "rule8a",
              "source" : [
                {
                  "context" : "item",
                  "element" : "answer",
                  "variable" : "answer"
                }
              ],
              "rule" : [
                {
                  "name" : "rule8",
                  "source" : [
                    {
                      "context" : "answer",
                      "element" : "value",
                      "variable" : "disease"
                    }
                  ],
                  "target" : [
                    {
                      "context" : "v",
                      "contextType" : "variable",
                      "element" : "disease",
                      "transform" : "copy",
                      "parameter" : [
                        {
                          "valueId" : "disease"
                        }
                      ]
                    }
                  ]
                }
              ]
            }
          ]
        },
        {
          "name" : "rule9b",
          "source" : [
            {
              "context" : "s",
              "element" : "item",
              "variable" : "item",
              "condition" : "linkId.value in ('vaccineClassification')"
            }
          ],
          "rule" : [
            {
              "name" : "rule9a",
              "source" : [
                {
                  "context" : "item",
                  "element" : "answer",
                  "variable" : "answer"
                }
              ],
              "rule" : [
                {
                  "name" : "rule9",
                  "source" : [
                    {
                      "context" : "answer",
                      "element" : "value",
                      "variable" : "vaccine"
                    }
                  ],
                  "target" : [
                    {
                      "context" : "v",
                      "contextType" : "variable",
                      "element" : "vaccineClassification",
                      "transform" : "copy",
                      "parameter" : [
                        {
                          "valueId" : "vaccine"
                        }
                      ]
                    }
                  ]
                }
              ]
            }
          ]
        },
        {
          "name" : "rule10b",
          "source" : [
            {
              "context" : "s",
              "element" : "item",
              "variable" : "item",
              "condition" : "linkId.value in ('vaccineTradeItem')"
            }
          ],
          "rule" : [
            {
              "name" : "rule10a",
              "source" : [
                {
                  "context" : "item",
                  "element" : "answer",
                  "variable" : "answer"
                }
              ],
              "rule" : [
                {
                  "name" : "rule10",
                  "source" : [
                    {
                      "context" : "answer",
                      "element" : "value",
                      "variable" : "vaccine"
                    }
                  ],
                  "target" : [
                    {
                      "context" : "v",
                      "contextType" : "variable",
                      "element" : "vaccineTradeItem",
                      "transform" : "copy",
                      "parameter" : [
                        {
                          "valueId" : "vaccine"
                        }
                      ]
                    }
                  ]
                }
              ]
            }
          ]
        },
        {
          "name" : "rule11b",
          "source" : [
            {
              "context" : "s",
              "element" : "item",
              "variable" : "item",
              "condition" : "linkId.value in ('date')"
            }
          ],
          "rule" : [
            {
              "name" : "rule11a",
              "source" : [
                {
                  "context" : "item",
                  "element" : "answer",
                  "variable" : "answer"
                }
              ],
              "rule" : [
                {
                  "name" : "rule11",
                  "source" : [
                    {
                      "context" : "answer",
                      "element" : "value",
                      "variable" : "date"
                    }
                  ],
                  "target" : [
                    {
                      "context" : "v",
                      "contextType" : "variable",
                      "element" : "date",
                      "transform" : "copy",
                      "parameter" : [
                        {
                          "valueId" : "date"
                        }
                      ]
                    }
                  ]
                }
              ]
            }
          ]
        },
        {
          "name" : "rule12b",
          "source" : [
            {
              "context" : "s",
              "element" : "item",
              "variable" : "item",
              "condition" : "linkId.value in ('clinicianName')"
            }
          ],
          "rule" : [
            {
              "name" : "rule12a",
              "source" : [
                {
                  "context" : "item",
                  "element" : "answer",
                  "variable" : "answer"
                }
              ],
              "rule" : [
                {
                  "name" : "rule12",
                  "source" : [
                    {
                      "context" : "answer",
                      "element" : "value",
                      "variable" : "clinicianName"
                    }
                  ],
                  "target" : [
                    {
                      "context" : "v",
                      "contextType" : "variable",
                      "element" : "clinicianName",
                      "transform" : "copy",
                      "parameter" : [
                        {
                          "valueId" : "clinicianName"
                        }
                      ]
                    }
                  ]
                }
              ]
            }
          ]
        },
        {
          "name" : "rule13b",
          "source" : [
            {
              "context" : "s",
              "element" : "item",
              "variable" : "item",
              "condition" : "linkId.value in ('manufacturerId')"
            }
          ],
          "rule" : [
            {
              "name" : "rule13a",
              "source" : [
                {
                  "context" : "item",
                  "element" : "answer",
                  "variable" : "answer"
                }
              ],
              "rule" : [
                {
                  "name" : "rule13",
                  "source" : [
                    {
                      "context" : "answer",
                      "element" : "value",
                      "variable" : "mid"
                    }
                  ],
                  "target" : [
                    {
                      "context" : "v",
                      "contextType" : "variable",
                      "element" : "manufacturerId",
                      "transform" : "copy",
                      "parameter" : [
                        {
                          "valueId" : "mid"
                        }
                      ]
                    }
                  ]
                }
              ]
            }
          ]
        },
        {
          "name" : "rule14b",
          "source" : [
            {
              "context" : "s",
              "element" : "item",
              "variable" : "item",
              "condition" : "linkId.value in ('manufacturer')"
            }
          ],
          "rule" : [
            {
              "name" : "rule14a",
              "source" : [
                {
                  "context" : "item",
                  "element" : "answer",
                  "variable" : "answer"
                }
              ],
              "rule" : [
                {
                  "name" : "rule14",
                  "source" : [
                    {
                      "context" : "answer",
                      "element" : "value",
                      "variable" : "manufacturer"
                    }
                  ],
                  "target" : [
                    {
                      "context" : "v",
                      "contextType" : "variable",
                      "element" : "manufacturer",
                      "transform" : "copy",
                      "parameter" : [
                        {
                          "valueId" : "manufacturer"
                        }
                      ]
                    }
                  ]
                }
              ]
            }
          ]
        },
        {
          "name" : "rule15b",
          "source" : [
            {
              "context" : "s",
              "element" : "item",
              "variable" : "item",
              "condition" : "linkId.value in ('batchNo')"
            }
          ],
          "rule" : [
            {
              "name" : "rule15a",
              "source" : [
                {
                  "context" : "item",
                  "element" : "answer",
                  "variable" : "answer"
                }
              ],
              "rule" : [
                {
                  "name" : "rule15",
                  "source" : [
                    {
                      "context" : "answer",
                      "element" : "value",
                      "variable" : "batchNo"
                    }
                  ],
                  "target" : [
                    {
                      "context" : "v",
                      "contextType" : "variable",
                      "element" : "batchNo",
                      "transform" : "copy",
                      "parameter" : [
                        {
                          "valueId" : "batchNo"
                        }
                      ]
                    }
                  ]
                }
              ]
            }
          ]
        },
        {
          "name" : "rule19",
          "source" : [
            {
              "context" : "s",
              "element" : "item",
              "variable" : "item",
              "condition" : "linkId.value in ('validityPeriod')"
            }
          ],
          "rule" : [
            {
              "name" : "rule18",
              "source" : [
                {
                  "context" : "item"
                }
              ],
              "target" : [
                {
                  "context" : "v",
                  "contextType" : "variable",
                  "element" : "validityPeriod",
                  "variable" : "period"
                }
              ],
              "rule" : [
                {
                  "name" : "rule16b",
                  "source" : [
                    {
                      "context" : "item",
                      "element" : "item",
                      "variable" : "item",
                      "condition" : "linkId.value in ('startDate')"
                    }
                  ],
                  "rule" : [
                    {
                      "name" : "rule16a",
                      "source" : [
                        {
                          "context" : "item",
                          "element" : "answer",
                          "variable" : "answer"
                        }
                      ],
                      "rule" : [
                        {
                          "name" : "rule16",
                          "source" : [
                            {
                              "context" : "answer",
                              "element" : "validityPeriod",
                              "variable" : "start"
                            }
                          ],
                          "target" : [
                            {
                              "context" : "period",
                              "contextType" : "variable",
                              "element" : "start",
                              "transform" : "copy",
                              "parameter" : [
                                {
                                  "valueId" : "start"
                                }
                              ]
                            }
                          ]
                        }
                      ]
                    }
                  ]
                },
                {
                  "name" : "rule17b",
                  "source" : [
                    {
                      "context" : "item",
                      "element" : "item",
                      "variable" : "item",
                      "condition" : "linkId.value in ('endDate')"
                    }
                  ],
                  "rule" : [
                    {
                      "name" : "rule17a",
                      "source" : [
                        {
                          "context" : "item",
                          "element" : "answer",
                          "variable" : "answer"
                        }
                      ],
                      "rule" : [
                        {
                          "name" : "rule17",
                          "source" : [
                            {
                              "context" : "answer",
                              "element" : "validityPeriod",
                              "variable" : "end"
                            }
                          ],
                          "target" : [
                            {
                              "context" : "period",
                              "contextType" : "variable",
                              "element" : "end",
                              "transform" : "copy",
                              "parameter" : [
                                {
                                  "valueId" : "end"
                                }
                              ]
                            }
                          ]
                        }
                      ]
                    }
                  ]
                }
              ]
            }
          ]
        }
      ]
    }
  ]
}