FHIR Cross-Version Mapping Pack
0.1.0 - Ballot for Release 5.1.0 International flag

FHIR Cross-Version Mapping Pack, 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/fhir-cross-version/ and changes regularly. See the Directory of published versions

: Primitive Transforms: R3 to R2 - JSON Representation

Page standards status: Draft Maturity Level: 1

Raw json | Download


{
  "resourceType" : "StructureMap",
  "id" : "primitives3to2",
  "text" : {
    "status" : "generated",
    "div" : "<div xmlns=\"http://www.w3.org/1999/xhtml\"><pre class=\"fml\">\r\n<span style=\"color: #cc00cc\">/// <b>url</b> = </span><span style=\"color: blue\">'http://hl7.org/fhir/StructureMap/primitives3to2'</span>\r\n<span style=\"color: #cc00cc\">/// <b>name</b> = </span><span style=\"color: blue\">'primitives3to2'</span>\r\n<span style=\"color: #cc00cc\">/// <b>title</b> = </span><span style=\"color: blue\">'Primitive Transforms: R3 to R2'</span>\r\n<span style=\"color: #cc00cc\">/// <b>status</b> = </span><span style=\"color: blue\">'active'</span>\r\n\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/3.0/base64Binary<span style=\"color: navy\">&quot; </span><b>as </b><b>source</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/1.0/base64Binary<span style=\"color: navy\">&quot; </span><b>alias </b>base64BinaryR2 <b>as </b><b>target</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/3.0/boolean<span style=\"color: navy\">&quot; </span><b>as </b><b>source</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/1.0/boolean<span style=\"color: navy\">&quot; </span><b>alias </b>booleanR2 <b>as </b><b>target</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/3.0/code<span style=\"color: navy\">&quot; </span><b>as </b><b>source</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/1.0/code<span style=\"color: navy\">&quot; </span><b>alias </b>codeR2 <b>as </b><b>target</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/3.0/date<span style=\"color: navy\">&quot; </span><b>as </b><b>source</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/1.0/date<span style=\"color: navy\">&quot; </span><b>alias </b>dateR2 <b>as </b><b>target</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/3.0/dateTime<span style=\"color: navy\">&quot; </span><b>as </b><b>source</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/1.0/dateTime<span style=\"color: navy\">&quot; </span><b>alias </b>dateTimeR2 <b>as </b><b>target</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/3.0/decimal<span style=\"color: navy\">&quot; </span><b>as </b><b>source</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/1.0/decimal<span style=\"color: navy\">&quot; </span><b>alias </b>decimalR2 <b>as </b><b>target</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/3.0/id<span style=\"color: navy\">&quot; </span><b>as </b><b>source</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/1.0/id<span style=\"color: navy\">&quot; </span><b>alias </b>idR2 <b>as </b><b>target</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/3.0/instant<span style=\"color: navy\">&quot; </span><b>as </b><b>source</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/1.0/instant<span style=\"color: navy\">&quot; </span><b>alias </b>instantR2 <b>as </b><b>target</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/3.0/integer<span style=\"color: navy\">&quot; </span><b>as </b><b>source</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/1.0/integer<span style=\"color: navy\">&quot; </span><b>alias </b>integerR2 <b>as </b><b>target</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/3.0/markdown<span style=\"color: navy\">&quot; </span><b>as </b><b>source</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/1.0/markdown<span style=\"color: navy\">&quot; </span><b>alias </b>markdownR2 <b>as </b><b>target</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/3.0/oid<span style=\"color: navy\">&quot; </span><b>as </b><b>source</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/1.0/oid<span style=\"color: navy\">&quot; </span><b>alias </b>oidR2 <b>as </b><b>target</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/3.0/positiveInt<span style=\"color: navy\">&quot; </span><b>as </b><b>source</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/1.0/positiveInt<span style=\"color: navy\">&quot; </span><b>alias </b>positiveIntR2 <b>as </b><b>target</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/3.0/string<span style=\"color: navy\">&quot; </span><b>as </b><b>source</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/1.0/string<span style=\"color: navy\">&quot; </span><b>alias </b>stringR2 <b>as </b><b>target</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/3.0/time<span style=\"color: navy\">&quot; </span><b>as </b><b>source</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/1.0/time<span style=\"color: navy\">&quot; </span><b>alias </b>timeR2 <b>as </b><b>target</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/3.0/unsignedInt<span style=\"color: navy\">&quot; </span><b>as </b><b>source</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/1.0/unsignedInt<span style=\"color: navy\">&quot; </span><b>alias </b>unsignedIntR2 <b>as </b><b>target</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/3.0/uri<span style=\"color: navy\">&quot; </span><b>as </b><b>source</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/1.0/uri<span style=\"color: navy\">&quot; </span><b>alias </b>uriR2 <b>as </b><b>target</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/3.0/uuid<span style=\"color: navy\">&quot; </span><b>as </b><b>source</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/1.0/uuid<span style=\"color: navy\">&quot; </span><b>alias </b>uuidR2 <b>as </b><b>target</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/3.0/xhtml<span style=\"color: navy\">&quot; </span><b>as </b><b>source</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/1.0/xhtml<span style=\"color: navy\">&quot; </span><b>alias </b>xhtmlR2 <b>as </b><b>target</b>\r\n\r\n<b>imports</b><span style=\"color: navy\"> &quot;</span><a href=\"StructureMap-Element3to2.html\" title=\"Period Transforms: R3 to R2\">http://hl7.org/fhir/StructureMap/Element3to2</a><span style=\"color: navy\">&quot;\r\n</span>\r\n<b>group </b>base64Binary<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span><span style=\"color: navy\"> : </span>base64Binary, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\"> : </span>base64BinaryR2<span style=\"color: navy\">)</span><b> extends </b>Element<b> &lt;&lt;type+&gt;&gt;</b><span style=\"color: navy\"> {\r\n</span>  src.value<b> as </b><span style=\"color: maroon\">v</span><span style=\"color: navy\"><b> -&gt; </b></span>tgt.value = <span style=\"color: maroon\">v</span> <i>&quot;base64Binary-value&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>boolean<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span><span style=\"color: navy\"> : </span>boolean, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\"> : </span>booleanR2<span style=\"color: navy\">)</span><b> extends </b>Element<b> &lt;&lt;type+&gt;&gt;</b><span style=\"color: navy\"> {\r\n</span>  src.value<b> as </b><span style=\"color: maroon\">v</span><span style=\"color: navy\"><b> -&gt; </b></span>tgt.value = <span style=\"color: maroon\">v</span> <i>&quot;boolean-value&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>code<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span><span style=\"color: navy\"> : </span>code, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\"> : </span>codeR2<span style=\"color: navy\">)</span><b> extends </b>Element<b> &lt;&lt;type+&gt;&gt;</b><span style=\"color: navy\"> {\r\n</span>  src.value<b> as </b><span style=\"color: maroon\">v</span><span style=\"color: navy\"><b> -&gt; </b></span>tgt.value = <span style=\"color: maroon\">v</span> <i>&quot;code-value&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>date<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span><span style=\"color: navy\"> : </span>date, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\"> : </span>dateR2<span style=\"color: navy\">)</span><b> extends </b>Element<b> &lt;&lt;type+&gt;&gt;</b><span style=\"color: navy\"> {\r\n</span>  src.value<b> as </b><span style=\"color: maroon\">v</span><span style=\"color: navy\"><b> -&gt; </b></span>tgt.value = <span style=\"color: maroon\">v</span> <i>&quot;date-value&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>dateTime<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span><span style=\"color: navy\"> : </span>dateTime, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\"> : </span>dateTimeR2<span style=\"color: navy\">)</span><b> extends </b>Element<b> &lt;&lt;type+&gt;&gt;</b><span style=\"color: navy\"> {\r\n</span>  src.value<b> as </b><span style=\"color: maroon\">v</span><span style=\"color: navy\"><b> -&gt; </b></span>tgt.value = <span style=\"color: maroon\">v</span> <i>&quot;dateTime-value&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>decimal<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span><span style=\"color: navy\"> : </span>decimal, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\"> : </span>decimalR2<span style=\"color: navy\">)</span><b> extends </b>Element<b> &lt;&lt;type+&gt;&gt;</b><span style=\"color: navy\"> {\r\n</span>  src.value<b> as </b><span style=\"color: maroon\">v</span><span style=\"color: navy\"><b> -&gt; </b></span>tgt.value = <span style=\"color: maroon\">v</span> <i>&quot;decimal-value&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>id<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span><span style=\"color: navy\"> : </span>id, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\"> : </span>idR2<span style=\"color: navy\">)</span><b> extends </b>Element<b> &lt;&lt;type+&gt;&gt;</b><span style=\"color: navy\"> {\r\n</span>  src.value<b> as </b><span style=\"color: maroon\">v</span><span style=\"color: navy\"><b> -&gt; </b></span>tgt.value = <span style=\"color: maroon\">v</span> <i>&quot;id-value&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>instant<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span><span style=\"color: navy\"> : </span>instant, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\"> : </span>instantR2<span style=\"color: navy\">)</span><b> extends </b>Element<b> &lt;&lt;type+&gt;&gt;</b><span style=\"color: navy\"> {\r\n</span>  src.value<b> as </b><span style=\"color: maroon\">v</span><span style=\"color: navy\"><b> -&gt; </b></span>tgt.value = <span style=\"color: maroon\">v</span> <i>&quot;instant-value&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>integer<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span><span style=\"color: navy\"> : </span>integer, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\"> : </span>integerR2<span style=\"color: navy\">)</span><b> extends </b>Element<b> &lt;&lt;type+&gt;&gt;</b><span style=\"color: navy\"> {\r\n</span>  src.value<b> as </b><span style=\"color: maroon\">v</span><span style=\"color: navy\"><b> -&gt; </b></span>tgt.value = <span style=\"color: maroon\">v</span> <i>&quot;integer-value&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>markdown<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span><span style=\"color: navy\"> : </span>markdown, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\"> : </span>markdownR2<span style=\"color: navy\">)</span><b> extends </b>Element<b> &lt;&lt;type+&gt;&gt;</b><span style=\"color: navy\"> {\r\n</span>  src.value<b> as </b><span style=\"color: maroon\">v</span><span style=\"color: navy\"><b> -&gt; </b></span>tgt.value = <span style=\"color: maroon\">v</span> <i>&quot;markdown-value&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>oid<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span><span style=\"color: navy\"> : </span>oid, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\"> : </span>oidR2<span style=\"color: navy\">)</span><b> extends </b>Element<b> &lt;&lt;type+&gt;&gt;</b><span style=\"color: navy\"> {\r\n</span>  src.value<b> as </b><span style=\"color: maroon\">v</span><span style=\"color: navy\"><b> -&gt; </b></span>tgt.value = <span style=\"color: maroon\">v</span> <i>&quot;oid-value&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>positiveInt<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span><span style=\"color: navy\"> : </span>positiveInt, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\"> : </span>positiveIntR2<span style=\"color: navy\">)</span><b> extends </b>Element<b> &lt;&lt;type+&gt;&gt;</b><span style=\"color: navy\"> {\r\n</span>  src.value<b> as </b><span style=\"color: maroon\">v</span><span style=\"color: navy\"><b> -&gt; </b></span>tgt.value = <span style=\"color: maroon\">v</span> <i>&quot;positiveInt-value&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>string<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span><span style=\"color: navy\"> : </span>string, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\"> : </span>stringR2<span style=\"color: navy\">)</span><b> extends </b>Element<b> &lt;&lt;type+&gt;&gt;</b><span style=\"color: navy\"> {\r\n</span>  src.value<b> as </b><span style=\"color: maroon\">v</span><span style=\"color: navy\"><b> -&gt; </b></span>tgt.value = <span style=\"color: maroon\">v</span> <i>&quot;string-value&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>time<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span><span style=\"color: navy\"> : </span>time, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\"> : </span>timeR2<span style=\"color: navy\">)</span><b> extends </b>Element<b> &lt;&lt;type+&gt;&gt;</b><span style=\"color: navy\"> {\r\n</span>  src.value<b> as </b><span style=\"color: maroon\">v</span><span style=\"color: navy\"><b> -&gt; </b></span>tgt.value = <span style=\"color: maroon\">v</span> <i>&quot;time-value&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>unsignedInt<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span><span style=\"color: navy\"> : </span>unsignedInt, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\"> : </span>unsignedIntR2<span style=\"color: navy\">)</span><b> extends </b>Element<b> &lt;&lt;type+&gt;&gt;</b><span style=\"color: navy\"> {\r\n</span>  src.value<b> as </b><span style=\"color: maroon\">v</span><span style=\"color: navy\"><b> -&gt; </b></span>tgt.value = <span style=\"color: maroon\">v</span> <i>&quot;unsignedInt-value&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>uri<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span><span style=\"color: navy\"> : </span>uri, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\"> : </span>uriR2<span style=\"color: navy\">)</span><b> extends </b>Element<b> &lt;&lt;type+&gt;&gt;</b><span style=\"color: navy\"> {\r\n</span>  src.value<b> as </b><span style=\"color: maroon\">v</span><span style=\"color: navy\"><b> -&gt; </b></span>tgt.value = <span style=\"color: maroon\">v</span> <i>&quot;uri-value&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>uuid<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span><span style=\"color: navy\"> : </span>uuid, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\"> : </span>uuidR2<span style=\"color: navy\">)</span><b> extends </b>Element<b> &lt;&lt;type+&gt;&gt;</b><span style=\"color: navy\"> {\r\n</span>  src.value<b> as </b><span style=\"color: maroon\">v</span><span style=\"color: navy\"><b> -&gt; </b></span>tgt.value = <span style=\"color: maroon\">v</span> <i>&quot;uuid-value&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>xhtml<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span><span style=\"color: navy\"> : </span>xhtml, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\"> : </span>xhtmlR2<span style=\"color: navy\">)</span><b> extends </b>Element<b> &lt;&lt;type+&gt;&gt;</b><span style=\"color: navy\"> {\r\n</span>  src.value<b> as </b><span style=\"color: maroon\">v</span><span style=\"color: navy\"><b> -&gt; </b></span>tgt.value = <span style=\"color: maroon\">v</span> <i>&quot;xhtml-value&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>markdownToString<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span><span style=\"color: navy\"> : </span>markdown, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\"> : </span>stringR2<span style=\"color: navy\">)</span><b> extends </b>Element<b> &lt;&lt;types&gt;&gt;</b><span style=\"color: navy\"> {\r\n</span>  src.value<b> as </b><span style=\"color: maroon\">v</span><span style=\"color: navy\"><b> -&gt; </b></span>tgt.value = <span style=\"color: maroon\">v</span> <i>&quot;markdownToString-value&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>uriToCode<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span><span style=\"color: navy\"> : </span>uri, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\"> : </span>codeR2<span style=\"color: navy\">)</span><b> extends </b>Element<b> &lt;&lt;types&gt;&gt;</b><span style=\"color: navy\"> {\r\n</span>  src.value<b> as </b><span style=\"color: maroon\">v</span><span style=\"color: navy\"><b> -&gt; </b></span>tgt.value = <span style=\"color: maroon\">v</span> <i>&quot;uriToCode-value&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>uriToString<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span><span style=\"color: navy\"> : </span>uri, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\"> : </span>stringR2<span style=\"color: navy\">)</span><b> extends </b>Element<b> &lt;&lt;types&gt;&gt;</b><span style=\"color: navy\"> {\r\n</span>  src.value<b> as </b><span style=\"color: maroon\">v</span><span style=\"color: navy\"><b> -&gt; </b></span>tgt.value = <span style=\"color: maroon\">v</span> <i>&quot;uriToString-value&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>stringToXhtml<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span><span style=\"color: navy\"> : </span>string, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\"> : </span>xhtmlR2<span style=\"color: navy\">)</span><b> extends </b>Element<b> &lt;&lt;types&gt;&gt;</b><span style=\"color: navy\"> {\r\n</span>  src.value<b> as </b><span style=\"color: maroon\">v</span><span style=\"color: navy\"><b> -&gt; </b></span>tgt.value = <span style=\"color: maroon\">v</span> <i>&quot;stringToXhtml-value&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>codeToString<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span><span style=\"color: navy\"> : </span>code, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\"> : </span>stringR2<span style=\"color: navy\">)</span><b> extends </b>Element<b> &lt;&lt;types&gt;&gt;</b><span style=\"color: navy\"> {\r\n</span>  src.value<b> as </b><span style=\"color: maroon\">v</span><span style=\"color: navy\"><b> -&gt; </b></span>tgt.value = <span style=\"color: maroon\">v</span> <i>&quot;uriToCode-value&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>stringToId<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span><span style=\"color: navy\"> : </span>string, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\"> : </span>idR2<span style=\"color: navy\">)</span><b> extends </b>Element<b> &lt;&lt;types&gt;&gt;</b><span style=\"color: navy\"> {\r\n</span>  src.value<b> as </b><span style=\"color: maroon\">v</span><span style=\"color: navy\"><b> -&gt; </b></span>tgt.value = <span style=\"color: maroon\">v</span> <i>&quot;stringToId-value&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>idToString<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span><span style=\"color: navy\"> : </span>id, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\"> : </span>stringR2<span style=\"color: navy\">)</span><b> extends </b>Element<b> &lt;&lt;types&gt;&gt;</b><span style=\"color: navy\"> {\r\n</span>  src.value<b> as </b><span style=\"color: maroon\">v</span><span style=\"color: navy\"><b> -&gt; </b></span>tgt.value = <span style=\"color: maroon\">v</span> <i>&quot;stringToId-value&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>positiveIntToInteger<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span><span style=\"color: navy\"> : </span>positiveIntR2, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\"> : </span>integer<span style=\"color: navy\">)</span><b> extends </b>Element<b> &lt;&lt;types&gt;&gt;</b><span style=\"color: navy\"> {\r\n</span>  src.value<b> as </b><span style=\"color: maroon\">v</span><span style=\"color: navy\"><b> -&gt; </b></span>tgt.value = <span style=\"color: maroon\">v</span> <i>&quot;positiveIntToInteger-value&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>unsignedIntToInteger<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span><span style=\"color: navy\"> : </span>unsignedIntR2, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\"> : </span>integer<span style=\"color: navy\">)</span><b> extends </b>Element<b> &lt;&lt;types&gt;&gt;</b><span style=\"color: navy\"> {\r\n</span>  src.value<b> as </b><span style=\"color: maroon\">v</span><span style=\"color: navy\"><b> -&gt; </b></span>tgt.value = <span style=\"color: maroon\">v</span> <i>&quot;unsignedIntToInteger-value&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>dateToDateTime<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span><span style=\"color: navy\"> : </span>date, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\"> : </span>dateTimeR2<span style=\"color: navy\">)</span><b> extends </b>Element<b> &lt;&lt;types&gt;&gt;</b><span style=\"color: navy\"> {\r\n</span>  src.value<b> as </b><span style=\"color: maroon\">v</span><span style=\"color: navy\"><b> -&gt; </b></span>tgt.value = <span style=\"color: maroon\">v</span> <i>&quot;dateToDateTime-value&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>dateTimeToDate<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span><span style=\"color: navy\"> : </span>dateTime, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\"> : </span>dateR2<span style=\"color: navy\">)</span><b> extends </b>Element<b> &lt;&lt;types&gt;&gt;</b><span style=\"color: navy\"> {\r\n</span>  src.value<b> as </b><span style=\"color: maroon\">v</span><span style=\"color: navy\"><b> -&gt; </b></span>tgt.value = <span style=\"color: navy\">(</span>v.substring(0, 8)<span style=\"color: navy\">)</span> <i>&quot;dateTimeToDate-value&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span></pre></div>"
  },
  "extension" : [
    {
      "url" : "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg",
      "valueCode" : "fhir"
    },
    {
      "url" : "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm",
      "valueInteger" : 1,
      "_valueInteger" : {
        "extension" : [
          {
            "url" : "http://hl7.org/fhir/StructureDefinition/structuredefinition-conformance-derivedFrom",
            "valueCanonical" : "http://hl7.org/fhir/extensions/ImplementationGuide/hl7.fhir.uv.xver"
          }
        ]
      }
    },
    {
      "url" : "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status",
      "valueCode" : "draft",
      "_valueCode" : {
        "extension" : [
          {
            "url" : "http://hl7.org/fhir/StructureDefinition/structuredefinition-conformance-derivedFrom",
            "valueCanonical" : "http://hl7.org/fhir/extensions/ImplementationGuide/hl7.fhir.uv.xver"
          }
        ]
      }
    }
  ],
  "url" : "http://hl7.org/fhir/StructureMap/primitives3to2",
  "version" : "0.1.0",
  "name" : "primitives3to2",
  "title" : "Primitive Transforms: R3 to R2",
  "status" : "active",
  "date" : "2024-02-22T03:16:50+00:00",
  "publisher" : "HL7 International / FHIR Infrastructure",
  "contact" : [
    {
      "telecom" : [
        {
          "system" : "url",
          "value" : "http://www.hl7.org/Special/committees/fiwg"
        }
      ]
    }
  ],
  "description" : "PrimitiveTransformsR3toR2",
  "jurisdiction" : [
    {
      "coding" : [
        {
          "system" : "http://unstats.un.org/unsd/methods/m49/m49.htm",
          "code" : "001"
        }
      ]
    }
  ],
  "structure" : [
    {
      "url" : "http://hl7.org/fhir/3.0/base64Binary",
      "mode" : "source"
    },
    {
      "url" : "http://hl7.org/fhir/1.0/base64Binary",
      "mode" : "target",
      "alias" : "base64BinaryR2"
    },
    {
      "url" : "http://hl7.org/fhir/3.0/boolean",
      "mode" : "source"
    },
    {
      "url" : "http://hl7.org/fhir/1.0/boolean",
      "mode" : "target",
      "alias" : "booleanR2"
    },
    {
      "url" : "http://hl7.org/fhir/3.0/code",
      "mode" : "source"
    },
    {
      "url" : "http://hl7.org/fhir/1.0/code",
      "mode" : "target",
      "alias" : "codeR2"
    },
    {
      "url" : "http://hl7.org/fhir/3.0/date",
      "mode" : "source"
    },
    {
      "url" : "http://hl7.org/fhir/1.0/date",
      "mode" : "target",
      "alias" : "dateR2"
    },
    {
      "url" : "http://hl7.org/fhir/3.0/dateTime",
      "mode" : "source"
    },
    {
      "url" : "http://hl7.org/fhir/1.0/dateTime",
      "mode" : "target",
      "alias" : "dateTimeR2"
    },
    {
      "url" : "http://hl7.org/fhir/3.0/decimal",
      "mode" : "source"
    },
    {
      "url" : "http://hl7.org/fhir/1.0/decimal",
      "mode" : "target",
      "alias" : "decimalR2"
    },
    {
      "url" : "http://hl7.org/fhir/3.0/id",
      "mode" : "source"
    },
    {
      "url" : "http://hl7.org/fhir/1.0/id",
      "mode" : "target",
      "alias" : "idR2"
    },
    {
      "url" : "http://hl7.org/fhir/3.0/instant",
      "mode" : "source"
    },
    {
      "url" : "http://hl7.org/fhir/1.0/instant",
      "mode" : "target",
      "alias" : "instantR2"
    },
    {
      "url" : "http://hl7.org/fhir/3.0/integer",
      "mode" : "source"
    },
    {
      "url" : "http://hl7.org/fhir/1.0/integer",
      "mode" : "target",
      "alias" : "integerR2"
    },
    {
      "url" : "http://hl7.org/fhir/3.0/markdown",
      "mode" : "source"
    },
    {
      "url" : "http://hl7.org/fhir/1.0/markdown",
      "mode" : "target",
      "alias" : "markdownR2"
    },
    {
      "url" : "http://hl7.org/fhir/3.0/oid",
      "mode" : "source"
    },
    {
      "url" : "http://hl7.org/fhir/1.0/oid",
      "mode" : "target",
      "alias" : "oidR2"
    },
    {
      "url" : "http://hl7.org/fhir/3.0/positiveInt",
      "mode" : "source"
    },
    {
      "url" : "http://hl7.org/fhir/1.0/positiveInt",
      "mode" : "target",
      "alias" : "positiveIntR2"
    },
    {
      "url" : "http://hl7.org/fhir/3.0/string",
      "mode" : "source"
    },
    {
      "url" : "http://hl7.org/fhir/1.0/string",
      "mode" : "target",
      "alias" : "stringR2"
    },
    {
      "url" : "http://hl7.org/fhir/3.0/time",
      "mode" : "source"
    },
    {
      "url" : "http://hl7.org/fhir/1.0/time",
      "mode" : "target",
      "alias" : "timeR2"
    },
    {
      "url" : "http://hl7.org/fhir/3.0/unsignedInt",
      "mode" : "source"
    },
    {
      "url" : "http://hl7.org/fhir/1.0/unsignedInt",
      "mode" : "target",
      "alias" : "unsignedIntR2"
    },
    {
      "url" : "http://hl7.org/fhir/3.0/uri",
      "mode" : "source"
    },
    {
      "url" : "http://hl7.org/fhir/1.0/uri",
      "mode" : "target",
      "alias" : "uriR2"
    },
    {
      "url" : "http://hl7.org/fhir/3.0/uuid",
      "mode" : "source"
    },
    {
      "url" : "http://hl7.org/fhir/1.0/uuid",
      "mode" : "target",
      "alias" : "uuidR2"
    },
    {
      "url" : "http://hl7.org/fhir/3.0/xhtml",
      "mode" : "source"
    },
    {
      "url" : "http://hl7.org/fhir/1.0/xhtml",
      "mode" : "target",
      "alias" : "xhtmlR2"
    }
  ],
  "import" : [
    🔗 "http://hl7.org/fhir/StructureMap/Element3to2"
  ],
  "group" : [
    {
      "name" : "base64Binary",
      "extends" : "Element",
      "typeMode" : "type-and-types",
      "input" : [
        {
          "name" : "src",
          "type" : "base64Binary",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "base64BinaryR2",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "base64Binary-value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "boolean",
      "extends" : "Element",
      "typeMode" : "type-and-types",
      "input" : [
        {
          "name" : "src",
          "type" : "boolean",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "booleanR2",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "boolean-value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "code",
      "extends" : "Element",
      "typeMode" : "type-and-types",
      "input" : [
        {
          "name" : "src",
          "type" : "code",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "codeR2",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "code-value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "date",
      "extends" : "Element",
      "typeMode" : "type-and-types",
      "input" : [
        {
          "name" : "src",
          "type" : "date",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "dateR2",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "date-value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "dateTime",
      "extends" : "Element",
      "typeMode" : "type-and-types",
      "input" : [
        {
          "name" : "src",
          "type" : "dateTime",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "dateTimeR2",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "dateTime-value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "decimal",
      "extends" : "Element",
      "typeMode" : "type-and-types",
      "input" : [
        {
          "name" : "src",
          "type" : "decimal",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "decimalR2",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "decimal-value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "id",
      "extends" : "Element",
      "typeMode" : "type-and-types",
      "input" : [
        {
          "name" : "src",
          "type" : "id",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "idR2",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "id-value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "instant",
      "extends" : "Element",
      "typeMode" : "type-and-types",
      "input" : [
        {
          "name" : "src",
          "type" : "instant",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "instantR2",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "instant-value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "integer",
      "extends" : "Element",
      "typeMode" : "type-and-types",
      "input" : [
        {
          "name" : "src",
          "type" : "integer",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "integerR2",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "integer-value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "markdown",
      "extends" : "Element",
      "typeMode" : "type-and-types",
      "input" : [
        {
          "name" : "src",
          "type" : "markdown",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "markdownR2",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "markdown-value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "oid",
      "extends" : "Element",
      "typeMode" : "type-and-types",
      "input" : [
        {
          "name" : "src",
          "type" : "oid",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "oidR2",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "oid-value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "positiveInt",
      "extends" : "Element",
      "typeMode" : "type-and-types",
      "input" : [
        {
          "name" : "src",
          "type" : "positiveInt",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "positiveIntR2",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "positiveInt-value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "string",
      "extends" : "Element",
      "typeMode" : "type-and-types",
      "input" : [
        {
          "name" : "src",
          "type" : "string",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "stringR2",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "string-value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "time",
      "extends" : "Element",
      "typeMode" : "type-and-types",
      "input" : [
        {
          "name" : "src",
          "type" : "time",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "timeR2",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "time-value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "unsignedInt",
      "extends" : "Element",
      "typeMode" : "type-and-types",
      "input" : [
        {
          "name" : "src",
          "type" : "unsignedInt",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "unsignedIntR2",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "unsignedInt-value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "uri",
      "extends" : "Element",
      "typeMode" : "type-and-types",
      "input" : [
        {
          "name" : "src",
          "type" : "uri",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "uriR2",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "uri-value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "uuid",
      "extends" : "Element",
      "typeMode" : "type-and-types",
      "input" : [
        {
          "name" : "src",
          "type" : "uuid",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "uuidR2",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "uuid-value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "xhtml",
      "extends" : "Element",
      "typeMode" : "type-and-types",
      "input" : [
        {
          "name" : "src",
          "type" : "xhtml",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "xhtmlR2",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "xhtml-value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "markdownToString",
      "extends" : "Element",
      "typeMode" : "types",
      "input" : [
        {
          "name" : "src",
          "type" : "markdown",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "stringR2",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "markdownToString-value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "uriToCode",
      "extends" : "Element",
      "typeMode" : "types",
      "input" : [
        {
          "name" : "src",
          "type" : "uri",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "codeR2",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "uriToCode-value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "uriToString",
      "extends" : "Element",
      "typeMode" : "types",
      "input" : [
        {
          "name" : "src",
          "type" : "uri",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "stringR2",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "uriToString-value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "stringToXhtml",
      "extends" : "Element",
      "typeMode" : "types",
      "input" : [
        {
          "name" : "src",
          "type" : "string",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "xhtmlR2",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "stringToXhtml-value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "codeToString",
      "extends" : "Element",
      "typeMode" : "types",
      "input" : [
        {
          "name" : "src",
          "type" : "code",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "stringR2",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "uriToCode-value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "stringToId",
      "extends" : "Element",
      "typeMode" : "types",
      "input" : [
        {
          "name" : "src",
          "type" : "string",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "idR2",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "stringToId-value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "idToString",
      "extends" : "Element",
      "typeMode" : "types",
      "input" : [
        {
          "name" : "src",
          "type" : "id",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "stringR2",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "stringToId-value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "positiveIntToInteger",
      "extends" : "Element",
      "typeMode" : "types",
      "input" : [
        {
          "name" : "src",
          "type" : "positiveIntR2",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "integer",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "positiveIntToInteger-value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "unsignedIntToInteger",
      "extends" : "Element",
      "typeMode" : "types",
      "input" : [
        {
          "name" : "src",
          "type" : "unsignedIntR2",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "integer",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "unsignedIntToInteger-value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "dateToDateTime",
      "extends" : "Element",
      "typeMode" : "types",
      "input" : [
        {
          "name" : "src",
          "type" : "date",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "dateTimeR2",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "dateToDateTime-value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "dateTimeToDate",
      "extends" : "Element",
      "typeMode" : "types",
      "input" : [
        {
          "name" : "src",
          "type" : "dateTime",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "dateR2",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "dateTimeToDate-value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "evaluate",
              "parameter" : [
                {
                  "valueString" : "v.substring(0, 8)"
                }
              ]
            }
          ]
        }
      ]
    }
  ]
}