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: R4 to R3 - JSON Representation

Page standards status: Draft Maturity Level: 1

Raw json | Download


{
  "resourceType" : "StructureMap",
  "id" : "primitives4to3",
  "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/primitives4to3'</span>\r\n<span style=\"color: #cc00cc\">/// <b>name</b> = </span><span style=\"color: blue\">'primitives4to3'</span>\r\n<span style=\"color: #cc00cc\">/// <b>title</b> = </span><span style=\"color: blue\">'Primitive Transforms: R4 to R3'</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/4.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/3.0/base64Binary<span style=\"color: navy\">&quot; </span><b>alias </b>base64BinaryR3 <b>as </b><b>target</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/4.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/3.0/boolean<span style=\"color: navy\">&quot; </span><b>alias </b>booleanR3 <b>as </b><b>target</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/4.0/canonical<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/3.0/canonical<span style=\"color: navy\">&quot; </span><b>alias </b>canonicalR3 <b>as </b><b>target</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/4.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/3.0/code<span style=\"color: navy\">&quot; </span><b>alias </b>codeR3 <b>as </b><b>target</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/4.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/3.0/date<span style=\"color: navy\">&quot; </span><b>alias </b>dateR3 <b>as </b><b>target</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/4.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/3.0/dateTime<span style=\"color: navy\">&quot; </span><b>alias </b>dateTimeR3 <b>as </b><b>target</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/4.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/3.0/decimal<span style=\"color: navy\">&quot; </span><b>alias </b>decimalR3 <b>as </b><b>target</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/4.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/3.0/id<span style=\"color: navy\">&quot; </span><b>alias </b>idR3 <b>as </b><b>target</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/4.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/3.0/instant<span style=\"color: navy\">&quot; </span><b>alias </b>instantR3 <b>as </b><b>target</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/4.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/3.0/integer<span style=\"color: navy\">&quot; </span><b>alias </b>integerR3 <b>as </b><b>target</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/4.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/3.0/markdown<span style=\"color: navy\">&quot; </span><b>alias </b>markdownR3 <b>as </b><b>target</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/4.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/3.0/oid<span style=\"color: navy\">&quot; </span><b>alias </b>oidR3 <b>as </b><b>target</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/4.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/3.0/positiveInt<span style=\"color: navy\">&quot; </span><b>alias </b>positiveIntR3 <b>as </b><b>target</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/4.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/3.0/string<span style=\"color: navy\">&quot; </span><b>alias </b>stringR3 <b>as </b><b>target</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/4.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/3.0/time<span style=\"color: navy\">&quot; </span><b>alias </b>timeR3 <b>as </b><b>target</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/4.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/3.0/unsignedInt<span style=\"color: navy\">&quot; </span><b>alias </b>unsignedIntR3 <b>as </b><b>target</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/4.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/3.0/uri<span style=\"color: navy\">&quot; </span><b>alias </b>uriR3 <b>as </b><b>target</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/4.0/url<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/3.0/url<span style=\"color: navy\">&quot; </span><b>alias </b>urlR3 <b>as </b><b>target</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/4.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/3.0/uuid<span style=\"color: navy\">&quot; </span><b>alias </b>uuidR3 <b>as </b><b>target</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/4.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/3.0/xhtml<span style=\"color: navy\">&quot; </span><b>alias </b>xhtmlR3 <b>as </b><b>target</b>\r\n\r\n<b>imports</b><span style=\"color: navy\"> &quot;</span><a href=\"StructureMap-Element4to3.html\" title=\"Element Transforms: R4 to R3\">http://hl7.org/fhir/StructureMap/Element4to3</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>base64BinaryR3<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>booleanR3<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>canonical<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span><span style=\"color: navy\"> : </span>canonical, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\"> : </span>canonicalR3<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;canonical-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>codeR3<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>dateR3<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>dateTimeR3<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>decimalR3<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>idR3<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>instantR3<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>integerR3<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>markdownR3<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>oidR3<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>positiveIntR3<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>stringR3<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>timeR3<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>unsignedIntR3<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>uriR3<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>url<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span><span style=\"color: navy\"> : </span>url, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\"> : </span>urlR3<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;url-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>uuidR3<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>xhtmlR3<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>stringR3<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>code2id<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>idR3<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;code2id-value&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>uri2code<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span><span style=\"color: navy\"> : </span>uriR3, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\"> : </span>code<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;uri2code-value&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>string2code<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span><span style=\"color: navy\"> : </span>stringR3, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\"> : </span>code<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;uri2code-value&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>code2string<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span><span style=\"color: navy\"> : </span>codeR3, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\"> : </span>string<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;uri2code-value&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>canonical2Uri<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span><span style=\"color: navy\"> : </span>canonicalR3, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\"> : </span>uri<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;canonical2uri-value&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>url2uri<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span><span style=\"color: navy\"> : </span>url, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\"> : </span>uriR3<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;code2uri-value&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>string2id<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>idR3<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;uri2code-value&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>string2uri<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>uriR3<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;code2uri-value&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>decimal2unsignedInt<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>unsignedIntR3<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;unsignedInt2decimal-value&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>canonical2string<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span><span style=\"color: navy\"> : </span>canonical, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\"> : </span>stringR3<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;code2uri-value&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>oid2string<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>oidR3<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><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>id2oid<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>oidR3<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><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>id2string<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>stringR3<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><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>code2oid<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>oidR3<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><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>integer2positiveInt<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>positiveIntR3<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;unsignedInt2decimal-value&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>positiveInt2integer<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>integerR3<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;unsignedInt2decimal-value&quot;</i><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>unsignedInt2positiveInt<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>positiveIntR3<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><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>code2uri<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>uriR3<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><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/primitives4to3",
  "version" : "0.1.0",
  "name" : "primitives4to3",
  "title" : "Primitive Transforms: R4 to R3",
  "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" : "PrimitiveTransformsR4toR3",
  "jurisdiction" : [
    {
      "coding" : [
        {
          "system" : "http://unstats.un.org/unsd/methods/m49/m49.htm",
          "code" : "001"
        }
      ]
    }
  ],
  "structure" : [
    {
      "url" : "http://hl7.org/fhir/4.0/base64Binary",
      "mode" : "source"
    },
    {
      "url" : "http://hl7.org/fhir/3.0/base64Binary",
      "mode" : "target",
      "alias" : "base64BinaryR3"
    },
    {
      "url" : "http://hl7.org/fhir/4.0/boolean",
      "mode" : "source"
    },
    {
      "url" : "http://hl7.org/fhir/3.0/boolean",
      "mode" : "target",
      "alias" : "booleanR3"
    },
    {
      "url" : "http://hl7.org/fhir/4.0/canonical",
      "mode" : "source"
    },
    {
      "url" : "http://hl7.org/fhir/3.0/canonical",
      "mode" : "target",
      "alias" : "canonicalR3"
    },
    {
      "url" : "http://hl7.org/fhir/4.0/code",
      "mode" : "source"
    },
    {
      "url" : "http://hl7.org/fhir/3.0/code",
      "mode" : "target",
      "alias" : "codeR3"
    },
    {
      "url" : "http://hl7.org/fhir/4.0/date",
      "mode" : "source"
    },
    {
      "url" : "http://hl7.org/fhir/3.0/date",
      "mode" : "target",
      "alias" : "dateR3"
    },
    {
      "url" : "http://hl7.org/fhir/4.0/dateTime",
      "mode" : "source"
    },
    {
      "url" : "http://hl7.org/fhir/3.0/dateTime",
      "mode" : "target",
      "alias" : "dateTimeR3"
    },
    {
      "url" : "http://hl7.org/fhir/4.0/decimal",
      "mode" : "source"
    },
    {
      "url" : "http://hl7.org/fhir/3.0/decimal",
      "mode" : "target",
      "alias" : "decimalR3"
    },
    {
      "url" : "http://hl7.org/fhir/4.0/id",
      "mode" : "source"
    },
    {
      "url" : "http://hl7.org/fhir/3.0/id",
      "mode" : "target",
      "alias" : "idR3"
    },
    {
      "url" : "http://hl7.org/fhir/4.0/instant",
      "mode" : "source"
    },
    {
      "url" : "http://hl7.org/fhir/3.0/instant",
      "mode" : "target",
      "alias" : "instantR3"
    },
    {
      "url" : "http://hl7.org/fhir/4.0/integer",
      "mode" : "source"
    },
    {
      "url" : "http://hl7.org/fhir/3.0/integer",
      "mode" : "target",
      "alias" : "integerR3"
    },
    {
      "url" : "http://hl7.org/fhir/4.0/markdown",
      "mode" : "source"
    },
    {
      "url" : "http://hl7.org/fhir/3.0/markdown",
      "mode" : "target",
      "alias" : "markdownR3"
    },
    {
      "url" : "http://hl7.org/fhir/4.0/oid",
      "mode" : "source"
    },
    {
      "url" : "http://hl7.org/fhir/3.0/oid",
      "mode" : "target",
      "alias" : "oidR3"
    },
    {
      "url" : "http://hl7.org/fhir/4.0/positiveInt",
      "mode" : "source"
    },
    {
      "url" : "http://hl7.org/fhir/3.0/positiveInt",
      "mode" : "target",
      "alias" : "positiveIntR3"
    },
    {
      "url" : "http://hl7.org/fhir/4.0/string",
      "mode" : "source"
    },
    {
      "url" : "http://hl7.org/fhir/3.0/string",
      "mode" : "target",
      "alias" : "stringR3"
    },
    {
      "url" : "http://hl7.org/fhir/4.0/time",
      "mode" : "source"
    },
    {
      "url" : "http://hl7.org/fhir/3.0/time",
      "mode" : "target",
      "alias" : "timeR3"
    },
    {
      "url" : "http://hl7.org/fhir/4.0/unsignedInt",
      "mode" : "source"
    },
    {
      "url" : "http://hl7.org/fhir/3.0/unsignedInt",
      "mode" : "target",
      "alias" : "unsignedIntR3"
    },
    {
      "url" : "http://hl7.org/fhir/4.0/uri",
      "mode" : "source"
    },
    {
      "url" : "http://hl7.org/fhir/3.0/uri",
      "mode" : "target",
      "alias" : "uriR3"
    },
    {
      "url" : "http://hl7.org/fhir/4.0/url",
      "mode" : "source"
    },
    {
      "url" : "http://hl7.org/fhir/3.0/url",
      "mode" : "target",
      "alias" : "urlR3"
    },
    {
      "url" : "http://hl7.org/fhir/4.0/uuid",
      "mode" : "source"
    },
    {
      "url" : "http://hl7.org/fhir/3.0/uuid",
      "mode" : "target",
      "alias" : "uuidR3"
    },
    {
      "url" : "http://hl7.org/fhir/4.0/xhtml",
      "mode" : "source"
    },
    {
      "url" : "http://hl7.org/fhir/3.0/xhtml",
      "mode" : "target",
      "alias" : "xhtmlR3"
    }
  ],
  "import" : [
    🔗 "http://hl7.org/fhir/StructureMap/Element4to3"
  ],
  "group" : [
    {
      "name" : "base64Binary",
      "extends" : "Element",
      "typeMode" : "type-and-types",
      "input" : [
        {
          "name" : "src",
          "type" : "base64Binary",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "base64BinaryR3",
          "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" : "booleanR3",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "boolean-value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "canonical",
      "extends" : "Element",
      "typeMode" : "type-and-types",
      "input" : [
        {
          "name" : "src",
          "type" : "canonical",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "canonicalR3",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "canonical-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" : "codeR3",
          "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" : "dateR3",
          "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" : "dateTimeR3",
          "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" : "decimalR3",
          "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" : "idR3",
          "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" : "instantR3",
          "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" : "integerR3",
          "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" : "markdownR3",
          "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" : "oidR3",
          "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" : "positiveIntR3",
          "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" : "stringR3",
          "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" : "timeR3",
          "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" : "unsignedIntR3",
          "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" : "uriR3",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "uri-value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "url",
      "extends" : "Element",
      "typeMode" : "type-and-types",
      "input" : [
        {
          "name" : "src",
          "type" : "url",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "urlR3",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "url-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" : "uuidR3",
          "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" : "xhtmlR3",
          "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" : "stringR3",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "markdownToString-value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "code2id",
      "extends" : "Element",
      "typeMode" : "types",
      "input" : [
        {
          "name" : "src",
          "type" : "code",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "idR3",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "code2id-value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "uri2code",
      "extends" : "Element",
      "typeMode" : "types",
      "input" : [
        {
          "name" : "src",
          "type" : "uriR3",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "code",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "uri2code-value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "string2code",
      "extends" : "Element",
      "typeMode" : "types",
      "input" : [
        {
          "name" : "src",
          "type" : "stringR3",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "code",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "uri2code-value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "code2string",
      "extends" : "Element",
      "typeMode" : "types",
      "input" : [
        {
          "name" : "src",
          "type" : "codeR3",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "string",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "uri2code-value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "canonical2Uri",
      "extends" : "Element",
      "typeMode" : "types",
      "input" : [
        {
          "name" : "src",
          "type" : "canonicalR3",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "uri",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "canonical2uri-value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "url2uri",
      "extends" : "Element",
      "typeMode" : "types",
      "input" : [
        {
          "name" : "src",
          "type" : "url",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "uriR3",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "code2uri-value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "string2id",
      "extends" : "Element",
      "typeMode" : "types",
      "input" : [
        {
          "name" : "src",
          "type" : "string",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "idR3",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "uri2code-value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "string2uri",
      "extends" : "Element",
      "typeMode" : "types",
      "input" : [
        {
          "name" : "src",
          "type" : "string",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "uriR3",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "code2uri-value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "decimal2unsignedInt",
      "extends" : "Element",
      "typeMode" : "types",
      "input" : [
        {
          "name" : "src",
          "type" : "decimal",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "unsignedIntR3",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "unsignedInt2decimal-value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "canonical2string",
      "extends" : "Element",
      "typeMode" : "types",
      "input" : [
        {
          "name" : "src",
          "type" : "canonical",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "stringR3",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "code2uri-value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "oid2string",
      "extends" : "Element",
      "typeMode" : "types",
      "input" : [
        {
          "name" : "src",
          "type" : "string",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "oidR3",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "id2oid",
      "extends" : "Element",
      "typeMode" : "types",
      "input" : [
        {
          "name" : "src",
          "type" : "id",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "oidR3",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "id2string",
      "extends" : "Element",
      "typeMode" : "type-and-types",
      "input" : [
        {
          "name" : "src",
          "type" : "id",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "stringR3",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "code2oid",
      "extends" : "Element",
      "typeMode" : "type-and-types",
      "input" : [
        {
          "name" : "src",
          "type" : "code",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "oidR3",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "integer2positiveInt",
      "extends" : "Element",
      "typeMode" : "types",
      "input" : [
        {
          "name" : "src",
          "type" : "integer",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "positiveIntR3",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "unsignedInt2decimal-value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "positiveInt2integer",
      "extends" : "Element",
      "typeMode" : "types",
      "input" : [
        {
          "name" : "src",
          "type" : "positiveInt",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "integerR3",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "unsignedInt2decimal-value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "unsignedInt2positiveInt",
      "extends" : "Element",
      "typeMode" : "types",
      "input" : [
        {
          "name" : "src",
          "type" : "unsignedInt",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "positiveIntR3",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name" : "code2uri",
      "extends" : "Element",
      "typeMode" : "types",
      "input" : [
        {
          "name" : "src",
          "type" : "code",
          "mode" : "source"
        },
        {
          "name" : "tgt",
          "type" : "uriR3",
          "mode" : "target"
        }
      ],
      "rule" : [
        {
          "name" : "value",
          "source" : [
            {
              "context" : "src",
              "element" : "value",
              "variable" : "v"
            }
          ],
          "target" : [
            {
              "context" : "tgt",
              "element" : "value",
              "transform" : "copy",
              "parameter" : [
                {
                  "valueId" : "v"
                }
              ]
            }
          ]
        }
      ]
    }
  ]
}