WHO FHIR Implementation Guide (IG): Integrated Management of Childhood Illness (IMCI) in emergencies
0.1.0 - release
WHO FHIR Implementation Guide (IG): Integrated Management of Childhood Illness (IMCI) in emergencies, published by World Health Organization (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-emcare/tree/main and changes regularly. See the Directory of published versions
Built from commit 750268bd.
| Official URL: https://smart.who.int/ccc/StructureMap/Cccb.registration.e | Version: 0.1.0 | |||
| Active as of 2026-04-07 | Computable Name: Cccb.registration.e | |||
map "https://smart.who.int/ccc/StructureMap/Cccb.registration.e" = "Cccb.registration.e"
uses "http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaireresponse" alias 'questionnaireResponse' as source
uses "http://hl7.org/fhir/StructureDefinition/Bundle" alias 'Bundle' as target
uses "https://smart.who.int/ccc/StructureDefinition/encounter" alias 'Encounter' as target
uses "https://smart.who.int/ccc/StructureDefinition/observation" alias 'Observation' as target
uses "https://smart.who.int/ccc/StructureDefinition/Cccencounter" alias 'Ccc Encounter' as produced
uses "https://smart.who.int/ccc/StructureDefinition/Cccobservation" alias 'Ccc Observation' as produced
group bundletrans(source src : questionnaireResponse, target bundle : Bundle) {
src -> bundle.id = uuid() "id";
src -> bundle.type = 'batch' "type";
src -> bundle.entry as entry then {
src.encounter as encounter then {
encounter.id as idval -> entry.request as request, request.method = 'PUT', request.url = append('/Encounter/', idval) "f7ed42d5";
} "49f4ed45";
src -> entry.resource = create('Encounter') as tgt then {
src -> tgt then Cccencounter(src, tgt) "fd415ba8";
src.subject as sub -> tgt.subject = sub "23252e10";
} "8f0160c6";
} "put-Cccencounter";
src.item first as item where (linkId = 'Ccc.B3.DE05') and answer.exists() then {
src -> bundle.entry as entry then {
src -> entry.request as request, request.method = 'POST', uuid() as uuid, request.url = append('/Observation/', uuid) "b50ac4c5";
src -> entry.resource = create('Observation') as tgt then {
src -> tgt then CccobservationCccb3de05(src, tgt) "918130f9";
} "172606cb";
} "a322e7db";
} "1af195c5";
}
group Cccencounter(source src : questionnaireResponse, target tgt : Encounter) {
src.item first as item where (linkId = 'Ccc.B3.DE01') and answer.exists() then {
item.answer first as a then {
a.value as val -> tgt.reasonCode = create('CodeableConcept') as CC, CC.text = 'new consultation', CC.coding = val "aCccb3de01";
} "aCccb3de01";
} "5ea28a7f";
src.item first as item where (linkId = 'Ccc.B3.DE06') and answer.exists() then {
item.answer first as a then {
a.value as val -> tgt.type = create('CodeableConcept') as CC, CC.text = 'new consultation', CC.coding = val "aCccb3de06";
} "aCccb3de06";
} "58ee7f8b";
}
group CccobservationCccb3de05(source src, target tgt) {
src -> tgt.identifier = create('Identifier') as CodeID, CodeID.system = 'http://hl7.org/fhir/namingsystem-identifier-type', CodeID.use = 'official', CodeID.value = 'uuid', CodeID.id = uuid() "id-Cccb3de05";
src.encounter as encounter -> tgt.encounter = encounter "35bc6b82";
src.subject as subject -> tgt.subject = subject, tgt.meta = create('Meta') as newMeta, newMeta.profile = 'https://smart.who.int/ccc/StructureDefinition/Cccobservation', tgt.code = create('CodeableConcept') as concept, concept.coding = create('Coding') as coding, coding.system = 'https://smart.who.int/ccc/CodeSystem/Ccc-custom-codes', coding.code = 'Ccc.B3.DE05' "code-Cccb3de05";
src.item as itemtimestamp where linkId = 'timestamp' then {
itemtimestamp.answer first as atimestamp then {
atimestamp.value as val -> tgt.issued = val "5af77f2c";
} "7f22f29f";
} "aae7a11d";
src.subject as subject -> tgt.subject = subject "patient";
src.item first as item where (linkId = 'Ccc.B3.DE05') and answer.exists() then {
item.answer first as a then {
a where a.value = true -> tgt.status = 'final', tgt.value = true "final-Cccb3de05";
a where a.value = false -> tgt.status = 'cancelled', tgt.value = false "notfound-Cccb3de05";
} "bdab9370";
} "5cf8dcb4";
}