| Package | who.ddcc |
| Resource Type | StructureMap |
| Id | CoreDataSetVSLibrary |
| FHIR Version | R4 |
| Source | http://smart.who.int/ddcc/https://build.fhir.org/ig/WorldHealthOrganization/ddcc/StructureMap-CoreDataSetVSLibrary.html |
| URL | http://smart.who.int/ddcc/StructureMap/CoreDataSetVSLibrary |
| Version | 1.0.0 |
| Status | draft |
| Date | 2025-06-24T09:07:32+00:00 |
| Name | CoreDataSetVSLibrary |
| Realm | uv |
| Authority | who |
No resources found
No resources found
Note: links and images are rebased to the (stated) source
Generated Narrative: StructureMap CoreDataSetVSLibrary
map "http://smart.who.int/ddcc/StructureMap/CoreDataSetVSLibrary" = "CoreDataSetVSLibrary" uses "http://smart.who.int/ddcc/StructureDefinition/DDCCCoreDataSetVS" alias DDCCVS as source uses "http://hl7.org/fhir/StructureDefinition/Bundle" alias AddBundle as target uses "http://hl7.org/fhir/StructureDefinition/Patient" alias Patient as target uses "http://smart.who.int/ddcc/StructureDefinition/DDCCPatient" alias DDCCPatient as target uses "http://smart.who.int/ddcc/StructureDefinition/DDCCDocumentReferenceQR" alias DDCCDocRefQR as target uses "http://smart.who.int/ddcc/StructureDefinition/DDCCVSComposition" alias DDCCVSComposition as target uses "http://smart.who.int/ddcc/StructureDefinition/DDCCImmunization" alias DDCCImmunization as target uses "http://smart.who.int/ddcc/StructureDefinition/DDCCImmunizationRecommendation" alias DDCCImmRec as target imports "http://smart.who.int/ddcc/StructureMap/CoreDataSetLibrary" group VSToAddBundle(source ddcc : DDCCVS, target bundle : AddBundle) { ddcc -> bundle.type = 'transaction' "set bundle type"; ddcc -> uuid() as pid, uuid() as compid, uuid() as iid, uuid() as irid, uuid() as qrwhoid, uuid() as qrdccid then { ddcc -> bundle.entry as entry, entry.fullUrl = append('urn:uuid:', pid), entry.request as request, request.method = 'PUT', request.url = append('Patient/', pid), create('http://smart.who.int/ddcc/StructureDefinition/DDCCPatient') as patient then { ddcc then DDCCToPatient(ddcc, patient, pid) "setup patient"; ddcc -> entry.resource = patient "set patient resource"; } "create patient resource"; ddcc -> bundle.entry as entry, entry.fullUrl = append('urn:uuid:', compid), entry.request as request, request.method = 'PUT', request.url = append('Composition/', compid), create('http://smart.who.int/ddcc/StructureDefinition/DDCCVSComposition') as comp then { ddcc then DDCCToComposition(ddcc, comp, compid, pid) "setup composition"; ddcc -> comp.category as category, category.coding as coding, coding.system = 'http://smart.who.int/ddcc/CodeSystem/DDCCCompositionCategoryCodeSystem', coding.code = 'ddcc-vs' "set category"; ddcc -> comp.title = 'International Certificate of Vaccination or Prophylaxis' "set title"; ddcc -> comp.section as section then { ddcc -> section.code as code, code.coding as coding, coding.system = 'http://loinc.org', coding.code = '11369-6' "set code"; ddcc.certificate as certificate then { certificate.issuer as issuer -> section.author = issuer "set author"; } "set certificate"; // ddcc.certificate as certificate -> section.author as author then { certificate.issuer as issuer then { issuer.identifier as pha -> author.identifier as identifier, author.type = "Organization" then { pha.value as value -> identifier.value = value "set pha"; } "set author identifier"; } "set author ref"; } "set author"; ddcc -> section.focus as focus, focus.reference = append('Immunization/', iid) "set focus"; ddcc -> section.entry as entry, entry.reference = append('Immunization/', iid) "add Immunization entry"; ddcc -> section.entry as entry, entry.reference = append('ImmunizationRecommendation/', irid) "add ImmunizationRecommendation entry"; ddcc -> section.entry as entry, entry.reference = append('DocumentReference/', qrwhoid) "add WHO QR entry"; ddcc -> section.entry as entry, entry.reference = append('DocumentReference/', qrdccid) "add DCC QR entry"; } "set section"; ddcc -> entry.resource = comp "set composition resource"; } "create composition resource"; ddcc -> bundle.entry as entry, entry.fullUrl = append('urn:uuid:', qrwhoid), entry.request as request, request.method = 'PUT', request.url = append('DocumentReference/', qrwhoid), create('http://smart.who.int/ddcc/StructureDefinition/DDCCDocumentReferenceQR') as qr then { ddcc then DDCCToDocumentReference(ddcc, qr, qrwhoid, pid) "setup WHO DocRef"; ddcc -> qr.category as category, category.coding as coding, coding.system = 'http://smart.who.int/ddcc/CodeSystem/DDCCQRCategoryUsageCodeSystem', coding.code = 'who' "set category"; ddcc -> qr.description = 'WHO QR code for COVID 19 Vaccine Certificate' "set description"; ddcc -> entry.resource = qr "set WHO QR"; } "create WHO QR Doc Ref"; ddcc -> bundle.entry as entry, entry.fullUrl = append('urn:uuid:', qrdccid), entry.request as request, request.method = 'PUT', request.url = append('DocumentReference/', qrdccid), create('http://smart.who.int/ddcc/StructureDefinition/DDCCDocumentReferenceQR') as qr then { ddcc then DDCCToDocumentReference(ddcc, qr, qrdccid, pid) "setup DCC DocRef"; ddcc -> qr.category as category, category.coding as coding, coding.system = 'http://smart.who.int/ddcc/CodeSystem/DDCCQRCategoryUsageCodeSystem', coding.code = 'dcc' "set category"; ddcc -> qr.description = 'DCC QR code for COVID 19 Vaccine Certificate' "set description"; ddcc -> entry.resource = qr "set DCC QR"; } "create DCC QR Doc Ref"; ddcc.vaccination first as vaccination -> bundle.entry as entry, entry.fullUrl = append('urn:uuid:', iid), entry.request as request, request.method = 'PUT', request.url = append('Immunization/', iid), create('http://smart.who.int/ddcc/StructureDefinition/DDCCImmunization') as immunization then { ddcc.certificate as certificate then DDCCToImmunization(vaccination, immunization, certificate, iid, pid) "setup immunization"; ddcc -> entry.resource = immunization "set immunization resource"; } "create immunization resource"; ddcc.vaccination first as vaccination -> bundle.entry as entry, entry.fullUrl = append('urn:uuid:', irid), entry.request as request, request.method = 'PUT', request.url = append('ImmunizationRecommendation/', irid), create('http://smart.who.int/ddcc/StructureDefinition/DDCCImmunizationRecommendation') as immrec then { vaccination then DDCCToImmRec(vaccination, immrec, irid, iid, pid) "setup immunization recommendation"; ddcc -> entry.resource = immrec "set immunization recommendation resource"; } "create immunization recommendation resource"; } "set uuids"; } group DDCCToImmunization(source src, target immunization : DDCCImmunization, source certificate, source iid, source pid) { iid -> immunization.id = iid "set id"; src.brand as brand -> immunization.extension as ext then { brand -> ext.url = 'http://smart.who.int/ddcc/StructureDefinition/DDCCVaccineBrand', ext.value = brand "set brand extension values"; } "set brand extension"; src.maholder as maholder -> immunization.extension as ext then { maholder -> ext.url = 'http://smart.who.int/ddcc/StructureDefinition/DDCCVaccineMarketAuthorization', ext.value = maholder "set MA Holder extension values"; } "set maholder extension"; src.country as country -> immunization.extension as ext then { country.code as code -> ext.url = 'http://smart.who.int/ddcc/StructureDefinition/DDCCCountryOfVaccination', ext.value = code "set country extension values"; } "set country extension"; src.validFrom as validFrom -> immunization.extension as ext then { validFrom -> ext.url = 'http://smart.who.int/ddcc/StructureDefinition/DDCCVaccineValidFrom', ext.value = validFrom "set valid from extension values"; } "set vaccine valid extension"; src -> immunization.status = 'completed' "set status"; src.vaccine as vaccine -> immunization.vaccineCode as vacCode, vacCode.coding = vaccine "set vaccine"; src -> immunization.patient as patient, patient.reference = append('Patient/', pid) "set patient"; src.manufacturer as manufacturer -> immunization.manufacturer as tman, tman.identifier as ident then { manufacturer.system as system -> ident.system = system "set system"; manufacturer.code as code -> ident.value = code "set value"; } "set manufacturer identifier"; src.lot as lot -> immunization.lotNumber = lot "set lot number"; src.date as date -> immunization.occurrence = date "set occurrence date"; src.centre as centre -> immunization.location as location then { centre -> location.display = centre "set location display"; } "set location"; src.practitioner as practitioner -> immunization.performer as performer then { practitioner.value as hw -> performer.actor as actor then { hw -> actor.type = 'Practitioner', actor.identifier as identifier then { hw -> identifier.value = hw "set hw identifier"; } "set actor"; } "set performer"; } "set practitioner"; src -> immunization.protocolApplied as protocol then { src -> protocol.authority as authority then { certificate.issuer as issuer -> authority.type = 'Organization' then { issuer.identifier as pha -> authority.identifier as identifier then { pha.value as value -> identifier.value = value "set pha"; } "set issuer identifier"; } "set issuer"; } "set authority"; src.disease as disease -> protocol.targetDisease as tdisease then { disease -> tdisease.coding = disease "set target disease code"; } "set target disease"; src.dose as dose -> protocol.doseNumber = dose "set dose number"; src.totalDoses as totalDoses -> protocol.seriesDoses = totalDoses "set total doses"; } "set protocolApplied"; } group DDCCToImmRec(source src, target immrec : DDCCImmunizationRecommendation, source irid, source iid, source pid) { src.date as date -> immrec.date = date "set date"; src -> immrec.patient as patient, patient.reference = append('Patient/', pid) "set patient"; src -> immrec.recommendation as rec then { src.vaccine as vaccine -> rec.vaccineCode as vaccineCode then { vaccine -> vaccineCode.coding = vaccine "set vaccine code coding"; } "set vaccine code"; src.disease as disease -> rec.targetDisease as targetDisease then { disease -> targetDisease.coding = disease "set target disease coding"; } "set target disease"; src -> rec.forecastStatus as forecast then { src -> forecast.coding as coding then { src -> coding.system = 'http://terminology.hl7.org/2.1.0/CodeSystem-immunization-recommendation-status.html' "set forecast system"; src -> coding.code = 'due' "set forecast code"; } "set forecast status coding"; } "set forecast status"; src -> rec.dateCriterion as due_date then { src -> due_date.code as code then { src -> code.coding as coding then { src -> coding.system = 'http://loinc.org' "set due date code system"; src -> coding.code = '30980-7' "set due date code code"; } "set due date code coding"; } "set due date code"; src.nextDose as nextDose -> due_date.value = nextDose "set due date value"; } "set date criterion"; src.dose as dose -> rec.doseNumber = (dose.toInteger() + 1) "set dose number"; src.totalDoses as totalDoses -> rec.seriesDoses = totalDoses "set total doses"; src -> rec.supportingImmunization as imm, imm.reference = append('Immunization/', iid) "set supporting immunization"; } "set recommendation"; }
{
"resourceType": "StructureMap",
"id": "CoreDataSetVSLibrary",
"text": {
"status": "generated",
"div": "<!-- snip (see above) -->"
},
"url": "http://smart.who.int/ddcc/StructureMap/CoreDataSetVSLibrary",
"version": "1.0.0",
"name": "CoreDataSetVSLibrary",
"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/DDCCCoreDataSetVS",
"mode": "source",
"alias": "DDCCVS"
},
{
"url": "http://hl7.org/fhir/StructureDefinition/Bundle",
"mode": "target",
"alias": "AddBundle"
},
{
"url": "http://hl7.org/fhir/StructureDefinition/Patient",
"mode": "target",
"alias": "Patient"
},
{
"url": "http://smart.who.int/ddcc/StructureDefinition/DDCCPatient",
"mode": "target",
"alias": "DDCCPatient"
},
{
"url": "http://smart.who.int/ddcc/StructureDefinition/DDCCDocumentReferenceQR",
"mode": "target",
"alias": "DDCCDocRefQR"
},
{
"url": "http://smart.who.int/ddcc/StructureDefinition/DDCCVSComposition",
"mode": "target",
"alias": "DDCCVSComposition"
},
{
"url": "http://smart.who.int/ddcc/StructureDefinition/DDCCImmunization",
"mode": "target",
"alias": "DDCCImmunization"
},
{
"url": "http://smart.who.int/ddcc/StructureDefinition/DDCCImmunizationRecommendation",
"mode": "target",
"alias": "DDCCImmRec"
}
],
"import": [
"http://smart.who.int/ddcc/StructureMap/CoreDataSetLibrary"
],
"group": [
{
"name": "VSToAddBundle",
"typeMode": "none",
"input": [
{
"name": "ddcc",
"type": "DDCCVS",
"mode": "source"
},
{
"name": "bundle",
"type": "AddBundle",
"mode": "target"
}
],
"rule": [
{
"name": "set bundle type",
"source": [
{
"context": "ddcc"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "type",
"transform": "copy",
"parameter": [
{
"valueString": "transaction"
}
]
}
]
},
{
"name": "set uuids",
"source": [
{
"context": "ddcc"
}
],
"target": [
{
"contextType": "variable",
"variable": "pid",
"transform": "uuid"
},
{
"contextType": "variable",
"variable": "compid",
"transform": "uuid"
},
{
"contextType": "variable",
"variable": "iid",
"transform": "uuid"
},
{
"contextType": "variable",
"variable": "irid",
"transform": "uuid"
},
{
"contextType": "variable",
"variable": "qrwhoid",
"transform": "uuid"
},
{
"contextType": "variable",
"variable": "qrdccid",
"transform": "uuid"
}
],
"rule": [
{
"name": "create patient resource",
"source": [
{
"context": "ddcc"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "entry"
},
{
"context": "entry",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "urn:uuid:"
},
{
"valueId": "pid"
}
]
},
{
"context": "entry",
"contextType": "variable",
"element": "request",
"variable": "request"
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "PUT"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "append",
"parameter": [
{
"valueString": "Patient/"
},
{
"valueId": "pid"
}
]
},
{
"contextType": "variable",
"variable": "patient",
"transform": "create",
"parameter": [
{
"valueString": "http://smart.who.int/ddcc/StructureDefinition/DDCCPatient"
}
]
}
],
"rule": [
{
"name": "setup patient",
"source": [
{
"context": "ddcc"
}
],
"dependent": [
{
"name": "DDCCToPatient",
"variable": [
"ddcc",
"patient",
"pid"
]
}
]
},
{
"name": "set patient resource",
"source": [
{
"context": "ddcc"
}
],
"target": [
{
"context": "entry",
"contextType": "variable",
"element": "resource",
"transform": "copy",
"parameter": [
{
"valueId": "patient"
}
]
}
]
}
]
},
{
"name": "create composition resource",
"source": [
{
"context": "ddcc"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "entry"
},
{
"context": "entry",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "urn:uuid:"
},
{
"valueId": "compid"
}
]
},
{
"context": "entry",
"contextType": "variable",
"element": "request",
"variable": "request"
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "PUT"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "append",
"parameter": [
{
"valueString": "Composition/"
},
{
"valueId": "compid"
}
]
},
{
"contextType": "variable",
"variable": "comp",
"transform": "create",
"parameter": [
{
"valueString": "http://smart.who.int/ddcc/StructureDefinition/DDCCVSComposition"
}
]
}
],
"rule": [
{
"name": "setup composition",
"source": [
{
"context": "ddcc"
}
],
"dependent": [
{
"name": "DDCCToComposition",
"variable": [
"ddcc",
"comp",
"compid",
"pid"
]
}
]
},
{
"name": "set category",
"source": [
{
"context": "ddcc"
}
],
"target": [
{
"context": "comp",
"contextType": "variable",
"element": "category",
"variable": "category"
},
{
"context": "category",
"contextType": "variable",
"element": "coding",
"variable": "coding"
},
{
"context": "coding",
"contextType": "variable",
"element": "system",
"transform": "copy",
"parameter": [
{
"valueString": "http://smart.who.int/ddcc/CodeSystem/DDCCCompositionCategoryCodeSystem"
}
]
},
{
"context": "coding",
"contextType": "variable",
"element": "code",
"transform": "copy",
"parameter": [
{
"valueString": "ddcc-vs"
}
]
}
]
},
{
"name": "set title",
"source": [
{
"context": "ddcc"
}
],
"target": [
{
"context": "comp",
"contextType": "variable",
"element": "title",
"transform": "copy",
"parameter": [
{
"valueString": "International Certificate of Vaccination or Prophylaxis"
}
]
}
]
},
{
"name": "set section",
"source": [
{
"context": "ddcc"
}
],
"target": [
{
"context": "comp",
"contextType": "variable",
"element": "section",
"variable": "section"
}
],
"rule": [
{
"name": "set code",
"source": [
{
"context": "ddcc"
}
],
"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"
}
]
}
]
},
{
"name": "set certificate",
"source": [
{
"context": "ddcc",
"element": "certificate",
"variable": "certificate"
}
],
"rule": [
{
"name": "set author",
"source": [
{
"context": "certificate",
"element": "issuer",
"variable": "issuer"
}
],
"target": [
{
"context": "section",
"contextType": "variable",
"element": "author",
"transform": "copy",
"parameter": [
{
"valueId": "issuer"
}
]
}
]
}
]
},
{
"name": "set focus",
"source": [
{
"context": "ddcc"
}
],
"target": [
{
"context": "section",
"contextType": "variable",
"element": "focus",
"variable": "focus"
},
{
"context": "focus",
"contextType": "variable",
"element": "reference",
"transform": "append",
"parameter": [
{
"valueString": "Immunization/"
},
{
"valueId": "iid"
}
]
}
]
},
{
"name": "add Immunization entry",
"source": [
{
"context": "ddcc"
}
],
"target": [
{
"context": "section",
"contextType": "variable",
"element": "entry",
"variable": "entry"
},
{
"context": "entry",
"contextType": "variable",
"element": "reference",
"transform": "append",
"parameter": [
{
"valueString": "Immunization/"
},
{
"valueId": "iid"
}
]
}
]
},
{
"name": "add ImmunizationRecommendation entry",
"source": [
{
"context": "ddcc"
}
],
"target": [
{
"context": "section",
"contextType": "variable",
"element": "entry",
"variable": "entry"
},
{
"context": "entry",
"contextType": "variable",
"element": "reference",
"transform": "append",
"parameter": [
{
"valueString": "ImmunizationRecommendation/"
},
{
"valueId": "irid"
}
]
}
]
},
{
"name": "add WHO QR entry",
"source": [
{
"context": "ddcc"
}
],
"target": [
{
"context": "section",
"contextType": "variable",
"element": "entry",
"variable": "entry"
},
{
"context": "entry",
"contextType": "variable",
"element": "reference",
"transform": "append",
"parameter": [
{
"valueString": "DocumentReference/"
},
{
"valueId": "qrwhoid"
}
]
}
]
},
{
"name": "add DCC QR entry",
"source": [
{
"context": "ddcc"
}
],
"target": [
{
"context": "section",
"contextType": "variable",
"element": "entry",
"variable": "entry"
},
{
"context": "entry",
"contextType": "variable",
"element": "reference",
"transform": "append",
"parameter": [
{
"valueString": "DocumentReference/"
},
{
"valueId": "qrdccid"
}
]
}
]
}
]
},
{
"name": "set composition resource",
"source": [
{
"context": "ddcc"
}
],
"target": [
{
"context": "entry",
"contextType": "variable",
"element": "resource",
"transform": "copy",
"parameter": [
{
"valueId": "comp"
}
]
}
]
}
]
},
{
"name": "create WHO QR Doc Ref",
"source": [
{
"context": "ddcc"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "entry"
},
{
"context": "entry",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "urn:uuid:"
},
{
"valueId": "qrwhoid"
}
]
},
{
"context": "entry",
"contextType": "variable",
"element": "request",
"variable": "request"
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "PUT"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "append",
"parameter": [
{
"valueString": "DocumentReference/"
},
{
"valueId": "qrwhoid"
}
]
},
{
"contextType": "variable",
"variable": "qr",
"transform": "create",
"parameter": [
{
"valueString": "http://smart.who.int/ddcc/StructureDefinition/DDCCDocumentReferenceQR"
}
]
}
],
"rule": [
{
"name": "setup WHO DocRef",
"source": [
{
"context": "ddcc"
}
],
"dependent": [
{
"name": "DDCCToDocumentReference",
"variable": [
"ddcc",
"qr",
"qrwhoid",
"pid"
]
}
]
},
{
"name": "set category",
"source": [
{
"context": "ddcc"
}
],
"target": [
{
"context": "qr",
"contextType": "variable",
"element": "category",
"variable": "category"
},
{
"context": "category",
"contextType": "variable",
"element": "coding",
"variable": "coding"
},
{
"context": "coding",
"contextType": "variable",
"element": "system",
"transform": "copy",
"parameter": [
{
"valueString": "http://smart.who.int/ddcc/CodeSystem/DDCCQRCategoryUsageCodeSystem"
}
]
},
{
"context": "coding",
"contextType": "variable",
"element": "code",
"transform": "copy",
"parameter": [
{
"valueString": "who"
}
]
}
]
},
{
"name": "set description",
"source": [
{
"context": "ddcc"
}
],
"target": [
{
"context": "qr",
"contextType": "variable",
"element": "description",
"transform": "copy",
"parameter": [
{
"valueString": "WHO QR code for COVID 19 Vaccine Certificate"
}
]
}
]
},
{
"name": "set WHO QR",
"source": [
{
"context": "ddcc"
}
],
"target": [
{
"context": "entry",
"contextType": "variable",
"element": "resource",
"transform": "copy",
"parameter": [
{
"valueId": "qr"
}
]
}
]
}
]
},
{
"name": "create DCC QR Doc Ref",
"source": [
{
"context": "ddcc"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "entry"
},
{
"context": "entry",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "urn:uuid:"
},
{
"valueId": "qrdccid"
}
]
},
{
"context": "entry",
"contextType": "variable",
"element": "request",
"variable": "request"
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "PUT"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "append",
"parameter": [
{
"valueString": "DocumentReference/"
},
{
"valueId": "qrdccid"
}
]
},
{
"contextType": "variable",
"variable": "qr",
"transform": "create",
"parameter": [
{
"valueString": "http://smart.who.int/ddcc/StructureDefinition/DDCCDocumentReferenceQR"
}
]
}
],
"rule": [
{
"name": "setup DCC DocRef",
"source": [
{
"context": "ddcc"
}
],
"dependent": [
{
"name": "DDCCToDocumentReference",
"variable": [
"ddcc",
"qr",
"qrdccid",
"pid"
]
}
]
},
{
"name": "set category",
"source": [
{
"context": "ddcc"
}
],
"target": [
{
"context": "qr",
"contextType": "variable",
"element": "category",
"variable": "category"
},
{
"context": "category",
"contextType": "variable",
"element": "coding",
"variable": "coding"
},
{
"context": "coding",
"contextType": "variable",
"element": "system",
"transform": "copy",
"parameter": [
{
"valueString": "http://smart.who.int/ddcc/CodeSystem/DDCCQRCategoryUsageCodeSystem"
}
]
},
{
"context": "coding",
"contextType": "variable",
"element": "code",
"transform": "copy",
"parameter": [
{
"valueString": "dcc"
}
]
}
]
},
{
"name": "set description",
"source": [
{
"context": "ddcc"
}
],
"target": [
{
"context": "qr",
"contextType": "variable",
"element": "description",
"transform": "copy",
"parameter": [
{
"valueString": "DCC QR code for COVID 19 Vaccine Certificate"
}
]
}
]
},
{
"name": "set DCC QR",
"source": [
{
"context": "ddcc"
}
],
"target": [
{
"context": "entry",
"contextType": "variable",
"element": "resource",
"transform": "copy",
"parameter": [
{
"valueId": "qr"
}
]
}
]
}
]
},
{
"name": "create immunization resource",
"source": [
{
"context": "ddcc",
"element": "vaccination",
"listMode": "first",
"variable": "vaccination"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "entry"
},
{
"context": "entry",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "urn:uuid:"
},
{
"valueId": "iid"
}
]
},
{
"context": "entry",
"contextType": "variable",
"element": "request",
"variable": "request"
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "PUT"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "append",
"parameter": [
{
"valueString": "Immunization/"
},
{
"valueId": "iid"
}
]
},
{
"contextType": "variable",
"variable": "immunization",
"transform": "create",
"parameter": [
{
"valueString": "http://smart.who.int/ddcc/StructureDefinition/DDCCImmunization"
}
]
}
],
"rule": [
{
"name": "setup immunization",
"source": [
{
"context": "ddcc",
"element": "certificate",
"variable": "certificate"
}
],
"dependent": [
{
"name": "DDCCToImmunization",
"variable": [
"vaccination",
"immunization",
"certificate",
"iid",
"pid"
]
}
]
},
{
"name": "set immunization resource",
"source": [
{
"context": "ddcc"
}
],
"target": [
{
"context": "entry",
"contextType": "variable",
"element": "resource",
"transform": "copy",
"parameter": [
{
"valueId": "immunization"
}
]
}
]
}
]
},
{
"name": "create immunization recommendation resource",
"source": [
{
"context": "ddcc",
"element": "vaccination",
"listMode": "first",
"variable": "vaccination"
}
],
"target": [
{
"context": "bundle",
"contextType": "variable",
"element": "entry",
"variable": "entry"
},
{
"context": "entry",
"contextType": "variable",
"element": "fullUrl",
"transform": "append",
"parameter": [
{
"valueString": "urn:uuid:"
},
{
"valueId": "irid"
}
]
},
{
"context": "entry",
"contextType": "variable",
"element": "request",
"variable": "request"
},
{
"context": "request",
"contextType": "variable",
"element": "method",
"transform": "copy",
"parameter": [
{
"valueString": "PUT"
}
]
},
{
"context": "request",
"contextType": "variable",
"element": "url",
"transform": "append",
"parameter": [
{
"valueString": "ImmunizationRecommendation/"
},
{
"valueId": "irid"
}
]
},
{
"contextType": "variable",
"variable": "immrec",
"transform": "create",
"parameter": [
{
"valueString": "http://smart.who.int/ddcc/StructureDefinition/DDCCImmunizationRecommendation"
}
]
}
],
"rule": [
{
"name": "setup immunization recommendation",
"source": [
{
"context": "vaccination"
}
],
"dependent": [
{
"name": "DDCCToImmRec",
"variable": [
"vaccination",
"immrec",
"irid",
"iid",
"pid"
]
}
]
},
{
"name": "set immunization recommendation resource",
"source": [
{
"context": "ddcc"
}
],
"target": [
{
"context": "entry",
"contextType": "variable",
"element": "resource",
"transform": "copy",
"parameter": [
{
"valueId": "immrec"
}
]
}
]
}
]
}
]
}
]
},
{
"name": "DDCCToImmunization",
"typeMode": "none",
"input": [
{
"name": "src",
"mode": "source"
},
{
"name": "immunization",
"type": "DDCCImmunization",
"mode": "target"
},
{
"name": "certificate",
"mode": "source"
},
{
"name": "iid",
"mode": "source"
},
{
"name": "pid",
"mode": "source"
}
],
"rule": [
{
"name": "set id",
"source": [
{
"context": "iid"
}
],
"target": [
{
"context": "immunization",
"contextType": "variable",
"element": "id",
"transform": "copy",
"parameter": [
{
"valueId": "iid"
}
]
}
]
},
{
"name": "set brand extension",
"source": [
{
"context": "src",
"element": "brand",
"variable": "brand"
}
],
"target": [
{
"context": "immunization",
"contextType": "variable",
"element": "extension",
"variable": "ext"
}
],
"rule": [
{
"name": "set brand extension values",
"source": [
{
"context": "brand"
}
],
"target": [
{
"context": "ext",
"contextType": "variable",
"element": "url",
"transform": "copy",
"parameter": [
{
"valueString": "http://smart.who.int/ddcc/StructureDefinition/DDCCVaccineBrand"
}
]
},
{
"context": "ext",
"contextType": "variable",
"element": "value",
"transform": "copy",
"parameter": [
{
"valueId": "brand"
}
]
}
]
}
]
},
{
"name": "set maholder extension",
"source": [
{
"context": "src",
"element": "maholder",
"variable": "maholder"
}
],
"target": [
{
"context": "immunization",
"contextType": "variable",
"element": "extension",
"variable": "ext"
}
],
"rule": [
{
"name": "set MA Holder extension values",
"source": [
{
"context": "maholder"
}
],
"target": [
{
"context": "ext",
"contextType": "variable",
"element": "url",
"transform": "copy",
"parameter": [
{
"valueString": "http://smart.who.int/ddcc/StructureDefinition/DDCCVaccineMarketAuthorization"
}
]
},
{
"context": "ext",
"contextType": "variable",
"element": "value",
"transform": "copy",
"parameter": [
{
"valueId": "maholder"
}
]
}
]
}
]
},
{
"name": "set country extension",
"source": [
{
"context": "src",
"element": "country",
"variable": "country"
}
],
"target": [
{
"context": "immunization",
"contextType": "variable",
"element": "extension",
"variable": "ext"
}
],
"rule": [
{
"name": "set country extension values",
"source": [
{
"context": "country",
"element": "code",
"variable": "code"
}
],
"target": [
{
"context": "ext",
"contextType": "variable",
"element": "url",
"transform": "copy",
"parameter": [
{
"valueString": "http://smart.who.int/ddcc/StructureDefinition/DDCCCountryOfVaccination"
}
]
},
{
"context": "ext",
"contextType": "variable",
"element": "value",
"transform": "copy",
"parameter": [
{
"valueId": "code"
}
]
}
]
}
]
},
{
"name": "set vaccine valid extension",
"source": [
{
"context": "src",
"element": "validFrom",
"variable": "validFrom"
}
],
"target": [
{
"context": "immunization",
"contextType": "variable",
"element": "extension",
"variable": "ext"
}
],
"rule": [
{
"name": "set valid from extension values",
"source": [
{
"context": "validFrom"
}
],
"target": [
{
"context": "ext",
"contextType": "variable",
"element": "url",
"transform": "copy",
"parameter": [
{
"valueString": "http://smart.who.int/ddcc/StructureDefinition/DDCCVaccineValidFrom"
}
]
},
{
"context": "ext",
"contextType": "variable",
"element": "value",
"transform": "copy",
"parameter": [
{
"valueId": "validFrom"
}
]
}
]
}
]
},
{
"name": "set status",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "immunization",
"contextType": "variable",
"element": "status",
"transform": "copy",
"parameter": [
{
"valueString": "completed"
}
]
}
]
},
{
"name": "set vaccine",
"source": [
{
"context": "src",
"element": "vaccine",
"variable": "vaccine"
}
],
"target": [
{
"context": "immunization",
"contextType": "variable",
"element": "vaccineCode",
"variable": "vacCode"
},
{
"context": "vacCode",
"contextType": "variable",
"element": "coding",
"transform": "copy",
"parameter": [
{
"valueId": "vaccine"
}
]
}
]
},
{
"name": "set patient",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "immunization",
"contextType": "variable",
"element": "patient",
"variable": "patient"
},
{
"context": "patient",
"contextType": "variable",
"element": "reference",
"transform": "append",
"parameter": [
{
"valueString": "Patient/"
},
{
"valueId": "pid"
}
]
}
]
},
{
"name": "set manufacturer identifier",
"source": [
{
"context": "src",
"element": "manufacturer",
"variable": "manufacturer"
}
],
"target": [
{
"context": "immunization",
"contextType": "variable",
"element": "manufacturer",
"variable": "tman"
},
{
"context": "tman",
"contextType": "variable",
"element": "identifier",
"variable": "ident"
}
],
"rule": [
{
"name": "set system",
"source": [
{
"context": "manufacturer",
"element": "system",
"variable": "system"
}
],
"target": [
{
"context": "ident",
"contextType": "variable",
"element": "system",
"transform": "copy",
"parameter": [
{
"valueId": "system"
}
]
}
]
},
{
"name": "set value",
"source": [
{
"context": "manufacturer",
"element": "code",
"variable": "code"
}
],
"target": [
{
"context": "ident",
"contextType": "variable",
"element": "value",
"transform": "copy",
"parameter": [
{
"valueId": "code"
}
]
}
]
}
]
},
{
"name": "set lot number",
"source": [
{
"context": "src",
"element": "lot",
"variable": "lot"
}
],
"target": [
{
"context": "immunization",
"contextType": "variable",
"element": "lotNumber",
"transform": "copy",
"parameter": [
{
"valueId": "lot"
}
]
}
]
},
{
"name": "set occurrence date",
"source": [
{
"context": "src",
"element": "date",
"variable": "date"
}
],
"target": [
{
"context": "immunization",
"contextType": "variable",
"element": "occurrence",
"transform": "copy",
"parameter": [
{
"valueId": "date"
}
]
}
]
},
{
"name": "set location",
"source": [
{
"context": "src",
"element": "centre",
"variable": "centre"
}
],
"target": [
{
"context": "immunization",
"contextType": "variable",
"element": "location",
"variable": "location"
}
],
"rule": [
{
"name": "set location display",
"source": [
{
"context": "centre"
}
],
"target": [
{
"context": "location",
"contextType": "variable",
"element": "display",
"transform": "copy",
"parameter": [
{
"valueId": "centre"
}
]
}
]
}
]
},
{
"name": "set practitioner",
"source": [
{
"context": "src",
"element": "practitioner",
"variable": "practitioner"
}
],
"target": [
{
"context": "immunization",
"contextType": "variable",
"element": "performer",
"variable": "performer"
}
],
"rule": [
{
"name": "set performer",
"source": [
{
"context": "practitioner",
"element": "value",
"variable": "hw"
}
],
"target": [
{
"context": "performer",
"contextType": "variable",
"element": "actor",
"variable": "actor"
}
],
"rule": [
{
"name": "set actor",
"source": [
{
"context": "hw"
}
],
"target": [
{
"context": "actor",
"contextType": "variable",
"element": "type",
"transform": "copy",
"parameter": [
{
"valueString": "Practitioner"
}
]
},
{
"context": "actor",
"contextType": "variable",
"element": "identifier",
"variable": "identifier"
}
],
"rule": [
{
"name": "set hw identifier",
"source": [
{
"context": "hw"
}
],
"target": [
{
"context": "identifier",
"contextType": "variable",
"element": "value",
"transform": "copy",
"parameter": [
{
"valueId": "hw"
}
]
}
]
}
]
}
]
}
]
},
{
"name": "set protocolApplied",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "immunization",
"contextType": "variable",
"element": "protocolApplied",
"variable": "protocol"
}
],
"rule": [
{
"name": "set authority",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "protocol",
"contextType": "variable",
"element": "authority",
"variable": "authority"
}
],
"rule": [
{
"name": "set issuer",
"source": [
{
"context": "certificate",
"element": "issuer",
"variable": "issuer"
}
],
"target": [
{
"context": "authority",
"contextType": "variable",
"element": "type",
"transform": "copy",
"parameter": [
{
"valueString": "Organization"
}
]
}
],
"rule": [
{
"name": "set issuer identifier",
"source": [
{
"context": "issuer",
"element": "identifier",
"variable": "pha"
}
],
"target": [
{
"context": "authority",
"contextType": "variable",
"element": "identifier",
"variable": "identifier"
}
],
"rule": [
{
"name": "set pha",
"source": [
{
"context": "pha",
"element": "value",
"variable": "value"
}
],
"target": [
{
"context": "identifier",
"contextType": "variable",
"element": "value",
"transform": "copy",
"parameter": [
{
"valueId": "value"
}
]
}
]
}
]
}
]
}
]
},
{
"name": "set target disease",
"source": [
{
"context": "src",
"element": "disease",
"variable": "disease"
}
],
"target": [
{
"context": "protocol",
"contextType": "variable",
"element": "targetDisease",
"variable": "tdisease"
}
],
"rule": [
{
"name": "set target disease code",
"source": [
{
"context": "disease"
}
],
"target": [
{
"context": "tdisease",
"contextType": "variable",
"element": "coding",
"transform": "copy",
"parameter": [
{
"valueId": "disease"
}
]
}
]
}
]
},
{
"name": "set dose number",
"source": [
{
"context": "src",
"element": "dose",
"variable": "dose"
}
],
"target": [
{
"context": "protocol",
"contextType": "variable",
"element": "doseNumber",
"transform": "copy",
"parameter": [
{
"valueId": "dose"
}
]
}
]
},
{
"name": "set total doses",
"source": [
{
"context": "src",
"element": "totalDoses",
"variable": "totalDoses"
}
],
"target": [
{
"context": "protocol",
"contextType": "variable",
"element": "seriesDoses",
"transform": "copy",
"parameter": [
{
"valueId": "totalDoses"
}
]
}
]
}
]
}
]
},
{
"name": "DDCCToImmRec",
"typeMode": "none",
"input": [
{
"name": "src",
"mode": "source"
},
{
"name": "immrec",
"type": "DDCCImmunizationRecommendation",
"mode": "target"
},
{
"name": "irid",
"mode": "source"
},
{
"name": "iid",
"mode": "source"
},
{
"name": "pid",
"mode": "source"
}
],
"rule": [
{
"name": "set date",
"source": [
{
"context": "src",
"element": "date",
"variable": "date"
}
],
"target": [
{
"context": "immrec",
"contextType": "variable",
"element": "date",
"transform": "copy",
"parameter": [
{
"valueId": "date"
}
]
}
]
},
{
"name": "set patient",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "immrec",
"contextType": "variable",
"element": "patient",
"variable": "patient"
},
{
"context": "patient",
"contextType": "variable",
"element": "reference",
"transform": "append",
"parameter": [
{
"valueString": "Patient/"
},
{
"valueId": "pid"
}
]
}
]
},
{
"name": "set recommendation",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "immrec",
"contextType": "variable",
"element": "recommendation",
"variable": "rec"
}
],
"rule": [
{
"name": "set vaccine code",
"source": [
{
"context": "src",
"element": "vaccine",
"variable": "vaccine"
}
],
"target": [
{
"context": "rec",
"contextType": "variable",
"element": "vaccineCode",
"variable": "vaccineCode"
}
],
"rule": [
{
"name": "set vaccine code coding",
"source": [
{
"context": "vaccine"
}
],
"target": [
{
"context": "vaccineCode",
"contextType": "variable",
"element": "coding",
"transform": "copy",
"parameter": [
{
"valueId": "vaccine"
}
]
}
]
}
]
},
{
"name": "set target disease",
"source": [
{
"context": "src",
"element": "disease",
"variable": "disease"
}
],
"target": [
{
"context": "rec",
"contextType": "variable",
"element": "targetDisease",
"variable": "targetDisease"
}
],
"rule": [
{
"name": "set target disease coding",
"source": [
{
"context": "disease"
}
],
"target": [
{
"context": "targetDisease",
"contextType": "variable",
"element": "coding",
"transform": "copy",
"parameter": [
{
"valueId": "disease"
}
]
}
]
}
]
},
{
"name": "set forecast status",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "rec",
"contextType": "variable",
"element": "forecastStatus",
"variable": "forecast"
}
],
"rule": [
{
"name": "set forecast status coding",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "forecast",
"contextType": "variable",
"element": "coding",
"variable": "coding"
}
],
"rule": [
{
"name": "set forecast system",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "system",
"transform": "copy",
"parameter": [
{
"valueString": "http://terminology.hl7.org/2.1.0/CodeSystem-immunization-recommendation-status.html"
}
]
}
]
},
{
"name": "set forecast code",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "code",
"transform": "copy",
"parameter": [
{
"valueString": "due"
}
]
}
]
}
]
}
]
},
{
"name": "set date criterion",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "rec",
"contextType": "variable",
"element": "dateCriterion",
"variable": "due_date"
}
],
"rule": [
{
"name": "set due date code",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "due_date",
"contextType": "variable",
"element": "code",
"variable": "code"
}
],
"rule": [
{
"name": "set due date code coding",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "code",
"contextType": "variable",
"element": "coding",
"variable": "coding"
}
],
"rule": [
{
"name": "set due date code system",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "system",
"transform": "copy",
"parameter": [
{
"valueString": "http://loinc.org"
}
]
}
]
},
{
"name": "set due date code code",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "coding",
"contextType": "variable",
"element": "code",
"transform": "copy",
"parameter": [
{
"valueString": "30980-7"
}
]
}
]
}
]
}
]
},
{
"name": "set due date value",
"source": [
{
"context": "src",
"element": "nextDose",
"variable": "nextDose"
}
],
"target": [
{
"context": "due_date",
"contextType": "variable",
"element": "value",
"transform": "copy",
"parameter": [
{
"valueId": "nextDose"
}
]
}
]
}
]
},
{
"name": "set dose number",
"source": [
{
"context": "src",
"element": "dose",
"variable": "dose"
}
],
"target": [
{
"context": "rec",
"contextType": "variable",
"element": "doseNumber",
"transform": "evaluate",
"parameter": [
{
"valueString": "dose.toInteger() + 1"
}
]
}
]
},
{
"name": "set total doses",
"source": [
{
"context": "src",
"element": "totalDoses",
"variable": "totalDoses"
}
],
"target": [
{
"context": "rec",
"contextType": "variable",
"element": "seriesDoses",
"transform": "copy",
"parameter": [
{
"valueId": "totalDoses"
}
]
}
]
},
{
"name": "set supporting immunization",
"source": [
{
"context": "src"
}
],
"target": [
{
"context": "rec",
"contextType": "variable",
"element": "supportingImmunization",
"variable": "imm"
},
{
"context": "imm",
"contextType": "variable",
"element": "reference",
"transform": "append",
"parameter": [
{
"valueString": "Immunization/"
},
{
"valueId": "iid"
}
]
}
]
}
]
}
]
}
]
}