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

This page is part of the WHO Digital Documentation of COVID-19 Certificates (DDCC) (v1.0.0: releases Draft) based on FHIR (HL7® FHIR® Standard) R4. This is the current published version in its permanent home (it will always be available at this URL). For a full list of available versions, see the Directory of published versions

: null - TTL Representation

Draft as of 2024-10-15

Raw ttl | Download

@prefix fhir: <http://hl7.org/fhir/> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

# - resource -------------------------------------------------------------------

 a fhir:StructureMap ;
  fhir:nodeRole fhir:treeRoot ;
  fhir:id [ fhir:v "QRespToVSCoreDataSet"] ; # 
  fhir:text [
fhir:status [ fhir:v "generated" ] ;
fhir:div "<div xmlns=\"http://www.w3.org/1999/xhtml\"><p class=\"res-header-id\"><b>Generated Narrative: StructureMap QRespToVSCoreDataSet</b></p><a name=\"QRespToVSCoreDataSet\"> </a><a name=\"hcQRespToVSCoreDataSet\"> </a><a name=\"QRespToVSCoreDataSet-en-US\"> </a><pre class=\"fml\">\r\n<b>map</b><span style=\"color: navy\"> &quot;</span>http://smart.who.int/ddcc/StructureMap/QRespToVSCoreDataSet<span style=\"color: navy\">&quot; = &quot;</span>QRespToVSCoreDataSet<span style=\"color: navy\">&quot;\r\n\r\n</span><b>uses</b><span style=\"color: navy\"> &quot;</span><a href=\"http://hl7.org/fhir/R4/questionnaireresponse.html\" title=\"QuestionnaireResponse\">http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse</a><span style=\"color: navy\">&quot; </span><b>alias </b>QResp <b>as </b><b>source</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span><a href=\"StructureDefinition-DDCCCoreDataSetVSCoC.html\" title=\"DDCC Core Data Set Logical Model - Vaccination Status - Continuity of Care\">http://smart.who.int/ddcc/StructureDefinition/DDCCCoreDataSetVSCoC</a><span style=\"color: navy\">&quot; </span><b>alias </b>DDCC <b>as </b><b>target</b>\r\n\r\n<b>group </b>QRespToCoreDataSet<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">qr</span><span style=\"color: navy\"> : </span>QResp, <b>target</b> <span style=\"color: maroon\">ddcc</span><span style=\"color: navy\"> : </span>DDCC<span style=\"color: navy\">)</span><span style=\"color: navy\"> {\r\n</span>  qr<b> as </b><span style=\"color: maroon\">src</span><b> then </b>QRespToHeader<span style=\"color: navy\">(</span><span style=\"color: maroon\">src</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">ddcc</span><span style=\"color: navy\">)</span> <i>&quot;set header content&quot;</i><span style=\"color: navy\">;</span>\r\n  qr<b> as </b><span style=\"color: maroon\">src</span><span style=\"color: navy\"><b> -&gt; </b></span>ddcc.vaccination<b> as </b><span style=\"color: maroon\">vaccination</span><b> then </b>QRespToVaccination<span style=\"color: navy\">(</span><span style=\"color: maroon\">src</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">vaccination</span><span style=\"color: navy\">)</span> <i>&quot;set vaccination content&quot;</i><span style=\"color: navy\">;</span>\r\n  qr<b> as </b><span style=\"color: maroon\">src</span><span style=\"color: navy\"><b> -&gt; </b></span>ddcc.certificate<b> as </b><span style=\"color: maroon\">certificate</span><b> then </b>QRespToCertificate<span style=\"color: navy\">(</span><span style=\"color: maroon\">src</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">certificate</span><span style=\"color: navy\">)</span> <i>&quot;set certificate content&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>QRespToHeader<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">qr</span>, <b>target</b> <span style=\"color: maroon\">ddcc</span><span style=\"color: navy\">)</span><span style=\"color: navy\"> {\r\n</span>  qr.item<b> as </b><span style=\"color: maroon\">item</span><b> then</b><span style=\"color: navy\"> {\r\n</span>    item.answer first<b> as </b><span style=\"color: maroon\">answer</span><b> where </b>item.linkId = 'name'<b> then</b><span style=\"color: navy\"> {\r\n</span>      answer.valueString<b> as </b><span style=\"color: maroon\">content</span><span style=\"color: navy\"><b> -&gt; </b></span>ddcc.name = <span style=\"color: maroon\">content</span> <i>&quot;set name&quot;</i><span style=\"color: navy\">;</span>\r\n    <span style=\"color: navy\">}</span> <i>&quot;first answser for name&quot;</i><span style=\"color: navy\">;</span>\r\n    item.answer first<b> as </b><span style=\"color: maroon\">answer</span><b> where </b>item.linkId = 'birthDate'<b> then</b><span style=\"color: navy\"> {\r\n</span>      answer.valueDate<b> as </b><span style=\"color: maroon\">content</span><span style=\"color: navy\"><b> -&gt; </b></span>ddcc.birthDate = <span style=\"color: maroon\">content</span> <i>&quot;set birthDate&quot;</i><span style=\"color: navy\">;</span>\r\n    <span style=\"color: navy\">}</span> <i>&quot;first answer for birthDate&quot;</i><span style=\"color: navy\">;</span>\r\n    item.answer first<b> as </b><span style=\"color: maroon\">answer</span><b> where </b>item.linkId = 'identifier'<span style=\"color: navy\"><b> -&gt; </b></span>ddcc.identifier<b> as </b><span style=\"color: maroon\">identifier</span><b> then</b><span style=\"color: navy\"> {\r\n</span>      answer.valueString<b> as </b><span style=\"color: maroon\">content</span><span style=\"color: navy\"><b> -&gt; </b></span>identifier.value = <span style=\"color: maroon\">content</span> <i>&quot;set identifier&quot;</i><span style=\"color: navy\">;</span>\r\n    <span style=\"color: navy\">}</span> <i>&quot;first answer for identifier&quot;</i><span style=\"color: navy\">;</span>\r\n    item.answer first<b> as </b><span style=\"color: maroon\">answer</span><b> where </b>item.linkId = 'sex'<b> then</b><span style=\"color: navy\"> {\r\n</span>      answer.valueCoding<b> as </b><span style=\"color: maroon\">coding</span><b> then</b><span style=\"color: navy\"> {\r\n</span>        coding.code<b> as </b><span style=\"color: maroon\">content</span><span style=\"color: navy\"><b> -&gt; </b></span>ddcc.sex = <span style=\"color: maroon\">content</span> <i>&quot;set sex&quot;</i><span style=\"color: navy\">;</span>\r\n      <span style=\"color: navy\">}</span> <i>&quot;process coding&quot;</i><span style=\"color: navy\">;</span>\r\n    <span style=\"color: navy\">}</span> <i>&quot;first answer for sex&quot;</i><span style=\"color: navy\">;</span>\r\n  <span style=\"color: navy\">}</span> <i>&quot;header items&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>QRespToVaccination<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">qr</span>, <b>target</b> <span style=\"color: maroon\">vaccination</span><span style=\"color: navy\">)</span><span style=\"color: navy\"> {\r\n</span>  qr.item<b> as </b><span style=\"color: maroon\">item</span><b> then</b><span style=\"color: navy\"> {\r\n</span>    item.answer first<b> as </b><span style=\"color: maroon\">answer</span><b> where </b>item.linkId = 'vaccine'<b> then</b><span style=\"color: navy\"> {\r\n</span>      answer.valueCoding<b> as </b><span style=\"color: maroon\">content</span><span style=\"color: navy\"><b> -&gt; </b></span>vaccination.vaccine = <span style=\"color: maroon\">content</span> <i>&quot;set vaccine&quot;</i><span style=\"color: navy\">;</span>\r\n    <span style=\"color: navy\">}</span> <i>&quot;first answer for vaccine&quot;</i><span style=\"color: navy\">;</span>\r\n    item.answer first<b> as </b><span style=\"color: maroon\">answer</span><b> where </b>item.linkId = 'brand'<b> then</b><span style=\"color: navy\"> {\r\n</span>      answer.valueCoding<b> as </b><span style=\"color: maroon\">content</span><span style=\"color: navy\"><b> -&gt; </b></span>vaccination.brand = <span style=\"color: maroon\">content</span> <i>&quot;set brand&quot;</i><span style=\"color: navy\">;</span>\r\n    <span style=\"color: navy\">}</span> <i>&quot;first answer for brand&quot;</i><span style=\"color: navy\">;</span>\r\n    item.answer first<b> as </b><span style=\"color: maroon\">answer</span><b> where </b>item.linkId = 'manufacturer'<b> then</b><span style=\"color: navy\"> {\r\n</span>      answer.valueCoding<b> as </b><span style=\"color: maroon\">content</span><span style=\"color: navy\"><b> -&gt; </b></span>vaccination.manufacturer = <span style=\"color: maroon\">content</span> <i>&quot;set manufacturer&quot;</i><span style=\"color: navy\">;</span>\r\n    <span style=\"color: navy\">}</span> <i>&quot;first answer for manufacturer&quot;</i><span style=\"color: navy\">;</span>\r\n    item.answer first<b> as </b><span style=\"color: maroon\">answer</span><b> where </b>item.linkId = 'ma_holder'<b> then</b><span style=\"color: navy\"> {\r\n</span>      answer.valueCoding<b> as </b><span style=\"color: maroon\">content</span><span style=\"color: navy\"><b> -&gt; </b></span>vaccination.maholder = <span style=\"color: maroon\">content</span> <i>&quot;set maholder&quot;</i><span style=\"color: navy\">;</span>\r\n    <span style=\"color: navy\">}</span> <i>&quot;first answer for maholder&quot;</i><span style=\"color: navy\">;</span>\r\n    item.answer first<b> as </b><span style=\"color: maroon\">answer</span><b> where </b>item.linkId = 'lot'<b> then</b><span style=\"color: navy\"> {\r\n</span>      answer.valueString<b> as </b><span style=\"color: maroon\">content</span><span style=\"color: navy\"><b> -&gt; </b></span>vaccination.lot = <span style=\"color: maroon\">content</span> <i>&quot;set lot&quot;</i><span style=\"color: navy\">;</span>\r\n    <span style=\"color: navy\">}</span> <i>&quot;first answser for lot&quot;</i><span style=\"color: navy\">;</span>\r\n    item.answer first<b> as </b><span style=\"color: maroon\">answer</span><b> where </b>item.linkId = 'date'<b> then</b><span style=\"color: navy\"> {\r\n</span>      answer.valueDate<b> as </b><span style=\"color: maroon\">content</span><span style=\"color: navy\"><b> -&gt; </b></span>vaccination.date = <span style=\"color: maroon\">content</span> <i>&quot;set date&quot;</i><span style=\"color: navy\">;</span>\r\n    <span style=\"color: navy\">}</span> <i>&quot;first answer for date&quot;</i><span style=\"color: navy\">;</span>\r\n    item.answer first<b> as </b><span style=\"color: maroon\">answer</span><b> where </b>item.linkId = 'vaccine_valid'<b> then</b><span style=\"color: navy\"> {\r\n</span>      answer.valueDate<b> as </b><span style=\"color: maroon\">content</span><span style=\"color: navy\"><b> -&gt; </b></span>vaccination.validFrom = <span style=\"color: maroon\">content</span> <i>&quot;set validFrom&quot;</i><span style=\"color: navy\">;</span>\r\n    <span style=\"color: navy\">}</span> <i>&quot;first answer for validFrom&quot;</i><span style=\"color: navy\">;</span>\r\n    item.answer first<b> as </b><span style=\"color: maroon\">answer</span><b> where </b>item.linkId = 'dose'<b> then</b><span style=\"color: navy\"> {\r\n</span>      answer.valueInteger<b> as </b><span style=\"color: maroon\">content</span><span style=\"color: navy\"><b> -&gt; </b></span>vaccination.dose = <span style=\"color: maroon\">content</span> <i>&quot;set dose&quot;</i><span style=\"color: navy\">;</span>\r\n    <span style=\"color: navy\">}</span> <i>&quot;first answer for dose&quot;</i><span style=\"color: navy\">;</span>\r\n    item.answer first<b> as </b><span style=\"color: maroon\">answer</span><b> where </b>item.linkId = 'total_doses'<b> then</b><span style=\"color: navy\"> {\r\n</span>      answer.valueInteger<b> as </b><span style=\"color: maroon\">content</span><span style=\"color: navy\"><b> -&gt; </b></span>vaccination.totalDoses = <span style=\"color: maroon\">content</span> <i>&quot;set totalDoses&quot;</i><span style=\"color: navy\">;</span>\r\n    <span style=\"color: navy\">}</span> <i>&quot;first answer for totalDoses&quot;</i><span style=\"color: navy\">;</span>\r\n    item.answer first<b> as </b><span style=\"color: maroon\">answer</span><b> where </b>item.linkId = 'country'<b> then</b><span style=\"color: navy\"> {\r\n</span>      answer.valueCoding<b> as </b><span style=\"color: maroon\">content</span><span style=\"color: navy\"><b> -&gt; </b></span>vaccination.country = <span style=\"color: maroon\">content</span> <i>&quot;set country&quot;</i><span style=\"color: navy\">;</span>\r\n    <span style=\"color: navy\">}</span> <i>&quot;first answer for country&quot;</i><span style=\"color: navy\">;</span>\r\n    item.answer first<b> as </b><span style=\"color: maroon\">answer</span><b> where </b>item.linkId = 'centre'<b> then</b><span style=\"color: navy\"> {\r\n</span>      answer.valueString<b> as </b><span style=\"color: maroon\">content</span><span style=\"color: navy\"><b> -&gt; </b></span>vaccination.centre = <span style=\"color: maroon\">content</span> <i>&quot;set centre&quot;</i><span style=\"color: navy\">;</span>\r\n    <span style=\"color: navy\">}</span> <i>&quot;first answser for centre&quot;</i><span style=\"color: navy\">;</span>\r\n    item.answer first<b> as </b><span style=\"color: maroon\">answer</span><b> where </b>item.linkId = 'hw'<span style=\"color: navy\"><b> -&gt; </b></span>vaccination.practitioner<b> as </b><span style=\"color: maroon\">identifier</span><b> then</b><span style=\"color: navy\"> {\r\n</span>      answer.valueString<b> as </b><span style=\"color: maroon\">content</span><span style=\"color: navy\"><b> -&gt; </b></span>identifier.value = <span style=\"color: maroon\">content</span> <i>&quot;set practitioner&quot;</i><span style=\"color: navy\">;</span>\r\n    <span style=\"color: navy\">}</span> <i>&quot;first answser for practitioner&quot;</i><span style=\"color: navy\">;</span>\r\n    item.answer first<b> as </b><span style=\"color: maroon\">answer</span><b> where </b>item.linkId = 'disease'<b> then</b><span style=\"color: navy\"> {\r\n</span>      answer.valueCoding<b> as </b><span style=\"color: maroon\">content</span><span style=\"color: navy\"><b> -&gt; </b></span>vaccination.disease = <span style=\"color: maroon\">content</span> <i>&quot;set disease&quot;</i><span style=\"color: navy\">;</span>\r\n    <span style=\"color: navy\">}</span> <i>&quot;first answer for disease&quot;</i><span style=\"color: navy\">;</span>\r\n    item.answer first<b> as </b><span style=\"color: maroon\">answer</span><b> where </b>item.linkId = 'due_date'<b> then</b><span style=\"color: navy\"> {\r\n</span>      answer.valueDate<b> as </b><span style=\"color: maroon\">content</span><span style=\"color: navy\"><b> -&gt; </b></span>vaccination.nextDose = <span style=\"color: maroon\">content</span> <i>&quot;set nextDose&quot;</i><span style=\"color: navy\">;</span>\r\n    <span style=\"color: navy\">}</span> <i>&quot;first answer for nextDose&quot;</i><span style=\"color: navy\">;</span>\r\n  <span style=\"color: navy\">}</span> <i>&quot;vaccination items&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>QRespToPeriod<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">qr</span>, <b>target</b> <span style=\"color: maroon\">period</span><span style=\"color: navy\">)</span><span style=\"color: navy\"> {\r\n</span>  qr.item<b> as </b><span style=\"color: maroon\">item</span><b> then</b><span style=\"color: navy\"> {\r\n</span>    item.answer first<b> as </b><span style=\"color: maroon\">answer</span><b> where </b>item.linkId = 'valid_from'<b> then</b><span style=\"color: navy\"> {\r\n</span>      answer.valueDate<b> as </b><span style=\"color: maroon\">content</span><span style=\"color: navy\"><b> -&gt; </b></span>period.start = <span style=\"color: maroon\">content</span> <i>&quot;set valid_from&quot;</i><span style=\"color: navy\">;</span>\r\n    <span style=\"color: navy\">}</span> <i>&quot;first answer for valid_from&quot;</i><span style=\"color: navy\">;</span>\r\n    item.answer first<b> as </b><span style=\"color: maroon\">answer</span><b> where </b>item.linkId = 'valid_until'<b> then</b><span style=\"color: navy\"> {\r\n</span>      answer.valueDate<b> as </b><span style=\"color: maroon\">content</span><span style=\"color: navy\"><b> -&gt; </b></span>period.end = <span style=\"color: maroon\">content</span> <i>&quot;set valid_until&quot;</i><span style=\"color: navy\">;</span>\r\n    <span style=\"color: navy\">}</span> <i>&quot;first answer for valid_until&quot;</i><span style=\"color: navy\">;</span>\r\n  <span style=\"color: navy\">}</span> <i>&quot;vaccination validity items&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>QRespToCertificate<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">qr</span>, <b>target</b> <span style=\"color: maroon\">certificate</span><span style=\"color: navy\">)</span><span style=\"color: navy\"> {\r\n</span>  qr.item<b> as </b><span style=\"color: maroon\">item</span><b> then</b><span style=\"color: navy\"> {\r\n</span>    item.answer first<b> as </b><span style=\"color: maroon\">answer</span><b> where </b>item.linkId = 'pha'<span style=\"color: navy\"><b> -&gt; </b></span>certificate.issuer<b> as </b><span style=\"color: maroon\">issuer</span><b> then</b><span style=\"color: navy\"> {\r\n</span>      answer.valueString<b> as </b><span style=\"color: maroon\">content</span><span style=\"color: navy\"><b> -&gt; </b></span>issuer.identifier<b> as </b><span style=\"color: maroon\">identifier</span><b> then</b><span style=\"color: navy\"> {\r\n</span>        content<b> as </b><span style=\"color: maroon\">value</span><span style=\"color: navy\"><b> -&gt; </b></span>identifier.value = <span style=\"color: maroon\">value</span> <i>&quot;set issuer identifier&quot;</i><span style=\"color: navy\">;</span>\r\n      <span style=\"color: navy\">}</span> <i>&quot;set issuer&quot;</i><span style=\"color: navy\">;</span>\r\n    <span style=\"color: navy\">}</span> <i>&quot;first answser for hcid&quot;</i><span style=\"color: navy\">;</span>\r\n    item.answer first<b> as </b><span style=\"color: maroon\">answer</span><b> where </b>item.linkId = 'hcid'<span style=\"color: navy\"><b> -&gt; </b></span>certificate.hcid<b> as </b><span style=\"color: maroon\">hcid</span><b> then</b><span style=\"color: navy\"> {\r\n</span>      answer.valueString<b> as </b><span style=\"color: maroon\">content</span><span style=\"color: navy\"><b> -&gt; </b></span> hcid.value = <span style=\"color: maroon\">content</span><span style=\"color: navy\">, </span> certificate.version = <span style=\"color: blue\">'RC2'</span> <i>&quot;set hcid and version&quot;</i><span style=\"color: navy\">;</span>\r\n    <span style=\"color: navy\">}</span> <i>&quot;first answser for hcid&quot;</i><span style=\"color: navy\">;</span>\r\n  <span style=\"color: navy\">}</span> <i>&quot;certificate items&quot;</i><span style=\"color: navy\">;</span>\r\n  qr<b> as </b><span style=\"color: maroon\">src</span><span style=\"color: navy\"><b> -&gt; </b></span>certificate.period<b> as </b><span style=\"color: maroon\">period</span><b> then </b>QRespToPeriod<span style=\"color: navy\">(</span><span style=\"color: maroon\">src</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">period</span><span style=\"color: navy\">)</span> <i>&quot;set vaccination period&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span></pre></div>"
  ] ; # 
  fhir:url [ fhir:v "http://smart.who.int/ddcc/StructureMap/QRespToVSCoreDataSet"^^xsd:anyURI] ; # 
  fhir:version [ fhir:v "1.0.0"] ; # 
  fhir:name [ fhir:v "QRespToVSCoreDataSet"] ; # 
  fhir:status [ fhir:v "draft"] ; # 
  fhir:date [ fhir:v "2024-10-15T11:00:36+02:00"^^xsd:dateTime] ; # 
  fhir:publisher [ fhir:v "WHO"] ; # 
  fhir:contact ( [
fhir:name [ fhir:v "WHO" ] ;
    ( fhir:telecom [
fhir:system [ fhir:v "url" ] ;
fhir:value [ fhir:v "http://who.int" ]     ] )
  ] ) ; # 
  fhir:jurisdiction ( [
    ( fhir:coding [
fhir:system [ fhir:v "http://unstats.un.org/unsd/methods/m49/m49.htm"^^xsd:anyURI ] ;
fhir:code [ fhir:v "001" ]     ] )
  ] ) ; # 
  fhir:structure ( [
fhir:url [
fhir:v "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse"^^xsd:anyURI ;
fhir:link <http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse>     ] ;
fhir:mode [ fhir:v "source" ] ;
fhir:alias [ fhir:v "QResp" ]
  ] [
fhir:url [
fhir:v "http://smart.who.int/ddcc/StructureDefinition/DDCCCoreDataSetVSCoC"^^xsd:anyURI ;
fhir:link <http://smart.who.int/ddcc/StructureDefinition/DDCCCoreDataSetVSCoC>     ] ;
fhir:mode [ fhir:v "target" ] ;
fhir:alias [ fhir:v "DDCC" ]
  ] ) ; # 
  fhir:group ( [
fhir:name [ fhir:v "QRespToCoreDataSet" ] ;
fhir:typeMode [ fhir:v "none" ] ;
    ( fhir:input [
fhir:name [ fhir:v "qr" ] ;
fhir:type [ fhir:v "QResp" ] ;
fhir:mode [ fhir:v "source" ]     ] [
fhir:name [ fhir:v "ddcc" ] ;
fhir:type [ fhir:v "DDCC" ] ;
fhir:mode [ fhir:v "target" ]     ] ) ;
    ( fhir:rule [
fhir:name [ fhir:v "set header content" ] ;
      ( fhir:source [
fhir:context [ fhir:v "qr" ] ;
fhir:variable [ fhir:v "src" ]       ] ) ;
      ( fhir:dependent [
fhir:name [ fhir:v "QRespToHeader" ] ;
        ( fhir:variable [ fhir:v "src" ] [ fhir:v "ddcc" ] )       ] )     ] [
fhir:name [ fhir:v "set vaccination content" ] ;
      ( fhir:source [
fhir:context [ fhir:v "qr" ] ;
fhir:variable [ fhir:v "src" ]       ] ) ;
      ( fhir:target [
fhir:context [ fhir:v "ddcc" ] ;
fhir:contextType [ fhir:v "variable" ] ;
fhir:element [ fhir:v "vaccination" ] ;
fhir:variable [ fhir:v "vaccination" ]       ] ) ;
      ( fhir:dependent [
fhir:name [ fhir:v "QRespToVaccination" ] ;
        ( fhir:variable [ fhir:v "src" ] [ fhir:v "vaccination" ] )       ] )     ] [
fhir:name [ fhir:v "set certificate content" ] ;
      ( fhir:source [
fhir:context [ fhir:v "qr" ] ;
fhir:variable [ fhir:v "src" ]       ] ) ;
      ( fhir:target [
fhir:context [ fhir:v "ddcc" ] ;
fhir:contextType [ fhir:v "variable" ] ;
fhir:element [ fhir:v "certificate" ] ;
fhir:variable [ fhir:v "certificate" ]       ] ) ;
      ( fhir:dependent [
fhir:name [ fhir:v "QRespToCertificate" ] ;
        ( fhir:variable [ fhir:v "src" ] [ fhir:v "certificate" ] )       ] )     ] )
  ] [
fhir:name [ fhir:v "QRespToHeader" ] ;
fhir:typeMode [ fhir:v "none" ] ;
    ( fhir:input [
fhir:name [ fhir:v "qr" ] ;
fhir:mode [ fhir:v "source" ]     ] [
fhir:name [ fhir:v "ddcc" ] ;
fhir:mode [ fhir:v "target" ]     ] ) ;
    ( fhir:rule [
fhir:name [ fhir:v "header items" ] ;
      ( fhir:source [
fhir:context [ fhir:v "qr" ] ;
fhir:element [ fhir:v "item" ] ;
fhir:variable [ fhir:v "item" ]       ] ) ;
      ( fhir:rule [
fhir:name [ fhir:v "first answser for name" ] ;
        ( fhir:source [
fhir:context [ fhir:v "item" ] ;
fhir:element [ fhir:v "answer" ] ;
fhir:listMode [ fhir:v "first" ] ;
fhir:variable [ fhir:v "answer" ] ;
fhir:condition [ fhir:v "item.linkId = 'name'" ]         ] ) ;
        ( fhir:rule [
fhir:name [ fhir:v "set name" ] ;
          ( fhir:source [
fhir:context [ fhir:v "answer" ] ;
fhir:element [ fhir:v "valueString" ] ;
fhir:variable [ fhir:v "content" ]           ] ) ;
          ( fhir:target [
fhir:context [ fhir:v "ddcc" ] ;
fhir:contextType [ fhir:v "variable" ] ;
fhir:element [ fhir:v "name" ] ;
fhir:transform [ fhir:v "copy" ] ;
            ( fhir:parameter [
fhir:value [ fhir:v "content" ]             ] )           ] )         ] )       ] [
fhir:name [ fhir:v "first answer for birthDate" ] ;
        ( fhir:source [
fhir:context [ fhir:v "item" ] ;
fhir:element [ fhir:v "answer" ] ;
fhir:listMode [ fhir:v "first" ] ;
fhir:variable [ fhir:v "answer" ] ;
fhir:condition [ fhir:v "item.linkId = 'birthDate'" ]         ] ) ;
        ( fhir:rule [
fhir:name [ fhir:v "set birthDate" ] ;
          ( fhir:source [
fhir:context [ fhir:v "answer" ] ;
fhir:element [ fhir:v "valueDate" ] ;
fhir:variable [ fhir:v "content" ]           ] ) ;
          ( fhir:target [
fhir:context [ fhir:v "ddcc" ] ;
fhir:contextType [ fhir:v "variable" ] ;
fhir:element [ fhir:v "birthDate" ] ;
fhir:transform [ fhir:v "copy" ] ;
            ( fhir:parameter [
fhir:value [ fhir:v "content" ]             ] )           ] )         ] )       ] [
fhir:name [ fhir:v "first answer for identifier" ] ;
        ( fhir:source [
fhir:context [ fhir:v "item" ] ;
fhir:element [ fhir:v "answer" ] ;
fhir:listMode [ fhir:v "first" ] ;
fhir:variable [ fhir:v "answer" ] ;
fhir:condition [ fhir:v "item.linkId = 'identifier'" ]         ] ) ;
        ( fhir:target [
fhir:context [ fhir:v "ddcc" ] ;
fhir:contextType [ fhir:v "variable" ] ;
fhir:element [ fhir:v "identifier" ] ;
fhir:variable [ fhir:v "identifier" ]         ] ) ;
        ( fhir:rule [
fhir:name [ fhir:v "set identifier" ] ;
          ( fhir:source [
fhir:context [ fhir:v "answer" ] ;
fhir:element [ fhir:v "valueString" ] ;
fhir:variable [ fhir:v "content" ]           ] ) ;
          ( fhir:target [
fhir:context [ fhir:v "identifier" ] ;
fhir:contextType [ fhir:v "variable" ] ;
fhir:element [ fhir:v "value" ] ;
fhir:transform [ fhir:v "copy" ] ;
            ( fhir:parameter [
fhir:value [ fhir:v "content" ]             ] )           ] )         ] )       ] [
fhir:name [ fhir:v "first answer for sex" ] ;
        ( fhir:source [
fhir:context [ fhir:v "item" ] ;
fhir:element [ fhir:v "answer" ] ;
fhir:listMode [ fhir:v "first" ] ;
fhir:variable [ fhir:v "answer" ] ;
fhir:condition [ fhir:v "item.linkId = 'sex'" ]         ] ) ;
        ( fhir:rule [
fhir:name [ fhir:v "process coding" ] ;
          ( fhir:source [
fhir:context [ fhir:v "answer" ] ;
fhir:element [ fhir:v "valueCoding" ] ;
fhir:variable [ fhir:v "coding" ]           ] ) ;
          ( fhir:rule [
fhir:name [ fhir:v "set sex" ] ;
            ( fhir:source [
fhir:context [ fhir:v "coding" ] ;
fhir:element [ fhir:v "code" ] ;
fhir:variable [ fhir:v "content" ]             ] ) ;
            ( fhir:target [
fhir:context [ fhir:v "ddcc" ] ;
fhir:contextType [ fhir:v "variable" ] ;
fhir:element [ fhir:v "sex" ] ;
fhir:transform [ fhir:v "copy" ] ;
              ( fhir:parameter [
fhir:value [ fhir:v "content" ]               ] )             ] )           ] )         ] )       ] )     ] )
  ] [
fhir:name [ fhir:v "QRespToVaccination" ] ;
fhir:typeMode [ fhir:v "none" ] ;
    ( fhir:input [
fhir:name [ fhir:v "qr" ] ;
fhir:mode [ fhir:v "source" ]     ] [
fhir:name [ fhir:v "vaccination" ] ;
fhir:mode [ fhir:v "target" ]     ] ) ;
    ( fhir:rule [
fhir:name [ fhir:v "vaccination items" ] ;
      ( fhir:source [
fhir:context [ fhir:v "qr" ] ;
fhir:element [ fhir:v "item" ] ;
fhir:variable [ fhir:v "item" ]       ] ) ;
      ( fhir:rule [
fhir:name [ fhir:v "first answer for vaccine" ] ;
        ( fhir:source [
fhir:context [ fhir:v "item" ] ;
fhir:element [ fhir:v "answer" ] ;
fhir:listMode [ fhir:v "first" ] ;
fhir:variable [ fhir:v "answer" ] ;
fhir:condition [ fhir:v "item.linkId = 'vaccine'" ]         ] ) ;
        ( fhir:rule [
fhir:name [ fhir:v "set vaccine" ] ;
          ( fhir:source [
fhir:context [ fhir:v "answer" ] ;
fhir:element [ fhir:v "valueCoding" ] ;
fhir:variable [ fhir:v "content" ]           ] ) ;
          ( fhir:target [
fhir:context [ fhir:v "vaccination" ] ;
fhir:contextType [ fhir:v "variable" ] ;
fhir:element [ fhir:v "vaccine" ] ;
fhir:transform [ fhir:v "copy" ] ;
            ( fhir:parameter [
fhir:value [ fhir:v "content" ]             ] )           ] )         ] )       ] [
fhir:name [ fhir:v "first answer for brand" ] ;
        ( fhir:source [
fhir:context [ fhir:v "item" ] ;
fhir:element [ fhir:v "answer" ] ;
fhir:listMode [ fhir:v "first" ] ;
fhir:variable [ fhir:v "answer" ] ;
fhir:condition [ fhir:v "item.linkId = 'brand'" ]         ] ) ;
        ( fhir:rule [
fhir:name [ fhir:v "set brand" ] ;
          ( fhir:source [
fhir:context [ fhir:v "answer" ] ;
fhir:element [ fhir:v "valueCoding" ] ;
fhir:variable [ fhir:v "content" ]           ] ) ;
          ( fhir:target [
fhir:context [ fhir:v "vaccination" ] ;
fhir:contextType [ fhir:v "variable" ] ;
fhir:element [ fhir:v "brand" ] ;
fhir:transform [ fhir:v "copy" ] ;
            ( fhir:parameter [
fhir:value [ fhir:v "content" ]             ] )           ] )         ] )       ] [
fhir:name [ fhir:v "first answer for manufacturer" ] ;
        ( fhir:source [
fhir:context [ fhir:v "item" ] ;
fhir:element [ fhir:v "answer" ] ;
fhir:listMode [ fhir:v "first" ] ;
fhir:variable [ fhir:v "answer" ] ;
fhir:condition [ fhir:v "item.linkId = 'manufacturer'" ]         ] ) ;
        ( fhir:rule [
fhir:name [ fhir:v "set manufacturer" ] ;
          ( fhir:source [
fhir:context [ fhir:v "answer" ] ;
fhir:element [ fhir:v "valueCoding" ] ;
fhir:variable [ fhir:v "content" ]           ] ) ;
          ( fhir:target [
fhir:context [ fhir:v "vaccination" ] ;
fhir:contextType [ fhir:v "variable" ] ;
fhir:element [ fhir:v "manufacturer" ] ;
fhir:transform [ fhir:v "copy" ] ;
            ( fhir:parameter [
fhir:value [ fhir:v "content" ]             ] )           ] )         ] )       ] [
fhir:name [ fhir:v "first answer for maholder" ] ;
        ( fhir:source [
fhir:context [ fhir:v "item" ] ;
fhir:element [ fhir:v "answer" ] ;
fhir:listMode [ fhir:v "first" ] ;
fhir:variable [ fhir:v "answer" ] ;
fhir:condition [ fhir:v "item.linkId = 'ma_holder'" ]         ] ) ;
        ( fhir:rule [
fhir:name [ fhir:v "set maholder" ] ;
          ( fhir:source [
fhir:context [ fhir:v "answer" ] ;
fhir:element [ fhir:v "valueCoding" ] ;
fhir:variable [ fhir:v "content" ]           ] ) ;
          ( fhir:target [
fhir:context [ fhir:v "vaccination" ] ;
fhir:contextType [ fhir:v "variable" ] ;
fhir:element [ fhir:v "maholder" ] ;
fhir:transform [ fhir:v "copy" ] ;
            ( fhir:parameter [
fhir:value [ fhir:v "content" ]             ] )           ] )         ] )       ] [
fhir:name [ fhir:v "first answser for lot" ] ;
        ( fhir:source [
fhir:context [ fhir:v "item" ] ;
fhir:element [ fhir:v "answer" ] ;
fhir:listMode [ fhir:v "first" ] ;
fhir:variable [ fhir:v "answer" ] ;
fhir:condition [ fhir:v "item.linkId = 'lot'" ]         ] ) ;
        ( fhir:rule [
fhir:name [ fhir:v "set lot" ] ;
          ( fhir:source [
fhir:context [ fhir:v "answer" ] ;
fhir:element [ fhir:v "valueString" ] ;
fhir:variable [ fhir:v "content" ]           ] ) ;
          ( fhir:target [
fhir:context [ fhir:v "vaccination" ] ;
fhir:contextType [ fhir:v "variable" ] ;
fhir:element [ fhir:v "lot" ] ;
fhir:transform [ fhir:v "copy" ] ;
            ( fhir:parameter [
fhir:value [ fhir:v "content" ]             ] )           ] )         ] )       ] [
fhir:name [ fhir:v "first answer for date" ] ;
        ( fhir:source [
fhir:context [ fhir:v "item" ] ;
fhir:element [ fhir:v "answer" ] ;
fhir:listMode [ fhir:v "first" ] ;
fhir:variable [ fhir:v "answer" ] ;
fhir:condition [ fhir:v "item.linkId = 'date'" ]         ] ) ;
        ( fhir:rule [
fhir:name [ fhir:v "set date" ] ;
          ( fhir:source [
fhir:context [ fhir:v "answer" ] ;
fhir:element [ fhir:v "valueDate" ] ;
fhir:variable [ fhir:v "content" ]           ] ) ;
          ( fhir:target [
fhir:context [ fhir:v "vaccination" ] ;
fhir:contextType [ fhir:v "variable" ] ;
fhir:element [ fhir:v "date" ] ;
fhir:transform [ fhir:v "copy" ] ;
            ( fhir:parameter [
fhir:value [ fhir:v "content" ]             ] )           ] )         ] )       ] [
fhir:name [ fhir:v "first answer for validFrom" ] ;
        ( fhir:source [
fhir:context [ fhir:v "item" ] ;
fhir:element [ fhir:v "answer" ] ;
fhir:listMode [ fhir:v "first" ] ;
fhir:variable [ fhir:v "answer" ] ;
fhir:condition [ fhir:v "item.linkId = 'vaccine_valid'" ]         ] ) ;
        ( fhir:rule [
fhir:name [ fhir:v "set validFrom" ] ;
          ( fhir:source [
fhir:context [ fhir:v "answer" ] ;
fhir:element [ fhir:v "valueDate" ] ;
fhir:variable [ fhir:v "content" ]           ] ) ;
          ( fhir:target [
fhir:context [ fhir:v "vaccination" ] ;
fhir:contextType [ fhir:v "variable" ] ;
fhir:element [ fhir:v "validFrom" ] ;
fhir:transform [ fhir:v "copy" ] ;
            ( fhir:parameter [
fhir:value [ fhir:v "content" ]             ] )           ] )         ] )       ] [
fhir:name [ fhir:v "first answer for dose" ] ;
        ( fhir:source [
fhir:context [ fhir:v "item" ] ;
fhir:element [ fhir:v "answer" ] ;
fhir:listMode [ fhir:v "first" ] ;
fhir:variable [ fhir:v "answer" ] ;
fhir:condition [ fhir:v "item.linkId = 'dose'" ]         ] ) ;
        ( fhir:rule [
fhir:name [ fhir:v "set dose" ] ;
          ( fhir:source [
fhir:context [ fhir:v "answer" ] ;
fhir:element [ fhir:v "valueInteger" ] ;
fhir:variable [ fhir:v "content" ]           ] ) ;
          ( fhir:target [
fhir:context [ fhir:v "vaccination" ] ;
fhir:contextType [ fhir:v "variable" ] ;
fhir:element [ fhir:v "dose" ] ;
fhir:transform [ fhir:v "copy" ] ;
            ( fhir:parameter [
fhir:value [ fhir:v "content" ]             ] )           ] )         ] )       ] [
fhir:name [ fhir:v "first answer for totalDoses" ] ;
        ( fhir:source [
fhir:context [ fhir:v "item" ] ;
fhir:element [ fhir:v "answer" ] ;
fhir:listMode [ fhir:v "first" ] ;
fhir:variable [ fhir:v "answer" ] ;
fhir:condition [ fhir:v "item.linkId = 'total_doses'" ]         ] ) ;
        ( fhir:rule [
fhir:name [ fhir:v "set totalDoses" ] ;
          ( fhir:source [
fhir:context [ fhir:v "answer" ] ;
fhir:element [ fhir:v "valueInteger" ] ;
fhir:variable [ fhir:v "content" ]           ] ) ;
          ( fhir:target [
fhir:context [ fhir:v "vaccination" ] ;
fhir:contextType [ fhir:v "variable" ] ;
fhir:element [ fhir:v "totalDoses" ] ;
fhir:transform [ fhir:v "copy" ] ;
            ( fhir:parameter [
fhir:value [ fhir:v "content" ]             ] )           ] )         ] )       ] [
fhir:name [ fhir:v "first answer for country" ] ;
        ( fhir:source [
fhir:context [ fhir:v "item" ] ;
fhir:element [ fhir:v "answer" ] ;
fhir:listMode [ fhir:v "first" ] ;
fhir:variable [ fhir:v "answer" ] ;
fhir:condition [ fhir:v "item.linkId = 'country'" ]         ] ) ;
        ( fhir:rule [
fhir:name [ fhir:v "set country" ] ;
          ( fhir:source [
fhir:context [ fhir:v "answer" ] ;
fhir:element [ fhir:v "valueCoding" ] ;
fhir:variable [ fhir:v "content" ]           ] ) ;
          ( fhir:target [
fhir:context [ fhir:v "vaccination" ] ;
fhir:contextType [ fhir:v "variable" ] ;
fhir:element [ fhir:v "country" ] ;
fhir:transform [ fhir:v "copy" ] ;
            ( fhir:parameter [
fhir:value [ fhir:v "content" ]             ] )           ] )         ] )       ] [
fhir:name [ fhir:v "first answser for centre" ] ;
        ( fhir:source [
fhir:context [ fhir:v "item" ] ;
fhir:element [ fhir:v "answer" ] ;
fhir:listMode [ fhir:v "first" ] ;
fhir:variable [ fhir:v "answer" ] ;
fhir:condition [ fhir:v "item.linkId = 'centre'" ]         ] ) ;
        ( fhir:rule [
fhir:name [ fhir:v "set centre" ] ;
          ( fhir:source [
fhir:context [ fhir:v "answer" ] ;
fhir:element [ fhir:v "valueString" ] ;
fhir:variable [ fhir:v "content" ]           ] ) ;
          ( fhir:target [
fhir:context [ fhir:v "vaccination" ] ;
fhir:contextType [ fhir:v "variable" ] ;
fhir:element [ fhir:v "centre" ] ;
fhir:transform [ fhir:v "copy" ] ;
            ( fhir:parameter [
fhir:value [ fhir:v "content" ]             ] )           ] )         ] )       ] [
fhir:name [ fhir:v "first answser for practitioner" ] ;
        ( fhir:source [
fhir:context [ fhir:v "item" ] ;
fhir:element [ fhir:v "answer" ] ;
fhir:listMode [ fhir:v "first" ] ;
fhir:variable [ fhir:v "answer" ] ;
fhir:condition [ fhir:v "item.linkId = 'hw'" ]         ] ) ;
        ( fhir:target [
fhir:context [ fhir:v "vaccination" ] ;
fhir:contextType [ fhir:v "variable" ] ;
fhir:element [ fhir:v "practitioner" ] ;
fhir:variable [ fhir:v "identifier" ]         ] ) ;
        ( fhir:rule [
fhir:name [ fhir:v "set practitioner" ] ;
          ( fhir:source [
fhir:context [ fhir:v "answer" ] ;
fhir:element [ fhir:v "valueString" ] ;
fhir:variable [ fhir:v "content" ]           ] ) ;
          ( fhir:target [
fhir:context [ fhir:v "identifier" ] ;
fhir:contextType [ fhir:v "variable" ] ;
fhir:element [ fhir:v "value" ] ;
fhir:transform [ fhir:v "copy" ] ;
            ( fhir:parameter [
fhir:value [ fhir:v "content" ]             ] )           ] )         ] )       ] [
fhir:name [ fhir:v "first answer for disease" ] ;
        ( fhir:source [
fhir:context [ fhir:v "item" ] ;
fhir:element [ fhir:v "answer" ] ;
fhir:listMode [ fhir:v "first" ] ;
fhir:variable [ fhir:v "answer" ] ;
fhir:condition [ fhir:v "item.linkId = 'disease'" ]         ] ) ;
        ( fhir:rule [
fhir:name [ fhir:v "set disease" ] ;
          ( fhir:source [
fhir:context [ fhir:v "answer" ] ;
fhir:element [ fhir:v "valueCoding" ] ;
fhir:variable [ fhir:v "content" ]           ] ) ;
          ( fhir:target [
fhir:context [ fhir:v "vaccination" ] ;
fhir:contextType [ fhir:v "variable" ] ;
fhir:element [ fhir:v "disease" ] ;
fhir:transform [ fhir:v "copy" ] ;
            ( fhir:parameter [
fhir:value [ fhir:v "content" ]             ] )           ] )         ] )       ] [
fhir:name [ fhir:v "first answer for nextDose" ] ;
        ( fhir:source [
fhir:context [ fhir:v "item" ] ;
fhir:element [ fhir:v "answer" ] ;
fhir:listMode [ fhir:v "first" ] ;
fhir:variable [ fhir:v "answer" ] ;
fhir:condition [ fhir:v "item.linkId = 'due_date'" ]         ] ) ;
        ( fhir:rule [
fhir:name [ fhir:v "set nextDose" ] ;
          ( fhir:source [
fhir:context [ fhir:v "answer" ] ;
fhir:element [ fhir:v "valueDate" ] ;
fhir:variable [ fhir:v "content" ]           ] ) ;
          ( fhir:target [
fhir:context [ fhir:v "vaccination" ] ;
fhir:contextType [ fhir:v "variable" ] ;
fhir:element [ fhir:v "nextDose" ] ;
fhir:transform [ fhir:v "copy" ] ;
            ( fhir:parameter [
fhir:value [ fhir:v "content" ]             ] )           ] )         ] )       ] )     ] )
  ] [
fhir:name [ fhir:v "QRespToPeriod" ] ;
fhir:typeMode [ fhir:v "none" ] ;
    ( fhir:input [
fhir:name [ fhir:v "qr" ] ;
fhir:mode [ fhir:v "source" ]     ] [
fhir:name [ fhir:v "period" ] ;
fhir:mode [ fhir:v "target" ]     ] ) ;
    ( fhir:rule [
fhir:name [ fhir:v "vaccination validity items" ] ;
      ( fhir:source [
fhir:context [ fhir:v "qr" ] ;
fhir:element [ fhir:v "item" ] ;
fhir:variable [ fhir:v "item" ]       ] ) ;
      ( fhir:rule [
fhir:name [ fhir:v "first answer for valid_from" ] ;
        ( fhir:source [
fhir:context [ fhir:v "item" ] ;
fhir:element [ fhir:v "answer" ] ;
fhir:listMode [ fhir:v "first" ] ;
fhir:variable [ fhir:v "answer" ] ;
fhir:condition [ fhir:v "item.linkId = 'valid_from'" ]         ] ) ;
        ( fhir:rule [
fhir:name [ fhir:v "set valid_from" ] ;
          ( fhir:source [
fhir:context [ fhir:v "answer" ] ;
fhir:element [ fhir:v "valueDate" ] ;
fhir:variable [ fhir:v "content" ]           ] ) ;
          ( fhir:target [
fhir:context [ fhir:v "period" ] ;
fhir:contextType [ fhir:v "variable" ] ;
fhir:element [ fhir:v "start" ] ;
fhir:transform [ fhir:v "copy" ] ;
            ( fhir:parameter [
fhir:value [ fhir:v "content" ]             ] )           ] )         ] )       ] [
fhir:name [ fhir:v "first answer for valid_until" ] ;
        ( fhir:source [
fhir:context [ fhir:v "item" ] ;
fhir:element [ fhir:v "answer" ] ;
fhir:listMode [ fhir:v "first" ] ;
fhir:variable [ fhir:v "answer" ] ;
fhir:condition [ fhir:v "item.linkId = 'valid_until'" ]         ] ) ;
        ( fhir:rule [
fhir:name [ fhir:v "set valid_until" ] ;
          ( fhir:source [
fhir:context [ fhir:v "answer" ] ;
fhir:element [ fhir:v "valueDate" ] ;
fhir:variable [ fhir:v "content" ]           ] ) ;
          ( fhir:target [
fhir:context [ fhir:v "period" ] ;
fhir:contextType [ fhir:v "variable" ] ;
fhir:element [ fhir:v "end" ] ;
fhir:transform [ fhir:v "copy" ] ;
            ( fhir:parameter [
fhir:value [ fhir:v "content" ]             ] )           ] )         ] )       ] )     ] )
  ] [
fhir:name [ fhir:v "QRespToCertificate" ] ;
fhir:typeMode [ fhir:v "none" ] ;
    ( fhir:input [
fhir:name [ fhir:v "qr" ] ;
fhir:mode [ fhir:v "source" ]     ] [
fhir:name [ fhir:v "certificate" ] ;
fhir:mode [ fhir:v "target" ]     ] ) ;
    ( fhir:rule [
fhir:name [ fhir:v "certificate items" ] ;
      ( fhir:source [
fhir:context [ fhir:v "qr" ] ;
fhir:element [ fhir:v "item" ] ;
fhir:variable [ fhir:v "item" ]       ] ) ;
      ( fhir:rule [
fhir:name [ fhir:v "first answser for hcid" ] ;
        ( fhir:source [
fhir:context [ fhir:v "item" ] ;
fhir:element [ fhir:v "answer" ] ;
fhir:listMode [ fhir:v "first" ] ;
fhir:variable [ fhir:v "answer" ] ;
fhir:condition [ fhir:v "item.linkId = 'pha'" ]         ] ) ;
        ( fhir:target [
fhir:context [ fhir:v "certificate" ] ;
fhir:contextType [ fhir:v "variable" ] ;
fhir:element [ fhir:v "issuer" ] ;
fhir:variable [ fhir:v "issuer" ]         ] ) ;
        ( fhir:rule [
fhir:name [ fhir:v "set issuer" ] ;
          ( fhir:source [
fhir:context [ fhir:v "answer" ] ;
fhir:element [ fhir:v "valueString" ] ;
fhir:variable [ fhir:v "content" ]           ] ) ;
          ( fhir:target [
fhir:context [ fhir:v "issuer" ] ;
fhir:contextType [ fhir:v "variable" ] ;
fhir:element [ fhir:v "identifier" ] ;
fhir:variable [ fhir:v "identifier" ]           ] ) ;
          ( fhir:rule [
fhir:name [ fhir:v "set issuer identifier" ] ;
            ( fhir:source [
fhir:context [ fhir:v "content" ] ;
fhir:variable [ fhir:v "value" ]             ] ) ;
            ( fhir:target [
fhir:context [ fhir:v "identifier" ] ;
fhir:contextType [ fhir:v "variable" ] ;
fhir:element [ fhir:v "value" ] ;
fhir:transform [ fhir:v "copy" ] ;
              ( fhir:parameter [
fhir:value [ fhir:v "value" ]               ] )             ] )           ] )         ] )       ] [
fhir:name [ fhir:v "first answser for hcid" ] ;
        ( fhir:source [
fhir:context [ fhir:v "item" ] ;
fhir:element [ fhir:v "answer" ] ;
fhir:listMode [ fhir:v "first" ] ;
fhir:variable [ fhir:v "answer" ] ;
fhir:condition [ fhir:v "item.linkId = 'hcid'" ]         ] ) ;
        ( fhir:target [
fhir:context [ fhir:v "certificate" ] ;
fhir:contextType [ fhir:v "variable" ] ;
fhir:element [ fhir:v "hcid" ] ;
fhir:variable [ fhir:v "hcid" ]         ] ) ;
        ( fhir:rule [
fhir:name [ fhir:v "set hcid and version" ] ;
          ( fhir:source [
fhir:context [ fhir:v "answer" ] ;
fhir:element [ fhir:v "valueString" ] ;
fhir:variable [ fhir:v "content" ]           ] ) ;
          ( fhir:target [
fhir:context [ fhir:v "hcid" ] ;
fhir:contextType [ fhir:v "variable" ] ;
fhir:element [ fhir:v "value" ] ;
fhir:transform [ fhir:v "copy" ] ;
            ( fhir:parameter [
fhir:value [ fhir:v "content" ]             ] )           ] [
fhir:context [ fhir:v "certificate" ] ;
fhir:contextType [ fhir:v "variable" ] ;
fhir:element [ fhir:v "version" ] ;
fhir:transform [ fhir:v "copy" ] ;
            ( fhir:parameter [
fhir:value [ fhir:v "RC2" ]             ] )           ] )         ] )       ] )     ] [
fhir:name [ fhir:v "set vaccination period" ] ;
      ( fhir:source [
fhir:context [ fhir:v "qr" ] ;
fhir:variable [ fhir:v "src" ]       ] ) ;
      ( fhir:target [
fhir:context [ fhir:v "certificate" ] ;
fhir:contextType [ fhir:v "variable" ] ;
fhir:element [ fhir:v "period" ] ;
fhir:variable [ fhir:v "period" ]       ] ) ;
      ( fhir:dependent [
fhir:name [ fhir:v "QRespToPeriod" ] ;
        ( fhir:variable [ fhir:v "src" ] [ fhir:v "period" ] )       ] )     ] )
  ] ) . #