FHIR Mapping Language (FML), published by HL7 International / FHIR Infrastructure. This guide is not an authorized publication; it is the continuous build for version 0.1.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/mapping-language-ig/ and changes regularly. See the Directory of published versions
| Page standards status: Informative |
{
"resourceType" : "StructureMap",
"resourceDefinition" : "http://hl7.org/fhir/StructureDefinition/StructureMap|0.1.0",
"text" : {
"status" : "generated",
"div" : "<div xmlns=\"http://www.w3.org/1999/xhtml\"><p class=\"res-header-id\"><b>Generated Narrative: StructureMap StructArrayToArray</b></p><a name=\"StructArrayToArray\"> </a><a name=\"hcStructArrayToArray\"> </a><pre class=\"fml\">\r\n<span style=\"color: #cc00cc\">/// <b>url</b> = </span><span style=\"color: blue\">'http://hl7.org/fhir/uv/mapping-language/StructureMap/StructArrayToArray'</span>\r\n<span style=\"color: #cc00cc\">/// <b>name</b> = </span><span style=\"color: blue\">'StructArrayToArray'</span>\r\n<span style=\"color: #cc00cc\">/// <b>status</b> = </span><span style=\"color: blue\">'active'</span>\r\n<span style=\"color: #cc00cc\">/// <b>description</b> = </span><span style=\"color: blue\">'Example demonstrating mapping a repeating source array to a repeating target array'</span>\r\n\r\n<b>uses</b><span style=\"color: navy\"> "</span><a href=\"http://hl7.org/fhir/6.0.0-ballot5/patient.html\" title=\"Patient\">http://hl7.org/fhir/StructureDefinition/Patient</a><span style=\"color: navy\">" </span><b>as </b><b>source</b>\r\n<b>uses</b><span style=\"color: navy\"> "</span><a href=\"http://hl7.org/fhir/6.0.0-ballot5/patient.html\" title=\"Patient\">http://hl7.org/fhir/StructureDefinition/Patient</a><span style=\"color: navy\">" </span><b>as </b><b>target</b>\r\n\r\n<b>group </b>StructArrayToArray<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span><span style=\"color: navy\"> : </span>Patient, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\"> : </span>Patient<span style=\"color: navy\">)</span><span style=\"color: navy\"> {\r\n</span> <span style=\"color: navy\">// </span><span style=\"color: green\">one target name created for each source name</span>\r\n src.name<b> as </b><span style=\"color: maroon\">sn</span><span style=\"color: navy\"><b> -> </b></span>tgt.name<b> as </b><span style=\"color: maroon\">tn</span><b> then</b><span style=\"color: navy\"> {\r\n</span> sn.family<b> as </b><span style=\"color: maroon\">f</span><span style=\"color: navy\"><b> -> </b></span>tn.family = <span style=\"color: maroon\">f</span> <i>"r1"</i><span style=\"color: navy\">;</span>\r\n sn.given<b> as </b><span style=\"color: maroon\">g</span><span style=\"color: navy\"><b> -> </b></span>tn.given = <span style=\"color: maroon\">g</span> <i>"r2"</i><span style=\"color: navy\">;</span>\r\n sn.use<b> as </b><span style=\"color: maroon\">u</span><span style=\"color: navy\"><b> -> </b></span>tn.use = <span style=\"color: maroon\">u</span> <i>"r3"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span> <i>"r4"</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span></pre></div>"
},
"url" : "http://hl7.org/fhir/uv/mapping-language/StructureMap/StructArrayToArray",
"name" : "StructArrayToArray",
"status" : "active",
"description" : "Example demonstrating mapping a repeating source array to a repeating target array",
"structure" : [
{
"url" : "http://hl7.org/fhir/StructureDefinition/Patient",
"mode" : "source"
},
{
"url" : "http://hl7.org/fhir/StructureDefinition/Patient",
"mode" : "target"
}
],
"group" : [
{
"name" : "StructArrayToArray",
"input" : [
{
"mode" : "source",
"name" : "src",
"type" : "Patient"
},
{
"mode" : "target",
"name" : "tgt",
"type" : "Patient"
}
],
"rule" : [
{
"source" : [
{
"context" : "src",
"element" : [
"name"
],
"variable" : "sn"
}
],
"target" : [
{
"context" : "tgt",
"element" : [
"name"
],
"variable" : "tn"
}
],
"rule" : [
{
"source" : [
{
"context" : "sn",
"element" : [
"family"
],
"variable" : "f"
}
],
"target" : [
{
"context" : "tn",
"element" : [
"family"
],
"transform" : "copy",
"parameter" : [
{
"valueId" : "f"
}
]
}
],
"name" : "r1"
},
{
"source" : [
{
"context" : "sn",
"element" : [
"given"
],
"variable" : "g"
}
],
"target" : [
{
"context" : "tn",
"element" : [
"given"
],
"transform" : "copy",
"parameter" : [
{
"valueId" : "g"
}
]
}
],
"name" : "r2"
},
{
"source" : [
{
"context" : "sn",
"element" : [
"use"
],
"variable" : "u"
}
],
"target" : [
{
"context" : "tn",
"element" : [
"use"
],
"transform" : "copy",
"parameter" : [
{
"valueId" : "u"
}
]
}
],
"name" : "r3"
}
],
"documentation" : "one target name created for each source name",
"name" : "r4"
}
]
}
],
"id" : "StructArrayToArray",
"language" : "en"
}