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/feature/update-canonical and changes regularly. See the Directory of published versions

## StructureMap: Ccc.b18-21.symptoms.2m.m

Official URL: https://smart.who.int/ccc/StructureMap/Ccc.b18-21.symptoms.2m.m | Version: 0.1.0
Active as of 2026-04-07 | Computable Name: Ccc.b18-21.symptoms.2m.m

    map "https://smart.who.int/ccc/StructureMap/Ccc.b18-21.symptoms.2m.m" = "Ccc.b18-21.symptoms.2m.m"

    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/observation" alias 'Observation' as target
    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.item first as item where (linkId = 'Ccc.B7.DE03') 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 CccobservationCccb7de03(src, tgt) "f2e89805";
          } "8dded58a";
        } "6d815194";
      } "a2e85aba";
      src.item first as item where (linkId = 'Ccc.B18S1.DE02') 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 CccobservationCccb18s1de02(src, tgt) "25a99ee2";
          } "9a78f7db";
        } "94862cbd";
      } "49e0dedf";
      src.item first as item where (linkId = 'Ccc.B11S1.DE01') 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 CccobservationCccb11s1de01(src, tgt) "43d4af59";
          } "bfd970ae";
        } "b8eb69b0";
      } "e1f73648";
      src.item first as item where (linkId = 'Ccc.B21S1.DE06') 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 CccobservationCccb21s1de06(src, tgt) "4fe5485a";
          } "c849765a";
        } "ce9b0830";
      } "919b4a1a";
    }

    group CccobservationCccb7de03(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-Cccb7de03";
      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.B7.DE03' "code-Cccb7de03";
      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.B7.DE03') and answer.exists() then {
        item.answer first as a then {
          a where a.value = true ->  tgt.status = 'final',  tgt.value = true "final-Cccb7de03";
          a where a.value = false ->  tgt.status = 'cancelled',  tgt.value = false "notfound-Cccb7de03";
        } "bdab9370";
      } "4ef6d709";
    }

    group CccobservationCccb18s1de02(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-Cccb18s1de02";
      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.B18S1.DE02' "code-Cccb18s1de02";
      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.B18S1.DE02') and answer.exists() then {
        item.answer first as a then {
          a.value as val then {
            val where val.code = 'none' -> tgt.swrapin_entry_createtatus = 'cancelled' "d0a13fda";
            val where val.code != 'none' ->  tgt.value = create('CodeableConcept') as cc,  cc.coding = val,  tgt.status = 'final' "a1050460";
          } "310f4b1f";
        } "6af9bfcc";
      } "da9e8c81";
    }

    group CccobservationCccb11s1de01(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-Cccb11s1de01";
      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.B11S1.DE01' "code-Cccb11s1de01";
      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.B11S1.DE01') and answer.exists() then {
        item.answer first as a then {
          a where a.value = true ->  tgt.status = 'final',  tgt.value = true "final-Cccb11s1de01";
          a where a.value = false ->  tgt.status = 'cancelled',  tgt.value = false "notfound-Cccb11s1de01";
        } "bdab9370";
      } "7b8564b3";
    }

    group CccobservationCccb21s1de06(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-Cccb21s1de06";
      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.B21S1.DE06' "code-Cccb21s1de06";
      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.B21S1.DE06') and answer.exists() then {
        item.answer first as a then {
          a where a.value = true ->  tgt.status = 'final',  tgt.value = true "final-Cccb21s1de06";
          a where a.value = false ->  tgt.status = 'cancelled',  tgt.value = false "notfound-Cccb21s1de06";
        } "bdab9370";
      } "54923cd5";
    }