WHO Digital Documentation of COVID-19 Certificates (DDCC)
1.0.0 - CI Build International flag

This is the continuous build for version 1.0.0. This version is based on the current content of https://github.com/WorldHealthOrganization/ddcc and changes regularly.

: CoreDataSetLibrary - JSON Representation

Draft as of 2024-01-19

Raw json | Download


{
  "resourceType" : "StructureMap",
  "id" : "CoreDataSetLibrary",
  "meta" : {
    "versionId" : "1",
    "lastUpdated" : "2022-03-01T19:17:52.081+00:00"
  },
  "text" : {
    "status" : "generated",
    "div" : "<div xmlns=\"http://www.w3.org/1999/xhtml\"><pre>map &quot;http://smart.who.int/ddcc/StructureMap/CoreDataSetLibrary&quot; = &quot;CoreDataSetLibrary&quot;\r\n\r\n\r\nuses &quot;http://smart.who.int/ddcc/StructureDefinition/DDCCCoreDataSet.VS&quot; alias DDCCVS as source\r\nuses &quot;http://hl7.org/fhir/StructureDefinition/Patient&quot; alias Patient as target\r\nuses &quot;http://smart.who.int/ddcc/StructureDefinition/DDCCPatient&quot; alias DDCCPatient as produced\r\nuses &quot;http://smart.who.int/ddcc/StructureDefinition/DDCCDocumentReferenceQR&quot; alias DDCCDocRefQR as produced\r\nuses &quot;http://smart.who.int/ddcc/StructureDefinition/DDCCComposition&quot; alias DDCCComposition as produced\r\n\r\ngroup DDCCToPatient(source src : DDCCVS, target patient : DDCCPatient, source pid) {\r\n  pid -&gt; patient.id = pid &quot;set id&quot;;\r\n  src.name as name -&gt; patient.name as tName then {\r\n    name -&gt; tName.text = name &quot;set name&quot;;\r\n  } &quot;set full name&quot;;\r\n  src.birthDate as birthDate -&gt; patient.birthDate = birthDate &quot;set birthDate&quot;;\r\n  src.identifier as identifier -&gt; patient.identifier = identifier &quot;set identifier&quot;;\r\n}\r\n\r\ngroup DDCCToDocumentReference(source src : DDCCVS, target ref : DDCCDocRefQR, source id, source pid) {\r\n  id -&gt; ref.id = id &quot;set id&quot;;\r\n  src -&gt; ref.status = 'current' &quot;set status&quot;;\r\n  src -&gt;  ref.subject as patient,  patient.reference = append('Patient/', pid) &quot;set patient&quot;;\r\n  src -&gt; ref.content as content then {\r\n    src -&gt;  content.attachment as attachment,  attachment.contentType = 'application/json' &quot;set contentType&quot;;\r\n    src -&gt;  content.format as format,  format.system = 'http://smart.who.int/ddcc/CodeSystem/DDCC-QR-Format-CodeSystem',  format.code = 'serialized' &quot;set format code&quot;;\r\n  } &quot;set serialized content&quot;;\r\n  src -&gt; ref.content as content then {\r\n    src -&gt;  content.attachment as attachment,  attachment.contentType = 'image/png' &quot;set contentType&quot;;\r\n    src -&gt;  content.format as format,  format.system = 'http://smart.who.int/ddcc/CodeSystem/DDCC-QR-Format-CodeSystem',  format.code = 'image' &quot;set format code&quot;;\r\n  } &quot;set image content&quot;;\r\n  src -&gt; ref.content as content then {\r\n    src -&gt;  content.attachment as attachment,  attachment.contentType = 'application/pdf' &quot;set contentType&quot;;\r\n    src -&gt;  content.format as format,  format.system = 'http://smart.who.int/ddcc/CodeSystem/DDCC-QR-Format-CodeSystem',  format.code = 'pdf' &quot;set format code&quot;;\r\n  } &quot;set pdf content&quot;;\r\n}\r\n\r\ngroup DDCCToComposition(source src : DDCCVS, target comp : DDCCComposition, source id, source pid) {\r\n  id -&gt; comp.id = id &quot;set id&quot;;\r\n  src -&gt;  comp.subject as patient,  patient.reference = append('Patient/', pid) &quot;set patient&quot;;\r\n  src -&gt;  comp.type as type,  type.coding as coding then {\r\n    src -&gt;  coding.system = 'http://loinc.org',  coding.code = '82593-5' &quot;set type coding&quot;;\r\n  } &quot;set type&quot;;\r\n  src.certificate as certificate -&gt;  comp.author as author,  comp.event as event then {\r\n    certificate.period as period -&gt; event.period = period &quot;set event period&quot;;\r\n    certificate.issuer as issuer -&gt; author.type = 'Organization' then {\r\n      issuer.identifier as pha -&gt; author.identifier as identifier then {\r\n        pha.value as value -&gt; identifier.value = value &quot;set pha&quot;;\r\n      } &quot;set author identifier&quot;;\r\n    } &quot;set author ref&quot;;\r\n  } &quot;set certificate&quot;;\r\n}\r\n\r\n</pre></div>"
  },
  "url" : "http://smart.who.int/ddcc/StructureMap/CoreDataSetLibrary",
  "version" : "1.0.0",
  "name" : "CoreDataSetLibrary",
  "status" : "draft",
  "date" : "2024-01-19T16:18:21+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/DDCCCoreDataSet.VS",
      "mode" : "source",
      "alias" : "DDCCVS"
    },
    {
      "url" : "http://hl7.org/fhir/StructureDefinition/Patient",
      "mode" : "target",
      "alias" : "Patient"
    },
    {
      "url" : "http://smart.who.int/ddcc/StructureDefinition/DDCCPatient",
      "mode" : "produced",
      "alias" : "DDCCPatient"
    },
    {
      "url" : "http://smart.who.int/ddcc/StructureDefinition/DDCCDocumentReferenceQR",
      "mode" : "produced",
      "alias" : "DDCCDocRefQR"
    },
    {
      "url" : "http://smart.who.int/ddcc/StructureDefinition/DDCCComposition",
      "mode" : "produced",
      "alias" : "DDCCComposition"
    }
  ],
  "group" : [
    {
      "name" : "DDCCToPatient",
      "typeMode" : "none",
      "input" : [
        {
          "name" : "src",
          "type" : "DDCCVS",
          "mode" : "source"
        },
        {
          "name" : "patient",
          "type" : "DDCCPatient",
          "mode" : "target"
        },
        {
          "name" : "pid",
          "mode" : "source"
        }
      ],
      "rule" : [
        {
          "name" : "set id",
          "source" : [
            {
              "context" : "pid"
            }
          ],
          "target" : [
            {
              "context" : "patient",
              "contextType" : "variable",
              "element" : "id",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "pid"
                }
              ]
            }
          ]
        },
        {
          "name" : "set full name",
          "source" : [
            {
              "context" : "src",
              "element" : "name",
              "variable" : "name"
            }
          ],
          "target" : [
            {
              "context" : "patient",
              "contextType" : "variable",
              "element" : "name",
              "variable" : "tName"
            }
          ],
          "rule" : [
            {
              "name" : "set name",
              "source" : [
                {
                  "context" : "name"
                }
              ],
              "target" : [
                {
                  "context" : "tName",
                  "contextType" : "variable",
                  "element" : "text",
                  "transform" : "copy",
                  "parameter" : [
                    {
                      "valueId" : "name"
                    }
                  ]
                }
              ]
            }
          ]
        },
        {
          "name" : "set birthDate",
          "source" : [
            {
              "context" : "src",
              "element" : "birthDate",
              "variable" : "birthDate"
            }
          ],
          "target" : [
            {
              "context" : "patient",
              "contextType" : "variable",
              "element" : "birthDate",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "birthDate"
                }
              ]
            }
          ]
        },
        {
          "name" : "set identifier",
          "source" : [
            {
              "context" : "src",
              "element" : "identifier",
              "variable" : "identifier"
            }
          ],
          "target" : [
            {
              "context" : "patient",
              "contextType" : "variable",
              "element" : "identifier",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "identifier"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "DDCCToDocumentReference",
      "typeMode" : "none",
      "input" : [
        {
          "name" : "src",
          "type" : "DDCCVS",
          "mode" : "source"
        },
        {
          "name" : "ref",
          "type" : "DDCCDocRefQR",
          "mode" : "target"
        },
        {
          "name" : "id",
          "mode" : "source"
        },
        {
          "name" : "pid",
          "mode" : "source"
        }
      ],
      "rule" : [
        {
          "name" : "set id",
          "source" : [
            {
              "context" : "id"
            }
          ],
          "target" : [
            {
              "context" : "ref",
              "contextType" : "variable",
              "element" : "id",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "id"
                }
              ]
            }
          ]
        },
        {
          "name" : "set status",
          "source" : [
            {
              "context" : "src"
            }
          ],
          "target" : [
            {
              "context" : "ref",
              "contextType" : "variable",
              "element" : "status",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueString" : "current"
                }
              ]
            }
          ]
        },
        {
          "name" : "set patient",
          "source" : [
            {
              "context" : "src"
            }
          ],
          "target" : [
            {
              "context" : "ref",
              "contextType" : "variable",
              "element" : "subject",
              "variable" : "patient"
            },
            {
              "context" : "patient",
              "contextType" : "variable",
              "element" : "reference",
              "transform" : "append",
              "parameter" : [
                {
                  "valueString" : "Patient/"
                },
                {
                  "valueId" : "pid"
                }
              ]
            }
          ]
        },
        {
          "name" : "set serialized content",
          "source" : [
            {
              "context" : "src"
            }
          ],
          "target" : [
            {
              "context" : "ref",
              "contextType" : "variable",
              "element" : "content",
              "variable" : "content"
            }
          ],
          "rule" : [
            {
              "name" : "set contentType",
              "source" : [
                {
                  "context" : "src"
                }
              ],
              "target" : [
                {
                  "context" : "content",
                  "contextType" : "variable",
                  "element" : "attachment",
                  "variable" : "attachment"
                },
                {
                  "context" : "attachment",
                  "contextType" : "variable",
                  "element" : "contentType",
                  "transform" : "copy",
                  "parameter" : [
                    {
                      "valueString" : "application/json"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "set format code",
              "source" : [
                {
                  "context" : "src"
                }
              ],
              "target" : [
                {
                  "context" : "content",
                  "contextType" : "variable",
                  "element" : "format",
                  "variable" : "format"
                },
                {
                  "context" : "format",
                  "contextType" : "variable",
                  "element" : "system",
                  "transform" : "copy",
                  "parameter" : [
                    {
                      "valueString" : "http://smart.who.int/ddcc/CodeSystem/DDCC-QR-Format-CodeSystem"
                    }
                  ]
                },
                {
                  "context" : "format",
                  "contextType" : "variable",
                  "element" : "code",
                  "transform" : "copy",
                  "parameter" : [
                    {
                      "valueString" : "serialized"
                    }
                  ]
                }
              ]
            }
          ]
        },
        {
          "name" : "set image content",
          "source" : [
            {
              "context" : "src"
            }
          ],
          "target" : [
            {
              "context" : "ref",
              "contextType" : "variable",
              "element" : "content",
              "variable" : "content"
            }
          ],
          "rule" : [
            {
              "name" : "set contentType",
              "source" : [
                {
                  "context" : "src"
                }
              ],
              "target" : [
                {
                  "context" : "content",
                  "contextType" : "variable",
                  "element" : "attachment",
                  "variable" : "attachment"
                },
                {
                  "context" : "attachment",
                  "contextType" : "variable",
                  "element" : "contentType",
                  "transform" : "copy",
                  "parameter" : [
                    {
                      "valueString" : "image/png"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "set format code",
              "source" : [
                {
                  "context" : "src"
                }
              ],
              "target" : [
                {
                  "context" : "content",
                  "contextType" : "variable",
                  "element" : "format",
                  "variable" : "format"
                },
                {
                  "context" : "format",
                  "contextType" : "variable",
                  "element" : "system",
                  "transform" : "copy",
                  "parameter" : [
                    {
                      "valueString" : "http://smart.who.int/ddcc/CodeSystem/DDCC-QR-Format-CodeSystem"
                    }
                  ]
                },
                {
                  "context" : "format",
                  "contextType" : "variable",
                  "element" : "code",
                  "transform" : "copy",
                  "parameter" : [
                    {
                      "valueString" : "image"
                    }
                  ]
                }
              ]
            }
          ]
        },
        {
          "name" : "set pdf content",
          "source" : [
            {
              "context" : "src"
            }
          ],
          "target" : [
            {
              "context" : "ref",
              "contextType" : "variable",
              "element" : "content",
              "variable" : "content"
            }
          ],
          "rule" : [
            {
              "name" : "set contentType",
              "source" : [
                {
                  "context" : "src"
                }
              ],
              "target" : [
                {
                  "context" : "content",
                  "contextType" : "variable",
                  "element" : "attachment",
                  "variable" : "attachment"
                },
                {
                  "context" : "attachment",
                  "contextType" : "variable",
                  "element" : "contentType",
                  "transform" : "copy",
                  "parameter" : [
                    {
                      "valueString" : "application/pdf"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "set format code",
              "source" : [
                {
                  "context" : "src"
                }
              ],
              "target" : [
                {
                  "context" : "content",
                  "contextType" : "variable",
                  "element" : "format",
                  "variable" : "format"
                },
                {
                  "context" : "format",
                  "contextType" : "variable",
                  "element" : "system",
                  "transform" : "copy",
                  "parameter" : [
                    {
                      "valueString" : "http://smart.who.int/ddcc/CodeSystem/DDCC-QR-Format-CodeSystem"
                    }
                  ]
                },
                {
                  "context" : "format",
                  "contextType" : "variable",
                  "element" : "code",
                  "transform" : "copy",
                  "parameter" : [
                    {
                      "valueString" : "pdf"
                    }
                  ]
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "DDCCToComposition",
      "typeMode" : "none",
      "input" : [
        {
          "name" : "src",
          "type" : "DDCCVS",
          "mode" : "source"
        },
        {
          "name" : "comp",
          "type" : "DDCCComposition",
          "mode" : "target"
        },
        {
          "name" : "id",
          "mode" : "source"
        },
        {
          "name" : "pid",
          "mode" : "source"
        }
      ],
      "rule" : [
        {
          "name" : "set id",
          "source" : [
            {
              "context" : "id"
            }
          ],
          "target" : [
            {
              "context" : "comp",
              "contextType" : "variable",
              "element" : "id",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "id"
                }
              ]
            }
          ]
        },
        {
          "name" : "set patient",
          "source" : [
            {
              "context" : "src"
            }
          ],
          "target" : [
            {
              "context" : "comp",
              "contextType" : "variable",
              "element" : "subject",
              "variable" : "patient"
            },
            {
              "context" : "patient",
              "contextType" : "variable",
              "element" : "reference",
              "transform" : "append",
              "parameter" : [
                {
                  "valueString" : "Patient/"
                },
                {
                  "valueId" : "pid"
                }
              ]
            }
          ]
        },
        {
          "name" : "set type",
          "source" : [
            {
              "context" : "src"
            }
          ],
          "target" : [
            {
              "context" : "comp",
              "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"
                    }
                  ]
                }
              ]
            }
          ]
        },
        {
          "name" : "set certificate",
          "source" : [
            {
              "context" : "src",
              "element" : "certificate",
              "variable" : "certificate"
            }
          ],
          "target" : [
            {
              "context" : "comp",
              "contextType" : "variable",
              "element" : "author",
              "variable" : "author"
            },
            {
              "context" : "comp",
              "contextType" : "variable",
              "element" : "event",
              "variable" : "event"
            }
          ],
          "rule" : [
            {
              "name" : "set event period",
              "source" : [
                {
                  "context" : "certificate",
                  "element" : "period",
                  "variable" : "period"
                }
              ],
              "target" : [
                {
                  "context" : "event",
                  "contextType" : "variable",
                  "element" : "period",
                  "transform" : "copy",
                  "parameter" : [
                    {
                      "valueId" : "period"
                    }
                  ]
                }
              ]
            },
            {
              "name" : "set author ref",
              "source" : [
                {
                  "context" : "certificate",
                  "element" : "issuer",
                  "variable" : "issuer"
                }
              ],
              "target" : [
                {
                  "context" : "author",
                  "contextType" : "variable",
                  "element" : "type",
                  "transform" : "copy",
                  "parameter" : [
                    {
                      "valueString" : "Organization"
                    }
                  ]
                }
              ],
              "rule" : [
                {
                  "name" : "set author identifier",
                  "source" : [
                    {
                      "context" : "issuer",
                      "element" : "identifier",
                      "variable" : "pha"
                    }
                  ],
                  "target" : [
                    {
                      "context" : "author",
                      "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"
                            }
                          ]
                        }
                      ]
                    }
                  ]
                }
              ]
            }
          ]
        }
      ]
    }
  ]
}