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.
Draft as of 2024-04-24 |
<StructureMap xmlns="http://hl7.org/fhir">
<id value="CertDCCtoCoreDataSet"/>
<meta>
<versionId value="35"/>
<lastUpdated value="2023-02-15T22:34:19.164+00:00"/>
</meta>
<text>
<status value="generated"/>
<div xmlns="http://www.w3.org/1999/xhtml"><pre>map "http://smart.who.int/ddcc/StructureMap/CertDCCtoCoreDataSet" = "CertDCCtoCoreDataSet"
// Structure map transforming CertDCC logical model to bundle of Core Data Set logical model
uses "http://smart.who.int/ddcc/StructureDefinition/CertDCC" alias CWTPayload as source
uses "http://hl7.org/fhir/StructureDefinition/Bundle" alias DDCCBundle as target
uses "http://smart.who.int/ddcc/StructureDefinition/DDCCCoreDataSet" alias DDCC as produced
uses "http://smart.who.int/ddcc/StructureDefinition/DDCCCoreDataSet.VS" alias DDCCVS as produced
uses "http://smart.who.int/ddcc/StructureDefinition/DDCCCoreDataSet.TR" alias DDCCTR as produced
group CertDCCtoCoreDataSet(source src : CWTPayload, target ddccBundle : DDCCBundle) {
src."-260" as hcert then {
hcert."1" as dcc then {
dcc.v as v -> ddccBundle.entry as outentry, create('http://smart.who.int/ddcc/StructureDefinition/DDCCCoreDataSet.VS') as ddcc then {
v then DCCtoCoreDataSet(dcc, ddcc) "set DDCC";
v -> ddcc.certificate as certificate then CertDCCtoCoreDataSetCertificate(src, dcc, v, certificate) "set certificate";
v -> ddcc.vaccination as vaccination then VtoCoreDataSetVS(v, vaccination) "set vaccination";
v -> outentry.resource = ddcc "set outentry";
};
dcc.t as t -> ddccBundle.entry as outentry, create('http://smart.who.int/ddcc/StructureDefinition/DDCCCoreDataSet.TR') as ddcc then {
t then DCCtoCoreDataSet(dcc, ddcc) "set DDCC";
t -> ddcc.certificate as certificate then CertDCCtoCoreDataSetCertificate(src, dcc, t, certificate) "set certificate";
t -> ddcc.test as test then TtoCoreDataSetTR(t, test) "set test";
t -> outentry.resource = ddcc "set outentry";
};
} "eu_DCC_v1";
} "hcert";
}
group DCCtoCoreDataSet(source dcc, target ddcc : DDCC) {
dcc.dob as birthDate -> ddcc.birthDate = birthDate "set birthDate";
dcc.nam as nam then {
nam.gn as given -> ddcc.name = (given.replaceMatches('$', ' ')) "set given name";
nam.fn as family -> ddcc.name as tName, ddcc.name = append(tName, family) "add family name";
};
}
group CertDCCtoCoreDataSetCertificate(source src : CWTPayload, source dcc, source g, target certificate) {
src -> certificate.period = create('Period') as period then CwtToPeriod(src, period) "set period";
dcc.ver as ver -> certificate.version = ver "set version";
g.ci as ci -> certificate.hcid as hcid, hcid.value = ci "set hcid";
g.is as is -> certificate.issuer = create('Reference') as issuer, issuer.display = is "set issuer";
}
group CwtToPeriod(source src : CWTPayload, target tgt : Period) {
src."6" as iat -> append(iat, ' seconds') as epoch, tgt.start = (@1970-01-01T00:00:00.000+00:00 + epoch.toQuantity()) "set period start";
src."4" as exp -> append(exp, ' seconds') as epoch, tgt.end = (@1970-01-01T00:00:00.000+00:00 + epoch.toQuantity()) "set period end";
}
group VtoCoreDataSetVS(source v, target vaccination) {
v.tg as tg -> vaccination.disease as coding, coding.system = 'http://snomed.info/sct', coding.code = tg "set target disease";
v.vp as vp -> vaccination.vaccine as coding, coding.system = 'https://ec.europa.eu/health/documents/community-register/html/', coding.code = vp "set vaccine";
v.mp as mp then {
mp -> vaccination.brand as coding, coding.system = 'https://id.uvci.eu/valuesets/vaccine-medicinal-product.json', coding.code = mp "set default brand";
mp -> c('https://ec.europa.eu/health/documents/community-register/html/', mp) as coded then {
mp where coded.memberOf('http://smart.who.int/ddcc/ValueSet/vaccine-covid19-euur') -> vaccination.brand = translate(coded, 'http://smart.who.int/ddcc/ConceptMap/vaccine-covid19-euur-to-icd11', 'Coding') "translate COVID19 brand";
} "coding";
};
v.ma as ma -> vaccination.maholder as coding, coding.system = 'https://id.uvci.eu/valuesets/vaccine-mah-manf.json', coding.code = ma "set maholder";
v.dt as date -> vaccination.date = date "set date";
v.dn as dose -> vaccination.dose = dose "set dose";
v.sd as totalDoses -> vaccination.totalDoses = totalDoses "set totalDoses";
v.co as co -> vaccination.country as coding, coding.code = co, coding.system = 'urn:iso:std:iso:3166' "set country";
}
group TtoCoreDataSetTR(source t, target test) {
t.tg as tg then {
tg -> test.pathogen as coding, coding.system = 'http://snomed.info/sct', coding.code = tg "set default pathogen";
tg -> c('http://snomed.info/sct', tg) as coded then {
tg where coded.memberOf('http://smart.who.int/ddcc/ValueSet/lab-test-pathogen-covid19-snomed') -> test.pathogen = translate(coded, 'http://smart.who.int/ddcc/ConceptMap/lab-test-pathogen-snomed-to-icd11', 'Coding') "translate COVID19 pathogen";
} "coding";
};
t.tt as tt then {
tt -> test.type as coding, coding.system = 'http://loinc.org', coding.code = tt "set default type";
tt -> c('http://loinc.org', tt) as coded then {
tt where coded.memberOf('http://smart.who.int/ddcc/ValueSet/lab-test-type-covid19-loinc') -> test.type = translate(coded, 'http://smart.who.int/ddcc/ConceptMap/lab-test-type-covid19-loinc-to-icd11', 'Coding') "translate COVID19 type";
} "coding";
};
t.nm as nm -> test.brand as coding, coding.system = 'https://id.uvci.eu/valuesets/test-manf.json', coding.code = nm "set brand";
t.ma as ma -> test.manufacturer as coding, coding.system = 'https://covid-19-diagnostics.jrc.ec.europa.eu/devices', coding.code = ma "set manufacturer";
t.sc as date -> test.date = date "set date";
t.tr as tr then {
tr -> test.result as coding, coding.system = 'http://snomed.info/sct', coding.code = tr "set default result";
tr -> c('http://snomed.info/sct', tr) as coded then {
tr where coded.memberOf('http://smart.who.int/ddcc/ValueSet/lab-test-qual-result-snomed') -> test.result = translate(coded, 'http://smart.who.int/ddcc/ConceptMap/lab-test-qual-result-snomed-to-icd11', 'Coding') "translate COVID19 result";
} "coding";
};
t.tc as tc -> test.centre as coding, coding.code = tc "set centre";
t.co as co -> test.country as coding, coding.code = co, coding.system = 'urn:iso:std:iso:3166' "set country";
}
</pre></div>
</text>
<url value="http://smart.who.int/ddcc/StructureMap/CertDCCtoCoreDataSet"/>
<version value="1.0.0"/>
<name value="CertDCCtoCoreDataSet"/>
<status value="draft"/>
<date value="2024-04-24T00:11:34+00:00"/>
<publisher value="WHO"/>
<contact>
<name value="WHO"/>
<telecom>
<system value="url"/>
<value value="http://who.int"/>
</telecom>
</contact>
<description
value="Structure map transforming CertDCC logical model to bundle of Core Data Set logical model"/>
<jurisdiction>
<coding>
<system value="http://unstats.un.org/unsd/methods/m49/m49.htm"/>
<code value="001"/>
</coding>
</jurisdiction>
<structure>
<url value="http://smart.who.int/ddcc/StructureDefinition/CertDCC"/>
<mode value="source"/>
<alias value="CWTPayload"/>
</structure>
<structure>
<url value="http://hl7.org/fhir/StructureDefinition/Bundle"/>
<mode value="target"/>
<alias value="DDCCBundle"/>
</structure>
<structure>
<url
value="http://smart.who.int/ddcc/StructureDefinition/DDCCCoreDataSet"/>
<mode value="produced"/>
<alias value="DDCC"/>
</structure>
<structure>
<url
value="http://smart.who.int/ddcc/StructureDefinition/DDCCCoreDataSet.VS"/>
<mode value="produced"/>
<alias value="DDCCVS"/>
</structure>
<structure>
<url
value="http://smart.who.int/ddcc/StructureDefinition/DDCCCoreDataSet.TR"/>
<mode value="produced"/>
<alias value="DDCCTR"/>
</structure>
<group>
<name value="CertDCCtoCoreDataSet"/>
<typeMode value="none"/>
<input>
<name value="src"/>
<type value="CWTPayload"/>
<mode value="source"/>
</input>
<input>
<name value="ddccBundle"/>
<type value="DDCCBundle"/>
<mode value="target"/>
</input>
<rule>
<name value="hcert"/>
<source>
<context value="src"/>
<element value="-260"/>
<variable value="hcert"/>
</source>
<rule>
<name value="eu_DCC_v1"/>
<source>
<context value="hcert"/>
<element value="1"/>
<variable value="dcc"/>
</source>
<rule>
<name value="v"/>
<source>
<context value="dcc"/>
<element value="v"/>
<variable value="v"/>
</source>
<target>
<context value="ddccBundle"/>
<contextType value="variable"/>
<element value="entry"/>
<variable value="outentry"/>
</target>
<target>
<contextType value="variable"/>
<variable value="ddcc"/>
<transform value="create"/>
<parameter>
<valueString
value="http://smart.who.int/ddcc/StructureDefinition/DDCCCoreDataSet.VS"/>
</parameter>
</target>
<rule>
<name value="set DDCC"/>
<source>
<context value="v"/>
</source>
<dependent>
<name value="DCCtoCoreDataSet"/>
<variable value="dcc"/>
<variable value="ddcc"/>
</dependent>
</rule>
<rule>
<name value="set certificate"/>
<source>
<context value="v"/>
</source>
<target>
<context value="ddcc"/>
<contextType value="variable"/>
<element value="certificate"/>
<variable value="certificate"/>
</target>
<dependent>
<name value="CertDCCtoCoreDataSetCertificate"/>
<variable value="src"/>
<variable value="dcc"/>
<variable value="v"/>
<variable value="certificate"/>
</dependent>
</rule>
<rule>
<name value="set vaccination"/>
<source>
<context value="v"/>
</source>
<target>
<context value="ddcc"/>
<contextType value="variable"/>
<element value="vaccination"/>
<variable value="vaccination"/>
</target>
<dependent>
<name value="VtoCoreDataSetVS"/>
<variable value="v"/>
<variable value="vaccination"/>
</dependent>
</rule>
<rule>
<name value="set outentry"/>
<source>
<context value="v"/>
</source>
<target>
<context value="outentry"/>
<contextType value="variable"/>
<element value="resource"/>
<transform value="copy"/>
<parameter>
<valueId value="ddcc"/>
</parameter>
</target>
</rule>
</rule>
<rule>
<name value="t"/>
<source>
<context value="dcc"/>
<element value="t"/>
<variable value="t"/>
</source>
<target>
<context value="ddccBundle"/>
<contextType value="variable"/>
<element value="entry"/>
<variable value="outentry"/>
</target>
<target>
<contextType value="variable"/>
<variable value="ddcc"/>
<transform value="create"/>
<parameter>
<valueString
value="http://smart.who.int/ddcc/StructureDefinition/DDCCCoreDataSet.TR"/>
</parameter>
</target>
<rule>
<name value="set DDCC"/>
<source>
<context value="t"/>
</source>
<dependent>
<name value="DCCtoCoreDataSet"/>
<variable value="dcc"/>
<variable value="ddcc"/>
</dependent>
</rule>
<rule>
<name value="set certificate"/>
<source>
<context value="t"/>
</source>
<target>
<context value="ddcc"/>
<contextType value="variable"/>
<element value="certificate"/>
<variable value="certificate"/>
</target>
<dependent>
<name value="CertDCCtoCoreDataSetCertificate"/>
<variable value="src"/>
<variable value="dcc"/>
<variable value="t"/>
<variable value="certificate"/>
</dependent>
</rule>
<rule>
<name value="set test"/>
<source>
<context value="t"/>
</source>
<target>
<context value="ddcc"/>
<contextType value="variable"/>
<element value="test"/>
<variable value="test"/>
</target>
<dependent>
<name value="TtoCoreDataSetTR"/>
<variable value="t"/>
<variable value="test"/>
</dependent>
</rule>
<rule>
<name value="set outentry"/>
<source>
<context value="t"/>
</source>
<target>
<context value="outentry"/>
<contextType value="variable"/>
<element value="resource"/>
<transform value="copy"/>
<parameter>
<valueId value="ddcc"/>
</parameter>
</target>
</rule>
</rule>
</rule>
</rule>
</group>
<group>
<name value="DCCtoCoreDataSet"/>
<typeMode value="none"/>
<input>
<name value="dcc"/>
<mode value="source"/>
</input>
<input>
<name value="ddcc"/>
<type value="DDCC"/>
<mode value="target"/>
</input>
<rule>
<name value="set birthDate"/>
<source>
<context value="dcc"/>
<element value="dob"/>
<variable value="birthDate"/>
</source>
<target>
<context value="ddcc"/>
<contextType value="variable"/>
<element value="birthDate"/>
<transform value="copy"/>
<parameter>
<valueId value="birthDate"/>
</parameter>
</target>
</rule>
<rule>
<name value="nam"/>
<source>
<context value="dcc"/>
<element value="nam"/>
<variable value="nam"/>
</source>
<rule>
<name value="set given name"/>
<source>
<context value="nam"/>
<element value="gn"/>
<variable value="given"/>
</source>
<target>
<context value="ddcc"/>
<contextType value="variable"/>
<element value="name"/>
<transform value="evaluate"/>
<parameter>
<valueString value="given.replaceMatches('$', ' ')"/>
</parameter>
</target>
</rule>
<rule>
<name value="add family name"/>
<source>
<context value="nam"/>
<element value="fn"/>
<variable value="family"/>
</source>
<target>
<context value="ddcc"/>
<contextType value="variable"/>
<element value="name"/>
<variable value="tName"/>
</target>
<target>
<context value="ddcc"/>
<contextType value="variable"/>
<element value="name"/>
<transform value="append"/>
<parameter>
<valueId value="tName"/>
</parameter>
<parameter>
<valueId value="family"/>
</parameter>
</target>
</rule>
</rule>
</group>
<group>
<name value="CertDCCtoCoreDataSetCertificate"/>
<typeMode value="none"/>
<input>
<name value="src"/>
<type value="CWTPayload"/>
<mode value="source"/>
</input>
<input>
<name value="dcc"/>
<mode value="source"/>
</input>
<input>
<name value="g"/>
<mode value="source"/>
</input>
<input>
<name value="certificate"/>
<mode value="target"/>
</input>
<rule>
<name value="set period"/>
<source>
<context value="src"/>
</source>
<target>
<context value="certificate"/>
<contextType value="variable"/>
<element value="period"/>
<variable value="period"/>
<transform value="create"/>
<parameter>
<valueString value="Period"/>
</parameter>
</target>
<dependent>
<name value="CwtToPeriod"/>
<variable value="src"/>
<variable value="period"/>
</dependent>
</rule>
<rule>
<name value="set version"/>
<source>
<context value="dcc"/>
<element value="ver"/>
<variable value="ver"/>
</source>
<target>
<context value="certificate"/>
<contextType value="variable"/>
<element value="version"/>
<transform value="copy"/>
<parameter>
<valueId value="ver"/>
</parameter>
</target>
</rule>
<rule>
<name value="set hcid"/>
<source>
<context value="g"/>
<element value="ci"/>
<variable value="ci"/>
</source>
<target>
<context value="certificate"/>
<contextType value="variable"/>
<element value="hcid"/>
<variable value="hcid"/>
</target>
<target>
<context value="hcid"/>
<contextType value="variable"/>
<element value="value"/>
<transform value="copy"/>
<parameter>
<valueId value="ci"/>
</parameter>
</target>
</rule>
<rule>
<name value="set issuer"/>
<source>
<context value="g"/>
<element value="is"/>
<variable value="is"/>
</source>
<target>
<context value="certificate"/>
<contextType value="variable"/>
<element value="issuer"/>
<variable value="issuer"/>
<transform value="create"/>
<parameter>
<valueString value="Reference"/>
</parameter>
</target>
<target>
<context value="issuer"/>
<contextType value="variable"/>
<element value="display"/>
<transform value="copy"/>
<parameter>
<valueId value="is"/>
</parameter>
</target>
</rule>
</group>
<group>
<name value="CwtToPeriod"/>
<typeMode value="none"/>
<input>
<name value="src"/>
<type value="CWTPayload"/>
<mode value="source"/>
</input>
<input>
<name value="tgt"/>
<type value="Period"/>
<mode value="target"/>
</input>
<rule>
<name value="set period start"/>
<source>
<context value="src"/>
<element value="6"/>
<variable value="iat"/>
</source>
<target>
<contextType value="variable"/>
<variable value="epoch"/>
<transform value="append"/>
<parameter>
<valueId value="iat"/>
</parameter>
<parameter>
<valueString value=" seconds"/>
</parameter>
</target>
<target>
<context value="tgt"/>
<contextType value="variable"/>
<element value="start"/>
<transform value="evaluate"/>
<parameter>
<valueString
value="@1970-01-01T00:00:00.000+00:00 + epoch.toQuantity()"/>
</parameter>
</target>
</rule>
<rule>
<name value="set period end"/>
<source>
<context value="src"/>
<element value="4"/>
<variable value="exp"/>
</source>
<target>
<contextType value="variable"/>
<variable value="epoch"/>
<transform value="append"/>
<parameter>
<valueId value="exp"/>
</parameter>
<parameter>
<valueString value=" seconds"/>
</parameter>
</target>
<target>
<context value="tgt"/>
<contextType value="variable"/>
<element value="end"/>
<transform value="evaluate"/>
<parameter>
<valueString
value="@1970-01-01T00:00:00.000+00:00 + epoch.toQuantity()"/>
</parameter>
</target>
</rule>
</group>
<group>
<name value="VtoCoreDataSetVS"/>
<typeMode value="none"/>
<input>
<name value="v"/>
<mode value="source"/>
</input>
<input>
<name value="vaccination"/>
<mode value="target"/>
</input>
<rule>
<name value="set target disease"/>
<source>
<context value="v"/>
<element value="tg"/>
<variable value="tg"/>
</source>
<target>
<context value="vaccination"/>
<contextType value="variable"/>
<element value="disease"/>
<variable value="coding"/>
</target>
<target>
<context value="coding"/>
<contextType value="variable"/>
<element value="system"/>
<transform value="copy"/>
<parameter>
<valueString value="http://snomed.info/sct"/>
</parameter>
</target>
<target>
<context value="coding"/>
<contextType value="variable"/>
<element value="code"/>
<transform value="copy"/>
<parameter>
<valueId value="tg"/>
</parameter>
</target>
</rule>
<rule>
<name value="set vaccine"/>
<source>
<context value="v"/>
<element value="vp"/>
<variable value="vp"/>
</source>
<target>
<context value="vaccination"/>
<contextType value="variable"/>
<element value="vaccine"/>
<variable value="coding"/>
</target>
<target>
<context value="coding"/>
<contextType value="variable"/>
<element value="system"/>
<transform value="copy"/>
<parameter>
<valueString
value="https://ec.europa.eu/health/documents/community-register/html/"/>
</parameter>
</target>
<target>
<context value="coding"/>
<contextType value="variable"/>
<element value="code"/>
<transform value="copy"/>
<parameter>
<valueId value="vp"/>
</parameter>
</target>
</rule>
<rule>
<name value="mp"/>
<source>
<context value="v"/>
<element value="mp"/>
<variable value="mp"/>
</source>
<rule>
<name value="set default brand"/>
<source>
<context value="mp"/>
</source>
<target>
<context value="vaccination"/>
<contextType value="variable"/>
<element value="brand"/>
<variable value="coding"/>
</target>
<target>
<context value="coding"/>
<contextType value="variable"/>
<element value="system"/>
<transform value="copy"/>
<parameter>
<valueString
value="https://id.uvci.eu/valuesets/vaccine-medicinal-product.json"/>
</parameter>
</target>
<target>
<context value="coding"/>
<contextType value="variable"/>
<element value="code"/>
<transform value="copy"/>
<parameter>
<valueId value="mp"/>
</parameter>
</target>
</rule>
<rule>
<name value="coding"/>
<source>
<context value="mp"/>
</source>
<target>
<contextType value="variable"/>
<variable value="coded"/>
<transform value="c"/>
<parameter>
<valueString
value="https://ec.europa.eu/health/documents/community-register/html/"/>
</parameter>
<parameter>
<valueId value="mp"/>
</parameter>
</target>
<rule>
<name value="translate COVID19 brand"/>
<source>
<context value="mp"/>
<condition
value="coded.memberOf('http://smart.who.int/ddcc/ValueSet/vaccine-covid19-euur')"/>
</source>
<target>
<context value="vaccination"/>
<contextType value="variable"/>
<element value="brand"/>
<transform value="translate"/>
<parameter>
<valueId value="coded"/>
</parameter>
<parameter>
<valueString
value="http://smart.who.int/ddcc/ConceptMap/vaccine-covid19-euur-to-icd11"/>
</parameter>
<parameter>
<valueString value="Coding"/>
</parameter>
</target>
</rule>
</rule>
</rule>
<rule>
<name value="set maholder"/>
<source>
<context value="v"/>
<element value="ma"/>
<variable value="ma"/>
</source>
<target>
<context value="vaccination"/>
<contextType value="variable"/>
<element value="maholder"/>
<variable value="coding"/>
</target>
<target>
<context value="coding"/>
<contextType value="variable"/>
<element value="system"/>
<transform value="copy"/>
<parameter>
<valueString
value="https://id.uvci.eu/valuesets/vaccine-mah-manf.json"/>
</parameter>
</target>
<target>
<context value="coding"/>
<contextType value="variable"/>
<element value="code"/>
<transform value="copy"/>
<parameter>
<valueId value="ma"/>
</parameter>
</target>
</rule>
<rule>
<name value="set date"/>
<source>
<context value="v"/>
<element value="dt"/>
<variable value="date"/>
</source>
<target>
<context value="vaccination"/>
<contextType value="variable"/>
<element value="date"/>
<transform value="copy"/>
<parameter>
<valueId value="date"/>
</parameter>
</target>
</rule>
<rule>
<name value="set dose"/>
<source>
<context value="v"/>
<element value="dn"/>
<variable value="dose"/>
</source>
<target>
<context value="vaccination"/>
<contextType value="variable"/>
<element value="dose"/>
<transform value="copy"/>
<parameter>
<valueId value="dose"/>
</parameter>
</target>
</rule>
<rule>
<name value="set totalDoses"/>
<source>
<context value="v"/>
<element value="sd"/>
<variable value="totalDoses"/>
</source>
<target>
<context value="vaccination"/>
<contextType value="variable"/>
<element value="totalDoses"/>
<transform value="copy"/>
<parameter>
<valueId value="totalDoses"/>
</parameter>
</target>
</rule>
<rule>
<name value="set country"/>
<source>
<context value="v"/>
<element value="co"/>
<variable value="co"/>
</source>
<target>
<context value="vaccination"/>
<contextType value="variable"/>
<element value="country"/>
<variable value="coding"/>
</target>
<target>
<context value="coding"/>
<contextType value="variable"/>
<element value="code"/>
<transform value="copy"/>
<parameter>
<valueId value="co"/>
</parameter>
</target>
<target>
<context value="coding"/>
<contextType value="variable"/>
<element value="system"/>
<transform value="copy"/>
<parameter>
<valueString value="urn:iso:std:iso:3166"/>
</parameter>
</target>
</rule>
</group>
<group>
<name value="TtoCoreDataSetTR"/>
<typeMode value="none"/>
<input>
<name value="t"/>
<mode value="source"/>
</input>
<input>
<name value="test"/>
<mode value="target"/>
</input>
<rule>
<name value="tg"/>
<source>
<context value="t"/>
<element value="tg"/>
<variable value="tg"/>
</source>
<rule>
<name value="set default pathogen"/>
<source>
<context value="tg"/>
</source>
<target>
<context value="test"/>
<contextType value="variable"/>
<element value="pathogen"/>
<variable value="coding"/>
</target>
<target>
<context value="coding"/>
<contextType value="variable"/>
<element value="system"/>
<transform value="copy"/>
<parameter>
<valueString value="http://snomed.info/sct"/>
</parameter>
</target>
<target>
<context value="coding"/>
<contextType value="variable"/>
<element value="code"/>
<transform value="copy"/>
<parameter>
<valueId value="tg"/>
</parameter>
</target>
</rule>
<rule>
<name value="coding"/>
<source>
<context value="tg"/>
</source>
<target>
<contextType value="variable"/>
<variable value="coded"/>
<transform value="c"/>
<parameter>
<valueString value="http://snomed.info/sct"/>
</parameter>
<parameter>
<valueId value="tg"/>
</parameter>
</target>
<rule>
<name value="translate COVID19 pathogen"/>
<source>
<context value="tg"/>
<condition
value="coded.memberOf('http://smart.who.int/ddcc/ValueSet/lab-test-pathogen-covid19-snomed')"/>
</source>
<target>
<context value="test"/>
<contextType value="variable"/>
<element value="pathogen"/>
<transform value="translate"/>
<parameter>
<valueId value="coded"/>
</parameter>
<parameter>
<valueString
value="http://smart.who.int/ddcc/ConceptMap/lab-test-pathogen-snomed-to-icd11"/>
</parameter>
<parameter>
<valueString value="Coding"/>
</parameter>
</target>
</rule>
</rule>
</rule>
<rule>
<name value="tt"/>
<source>
<context value="t"/>
<element value="tt"/>
<variable value="tt"/>
</source>
<rule>
<name value="set default type"/>
<source>
<context value="tt"/>
</source>
<target>
<context value="test"/>
<contextType value="variable"/>
<element value="type"/>
<variable value="coding"/>
</target>
<target>
<context value="coding"/>
<contextType value="variable"/>
<element value="system"/>
<transform value="copy"/>
<parameter>
<valueString value="http://loinc.org"/>
</parameter>
</target>
<target>
<context value="coding"/>
<contextType value="variable"/>
<element value="code"/>
<transform value="copy"/>
<parameter>
<valueId value="tt"/>
</parameter>
</target>
</rule>
<rule>
<name value="coding"/>
<source>
<context value="tt"/>
</source>
<target>
<contextType value="variable"/>
<variable value="coded"/>
<transform value="c"/>
<parameter>
<valueString value="http://loinc.org"/>
</parameter>
<parameter>
<valueId value="tt"/>
</parameter>
</target>
<rule>
<name value="translate COVID19 type"/>
<source>
<context value="tt"/>
<condition
value="coded.memberOf('http://smart.who.int/ddcc/ValueSet/lab-test-type-covid19-loinc')"/>
</source>
<target>
<context value="test"/>
<contextType value="variable"/>
<element value="type"/>
<transform value="translate"/>
<parameter>
<valueId value="coded"/>
</parameter>
<parameter>
<valueString
value="http://smart.who.int/ddcc/ConceptMap/lab-test-type-covid19-loinc-to-icd11"/>
</parameter>
<parameter>
<valueString value="Coding"/>
</parameter>
</target>
</rule>
</rule>
</rule>
<rule>
<name value="set brand"/>
<source>
<context value="t"/>
<element value="nm"/>
<variable value="nm"/>
</source>
<target>
<context value="test"/>
<contextType value="variable"/>
<element value="brand"/>
<variable value="coding"/>
</target>
<target>
<context value="coding"/>
<contextType value="variable"/>
<element value="system"/>
<transform value="copy"/>
<parameter>
<valueString value="https://id.uvci.eu/valuesets/test-manf.json"/>
</parameter>
</target>
<target>
<context value="coding"/>
<contextType value="variable"/>
<element value="code"/>
<transform value="copy"/>
<parameter>
<valueId value="nm"/>
</parameter>
</target>
</rule>
<rule>
<name value="set manufacturer"/>
<source>
<context value="t"/>
<element value="ma"/>
<variable value="ma"/>
</source>
<target>
<context value="test"/>
<contextType value="variable"/>
<element value="manufacturer"/>
<variable value="coding"/>
</target>
<target>
<context value="coding"/>
<contextType value="variable"/>
<element value="system"/>
<transform value="copy"/>
<parameter>
<valueString
value="https://covid-19-diagnostics.jrc.ec.europa.eu/devices"/>
</parameter>
</target>
<target>
<context value="coding"/>
<contextType value="variable"/>
<element value="code"/>
<transform value="copy"/>
<parameter>
<valueId value="ma"/>
</parameter>
</target>
</rule>
<rule>
<name value="set date"/>
<source>
<context value="t"/>
<element value="sc"/>
<variable value="date"/>
</source>
<target>
<context value="test"/>
<contextType value="variable"/>
<element value="date"/>
<transform value="copy"/>
<parameter>
<valueId value="date"/>
</parameter>
</target>
</rule>
<rule>
<name value="tr"/>
<source>
<context value="t"/>
<element value="tr"/>
<variable value="tr"/>
</source>
<rule>
<name value="set default result"/>
<source>
<context value="tr"/>
</source>
<target>
<context value="test"/>
<contextType value="variable"/>
<element value="result"/>
<variable value="coding"/>
</target>
<target>
<context value="coding"/>
<contextType value="variable"/>
<element value="system"/>
<transform value="copy"/>
<parameter>
<valueString value="http://snomed.info/sct"/>
</parameter>
</target>
<target>
<context value="coding"/>
<contextType value="variable"/>
<element value="code"/>
<transform value="copy"/>
<parameter>
<valueId value="tr"/>
</parameter>
</target>
</rule>
<rule>
<name value="coding"/>
<source>
<context value="tr"/>
</source>
<target>
<contextType value="variable"/>
<variable value="coded"/>
<transform value="c"/>
<parameter>
<valueString value="http://snomed.info/sct"/>
</parameter>
<parameter>
<valueId value="tr"/>
</parameter>
</target>
<rule>
<name value="translate COVID19 result"/>
<source>
<context value="tr"/>
<condition
value="coded.memberOf('http://smart.who.int/ddcc/ValueSet/lab-test-qual-result-snomed')"/>
</source>
<target>
<context value="test"/>
<contextType value="variable"/>
<element value="result"/>
<transform value="translate"/>
<parameter>
<valueId value="coded"/>
</parameter>
<parameter>
<valueString
value="http://smart.who.int/ddcc/ConceptMap/lab-test-qual-result-snomed-to-icd11"/>
</parameter>
<parameter>
<valueString value="Coding"/>
</parameter>
</target>
</rule>
</rule>
</rule>
<rule>
<name value="set centre"/>
<source>
<context value="t"/>
<element value="tc"/>
<variable value="tc"/>
</source>
<target>
<context value="test"/>
<contextType value="variable"/>
<element value="centre"/>
<variable value="coding"/>
</target>
<target>
<context value="coding"/>
<contextType value="variable"/>
<element value="code"/>
<transform value="copy"/>
<parameter>
<valueId value="tc"/>
</parameter>
</target>
</rule>
<rule>
<name value="set country"/>
<source>
<context value="t"/>
<element value="co"/>
<variable value="co"/>
</source>
<target>
<context value="test"/>
<contextType value="variable"/>
<element value="country"/>
<variable value="coding"/>
</target>
<target>
<context value="coding"/>
<contextType value="variable"/>
<element value="code"/>
<transform value="copy"/>
<parameter>
<valueId value="co"/>
</parameter>
</target>
<target>
<context value="coding"/>
<contextType value="variable"/>
<element value="system"/>
<transform value="copy"/>
<parameter>
<valueString value="urn:iso:std:iso:3166"/>
</parameter>
</target>
</rule>
</group>
</StructureMap>
IG © 2021+ WHO. Package who.ddcc#1.0.0 based on FHIR 4.0.1. Generated 2024-04-24
Links: Table of Contents |
QA Report
| Issues
| Version History | License