ICAOtoDDCC
type: StructureMap
node role: treeRoot
id:
  v: ICAOtoDDCC
text:
  status:
    v: generated
  div: Generated Narrative: StructureMap ICAOtoDDCC #xD; map "http://smart.who.int/ddcc/StructureMap/CertICAOtoDDCC" = "ICAOtoDDCC"#xD; #xD; uses "http://smart.who.int/ddcc/StructureDefinition/CertICAO" alias IJson as source#xD; uses "http://hl7.org/fhir/ig/icao/StructureDefinition/Data" alias Data as source#xD; uses "http://hl7.org/fhir/ig/icao/StructureDefinition/Header" alias Header as source#xD; uses "http://hl7.org/fhir/ig/icao/StructureDefinition/Message" alias Message as source#xD; uses "http://hl7.org/fhir/ig/icao/StructureDefinition/Patient" alias Patient as source#xD; uses "http://hl7.org/fhir/ig/icao/StructureDefinition/VaccinationEvent" alias VaccinationEvent as source#xD; uses "http://hl7.org/fhir/ig/icao/StructureDefinition/VaccinationDetails" alias VaccinationDetails as source#xD; uses "http://hl7.org/fhir/ig/icao/StructureDefinition/ServiceProvider" alias ServiceProvider as source#xD; uses "http://hl7.org/fhir/ig/icao/StructureDefinition/Contact" alias Contact as source#xD; uses "http://hl7.org/fhir/ig/icao/StructureDefinition/DateTimeTestReport" alias DateTimeTestReport as source#xD; uses "http://hl7.org/fhir/ig/icao/StructureDefinition/TestResult" alias TestResult as source#xD; uses "http://hl7.org/fhir/ig/icao/StructureDefinition/Signature" alias Signature as source#xD; uses "http://hl7.org/fhir/StructureDefinition/Bundle" alias Bundle as target#xD; #xD; group ICAOtoDDCC(source src : IJson, target bundle : Bundle) {#xD; src.data as data -> bundle then ExtractData(data, bundle) "Base Rule";#xD; }#xD; #xD; group ExtractData(source src : Data, target bundle : Bundle) {#xD; src -> bundle.type = 'transaction' "set bundle type";#xD; src -> bundle, bundle.entry as entry, entry.resource = create('Composition') as comp then {#xD; src -> bundle then ExtractCert(src, bundle, comp) "Certificate";#xD; src -> bundle then ExtractComposition(src, comp) "Composition";#xD; } "Patient and Composition Create";#xD; }#xD; #xD; group ExtractCert(source src : Data, target bundl…
url:
  v: http://smart.who.int/ddcc/StructureMap/CertICAOtoDDCC
version:
  v: 1.0.0
name:
  v: ICAOtoDDCC
status:
  v: draft
date:
  v: 2025-09-23T10:33:16+00:00
publisher:
  v: WHO
contact:
  name:
    v: WHO
  telecom:
    system:
      v: url
    value:
      v: http://who.int
jurisdiction:
  coding:
    system:
      v: http://unstats.un.org/unsd/methods/m49/m49.htm
    code:
      v: 001
structure:
  url:
    v: http://smart.who.int/ddcc/StructureDefinition/CertICAO
    link: http://smart.who.int/ddcc/StructureDefinition/CertICAO
  mode:
    v: source
  alias:
    v: IJson
structure:
  url:
    v: http://hl7.org/fhir/ig/icao/StructureDefinition/Data
    link: http://hl7.org/fhir/ig/icao/StructureDefinition/Data
  mode:
    v: source
  alias:
    v: Data
structure:
  url:
    v: http://hl7.org/fhir/ig/icao/StructureDefinition/Header
    link: http://hl7.org/fhir/ig/icao/StructureDefinition/Header
  mode:
    v: source
  alias:
    v: Header
structure:
  url:
    v: http://hl7.org/fhir/ig/icao/StructureDefinition/Message
    link: http://hl7.org/fhir/ig/icao/StructureDefinition/Message
  mode:
    v: source
  alias:
    v: Message
structure:
  url:
    v: http://hl7.org/fhir/ig/icao/StructureDefinition/Patient
    link: http://hl7.org/fhir/ig/icao/StructureDefinition/Patient
  mode:
    v: source
  alias:
    v: Patient
structure:
  url:
    v: http://hl7.org/fhir/ig/icao/StructureDefinition/VaccinationEvent
    link: http://hl7.org/fhir/ig/icao/StructureDefinition/VaccinationEvent
  mode:
    v: source
  alias:
    v: VaccinationEvent
structure:
  url:
    v: http://hl7.org/fhir/ig/icao/StructureDefinition/VaccinationDetails
    link: http://hl7.org/fhir/ig/icao/StructureDefinition/VaccinationDetails
  mode:
    v: source
  alias:
    v: VaccinationDetails
structure:
  url:
    v: http://hl7.org/fhir/ig/icao/StructureDefinition/ServiceProvider
    link: http://hl7.org/fhir/ig/icao/StructureDefinition/ServiceProvider
  mode:
    v: source
  alias:
    v: ServiceProvider
structure:
  url:
    v: http://hl7.org/fhir/ig/icao/StructureDefinition/Contact
    link: http://hl7.org/fhir/ig/icao/StructureDefinition/Contact
  mode:
    v: source
  alias:
    v: Contact
structure:
  url:
    v: http://hl7.org/fhir/ig/icao/StructureDefinition/DateTimeTestReport
    link: http://hl7.org/fhir/ig/icao/StructureDefinition/DateTimeTestReport
  mode:
    v: source
  alias:
    v: DateTimeTestReport
structure:
  url:
    v: http://hl7.org/fhir/ig/icao/StructureDefinition/TestResult
    link: http://hl7.org/fhir/ig/icao/StructureDefinition/TestResult
  mode:
    v: source
  alias:
    v: TestResult
structure:
  url:
    v: http://hl7.org/fhir/ig/icao/StructureDefinition/Signature
    link: http://hl7.org/fhir/ig/icao/StructureDefinition/Signature
  mode:
    v: source
  alias:
    v: Signature
structure:
  url:
    v: http://hl7.org/fhir/StructureDefinition/Bundle
    link: http://hl7.org/fhir/StructureDefinition/Bundle
  mode:
    v: target
  alias:
    v: Bundle
group:
  name:
    v: ICAOtoDDCC
  type mode:
    v: none
  input:
    name:
      v: src
    type:
      v: IJson
    mode:
      v: source
  input:
    name:
      v: bundle
    type:
      v: Bundle
    mode:
      v: target
  rule:
    name:
      v: Base Rule
    source:
      context:
        v: src
      element:
        v: data
      variable:
        v: data
    target:
      context:
        v: bundle
      context type:
        v: variable
    dependent:
      name:
        v: ExtractData
      variable:
        v: data
      variable:
        v: bundle
group:
  name:
    v: ExtractData
  type mode:
    v: none
  input:
    name:
      v: src
    type:
      v: Data
    mode:
      v: source
  input:
    name:
      v: bundle
    type:
      v: Bundle
    mode:
      v: target
  rule:
    name:
      v: set bundle type
    source:
      context:
        v: src

context:
  v: bundle
context type:
  v: variable
element:
  v: type
transform:
  v: copy
parameter:
  value: string
    v: transaction

name:
  v: Patient and Composition Create
source:
  context:
    v: src
target:
  context:
    v: bundle
  context type:
    v: variable
target:
  context:
    v: bundle
  context type:
    v: variable
  element:
    v: entry
  variable:
    v: entry
target:
  context:
    v: entry
  context type:
    v: variable
  element:
    v: resource
  variable:
    v: comp
  transform:
    v: create
  parameter:
    value: string
      v: Composition
rule:
  name:
    v: Certificate
  source:
    context:
      v: src
  target:
    context:
      v: bundle
    context type:
      v: variable
  dependent:
    name:
      v: ExtractCert
    variable:
      v: src
    variable:
      v: bundle
    variable:
      v: comp
rule:
  name:
    v: Composition
  source:
    context:
      v: src
  target:
    context:
      v: bundle
    context type:
      v: variable
  dependent:
    name:
      v: ExtractComposition
    variable:
      v: src
    variable:
      v: comp

name:
  v: ExtractCert
type mode:
  v: none
input:
  name:
    v: src
  type:
    v: Data
  mode:
    v: source
input:
  name:
    v: bundle
  type:
    v: Bundle
  mode:
    v: target
input:
  name:
    v: comp
  type:
    v: Composition
  mode:
    v: target
rule:
  name:
    v: Patient Create
  source:
    context:
      v: src
  target:
    context:
      v: comp
    context type:
      v: variable
  target:
    context:
      v: bundle
    context type:
      v: variable
    element:
      v: entry
    variable:
      v: entry
  target:
    context:
      v: entry
    context type:
      v: variable
    element:
      v: resource
    variable:
      v: patient
    transform:
      v: create
    parameter:
      value: string
        v: Patient
  target:
    context type:
      v: variable
    variable:
      v: pid
    transform:
      v: uuid
  rule:
    name:
      v: extract patient
    source:
      context:
        v: src
      element:
        v: msg
      variable:
        v: msg
    target:
      context:
        v: patient
      context type:
        v: variable
    dependent:
      name:
        v: ExtractPatientFromMsg
      variable:
        v: msg
      variable:
        v: pid
      variable:
        v: patient
  rule:
    name:
      v: Composition.Set patient
    source:
      context:
        v: src
    target:
      context:
        v: comp
      context type:
        v: variable
      element:
        v: subject
      variable:
        v: subj
    target:
      context:
        v: subj
      context type:
        v: variable
      element:
        v: reference
      transform:
        v: append
      parameter:
        value: string
      parameter:
        value: id
  rule:
    name:
      v: Immunization Create
    source:
      context:
        v: src
      element:
        v: msg
      variable:
        v: msg
      condition:
        v: src.hdr.t = 'icao.vacc'
    target:
      context:
        v: comp
      context type:
        v: variable
    target:
      context:
        v: comp
      context type:
        v: variable
      element:
        v: section
      variable:
        v: section
    rule:
      name:
        v: add section
    rule:
      name:
        v: Imminization Create msg

string
v: Patient/

id
v: pid

v: src

v: section

v: variable

v: code

v: code

v: code

v: variable

v: coding

v: coding

v: coding

v: variable

v: system

v: copy

v: coding

v: variable

v: code

v: copy

value: string
  v: 11369-6

v: coding

v: variable

v: display

v: copy

value: string
  v: History of Immunization Narrative

v: msg

v: ve

v: vac

v: comp

v: variable

v: Imminization Create vac

context:
  v: vac
element:
  v: vd
variable:
  v: vacDetails

context:
  v: comp
context type:
  v: variable

context:
  v: bundle
context type:
  v: variable
element:
  v: entry
variable:
  v: entryImm

context:
  v: entryImm
context type:
  v: variable
element:
  v: resource
variable:
  v: immunization
transform:
  v: create
parameter:
  value: string
    v: Immunization

context type:
  v: variable
variable:
  v: iid
transform:
  v: uuid

context:
  v: bundle
context type:
  v: variable
element:
  v: entry
variable:
  v: entryOrg

context:
  v: entryOrg
context type:
  v: variable
element:
  v: resource
variable:
  v: org
transform:
  v: create
parameter:
  value: string
    v: Organization

context type:
  v: variable
variable:
  v: oid
transform:
  v: uuid

name:
  v: Immunization ID
source:
  context:
    v: src
target:
  context:
    v: immunization
  context type:
    v: variable
  element:
    v: id
  transform:
    v: copy
  parameter:
    value: id
      v: iid

name:
  v: Organization ID
source:
  context:
    v: src
target:
  context:
    v: org
  context type:
    v: variable
  element:
    v: id
  transform:
    v: copy
  parameter:
    value: id
      v: oid

name:
  v: add author immunization to section
source:
  context:
    v: src
target:
  context:
    v: section
  context type:
    v: variable
  element:
    v: entry
  variable:
    v: entry
target:
  context:
    v: entry
  context type:
    v: variable
  element:
    v: reference
  transform:
    v: append
  parameter:
    value: string
      v: Immunization/
  parameter:
    value: id
      v: iid
target:
  context:
    v: section
  context type:
    v: variable
  element:
    v: author
  variable:
    v: author
target:
  context:
    v: author
  context type:
    v: variable
  element:
    v: reference
  transform:
    v: append
  parameter:
    value: string
      v: Organization/
  parameter:
    value: id
      v: oid

name:
  v: Composition.Set org
source:
  context:
    v: src
target:
  context:
    v: comp
  context type:
    v: variable
  element:
    v: author
  variable:
    v: author
target:
  context:
    v: author
  context type:
    v: variable
  element:
    v: reference
  transform:
    v: append
  parameter:
    value: string
      v: Organization/
  parameter:
    value: id
      v: oid

name:
  v: Immunization.Set patient
source:
  context:
    v: src
target:
  context:
    v: immunization
  context type:
    v: variable
  element:
    v: patient
  variable:
    v: subj
target:
  context:
    v: subj
  context type:
    v: variable
  element:
    v: reference
  transform:
    v: append
  parameter:
    value: string
      v: Patient/
  parameter:
    value: id
      v: pid

name:
  v: Set Organization name
source:
  context:
    v: vacDetails
  element:
    v: adm
  variable:
    v: adm
target:
  context:
    v: org
  context type:
    v: variable
  element:
    v: name
  transform:
    v: copy
  parameter:
    value: id
      v: adm

name:
  v: extract vaccine info
source:
  context:
    v: src
target:
  context:
    v: bundle
  context type:
    v: variable
dependent:
  name:
    v: ExtractVaccine
  variable:
    v: vac
  variable:
    v: vacDetails
  variable:
    v: oid
  variable:
    v: immunization

name:
  v: ExtractVaccine
type mode:
  v: none
input:
  name:
    v: vac
  type:
    v: VaccinationEvent
  mode:
    v: source
input:
  name:
    v: vacDetails
  type:
    v: VaccinationDetails
  mode:
    v: source
input:
  name:
    v: oid
  mode:
    v: source
input:
  name:
    v: immunization
  type:
    v: Immunization
  mode:
    v: target
rule:
  name:
    v: set occurrence date
  source:
    context:
      v: vacDetails
    element:
      v: dvc
    variable:
      v: dvc
  target:
    context:
      v: immunization
    context type:
      v: variable
    element:
      v: occurrence
    transform:
      v: copy
    parameter:
      value: id
        v: dvc
rule:
  name:
    v: set vaccine coding
  source:
    context:
      v: vac
    element:
      v: des
    variable:
      v: des
  target:
    context:
      v: immunization
    context type:
      v: variable
    element:
      v: vaccineCode
    variable:
      v: type
  target:
    context:
      v: type
    context type:
      v: variable
    element:
      v: coding
    variable:
      v: coding
  target:
    context:
      v: coding
    context type:
      v: variable
    element:
      v: system
    transform:
      v: copy
    parameter:
      value: string
        v: http://hl7.org/fhir/sid/icd-11
  target:
    context:
      v: coding
    context type:
      v: variable
    element:
      v: code
    transform:
      v: copy
    parameter:
      value: id
        v: des
rule:
  name:
    v: set brand
  source:
    context:
      v: vac
    element:
      v: nam
    variable:
      v: nam
  target:
    context:
      v: immunization
    context type:
      v: variable
    element:
      v: extension
    variable:
      v: ext
  target:
    context:
      v: ext
    context type:
      v: variable
    element:
      v: value
    variable:
      v: coding
    transform:
      v: create
    parameter:
      value: string
        v: Coding
  target:
    context:
      v: ext
    context type:
      v: variable
    element:
      v: url
    transform:
      v: copy
    parameter:
      value: string
        v: https://smart.who.int/ddcc/StructureDefinition/DDCCVaccineBrand
  target:
    context:
      v: coding
    context type:
      v: variable
    element:
      v: code
    transform:
      v: copy
    parameter:
      value: id
        v: nam
rule:
  name:
    v: set country
  source:
    context:
      v: vacDetails
    element:
      v: ctr
    variable:
      v: co
  target:
    context:
      v: immunization
    context type:
      v: variable
    element:
      v: extension
    variable:
      v: ext
  target:
    context:
      v: ext
    context type:
      v: variable
    element:
      v: value
    variable:
      v: coding
    transform:
      v: create
    parameter:
      value: string
        v: Coding
  target:
    context:
      v: ext
    context type:
      v: variable
    element:
      v: url
    transform:
      v: copy

context:
  v: coding
context type:
  v: variable
element:
  v: code
transform:
  v: copy
parameter:
  value: id
    v: co

context:
  v: coding
context type:
  v: variable
element:
  v: system
transform:
  v: copy
parameter:
  value: string
    v: urn:iso:std:iso:3166

name:
  v: set lot number
source:
  context:
    v: vacDetails
  element:
    v: lot
  variable:
    v: lot
target:
  context:
    v: immunization
  context type:
    v: variable
  element:
    v: lotNumber
  transform:
    v: copy
  parameter:
    value: id
      v: lot

name:
  v: set protocol applied vac
source:
  context:
    v: vac
target:
  context:
    v: immunization
  context type:
    v: variable
  element:
    v: protocolApplied
  variable:
    v: protocolApplied
rule:
  name:
    v: set protocol applied vacdetails
  source:
    context:
      v: vacDetails
  target:
    context:
      v: protocolApplied
    context type:
      v: variable
  rule:
    name:
      v: set protocol applied
    source:
      context:
        v: vac
    target:
      context:
        v: protocolApplied
      context type:
        v: variable
    dependent:
      name:
        v: ExtractProtocolApplied
      variable:
        v: vac
      variable:
        v: vacDetails
      variable:
        v: oid
      variable:
        v: protocolApplied

name:
  v: ExtractProtocolApplied
type mode:
  v: none
input:
  name:
    v: vac
  type:
    v: VaccinationEvent
  mode:
    v: source
input:
  name:
    v: vacDetails
  type:
    v: VaccinationDetails
  mode:
    v: source
input:
  name:
    v: oid
  mode:
    v: source
input:
  name:
    v: protocol
  type:
    v: ProtocolApplied
  mode:
    v: target
rule:
  name:
    v: set dose number
  source:
    context:
      v: vacDetails
    element:
      v: seq
    variable:
      v: seq
  target:
    context:
      v: protocol
    context type:
      v: variable
    element:
      v: doseNumber
    transform:
      v: copy
    parameter:
      value: id
        v: seq
rule:
  name:
    v: set target disease type
  source:
    context:
      v: vac
    element:
      v: dis
    variable:
      v: dis
  target:
    context:
      v: protocol
    context type:
      v: variable
    element:
      v: targetDisease
    variable:
      v: codeable
  target:
    context:
      v: codeable
    context type:
      v: variable
    element:
      v: coding
    variable:
      v: coding
  target:
    context:
      v: coding
    context type:
      v: variable
    element:
      v: system
    transform:
      v: copy
    parameter:
      value: string
        v: http://hl7.org/fhir/sid/icd-11
  target:
    context:
      v: coding
    context type:
      v: variable
    element:
      v: code
    transform:
      v: copy
    parameter:
      value: id
        v: dis
rule:
  name:
    v: set authority
  source:
    context:
      v: oid
  target:
    context:
      v: protocol
    context type:
      v: variable
    element:
      v: authority
    variable:
      v: authority
  target:
    context:
      v: authority
    context type:
      v: variable
    element:
      v: reference
    transform:
      v: append
    parameter:
      value: string
        v: Organization/
    parameter:
      value: id
        v: oid

name:
  v: ExtractPatientFromMsg
type mode:
  v: none
input:
  name:
    v: src
  type:
    v: Message
  mode:
    v: source
input:
  name:
    v: pid
  mode:
    v: source
input:
  name:
    v: patient
  type:
    v: Patient
  mode:
    v: target
rule:
  name:
    v: extract patient from msg
  source:
    context:
      v: src
    element:
      v: pid
    variable:
      v: patData
  target:
    context:
      v: patient
    context type:
      v: variable
  dependent:
    name:
      v: ExtractPatient
    variable:
      v: patData
    variable:
      v: pid
    variable:
      v: patient

name:
  v: ExtractPatient
type mode:
  v: none
input:
  name:
    v: src
  type:
    v: Patient
  mode:
    v: source
input:
  name:
    v: pid
  mode:
    v: source
input:
  name:
    v: patient
  type:
    v: Patient
  mode:
    v: target
rule:
  name:
    v: Patient ID
  source:
    context:
      v: pid
  target:
    context:
      v: patient
    context type:
      v: variable
    element:
      v: id
    transform:
      v: copy
    parameter:
      value: id
        v: pid
rule:
  name:
    v: set priorityIdentifier
  source:
    context:
      v: src
    element:
      v: i
    variable:
      v: priorityIdentifier
  target:
    context:
      v: patient
    context type:
      v: variable
    element:
      v: identifier
    variable:
      v: identif
  target:
    context:
      v: identif
    context type:
      v: variable
    element:
      v: value
    transform:
      v: copy
    parameter:
      value: id
        v: priorityIdentifier
rule:
  name:
    v: set additionalIdentifier
  source:
    context:
      v: src
    element:
      v: ai
    variable:
      v: additionalIdentifier
  target:
    context:
      v: patient
    context type:
      v: variable
    element:
      v: identifier
    variable:
      v: identif
  target:
    context:
      v: identif
    context type:
      v: variable
    element:
      v: value
    transform:
      v: copy
    parameter:
      value: id
        v: additionalIdentifier
rule:
  name:
    v: Document Type Number
  source:
    context:
      v: src
  target:
    context:
      v: patient
    context type:
      v: variable
    element:
      v: identifier
    variable:
      v: identif
  dependent:
    name:
      v: ExtractDocumentTypeNumber
    variable:
      v: src
    variable:
      v: identif
rule:
  name:
    v: Patient Name
  source:
    context:
      v: src
    element:
      v: n
    variable:
      v: name
  target:
    context:
      v: patient
    context type:
      v: variable
    element:
      v: name
    variable:
      v: humanName
    transform:
      v: create
    parameter:
      value: string
        v: HumanName
  target:
    context:
      v: humanName
    context type:
      v: variable
    element:
      v: text
    transform:
      v: copy
    parameter:
      value: id
        v: name
rule:
  name:
    v: Patient Gender
  source:
    context:
      v: src
    element:
      v: sex
    variable:
      v: gender
  target:
    context:
      v: patient
    context type:
      v: variable
  dependent:
    name:
      v: ExtractGender
    variable:
      v: gender
    variable:
      v: patient
rule:
  name:
    v: set birthDate
  source:
    context:
      v: src
    element:
      v: dob
    variable:
      v: birthDate
  target:
    context:
      v: patient
    context type:
      v: variable
    element:
      v: birthDate
    transform:
      v: copy

value: id
  v: birthDate

name:
  v: ExtractGender
type mode:
  v: none
input:
  name:
    v: gender
  mode:
    v: source
input:
  name:
    v: patient
  type:
    v: Patient
  mode:
    v: target
rule:
  name:
    v: set male
  source:
    context:
      v: gender
    condition:
      v: (gender = 'M')
  target:
    context:
      v: patient
    context type:
      v: variable
    element:
      v: gender
    transform:
      v: copy
    parameter:
      value: string
        v: male
rule:
  name:
    v: set female
  source:
    context:
      v: gender
    condition:
      v: (gender = 'F')
  target:
    context:
      v: patient
    context type:
      v: variable
    element:
      v: gender
    transform:
      v: copy
    parameter:
      value: string
        v: female

name:
  v: ExtractDocumentTypeNumber
type mode:
  v: none
input:
  name:
    v: src
  type:
    v: Patient
  mode:
    v: source
input:
  name:
    v: identif
  type:
    v: Identifier
  mode:
    v: target
rule:
  name:
    v: set doc number
  source:
    context:
      v: src
    element:
      v: dn
    variable:
      v: docNumber
  target:
    context:
      v: identif
    context type:
      v: variable
    element:
      v: value
    transform:
      v: copy
    parameter:
      value: id
        v: docNumber
rule:
  name:
    v: set doc number P
  source:
    context:
      v: src
    element:
      v: dt
    variable:
      v: docType
    condition:
      v: (docType = 'P')
  target:
    context:
      v: identif
    context type:
      v: variable
    element:
      v: system
    transform:
      v: copy
    parameter:
      value: string
        v: PPN
  documentation:
    v: P – Passport (Doc 9303-4)
rule:
  name:
    v: set doc number A
  source:
    context:
      v: src
    element:
      v: dt
    variable:
      v: docType
    condition:
      v: (docType = 'A')
  target:
    context:
      v: identif
    context type:
      v: variable
    element:
      v: system
    transform:
      v: copy
    parameter:
      value: string
        v: DL
  documentation:
    v: A – ID Card (Doc 9303-5)
rule:
  name:
    v: set doc number C
  source:
    context:
      v: src
    element:
      v: dt
    variable:
      v: docType
    condition:
      v: (docType = 'C')
  target:
    context:
      v: identif
    context type:
      v: variable
    element:
      v: system
    transform:
      v: copy
    parameter:
      value: string
        v: DL
  documentation:
    v: C – ID Card (Doc 9303-5)
rule:
  name:
    v: set doc number I
  source:
    context:
      v: src
    element:
      v: dt
    variable:
      v: docType
    condition:
      v: (docType = 'I')
  target:
    context:
      v: identif
    context type:
      v: variable
    element:
      v: system
    transform:
      v: copy
    parameter:
      value: string
        v: DL
  documentation:
    v: I – ID Card Doc 9303-5)
rule:
  name:
    v: set doc number AC
  source:
    context:
      v: src
    element:
      v: dt
    variable:
      v: docType
    condition:
      v: (docType = 'AC')
  target:
    context:
      v: identif
    context type:
      v: variable
    element:
      v: system
    transform:
      v: copy
    parameter:
      value: string
        v: EN
  documentation:
    v: AC - Crew Member Certificate (Doc 9303-5)
rule:
  name:
    v: set doc number V
  source:
    context:
      v: src
    element:
      v: dt
    variable:
      v: docType
    condition:
      v: (docType = 'V')
  target:
    context:
      v: identif
    context type:
      v: variable
    element:
      v: system
    transform:
      v: copy
    parameter:
      value: string
        v: ACSN
  documentation:
    v: V – Visa (Doc 9303-7)
rule:
  name:
    v: set doc number D
  source:
    context:
      v: src

v: dt

v: docType

v: (docType = 'D')

context:
  v: identif
context type:
  v: variable
element:
  v: system
transform:
  v: copy
parameter:
  value: string
    v: DL

v: D – Driving License (ISO18013-1)

name:
  v: ExtractComposition
type mode:
  v: none
input:
  name:
    v: src
  type:
    v: Data
  mode:
    v: source
input:
  name:
    v: composition
  type:
    v: Composition
  mode:
    v: target
rule:
  name:
    v: set comp vaccine identifier parent
  source:
    context:
      v: src
    element:
      v: msg
    variable:
      v: msg
  target:
    context:
      v: composition
    context type:
      v: variable
  rule:
    name:
      v: set comp test identifier
    source:
      context:
        v: msg
      element:
        v: ucti
      variable:
        v: ucti
    target:
      context:
        v: composition
      context type:
        v: variable
      element:
        v: identifier
      variable:
        v: identif
    target:
      context:
        v: identif
      context type:
        v: variable
      element:
        v: value
      transform:
        v: copy
      parameter:
        value: id
rule:
  name:
    v: set comp vaccine identifier parent
  source:
    context:
      v: src
    element:
      v: msg
    variable:
      v: msg
  target:
    context:
      v: composition
    context type:
      v: variable
  rule:
    name:
      v: set comp vaccine identifier
    source:
      context:
        v: msg
      element:
        v: uvci
      variable:
        v: uvci
    target:
      context:
        v: composition
      context type:
        v: variable
      element:
        v: identifier
      variable:
        v: identif
    target:
      context:
        v: identif
      context type:
        v: variable
      element:
        v: value
      transform:
        v: copy
      parameter:
        value: id
rule:
  name:
    v: Title
  source:
    context:
      v: src
  target:
    context:
      v: composition
    context type:
      v: variable
    element:
      v: title
    transform:
      v: copy
    parameter:
      value: string
        v: International Certificate of Vaccination or Prophylaxis
rule:
  name:
    v: set category
  source:
    context:
      v: src
  target:
    context:
      v: composition
    context type:
      v: variable
    element:
      v: category
    variable:
      v: category
  target:
    context:
      v: category
    context type:
      v: variable
    element:
      v: coding
    variable:
      v: coding
  rule:
    name:
      v: Category
    source:
      context:
        v: src
    target:
      context:
        v: coding
      context type:
        v: variable
      element:
        v: code
      transform:
        v: copy
      parameter:
        value: string
rule:
  name:
    v: set type
  source:
    context:
      v: src
  target:
    context:
      v: composition
    context type:
      v: variable
    element:
      v: type
    variable:
      v: type
  target:
    context:
      v: type
    context type:
      v: variable
    element:
      v: coding
    variable:
      v: coding
  rule:
    name:
      v: set type coding
    source:
      context:
        v: src
    target:
      context:
        v: coding
      context type:
        v: variable
      element:
        v: system

id
v: ucti

id
v: uvci

string
v: ddcc-vs

v: copy

context:
  v: coding
context type:
  v: variable
element:
  v: code
transform:
  v: copy
parameter:
  value: string
    v: 82593-5

context:
  v: coding
context type:
  v: variable
element:
  v: display
transform:
  v: copy
parameter:
  value: string
    v: Immunization summary report