FHIR IG analytics| Package | smart.who.int.immunizations |
| Resource Type | StructureMap |
| Id | StructureMap-IMMZ.C4.QRToLM.json |
| FHIR Version | R4 |
| Source | https://build.fhir.org/ig/dhes/smart-immunizations/StructureMap-IMMZ.C4.QRToLM.html |
| URL | http://smart.who.int/immunizations/StructureMap/IMMZ.C4.QRToLM |
| Version | 0.2.0 |
| Status | draft |
| Date | 2025-12-05T23:35:21+00:00 |
| Name | IMMZ.C4.QRToLM |
| Authority | who |
| Description | Immunization Client Registry - Transform QuestionnaireResponse to Logical Model |
No resources found
No resources found
Note: links and images are rebased to the (stated) source
Generated Narrative: StructureMap IMMZ.C4.QRToLM
map "http://smart.who.int/immunizations/StructureMap/IMMZ.C4.QRToLM" = "IMMZ.C4.QRToLM" // Immunization Client Registry - Transform QuestionnaireResponse to Logical Model uses "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse" alias QResp as source uses "http://smart.who.int/immunizations/StructureDefinition/IMMZC4" alias immz as target imports "http://smart.who.int/immunizations/StructureMap/IMMZ.Helpers" group QRespToIMMZC(source qr : QResp, target immz : IMMZC) { qr.item as item where linkId = 'uniqueIdentifier' -> immz.uniqueIdentifier as field then ItemToValue(item, field) "uniqueIdentifier"; qr.item as item where linkId = 'name' -> immz.name as field then ItemToValue(item, field) "name"; qr.item as item where linkId = 'firstName' -> immz.firstName as field then ItemToValue(item, field) "firstName"; qr.item as item where linkId = 'familyName' -> immz.familyName as field then ItemToValue(item, field) "familyName"; qr.item as item where linkId = 'sex' -> immz.sex as field then ItemToCode(item, field) "sex"; qr.item as item where linkId = 'dateOfBirth' -> immz.dateOfBirth as field then ItemToValue(item, field) "dateOfBirth"; qr.item as item where linkId = 'age' -> immz.age as field then ItemToValue(item, field) "age"; qr.item as caregiver where caregiver.linkId = 'caregiversMultiple' -> immz.caregiversMultiple as caretgt then { caregiver.item as item where linkId = 'caregiversFullName' -> caretgt.caregiversFullName as field then ItemToValue(item, field) "caregiversFullName"; caregiver.item as item where linkId = 'caregiversFirstName' -> caretgt.caregiversFirstName as field then ItemToValue(item, field) "caregiversFirstName"; caregiver.item as item where linkId = 'caregiversFamilyName' -> caretgt.caregiversFamilyName as field then ItemToValue(item, field) "caregiversFamilyName"; } "caregiversMultiple"; qr.item as item where linkId = 'contactPhoneNumber' -> immz.contactPhoneNumber as field then ItemToValue(item, field) "contactPhoneNumber"; qr.item as item where linkId = 'address' -> immz.address as field then ItemToValue(item, field) "address"; }
{
"resourceType": "StructureMap",
"id": "IMMZ.C4.QRToLM",
"text": {
"status": "generated",
"div": "<!-- snip (see above) -->"
},
"url": "http://smart.who.int/immunizations/StructureMap/IMMZ.C4.QRToLM",
"version": "0.2.0",
"name": "IMMZ.C4.QRToLM",
"status": "draft",
"date": "2025-12-05T23:35:21+00:00",
"publisher": "WHO",
"contact": [
{
"name": "WHO",
"telecom": [
{
"system": "url",
"value": "http://who.int"
}
]
}
],
"description": "Immunization Client Registry - Transform QuestionnaireResponse to Logical Model",
"structure": [
{
"url": "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse",
"mode": "source",
"alias": "QResp"
},
{
"url": "http://smart.who.int/immunizations/StructureDefinition/IMMZC4",
"mode": "target",
"alias": "immz"
}
],
"import": [
"http://smart.who.int/immunizations/StructureMap/IMMZ.Helpers"
],
"group": [
{
"name": "QRespToIMMZC",
"typeMode": "none",
"input": [
{
"name": "qr",
"type": "QResp",
"mode": "source"
},
{
"name": "immz",
"type": "IMMZC",
"mode": "target"
}
],
"rule": [
{
"name": "uniqueIdentifier",
"source": [
{
"context": "qr",
"element": "item",
"variable": "item",
"condition": "linkId = 'uniqueIdentifier'"
}
],
"target": [
{
"context": "immz",
"contextType": "variable",
"element": "uniqueIdentifier",
"variable": "field"
}
],
"dependent": [
{
"name": "ItemToValue",
"variable": [
"item",
"field"
]
}
]
},
{
"name": "name",
"source": [
{
"context": "qr",
"element": "item",
"variable": "item",
"condition": "linkId = 'name'"
}
],
"target": [
{
"context": "immz",
"contextType": "variable",
"element": "name",
"variable": "field"
}
],
"dependent": [
{
"name": "ItemToValue",
"variable": [
"item",
"field"
]
}
]
},
{
"name": "firstName",
"source": [
{
"context": "qr",
"element": "item",
"variable": "item",
"condition": "linkId = 'firstName'"
}
],
"target": [
{
"context": "immz",
"contextType": "variable",
"element": "firstName",
"variable": "field"
}
],
"dependent": [
{
"name": "ItemToValue",
"variable": [
"item",
"field"
]
}
]
},
{
"name": "familyName",
"source": [
{
"context": "qr",
"element": "item",
"variable": "item",
"condition": "linkId = 'familyName'"
}
],
"target": [
{
"context": "immz",
"contextType": "variable",
"element": "familyName",
"variable": "field"
}
],
"dependent": [
{
"name": "ItemToValue",
"variable": [
"item",
"field"
]
}
]
},
{
"name": "sex",
"source": [
{
"context": "qr",
"element": "item",
"variable": "item",
"condition": "linkId = 'sex'"
}
],
"target": [
{
"context": "immz",
"contextType": "variable",
"element": "sex",
"variable": "field"
}
],
"dependent": [
{
"name": "ItemToCode",
"variable": [
"item",
"field"
]
}
]
},
{
"name": "dateOfBirth",
"source": [
{
"context": "qr",
"element": "item",
"variable": "item",
"condition": "linkId = 'dateOfBirth'"
}
],
"target": [
{
"context": "immz",
"contextType": "variable",
"element": "dateOfBirth",
"variable": "field"
}
],
"dependent": [
{
"name": "ItemToValue",
"variable": [
"item",
"field"
]
}
]
},
{
"name": "age",
"source": [
{
"context": "qr",
"element": "item",
"variable": "item",
"condition": "linkId = 'age'"
}
],
"target": [
{
"context": "immz",
"contextType": "variable",
"element": "age",
"variable": "field"
}
],
"dependent": [
{
"name": "ItemToValue",
"variable": [
"item",
"field"
]
}
]
},
{
"name": "caregiversMultiple",
"source": [
{
"context": "qr",
"element": "item",
"variable": "caregiver",
"condition": "caregiver.linkId = 'caregiversMultiple'"
}
],
"target": [
{
"context": "immz",
"contextType": "variable",
"element": "caregiversMultiple",
"variable": "caretgt"
}
],
"rule": [
{
"name": "caregiversFullName",
"source": [
{
"context": "caregiver",
"element": "item",
"variable": "item",
"condition": "linkId = 'caregiversFullName'"
}
],
"target": [
{
"context": "caretgt",
"contextType": "variable",
"element": "caregiversFullName",
"variable": "field"
}
],
"dependent": [
{
"name": "ItemToValue",
"variable": [
"item",
"field"
]
}
]
},
{
"name": "caregiversFirstName",
"source": [
{
"context": "caregiver",
"element": "item",
"variable": "item",
"condition": "linkId = 'caregiversFirstName'"
}
],
"target": [
{
"context": "caretgt",
"contextType": "variable",
"element": "caregiversFirstName",
"variable": "field"
}
],
"dependent": [
{
"name": "ItemToValue",
"variable": [
"item",
"field"
]
}
]
},
{
"name": "caregiversFamilyName",
"source": [
{
"context": "caregiver",
"element": "item",
"variable": "item",
"condition": "linkId = 'caregiversFamilyName'"
}
],
"target": [
{
"context": "caretgt",
"contextType": "variable",
"element": "caregiversFamilyName",
"variable": "field"
}
],
"dependent": [
{
"name": "ItemToValue",
"variable": [
"item",
"field"
]
}
]
}
]
},
{
"name": "contactPhoneNumber",
"source": [
{
"context": "qr",
"element": "item",
"variable": "item",
"condition": "linkId = 'contactPhoneNumber'"
}
],
"target": [
{
"context": "immz",
"contextType": "variable",
"element": "contactPhoneNumber",
"variable": "field"
}
],
"dependent": [
{
"name": "ItemToValue",
"variable": [
"item",
"field"
]
}
]
},
{
"name": "address",
"source": [
{
"context": "qr",
"element": "item",
"variable": "item",
"condition": "linkId = 'address'"
}
],
"target": [
{
"context": "immz",
"contextType": "variable",
"element": "address",
"variable": "field"
}
],
"dependent": [
{
"name": "ItemToValue",
"variable": [
"item",
"field"
]
}
]
}
]
}
]
}