Package | who.ddcc |
Type | StructureMap |
Id | ICAOtoDDCC |
FHIR Version | R4 |
Source | http://smart.who.int/ddcc/https://build.fhir.org/ig/WorldHealthOrganization/ddcc/StructureMap-ICAOtoDDCC.html |
URL | http://smart.who.int/ddcc/StructureMap/CertICAOtoDDCC |
Version | 1.0.0 |
Status | draft |
Date | 2025-06-24T09:07:32+00:00 |
Name | ICAOtoDDCC |
Realm | uv |
Authority | who |
No resources found
No resources found
Note: links and images are rebased to the (stated) source
Generated Narrative: StructureMap ICAOtoDDCC
map "http://smart.who.int/ddcc/StructureMap/CertICAOtoDDCC" = "ICAOtoDDCC" uses "http://smart.who.int/ddcc/StructureDefinition/CertICAO" alias IJson as source uses "http://hl7.org/fhir/ig/icao/StructureDefinition/Data" alias Data as source uses "http://hl7.org/fhir/ig/icao/StructureDefinition/Header" alias Header as source uses "http://hl7.org/fhir/ig/icao/StructureDefinition/Message" alias Message as source uses "http://hl7.org/fhir/ig/icao/StructureDefinition/Patient" alias Patient as source uses "http://hl7.org/fhir/ig/icao/StructureDefinition/VaccinationEvent" alias VaccinationEvent as source uses "http://hl7.org/fhir/ig/icao/StructureDefinition/VaccinationDetails" alias VaccinationDetails as source uses "http://hl7.org/fhir/ig/icao/StructureDefinition/ServiceProvider" alias ServiceProvider as source uses "http://hl7.org/fhir/ig/icao/StructureDefinition/Contact" alias Contact as source uses "http://hl7.org/fhir/ig/icao/StructureDefinition/DateTimeTestReport" alias DateTimeTestReport as source uses "http://hl7.org/fhir/ig/icao/StructureDefinition/TestResult" alias TestResult as source uses "http://hl7.org/fhir/ig/icao/StructureDefinition/Signature" alias Signature as source uses "http://hl7.org/fhir/StructureDefinition/Bundle" alias Bundle as target group ICAOtoDDCC(source src : IJson, target bundle : Bundle) { src.data as data -> bundle then ExtractData(data, bundle) "Base Rule"; } group ExtractData(source src : Data, target bundle : Bundle) { src -> bundle.type = 'transaction' "set bundle type"; src -> bundle, bundle.entry as entry, entry.resource = create('Composition') as comp then { src -> bundle then ExtractCert(src, bundle, comp) "Certificate"; src -> bundle then ExtractComposition(src, comp) "Composition"; } "Patient and Composition Create"; } group ExtractCert(source src : Data, target bundle : Bundle, target comp : Composition) { src -> comp, bundle.entry as entry, entry.resource = create('Patient') as patient, uuid() as pid then { src.msg as msg -> patient then ExtractPatientFromMsg(msg, pid, patient) "extract patient"; src -> comp.subject as subj, subj.reference = append('Patient/', pid) "Set patient"; src.msg as msg where src.hdr.t = 'icao.vacc' -> comp, comp.section as section then { src -> section.code as code, code.coding as coding, coding.system = 'http://loinc.org', coding.code = '11369-6', coding.display = 'History of Immunization Narrative' "add section"; msg.ve as vac -> comp then { vac.vd as vacDetails -> comp, bundle.entry as entryImm, entryImm.resource = create('Immunization') as immunization, uuid() as iid, bundle.entry as entryOrg, entryOrg.resource = create('Organization') as org, uuid() as oid then { src -> immunization.id = iid "Immunization ID"; src -> org.id = oid "Organization ID"; src -> section.entry as entry, entry.reference = append('Immunization/', iid), section.author as author, author.reference = append('Organization/', oid) "add author immunization to section "; src -> comp.author as author, author.reference = append('Organization/', oid) "Set org"; src -> immunization.patient as subj, subj.reference = append('Patient/', pid) "Set patient"; vacDetails.adm as adm -> org.name = adm "Set Organization name"; src -> bundle then ExtractVaccine(vac, vacDetails, oid, immunization) "extract vaccine info"; } "Imminization Create vac"; } "Imminization Create msg"; } "Immunization Create"; } "Patient Create"; } group ExtractVaccine(source vac : VaccinationEvent, source vacDetails : VaccinationDetails, source oid, target immunization : Immunization) { vacDetails.dvc as dvc -> immunization.occurrence = dvc "set occurrence date"; vac.des as des -> immunization.vaccineCode as type, type.coding as coding, coding.system = 'http://hl7.org/fhir/sid/icd-11', coding.code = des "set vaccine coding"; vac.nam as nam -> immunization.extension as ext, ext.value = create('Coding') as coding, ext.url = 'https://smart.who.int/ddcc/StructureDefinition/DDCCVaccineBrand', coding.code = nam "set brand"; vacDetails.ctr as co -> immunization.extension as ext, ext.value = create('Coding') as coding, ext.url = 'https://smart.who.int/ddcc/StructureDefinition/DDCCCountryOfVaccination', coding.code = co, coding.system = 'urn:iso:std:iso:3166' "set country"; vacDetails.lot as lot -> immunization.lotNumber = lot "set lot number"; vac -> immunization.protocolApplied as protocolApplied then { vacDetails -> protocolApplied then { vac -> protocolApplied then ExtractProtocolApplied(vac, vacDetails, oid, protocolApplied) "set protocol applied"; } "set protocol applied vacdetails"; } "set protocol applied vac"; } group ExtractProtocolApplied(source vac : VaccinationEvent, source vacDetails : VaccinationDetails, source oid, target protocol : ProtocolApplied) { vacDetails.seq as seq -> protocol.doseNumber = seq "set dose number"; vac.dis as dis -> protocol.targetDisease as codeable, codeable.coding as coding, coding.system = 'http://hl7.org/fhir/sid/icd-11', coding.code = dis "set target disease type"; oid -> protocol.authority as authority, authority.reference = append('Organization/', oid) "set authority"; } group ExtractPatientFromMsg(source src : Message, source pid, target patient : Patient) { src.pid as patData -> patient then ExtractPatient(patData, pid, patient) "extract patient from msg"; } group ExtractPatient(source src : Patient, source pid, target patient : Patient) { pid -> patient.id = pid "Patient ID"; src.i as priorityIdentifier -> patient.identifier as identif, identif.value = priorityIdentifier "set priorityIdentifier"; src.ai as additionalIdentifier -> patient.identifier as identif, identif.value = additionalIdentifier "set additionalIdentifier"; src -> patient.identifier as identif then ExtractDocumentTypeNumber(src, identif) "Document Type Number"; src.n as name -> patient.name = create('HumanName') as humanName, humanName.text = name "Patient Name"; src.sex as gender -> patient then ExtractGender(gender, patient) "Patient Gender"; src.dob as birthDate -> patient.birthDate = birthDate "set birthDate"; } group ExtractGender(source gender, target patient : Patient) { gender where (gender = 'M') -> patient.gender = 'male' "set male"; gender where (gender = 'F') -> patient.gender = 'female' "set female"; } group ExtractDocumentTypeNumber(source src : Patient, target identif : Identifier) { src.dn as docNumber -> identif.value = docNumber "set doc number"; src.dt as docType where (docType = 'P') -> identif.system = 'PPN' "set doc number P"; // P – Passport (Doc 9303-4) src.dt as docType where (docType = 'A') -> identif.system = 'DL' "set doc number A"; // A – ID Card (Doc 9303-5) src.dt as docType where (docType = 'C') -> identif.system = 'DL' "set doc number C"; // C – ID Card (Doc 9303-5) src.dt as docType where (docType = 'I') -> identif.system = 'DL' "set doc number I"; // I – ID Card Doc 9303-5) src.dt as docType where (docType = 'AC') -> identif.system = 'EN' "set doc number AC"; // AC - Crew Member Certificate (Doc 9303-5) src.dt as docType where (docType = 'V') -> identif.system = 'ACSN' "set doc number V"; // V – Visa (Doc 9303-7) src.dt as docType where (docType = 'D') -> identif.system = 'DL' "set doc number D"; // D – Driving License (ISO18013-1) } group ExtractComposition(source src : Data, target composition : Composition) { src.msg as msg -> composition then { msg.ucti as ucti -> composition.identifier as identif, identif.value = ucti "set comp test identifier"; } "set comp vaccine identifier parent"; src.msg as msg -> composition then { msg.uvci as uvci -> composition.identifier as identif, identif.value = uvci "set comp vaccine identifier"; } "set comp vaccine identifier parent"; src -> composition.title = 'International Certificate of Vaccination or Prophylaxis' "Title"; src -> composition.category as category, category.coding as coding then { src -> coding.code = 'ddcc-vs' "Category"; } "set category"; src -> composition.type as type, type.coding as coding then { src -> coding.system = 'http://loinc.org', coding.code = '82593-5', coding.display = 'Immunization summary report' "set type coding"; } "set type"; }
{ "resourceType": "StructureMap", "id": "ICAOtoDDCC", "text": { "status": "generated", "div": "<!-- snip (see above) -->" }, "url": "http://smart.who.int/ddcc/StructureMap/CertICAOtoDDCC", "version": "1.0.0", "name": "ICAOtoDDCC", "status": "draft", "date": "2025-06-24T09:07:32+00:00", "publisher": "WHO", "contact": [ { "name": "WHO", "telecom": [ { "system": "url", "value": "http://who.int" } ] } ], "jurisdiction": [ { "coding": [ { "system": "http://unstats.un.org/unsd/methods/m49/m49.htm", "code": "001" } ] } ], "structure": [ { "url": "http://smart.who.int/ddcc/StructureDefinition/CertICAO", "mode": "source", "alias": "IJson" }, { "url": "http://hl7.org/fhir/ig/icao/StructureDefinition/Data", "mode": "source", "alias": "Data" }, { "url": "http://hl7.org/fhir/ig/icao/StructureDefinition/Header", "mode": "source", "alias": "Header" }, { "url": "http://hl7.org/fhir/ig/icao/StructureDefinition/Message", "mode": "source", "alias": "Message" }, { "url": "http://hl7.org/fhir/ig/icao/StructureDefinition/Patient", "mode": "source", "alias": "Patient" }, { "url": "http://hl7.org/fhir/ig/icao/StructureDefinition/VaccinationEvent", "mode": "source", "alias": "VaccinationEvent" }, { "url": "http://hl7.org/fhir/ig/icao/StructureDefinition/VaccinationDetails", "mode": "source", "alias": "VaccinationDetails" }, { "url": "http://hl7.org/fhir/ig/icao/StructureDefinition/ServiceProvider", "mode": "source", "alias": "ServiceProvider" }, { "url": "http://hl7.org/fhir/ig/icao/StructureDefinition/Contact", "mode": "source", "alias": "Contact" }, { "url": "http://hl7.org/fhir/ig/icao/StructureDefinition/DateTimeTestReport", "mode": "source", "alias": "DateTimeTestReport" }, { "url": "http://hl7.org/fhir/ig/icao/StructureDefinition/TestResult", "mode": "source", "alias": "TestResult" }, { "url": "http://hl7.org/fhir/ig/icao/StructureDefinition/Signature", "mode": "source", "alias": "Signature" }, { "url": "http://hl7.org/fhir/StructureDefinition/Bundle", "mode": "target", "alias": "Bundle" } ], "group": [ { "name": "ICAOtoDDCC", "typeMode": "none", "input": [ { "name": "src", "type": "IJson", "mode": "source" }, { "name": "bundle", "type": "Bundle", "mode": "target" } ], "rule": [ { "name": "Base Rule", "source": [ { "context": "src", "element": "data", "variable": "data" } ], "target": [ { "context": "bundle", "contextType": "variable" } ], "dependent": [ { "name": "ExtractData", "variable": [ "data", "bundle" ] } ] } ] }, { "name": "ExtractData", "typeMode": "none", "input": [ { "name": "src", "type": "Data", "mode": "source" }, { "name": "bundle", "type": "Bundle", "mode": "target" } ], "rule": [ { "name": "set bundle type", "source": [ { "context": "src" } ], "target": [ { "context": "bundle", "contextType": "variable", "element": "type", "transform": "copy", "parameter": [ { "valueString": "transaction" } ] } ] }, { "name": "Patient and Composition Create", "source": [ { "context": "src" } ], "target": [ { "context": "bundle", "contextType": "variable" }, { "context": "bundle", "contextType": "variable", "element": "entry", "variable": "entry" }, { "context": "entry", "contextType": "variable", "element": "resource", "variable": "comp", "transform": "create", "parameter": [ { "valueString": "Composition" } ] } ], "rule": [ { "name": "Certificate", "source": [ { "context": "src" } ], "target": [ { "context": "bundle", "contextType": "variable" } ], "dependent": [ { "name": "ExtractCert", "variable": [ "src", "bundle", "comp" ] } ] }, { "name": "Composition", "source": [ { "context": "src" } ], "target": [ { "context": "bundle", "contextType": "variable" } ], "dependent": [ { "name": "ExtractComposition", "variable": [ "src", "comp" ] } ] } ] } ] }, { "name": "ExtractCert", "typeMode": "none", "input": [ { "name": "src", "type": "Data", "mode": "source" }, { "name": "bundle", "type": "Bundle", "mode": "target" }, { "name": "comp", "type": "Composition", "mode": "target" } ], "rule": [ { "name": "Patient Create", "source": [ { "context": "src" } ], "target": [ { "context": "comp", "contextType": "variable" }, { "context": "bundle", "contextType": "variable", "element": "entry", "variable": "entry" }, { "context": "entry", "contextType": "variable", "element": "resource", "variable": "patient", "transform": "create", "parameter": [ { "valueString": "Patient" } ] }, { "contextType": "variable", "variable": "pid", "transform": "uuid" } ], "rule": [ { "name": "extract patient", "source": [ { "context": "src", "element": "msg", "variable": "msg" } ], "target": [ { "context": "patient", "contextType": "variable" } ], "dependent": [ { "name": "ExtractPatientFromMsg", "variable": [ "msg", "pid", "patient" ] } ] }, { "name": "Composition.Set patient", "source": [ { "context": "src" } ], "target": [ { "context": "comp", "contextType": "variable", "element": "subject", "variable": "subj" }, { "context": "subj", "contextType": "variable", "element": "reference", "transform": "append", "parameter": [ { "valueString": "Patient/" }, { "valueId": "pid" } ] } ] }, { "name": "Immunization Create", "source": [ { "context": "src", "element": "msg", "variable": "msg", "condition": "src.hdr.t = 'icao.vacc'" } ], "target": [ { "context": "comp", "contextType": "variable" }, { "context": "comp", "contextType": "variable", "element": "section", "variable": "section" } ], "rule": [ { "name": "add section", "source": [ { "context": "src" } ], "target": [ { "context": "section", "contextType": "variable", "element": "code", "variable": "code" }, { "context": "code", "contextType": "variable", "element": "coding", "variable": "coding" }, { "context": "coding", "contextType": "variable", "element": "system", "transform": "copy", "parameter": [ { "valueString": "http://loinc.org" } ] }, { "context": "coding", "contextType": "variable", "element": "code", "transform": "copy", "parameter": [ { "valueString": "11369-6" } ] }, { "context": "coding", "contextType": "variable", "element": "display", "transform": "copy", "parameter": [ { "valueString": "History of Immunization Narrative" } ] } ] }, { "name": "Imminization Create msg", "source": [ { "context": "msg", "element": "ve", "variable": "vac" } ], "target": [ { "context": "comp", "contextType": "variable" } ], "rule": [ { "name": "Imminization Create vac", "source": [ { "context": "vac", "element": "vd", "variable": "vacDetails" } ], "target": [ { "context": "comp", "contextType": "variable" }, { "context": "bundle", "contextType": "variable", "element": "entry", "variable": "entryImm" }, { "context": "entryImm", "contextType": "variable", "element": "resource", "variable": "immunization", "transform": "create", "parameter": [ { "valueString": "Immunization" } ] }, { "contextType": "variable", "variable": "iid", "transform": "uuid" }, { "context": "bundle", "contextType": "variable", "element": "entry", "variable": "entryOrg" }, { "context": "entryOrg", "contextType": "variable", "element": "resource", "variable": "org", "transform": "create", "parameter": [ { "valueString": "Organization" } ] }, { "contextType": "variable", "variable": "oid", "transform": "uuid" } ], "rule": [ { "name": "Immunization ID", "source": [ { "context": "src" } ], "target": [ { "context": "immunization", "contextType": "variable", "element": "id", "transform": "copy", "parameter": [ { "valueId": "iid" } ] } ] }, { "name": "Organization ID", "source": [ { "context": "src" } ], "target": [ { "context": "org", "contextType": "variable", "element": "id", "transform": "copy", "parameter": [ { "valueId": "oid" } ] } ] }, { "name": "add author immunization to section ", "source": [ { "context": "src" } ], "target": [ { "context": "section", "contextType": "variable", "element": "entry", "variable": "entry" }, { "context": "entry", "contextType": "variable", "element": "reference", "transform": "append", "parameter": [ { "valueString": "Immunization/" }, { "valueId": "iid" } ] }, { "context": "section", "contextType": "variable", "element": "author", "variable": "author" }, { "context": "author", "contextType": "variable", "element": "reference", "transform": "append", "parameter": [ { "valueString": "Organization/" }, { "valueId": "oid" } ] } ] }, { "name": "Composition.Set org", "source": [ { "context": "src" } ], "target": [ { "context": "comp", "contextType": "variable", "element": "author", "variable": "author" }, { "context": "author", "contextType": "variable", "element": "reference", "transform": "append", "parameter": [ { "valueString": "Organization/" }, { "valueId": "oid" } ] } ] }, { "name": "Immunization.Set patient", "source": [ { "context": "src" } ], "target": [ { "context": "immunization", "contextType": "variable", "element": "patient", "variable": "subj" }, { "context": "subj", "contextType": "variable", "element": "reference", "transform": "append", "parameter": [ { "valueString": "Patient/" }, { "valueId": "pid" } ] } ] }, { "name": "Set Organization name", "source": [ { "context": "vacDetails", "element": "adm", "variable": "adm" } ], "target": [ { "context": "org", "contextType": "variable", "element": "name", "transform": "copy", "parameter": [ { "valueId": "adm" } ] } ] }, { "name": "extract vaccine info", "source": [ { "context": "src" } ], "target": [ { "context": "bundle", "contextType": "variable" } ], "dependent": [ { "name": "ExtractVaccine", "variable": [ "vac", "vacDetails", "oid", "immunization" ] } ] } ] } ] } ] } ] } ] }, { "name": "ExtractVaccine", "typeMode": "none", "input": [ { "name": "vac", "type": "VaccinationEvent", "mode": "source" }, { "name": "vacDetails", "type": "VaccinationDetails", "mode": "source" }, { "name": "oid", "mode": "source" }, { "name": "immunization", "type": "Immunization", "mode": "target" } ], "rule": [ { "name": "set occurrence date", "source": [ { "context": "vacDetails", "element": "dvc", "variable": "dvc" } ], "target": [ { "context": "immunization", "contextType": "variable", "element": "occurrence", "transform": "copy", "parameter": [ { "valueId": "dvc" } ] } ] }, { "name": "set vaccine coding", "source": [ { "context": "vac", "element": "des", "variable": "des" } ], "target": [ { "context": "immunization", "contextType": "variable", "element": "vaccineCode", "variable": "type" }, { "context": "type", "contextType": "variable", "element": "coding", "variable": "coding" }, { "context": "coding", "contextType": "variable", "element": "system", "transform": "copy", "parameter": [ { "valueString": "http://hl7.org/fhir/sid/icd-11" } ] }, { "context": "coding", "contextType": "variable", "element": "code", "transform": "copy", "parameter": [ { "valueId": "des" } ] } ] }, { "name": "set brand", "source": [ { "context": "vac", "element": "nam", "variable": "nam" } ], "target": [ { "context": "immunization", "contextType": "variable", "element": "extension", "variable": "ext" }, { "context": "ext", "contextType": "variable", "element": "value", "variable": "coding", "transform": "create", "parameter": [ { "valueString": "Coding" } ] }, { "context": "ext", "contextType": "variable", "element": "url", "transform": "copy", "parameter": [ { "valueString": "https://smart.who.int/ddcc/StructureDefinition/DDCCVaccineBrand" } ] }, { "context": "coding", "contextType": "variable", "element": "code", "transform": "copy", "parameter": [ { "valueId": "nam" } ] } ] }, { "name": "set country", "source": [ { "context": "vacDetails", "element": "ctr", "variable": "co" } ], "target": [ { "context": "immunization", "contextType": "variable", "element": "extension", "variable": "ext" }, { "context": "ext", "contextType": "variable", "element": "value", "variable": "coding", "transform": "create", "parameter": [ { "valueString": "Coding" } ] }, { "context": "ext", "contextType": "variable", "element": "url", "transform": "copy", "parameter": [ { "valueString": "https://smart.who.int/ddcc/StructureDefinition/DDCCCountryOfVaccination" } ] }, { "context": "coding", "contextType": "variable", "element": "code", "transform": "copy", "parameter": [ { "valueId": "co" } ] }, { "context": "coding", "contextType": "variable", "element": "system", "transform": "copy", "parameter": [ { "valueString": "urn:iso:std:iso:3166" } ] } ] }, { "name": "set lot number", "source": [ { "context": "vacDetails", "element": "lot", "variable": "lot" } ], "target": [ { "context": "immunization", "contextType": "variable", "element": "lotNumber", "transform": "copy", "parameter": [ { "valueId": "lot" } ] } ] }, { "name": "set protocol applied vac", "source": [ { "context": "vac" } ], "target": [ { "context": "immunization", "contextType": "variable", "element": "protocolApplied", "variable": "protocolApplied" } ], "rule": [ { "name": "set protocol applied vacdetails", "source": [ { "context": "vacDetails" } ], "target": [ { "context": "protocolApplied", "contextType": "variable" } ], "rule": [ { "name": "set protocol applied", "source": [ { "context": "vac" } ], "target": [ { "context": "protocolApplied", "contextType": "variable" } ], "dependent": [ { "name": "ExtractProtocolApplied", "variable": [ "vac", "vacDetails", "oid", "protocolApplied" ] } ] } ] } ] } ] }, { "name": "ExtractProtocolApplied", "typeMode": "none", "input": [ { "name": "vac", "type": "VaccinationEvent", "mode": "source" }, { "name": "vacDetails", "type": "VaccinationDetails", "mode": "source" }, { "name": "oid", "mode": "source" }, { "name": "protocol", "type": "ProtocolApplied", "mode": "target" } ], "rule": [ { "name": "set dose number", "source": [ { "context": "vacDetails", "element": "seq", "variable": "seq" } ], "target": [ { "context": "protocol", "contextType": "variable", "element": "doseNumber", "transform": "copy", "parameter": [ { "valueId": "seq" } ] } ] }, { "name": "set target disease type", "source": [ { "context": "vac", "element": "dis", "variable": "dis" } ], "target": [ { "context": "protocol", "contextType": "variable", "element": "targetDisease", "variable": "codeable" }, { "context": "codeable", "contextType": "variable", "element": "coding", "variable": "coding" }, { "context": "coding", "contextType": "variable", "element": "system", "transform": "copy", "parameter": [ { "valueString": "http://hl7.org/fhir/sid/icd-11" } ] }, { "context": "coding", "contextType": "variable", "element": "code", "transform": "copy", "parameter": [ { "valueId": "dis" } ] } ] }, { "name": "set authority", "source": [ { "context": "oid" } ], "target": [ { "context": "protocol", "contextType": "variable", "element": "authority", "variable": "authority" }, { "context": "authority", "contextType": "variable", "element": "reference", "transform": "append", "parameter": [ { "valueString": "Organization/" }, { "valueId": "oid" } ] } ] } ] }, { "name": "ExtractPatientFromMsg", "typeMode": "none", "input": [ { "name": "src", "type": "Message", "mode": "source" }, { "name": "pid", "mode": "source" }, { "name": "patient", "type": "Patient", "mode": "target" } ], "rule": [ { "name": "extract patient from msg", "source": [ { "context": "src", "element": "pid", "variable": "patData" } ], "target": [ { "context": "patient", "contextType": "variable" } ], "dependent": [ { "name": "ExtractPatient", "variable": [ "patData", "pid", "patient" ] } ] } ] }, { "name": "ExtractPatient", "typeMode": "none", "input": [ { "name": "src", "type": "Patient", "mode": "source" }, { "name": "pid", "mode": "source" }, { "name": "patient", "type": "Patient", "mode": "target" } ], "rule": [ { "name": "Patient ID", "source": [ { "context": "pid" } ], "target": [ { "context": "patient", "contextType": "variable", "element": "id", "transform": "copy", "parameter": [ { "valueId": "pid" } ] } ] }, { "name": "set priorityIdentifier", "source": [ { "context": "src", "element": "i", "variable": "priorityIdentifier" } ], "target": [ { "context": "patient", "contextType": "variable", "element": "identifier", "variable": "identif" }, { "context": "identif", "contextType": "variable", "element": "value", "transform": "copy", "parameter": [ { "valueId": "priorityIdentifier" } ] } ] }, { "name": "set additionalIdentifier", "source": [ { "context": "src", "element": "ai", "variable": "additionalIdentifier" } ], "target": [ { "context": "patient", "contextType": "variable", "element": "identifier", "variable": "identif" }, { "context": "identif", "contextType": "variable", "element": "value", "transform": "copy", "parameter": [ { "valueId": "additionalIdentifier" } ] } ] }, { "name": "Document Type Number", "source": [ { "context": "src" } ], "target": [ { "context": "patient", "contextType": "variable", "element": "identifier", "variable": "identif" } ], "dependent": [ { "name": "ExtractDocumentTypeNumber", "variable": [ "src", "identif" ] } ] }, { "name": "Patient Name", "source": [ { "context": "src", "element": "n", "variable": "name" } ], "target": [ { "context": "patient", "contextType": "variable", "element": "name", "variable": "humanName", "transform": "create", "parameter": [ { "valueString": "HumanName" } ] }, { "context": "humanName", "contextType": "variable", "element": "text", "transform": "copy", "parameter": [ { "valueId": "name" } ] } ] }, { "name": "Patient Gender", "source": [ { "context": "src", "element": "sex", "variable": "gender" } ], "target": [ { "context": "patient", "contextType": "variable" } ], "dependent": [ { "name": "ExtractGender", "variable": [ "gender", "patient" ] } ] }, { "name": "set birthDate", "source": [ { "context": "src", "element": "dob", "variable": "birthDate" } ], "target": [ { "context": "patient", "contextType": "variable", "element": "birthDate", "transform": "copy", "parameter": [ { "valueId": "birthDate" } ] } ] } ] }, { "name": "ExtractGender", "typeMode": "none", "input": [ { "name": "gender", "mode": "source" }, { "name": "patient", "type": "Patient", "mode": "target" } ], "rule": [ { "name": "set male", "source": [ { "context": "gender", "condition": "(gender = 'M')" } ], "target": [ { "context": "patient", "contextType": "variable", "element": "gender", "transform": "copy", "parameter": [ { "valueString": "male" } ] } ] }, { "name": "set female", "source": [ { "context": "gender", "condition": "(gender = 'F')" } ], "target": [ { "context": "patient", "contextType": "variable", "element": "gender", "transform": "copy", "parameter": [ { "valueString": "female" } ] } ] } ] }, { "name": "ExtractDocumentTypeNumber", "typeMode": "none", "input": [ { "name": "src", "type": "Patient", "mode": "source" }, { "name": "identif", "type": "Identifier", "mode": "target" } ], "rule": [ { "name": "set doc number", "source": [ { "context": "src", "element": "dn", "variable": "docNumber" } ], "target": [ { "context": "identif", "contextType": "variable", "element": "value", "transform": "copy", "parameter": [ { "valueId": "docNumber" } ] } ] }, { "name": "set doc number P", "source": [ { "context": "src", "element": "dt", "variable": "docType", "condition": "(docType = 'P')" } ], "target": [ { "context": "identif", "contextType": "variable", "element": "system", "transform": "copy", "parameter": [ { "valueString": "PPN" } ] } ], "documentation": "P – Passport (Doc 9303-4)" }, { "name": "set doc number A", "source": [ { "context": "src", "element": "dt", "variable": "docType", "condition": "(docType = 'A')" } ], "target": [ { "context": "identif", "contextType": "variable", "element": "system", "transform": "copy", "parameter": [ { "valueString": "DL" } ] } ], "documentation": "A – ID Card (Doc 9303-5)" }, { "name": "set doc number C", "source": [ { "context": "src", "element": "dt", "variable": "docType", "condition": "(docType = 'C')" } ], "target": [ { "context": "identif", "contextType": "variable", "element": "system", "transform": "copy", "parameter": [ { "valueString": "DL" } ] } ], "documentation": "C – ID Card (Doc 9303-5)" }, { "name": "set doc number I", "source": [ { "context": "src", "element": "dt", "variable": "docType", "condition": "(docType = 'I')" } ], "target": [ { "context": "identif", "contextType": "variable", "element": "system", "transform": "copy", "parameter": [ { "valueString": "DL" } ] } ], "documentation": "I – ID Card Doc 9303-5)" }, { "name": "set doc number AC", "source": [ { "context": "src", "element": "dt", "variable": "docType", "condition": "(docType = 'AC')" } ], "target": [ { "context": "identif", "contextType": "variable", "element": "system", "transform": "copy", "parameter": [ { "valueString": "EN" } ] } ], "documentation": "AC - Crew Member Certificate (Doc 9303-5)" }, { "name": "set doc number V", "source": [ { "context": "src", "element": "dt", "variable": "docType", "condition": "(docType = 'V')" } ], "target": [ { "context": "identif", "contextType": "variable", "element": "system", "transform": "copy", "parameter": [ { "valueString": "ACSN" } ] } ], "documentation": "V – Visa (Doc 9303-7)" }, { "name": "set doc number D", "source": [ { "context": "src", "element": "dt", "variable": "docType", "condition": "(docType = 'D')" } ], "target": [ { "context": "identif", "contextType": "variable", "element": "system", "transform": "copy", "parameter": [ { "valueString": "DL" } ] } ], "documentation": "D – Driving License (ISO18013-1)" } ] }, { "name": "ExtractComposition", "typeMode": "none", "input": [ { "name": "src", "type": "Data", "mode": "source" }, { "name": "composition", "type": "Composition", "mode": "target" } ], "rule": [ { "name": "set comp vaccine identifier parent", "source": [ { "context": "src", "element": "msg", "variable": "msg" } ], "target": [ { "context": "composition", "contextType": "variable" } ], "rule": [ { "name": "set comp test identifier", "source": [ { "context": "msg", "element": "ucti", "variable": "ucti" } ], "target": [ { "context": "composition", "contextType": "variable", "element": "identifier", "variable": "identif" }, { "context": "identif", "contextType": "variable", "element": "value", "transform": "copy", "parameter": [ { "valueId": "ucti" } ] } ] } ] }, { "name": "set comp vaccine identifier parent", "source": [ { "context": "src", "element": "msg", "variable": "msg" } ], "target": [ { "context": "composition", "contextType": "variable" } ], "rule": [ { "name": "set comp vaccine identifier", "source": [ { "context": "msg", "element": "uvci", "variable": "uvci" } ], "target": [ { "context": "composition", "contextType": "variable", "element": "identifier", "variable": "identif" }, { "context": "identif", "contextType": "variable", "element": "value", "transform": "copy", "parameter": [ { "valueId": "uvci" } ] } ] } ] }, { "name": "Title", "source": [ { "context": "src" } ], "target": [ { "context": "composition", "contextType": "variable", "element": "title", "transform": "copy", "parameter": [ { "valueString": "International Certificate of Vaccination or Prophylaxis" } ] } ] }, { "name": "set category", "source": [ { "context": "src" } ], "target": [ { "context": "composition", "contextType": "variable", "element": "category", "variable": "category" }, { "context": "category", "contextType": "variable", "element": "coding", "variable": "coding" } ], "rule": [ { "name": "Category", "source": [ { "context": "src" } ], "target": [ { "context": "coding", "contextType": "variable", "element": "code", "transform": "copy", "parameter": [ { "valueString": "ddcc-vs" } ] } ] } ] }, { "name": "set type", "source": [ { "context": "src" } ], "target": [ { "context": "composition", "contextType": "variable", "element": "type", "variable": "type" }, { "context": "type", "contextType": "variable", "element": "coding", "variable": "coding" } ], "rule": [ { "name": "set type coding", "source": [ { "context": "src" } ], "target": [ { "context": "coding", "contextType": "variable", "element": "system", "transform": "copy", "parameter": [ { "valueString": "http://loinc.org" } ] }, { "context": "coding", "contextType": "variable", "element": "code", "transform": "copy", "parameter": [ { "valueString": "82593-5" } ] }, { "context": "coding", "contextType": "variable", "element": "display", "transform": "copy", "parameter": [ { "valueString": "Immunization summary report" } ] } ] } ] } ] } ] }