FHIR Extensions Pack
5.1.0-cibuild - Working Copy International flag

FHIR Extensions Pack, published by HL7 International / FHIR Infrastructure. This guide is not an authorized publication; it is the continuous build for version 5.1.0-cibuild built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/fhir-extensions/ and changes regularly. See the Directory of published versions

: FML Conversion for SubstancePolymer: R4 to R5 - TTL Representation

Page standards status: Trial-use Maturity Level: 1

Raw ttl | Download

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

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

 a fhir:StructureMap ;
  fhir:nodeRole fhir:treeRoot ;
  fhir:id [ fhir:v "SubstancePolymer4to5"] ; # 
  fhir:text [
fhir:status [ fhir:v "generated" ] ;
fhir: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/SubstancePolymer4to5'</span>\r\n<span style=\"color: #cc00cc\">/// <b>name</b> = </span><span style=\"color: blue\">'SubstancePolymer4to5'</span>\r\n<span style=\"color: #cc00cc\">/// <b>title</b> = </span><span style=\"color: blue\">'FML Conversion for SubstancePolymer: R4 to R5'</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><a href=\"http://hl7.org/fhir/R4/substancepolymer.html\" title=\"SubstancePolymer\">http://hl7.org/fhir/4.0/StructureDefinition/SubstancePolymer</a><span style=\"color: navy\">&quot; </span><b>alias </b>SubstancePolymerR4 <b>as </b><b>source</b>\r\n<b>uses</b><span style=\"color: navy\"> &quot;</span><a href=\"http://hl7.org/fhir/R5/substancepolymer.html\" title=\"SubstancePolymer\">http://hl7.org/fhir/StructureDefinition/SubstancePolymer</a><span style=\"color: navy\">&quot; </span><b>alias </b>SubstancePolymerR5 <b>as </b><b>target</b>\r\n\r\n<b>imports</b><span style=\"color: navy\"> &quot;</span>http://hl7.org/fhir/StructureMap/*4to5<span style=\"color: navy\">&quot;\r\n</span>\r\n<b>group </b>SubstancePolymer<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span><span style=\"color: navy\"> : </span>SubstancePolymerR4, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\"> : </span>SubstancePolymerR5<span style=\"color: navy\">)</span><b> extends </b>DomainResource<b> &lt;&lt;type+&gt;&gt;</b><span style=\"color: navy\"> {\r\n</span>  src.class<span style=\"color: navy\"><b> -&gt; </b></span>tgt.class<span style=\"color: navy\">;</span> <span style=\"color: navy\">// </span><span style=\"color: green\">src.identifier -&gt; tgt.identifier;</span>\r\n  src.geometry<span style=\"color: navy\"><b> -&gt; </b></span>tgt.geometry<span style=\"color: navy\">;</span>\r\n  src.copolymerConnectivity<span style=\"color: navy\"><b> -&gt; </b></span>tgt.copolymerConnectivity<span style=\"color: navy\">;</span>\r\n  src.modification<span style=\"color: navy\"><b> -&gt; </b></span>tgt.modification<span style=\"color: navy\">;</span>\r\n  src.monomerSet<b> as </b><span style=\"color: maroon\">s</span><span style=\"color: navy\"><b> -&gt; </b></span>tgt.monomerSet<b> as </b><span style=\"color: maroon\">t</span><b> then </b>SubstancePolymerMonomerSet<span style=\"color: navy\">(</span><span style=\"color: maroon\">s</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">t</span><span style=\"color: navy\">)</span><span style=\"color: navy\">;</span>\r\n  src.repeat<b> as </b><span style=\"color: maroon\">s</span><span style=\"color: navy\"><b> -&gt; </b></span>tgt.repeat<b> as </b><span style=\"color: maroon\">t</span><b> then </b>SubstancePolymerRepeat<span style=\"color: navy\">(</span><span style=\"color: maroon\">s</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">t</span><span style=\"color: navy\">)</span><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>SubstancePolymerMonomerSet<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span>, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\">)</span><b> extends </b>BackboneElement<span style=\"color: navy\"> {\r\n</span>  src.ratioType<span style=\"color: navy\"><b> -&gt; </b></span>tgt.ratioType<span style=\"color: navy\">;</span>\r\n  src.startingMaterial<b> as </b><span style=\"color: maroon\">s</span><span style=\"color: navy\"><b> -&gt; </b></span>tgt.startingMaterial<b> as </b><span style=\"color: maroon\">t</span><b> then </b>SubstancePolymerMonomerSetStartingMaterial<span style=\"color: navy\">(</span><span style=\"color: maroon\">s</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">t</span><span style=\"color: navy\">)</span><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>SubstancePolymerMonomerSetStartingMaterial<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span>, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\">)</span><b> extends </b>BackboneElement<span style=\"color: navy\"> {\r\n</span>  src.material<span style=\"color: navy\"><b> -&gt; </b></span>tgt.code<span style=\"color: navy\">;</span>\r\n  src.type<span style=\"color: navy\"><b> -&gt; </b></span>tgt.category<span style=\"color: navy\">;</span>\r\n  src.isDefining<span style=\"color: navy\"><b> -&gt; </b></span>tgt.isDefining<span style=\"color: navy\">;</span>\r\n  src.amount<b> as </b><span style=\"color: maroon\">s</span><span style=\"color: navy\"><b> -&gt; </b></span> tgt.amount<b> as </b><span style=\"color: maroon\">t</span><span style=\"color: navy\">, </span> t = <span style=\"color: maroon\">s.amount</span><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>SubstancePolymerRepeat<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span>, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\">)</span><b> extends </b>BackboneElement<span style=\"color: navy\"> {\r\n</span>  src.averageMolecularFormula<span style=\"color: navy\"><b> -&gt; </b></span>tgt.averageMolecularFormula<span style=\"color: navy\">;</span>\r\n  src.repeatUnitAmountType<span style=\"color: navy\"><b> -&gt; </b></span>tgt.repeatUnitAmountType<span style=\"color: navy\">;</span>\r\n  src.repeatUnit<b> as </b><span style=\"color: maroon\">s</span><span style=\"color: navy\"><b> -&gt; </b></span>tgt.repeatUnit<b> as </b><span style=\"color: maroon\">t</span><b> then </b>SubstancePolymerRepeatRepeatUnit<span style=\"color: navy\">(</span><span style=\"color: maroon\">s</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">t</span><span style=\"color: navy\">)</span><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>SubstancePolymerRepeatRepeatUnit<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span>, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\">)</span><b> extends </b>BackboneElement<span style=\"color: navy\"> {\r\n</span>  src.repeatUnit<span style=\"color: navy\"><b> -&gt; </b></span>tgt.unit<span style=\"color: navy\">;</span>\r\n  src.orientationOfPolymerisation<span style=\"color: navy\"><b> -&gt; </b></span>tgt.orientation<span style=\"color: navy\">;</span>\r\n  src.degreeOfPolymerisation<b> as </b><span style=\"color: maroon\">s</span><span style=\"color: navy\"><b> -&gt; </b></span>tgt.degreeOfPolymerisation<b> as </b><span style=\"color: maroon\">t</span><b> then </b>SubstancePolymerRepeatRepeatUnitDegreeOfPolymerisation<span style=\"color: navy\">(</span><span style=\"color: maroon\">s</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">t</span><span style=\"color: navy\">)</span><span style=\"color: navy\">;</span> <span style=\"color: navy\">// </span><span style=\"color: green\">src.amount -&gt; tgt.amount;</span>\r\n  src.structuralRepresentation<b> as </b><span style=\"color: maroon\">s</span><span style=\"color: navy\"><b> -&gt; </b></span>tgt.structuralRepresentation<b> as </b><span style=\"color: maroon\">t</span><b> then </b>SubstancePolymerRepeatRepeatUnitStructuralRepresentation<span style=\"color: navy\">(</span><span style=\"color: maroon\">s</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">t</span><span style=\"color: navy\">)</span><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>SubstancePolymerRepeatRepeatUnitDegreeOfPolymerisation<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span>, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\">)</span><b> extends </b>BackboneElement<span style=\"color: navy\"> {\r\n</span>  src.degree<span style=\"color: navy\"><b> -&gt; </b></span>tgt.type<span style=\"color: navy\">;</span>\r\n  src.amount<b> as </b><span style=\"color: maroon\">s</span><span style=\"color: navy\"><b> -&gt; </b></span><span style=\"color: maroon\">tgt</span><b> then</b><span style=\"color: navy\"> {\r\n</span>    s.amount<span style=\"color: navy\"> : </span>Quantity<b> as </b><span style=\"color: maroon\">v</span><span style=\"color: navy\"><b> -&gt; </b></span>tgt.average = <span style=\"color: maroon\">v.value</span><span style=\"color: navy\">;</span>\r\n    s.referenceRange<b> as </b><span style=\"color: maroon\">sr</span><span style=\"color: navy\"><b> -&gt; </b></span><span style=\"color: maroon\">tgt</span><b> then</b><span style=\"color: navy\"> {\r\n</span>      sr.lowLimit<b> as </b><span style=\"color: maroon\">vl</span><span style=\"color: navy\"><b> -&gt; </b></span>tgt.low = <span style=\"color: maroon\">vl.value</span><span style=\"color: navy\">;</span>\r\n      sr.highLimit<b> as </b><span style=\"color: maroon\">vh</span><span style=\"color: navy\"><b> -&gt; </b></span>tgt.high = <span style=\"color: maroon\">vh.value</span><span style=\"color: navy\">;</span>\r\n    <span style=\"color: navy\">}</span><span style=\"color: navy\">;</span>\r\n  <span style=\"color: navy\">}</span><span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>SubstancePolymerRepeatRepeatUnitStructuralRepresentation<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span>, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\">)</span><b> extends </b>BackboneElement<span style=\"color: navy\"> {\r\n</span>  src.type<span style=\"color: navy\"><b> -&gt; </b></span>tgt.type<span style=\"color: navy\">;</span>\r\n  src.representation<span style=\"color: navy\"><b> -&gt; </b></span>tgt.representation<span style=\"color: navy\">;</span>\r\n  src.attachment<span style=\"color: navy\"><b> -&gt; </b></span>tgt.attachment<span style=\"color: navy\">;</span> <span style=\"color: navy\">// </span><span style=\"color: green\">src.format -&gt; tgt.format;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span></pre></div>"
  ] ; # 
  fhir:extension ( [
fhir:url [ fhir:v "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg"^^xsd:anyURI ] ;
fhir:value [ fhir:v "fhir" ]
  ] [
fhir:url [ fhir:v "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm"^^xsd:anyURI ] ;
fhir:value [
fhir:v "1"^^xsd:integer ;
      ( fhir:extension [
fhir:url [ fhir:v "http://hl7.org/fhir/StructureDefinition/structuredefinition-conformance-derivedFrom"^^xsd:anyURI ] ;
fhir:value [
fhir:v "http://hl7.org/fhir/extensions/ImplementationGuide/hl7.fhir.uv.extensions"^^xsd:anyURI ;
fhir:link <http://hl7.org/fhir/extensions/ImplementationGuide/hl7.fhir.uv.extensions>         ]       ] )     ]
  ] [
fhir:url [ fhir:v "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status"^^xsd:anyURI ] ;
fhir:value [
fhir:v "trial-use" ;
      ( fhir:extension [
fhir:url [ fhir:v "http://hl7.org/fhir/StructureDefinition/structuredefinition-conformance-derivedFrom"^^xsd:anyURI ] ;
fhir:value [
fhir:v "http://hl7.org/fhir/extensions/ImplementationGuide/hl7.fhir.uv.extensions"^^xsd:anyURI ;
fhir:link <http://hl7.org/fhir/extensions/ImplementationGuide/hl7.fhir.uv.extensions>         ]       ] )     ]
  ] ) ; # 
  fhir:url [ fhir:v "http://hl7.org/fhir/StructureMap/SubstancePolymer4to5"^^xsd:anyURI] ; # 
  fhir:version [ fhir:v "5.1.0-cibuild"] ; # 
  fhir:name [ fhir:v "SubstancePolymer4to5"] ; # 
  fhir:title [ fhir:v "FML Conversion for SubstancePolymer: R4 to R5"] ; # 
  fhir:status [ fhir:v "active"] ; # 
  fhir:date [ fhir:v "2024-04-21T19:47:28+00:00"^^xsd:dateTime] ; # 
  fhir:publisher [ fhir:v "HL7 International / FHIR Infrastructure"] ; # 
  fhir:contact ( [
    ( fhir:telecom [
fhir:system [ fhir:v "url" ] ;
fhir:value [ fhir:v "http://www.hl7.org/Special/committees/fiwg" ]     ] )
  ] ) ; # 
  fhir:description [ fhir:v "FMLConversionforSubstancePolymerR4toR5"] ; # 
  fhir:jurisdiction ( [
    ( fhir:coding [
fhir:system [ fhir:v "http://unstats.un.org/unsd/methods/m49/m49.htm"^^xsd:anyURI ] ;
fhir:code [ fhir:v "001" ]     ] )
  ] ) ; # 
  fhir:structure ( [
fhir:url [
fhir:v "http://hl7.org/fhir/4.0/StructureDefinition/SubstancePolymer"^^xsd:anyURI ;
fhir:link <http://hl7.org/fhir/4.0/StructureDefinition/SubstancePolymer>     ] ;
fhir:mode [ fhir:v "source" ] ;
fhir:alias [ fhir:v "SubstancePolymerR4" ]
  ] [
fhir:url [
fhir:v "http://hl7.org/fhir/StructureDefinition/SubstancePolymer"^^xsd:anyURI ;
fhir:link <http://hl7.org/fhir/StructureDefinition/SubstancePolymer>     ] ;
fhir:mode [ fhir:v "target" ] ;
fhir:alias [ fhir:v "SubstancePolymerR5" ]
  ] ) ; # 
  fhir:import ( [
fhir:v "http://hl7.org/fhir/StructureMap/*4to5"^^xsd:anyURI ;
fhir:link <http://hl7.org/fhir/StructureMap/*4to5>
  ] ) ; # 
  fhir:group ( [
fhir:name [ fhir:v "SubstancePolymer" ] ;
fhir:extends [ fhir:v "DomainResource" ] ;
fhir:typeMode [ fhir:v "type-and-types" ] ;
    ( fhir:input [
fhir:name [ fhir:v "src" ] ;
fhir:type [ fhir:v "SubstancePolymerR4" ] ;
fhir:mode [ fhir:v "source" ]     ] [
fhir:name [ fhir:v "tgt" ] ;
fhir:type [ fhir:v "SubstancePolymerR5" ] ;
fhir:mode [ fhir:v "target" ]     ] ) ;
    ( fhir:rule [
fhir:name [ fhir:v "class" ] ;
      ( fhir:source [
fhir:context [ fhir:v "src" ] ;
fhir:element [ fhir:v "class" ] ;
fhir:variable [ fhir:v "vvv" ]       ] ) ;
      ( fhir:target [
fhir:context [ fhir:v "tgt" ] ;
fhir:element [ fhir:v "class" ] ;
fhir:variable [ fhir:v "vvv" ] ;
fhir:transform [ fhir:v "create" ]       ] ) ;
      ( fhir:dependent [
fhir:name [ fhir:v "DefaultMappingGroupAnonymousAlias" ] ;
        ( fhir:parameter [
fhir:value [ fhir:v "vvv" ]         ] [
fhir:value [ fhir:v "vvv" ]         ] )       ] ) ;
fhir:documentation [ fhir:v "src.identifier -> tgt.identifier;" ]     ] [
fhir:name [ fhir:v "geometry" ] ;
      ( fhir:source [
fhir:context [ fhir:v "src" ] ;
fhir:element [ fhir:v "geometry" ] ;
fhir:variable [ fhir:v "vvv" ]       ] ) ;
      ( fhir:target [
fhir:context [ fhir:v "tgt" ] ;
fhir:element [ fhir:v "geometry" ] ;
fhir:variable [ fhir:v "vvv" ] ;
fhir:transform [ fhir:v "create" ]       ] ) ;
      ( fhir:dependent [
fhir:name [ fhir:v "DefaultMappingGroupAnonymousAlias" ] ;
        ( fhir:parameter [
fhir:value [ fhir:v "vvv" ]         ] [
fhir:value [ fhir:v "vvv" ]         ] )       ] )     ] [
fhir:name [ fhir:v "copolymerConnectivity" ] ;
      ( fhir:source [
fhir:context [ fhir:v "src" ] ;
fhir:element [ fhir:v "copolymerConnectivity" ] ;
fhir:variable [ fhir:v "vvv" ]       ] ) ;
      ( fhir:target [
fhir:context [ fhir:v "tgt" ] ;
fhir:element [ fhir:v "copolymerConnectivity" ] ;
fhir:variable [ fhir:v "vvv" ] ;
fhir:transform [ fhir:v "create" ]       ] ) ;
      ( fhir:dependent [
fhir:name [ fhir:v "DefaultMappingGroupAnonymousAlias" ] ;
        ( fhir:parameter [
fhir:value [ fhir:v "vvv" ]         ] [
fhir:value [ fhir:v "vvv" ]         ] )       ] )     ] [
fhir:name [ fhir:v "modification" ] ;
      ( fhir:source [
fhir:context [ fhir:v "src" ] ;
fhir:element [ fhir:v "modification" ] ;
fhir:variable [ fhir:v "vvv" ]       ] ) ;
      ( fhir:target [
fhir:context [ fhir:v "tgt" ] ;
fhir:element [ fhir:v "modification" ] ;
fhir:variable [ fhir:v "vvv" ] ;
fhir:transform [ fhir:v "create" ]       ] ) ;
      ( fhir:dependent [
fhir:name [ fhir:v "DefaultMappingGroupAnonymousAlias" ] ;
        ( fhir:parameter [
fhir:value [ fhir:v "vvv" ]         ] [
fhir:value [ fhir:v "vvv" ]         ] )       ] )     ] [
fhir:name [ fhir:v "monomerSet" ] ;
      ( fhir:source [
fhir:context [ fhir:v "src" ] ;
fhir:element [ fhir:v "monomerSet" ] ;
fhir:variable [ fhir:v "s" ]       ] ) ;
      ( fhir:target [
fhir:context [ fhir:v "tgt" ] ;
fhir:element [ fhir:v "monomerSet" ] ;
fhir:variable [ fhir:v "t" ]       ] ) ;
      ( fhir:dependent [
fhir:name [ fhir:v "SubstancePolymerMonomerSet" ] ;
        ( fhir:parameter [
fhir:value [ fhir:v "s" ]         ] [
fhir:value [ fhir:v "t" ]         ] )       ] )     ] [
fhir:name [ fhir:v "repeat" ] ;
      ( fhir:source [
fhir:context [ fhir:v "src" ] ;
fhir:element [ fhir:v "repeat" ] ;
fhir:variable [ fhir:v "s" ]       ] ) ;
      ( fhir:target [
fhir:context [ fhir:v "tgt" ] ;
fhir:element [ fhir:v "repeat" ] ;
fhir:variable [ fhir:v "t" ]       ] ) ;
      ( fhir:dependent [
fhir:name [ fhir:v "SubstancePolymerRepeat" ] ;
        ( fhir:parameter [
fhir:value [ fhir:v "s" ]         ] [
fhir:value [ fhir:v "t" ]         ] )       ] )     ] )
  ] [
fhir:name [ fhir:v "SubstancePolymerMonomerSet" ] ;
fhir:extends [ fhir:v "BackboneElement" ] ;
    ( fhir:input [
fhir:name [ fhir:v "src" ] ;
fhir:mode [ fhir:v "source" ]     ] [
fhir:name [ fhir:v "tgt" ] ;
fhir:mode [ fhir:v "target" ]     ] ) ;
    ( fhir:rule [
fhir:name [ fhir:v "ratioType" ] ;
      ( fhir:source [
fhir:context [ fhir:v "src" ] ;
fhir:element [ fhir:v "ratioType" ] ;
fhir:variable [ fhir:v "vvv" ]       ] ) ;
      ( fhir:target [
fhir:context [ fhir:v "tgt" ] ;
fhir:element [ fhir:v "ratioType" ] ;
fhir:variable [ fhir:v "vvv" ] ;
fhir:transform [ fhir:v "create" ]       ] ) ;
      ( fhir:dependent [
fhir:name [ fhir:v "DefaultMappingGroupAnonymousAlias" ] ;
        ( fhir:parameter [
fhir:value [ fhir:v "vvv" ]         ] [
fhir:value [ fhir:v "vvv" ]         ] )       ] )     ] [
fhir:name [ fhir:v "startingMaterial" ] ;
      ( fhir:source [
fhir:context [ fhir:v "src" ] ;
fhir:element [ fhir:v "startingMaterial" ] ;
fhir:variable [ fhir:v "s" ]       ] ) ;
      ( fhir:target [
fhir:context [ fhir:v "tgt" ] ;
fhir:element [ fhir:v "startingMaterial" ] ;
fhir:variable [ fhir:v "t" ]       ] ) ;
      ( fhir:dependent [
fhir:name [ fhir:v "SubstancePolymerMonomerSetStartingMaterial" ] ;
        ( fhir:parameter [
fhir:value [ fhir:v "s" ]         ] [
fhir:value [ fhir:v "t" ]         ] )       ] )     ] )
  ] [
fhir:name [ fhir:v "SubstancePolymerMonomerSetStartingMaterial" ] ;
fhir:extends [ fhir:v "BackboneElement" ] ;
    ( fhir:input [
fhir:name [ fhir:v "src" ] ;
fhir:mode [ fhir:v "source" ]     ] [
fhir:name [ fhir:v "tgt" ] ;
fhir:mode [ fhir:v "target" ]     ] ) ;
    ( fhir:rule [
fhir:name [ fhir:v "material" ] ;
      ( fhir:source [
fhir:context [ fhir:v "src" ] ;
fhir:element [ fhir:v "material" ] ;
fhir:variable [ fhir:v "vvv" ]       ] ) ;
      ( fhir:target [
fhir:context [ fhir:v "tgt" ] ;
fhir:element [ fhir:v "code" ] ;
fhir:variable [ fhir:v "vvv" ] ;
fhir:transform [ fhir:v "create" ]       ] ) ;
      ( fhir:dependent [
fhir:name [ fhir:v "DefaultMappingGroupAnonymousAlias" ] ;
        ( fhir:parameter [
fhir:value [ fhir:v "vvv" ]         ] [
fhir:value [ fhir:v "vvv" ]         ] )       ] )     ] [
fhir:name [ fhir:v "type" ] ;
      ( fhir:source [
fhir:context [ fhir:v "src" ] ;
fhir:element [ fhir:v "type" ] ;
fhir:variable [ fhir:v "vvv" ]       ] ) ;
      ( fhir:target [
fhir:context [ fhir:v "tgt" ] ;
fhir:element [ fhir:v "category" ] ;
fhir:variable [ fhir:v "vvv" ] ;
fhir:transform [ fhir:v "create" ]       ] ) ;
      ( fhir:dependent [
fhir:name [ fhir:v "DefaultMappingGroupAnonymousAlias" ] ;
        ( fhir:parameter [
fhir:value [ fhir:v "vvv" ]         ] [
fhir:value [ fhir:v "vvv" ]         ] )       ] )     ] [
fhir:name [ fhir:v "isDefining" ] ;
      ( fhir:source [
fhir:context [ fhir:v "src" ] ;
fhir:element [ fhir:v "isDefining" ] ;
fhir:variable [ fhir:v "vvv" ]       ] ) ;
      ( fhir:target [
fhir:context [ fhir:v "tgt" ] ;
fhir:element [ fhir:v "isDefining" ] ;
fhir:variable [ fhir:v "vvv" ] ;
fhir:transform [ fhir:v "create" ]       ] ) ;
      ( fhir:dependent [
fhir:name [ fhir:v "DefaultMappingGroupAnonymousAlias" ] ;
        ( fhir:parameter [
fhir:value [ fhir:v "vvv" ]         ] [
fhir:value [ fhir:v "vvv" ]         ] )       ] )     ] [
fhir:name [ fhir:v "amount" ] ;
      ( fhir:source [
fhir:context [ fhir:v "src" ] ;
fhir:element [ fhir:v "amount" ] ;
fhir:variable [ fhir:v "s" ]       ] ) ;
      ( fhir:target [
fhir:context [ fhir:v "tgt" ] ;
fhir:element [ fhir:v "amount" ] ;
fhir:variable [ fhir:v "t" ]       ] [
fhir:context [ fhir:v "t" ] ;
fhir:transform [ fhir:v "copy" ] ;
        ( fhir:parameter [
fhir:value [ fhir:v "s.amount" ]         ] )       ] )     ] )
  ] [
fhir:name [ fhir:v "SubstancePolymerRepeat" ] ;
fhir:extends [ fhir:v "BackboneElement" ] ;
    ( fhir:input [
fhir:name [ fhir:v "src" ] ;
fhir:mode [ fhir:v "source" ]     ] [
fhir:name [ fhir:v "tgt" ] ;
fhir:mode [ fhir:v "target" ]     ] ) ;
    ( fhir:rule [
fhir:name [ fhir:v "averageMolecularFormula" ] ;
      ( fhir:source [
fhir:context [ fhir:v "src" ] ;
fhir:element [ fhir:v "averageMolecularFormula" ] ;
fhir:variable [ fhir:v "vvv" ]       ] ) ;
      ( fhir:target [
fhir:context [ fhir:v "tgt" ] ;
fhir:element [ fhir:v "averageMolecularFormula" ] ;
fhir:variable [ fhir:v "vvv" ] ;
fhir:transform [ fhir:v "create" ]       ] ) ;
      ( fhir:dependent [
fhir:name [ fhir:v "DefaultMappingGroupAnonymousAlias" ] ;
        ( fhir:parameter [
fhir:value [ fhir:v "vvv" ]         ] [
fhir:value [ fhir:v "vvv" ]         ] )       ] )     ] [
fhir:name [ fhir:v "repeatUnitAmountType" ] ;
      ( fhir:source [
fhir:context [ fhir:v "src" ] ;
fhir:element [ fhir:v "repeatUnitAmountType" ] ;
fhir:variable [ fhir:v "vvv" ]       ] ) ;
      ( fhir:target [
fhir:context [ fhir:v "tgt" ] ;
fhir:element [ fhir:v "repeatUnitAmountType" ] ;
fhir:variable [ fhir:v "vvv" ] ;
fhir:transform [ fhir:v "create" ]       ] ) ;
      ( fhir:dependent [
fhir:name [ fhir:v "DefaultMappingGroupAnonymousAlias" ] ;
        ( fhir:parameter [
fhir:value [ fhir:v "vvv" ]         ] [
fhir:value [ fhir:v "vvv" ]         ] )       ] )     ] [
fhir:name [ fhir:v "repeatUnit" ] ;
      ( fhir:source [
fhir:context [ fhir:v "src" ] ;
fhir:element [ fhir:v "repeatUnit" ] ;
fhir:variable [ fhir:v "s" ]       ] ) ;
      ( fhir:target [
fhir:context [ fhir:v "tgt" ] ;
fhir:element [ fhir:v "repeatUnit" ] ;
fhir:variable [ fhir:v "t" ]       ] ) ;
      ( fhir:dependent [
fhir:name [ fhir:v "SubstancePolymerRepeatRepeatUnit" ] ;
        ( fhir:parameter [
fhir:value [ fhir:v "s" ]         ] [
fhir:value [ fhir:v "t" ]         ] )       ] )     ] )
  ] [
fhir:name [ fhir:v "SubstancePolymerRepeatRepeatUnit" ] ;
fhir:extends [ fhir:v "BackboneElement" ] ;
    ( fhir:input [
fhir:name [ fhir:v "src" ] ;
fhir:mode [ fhir:v "source" ]     ] [
fhir:name [ fhir:v "tgt" ] ;
fhir:mode [ fhir:v "target" ]     ] ) ;
    ( fhir:rule [
fhir:name [ fhir:v "repeatUnit" ] ;
      ( fhir:source [
fhir:context [ fhir:v "src" ] ;
fhir:element [ fhir:v "repeatUnit" ] ;
fhir:variable [ fhir:v "vvv" ]       ] ) ;
      ( fhir:target [
fhir:context [ fhir:v "tgt" ] ;
fhir:element [ fhir:v "unit" ] ;
fhir:variable [ fhir:v "vvv" ] ;
fhir:transform [ fhir:v "create" ]       ] ) ;
      ( fhir:dependent [
fhir:name [ fhir:v "DefaultMappingGroupAnonymousAlias" ] ;
        ( fhir:parameter [
fhir:value [ fhir:v "vvv" ]         ] [
fhir:value [ fhir:v "vvv" ]         ] )       ] )     ] [
fhir:name [ fhir:v "orientationOfPolymerisation" ] ;
      ( fhir:source [
fhir:context [ fhir:v "src" ] ;
fhir:element [ fhir:v "orientationOfPolymerisation" ] ;
fhir:variable [ fhir:v "vvv" ]       ] ) ;
      ( fhir:target [
fhir:context [ fhir:v "tgt" ] ;
fhir:element [ fhir:v "orientation" ] ;
fhir:variable [ fhir:v "vvv" ] ;
fhir:transform [ fhir:v "create" ]       ] ) ;
      ( fhir:dependent [
fhir:name [ fhir:v "DefaultMappingGroupAnonymousAlias" ] ;
        ( fhir:parameter [
fhir:value [ fhir:v "vvv" ]         ] [
fhir:value [ fhir:v "vvv" ]         ] )       ] )     ] [
fhir:name [ fhir:v "degreeOfPolymerisation" ] ;
      ( fhir:source [
fhir:context [ fhir:v "src" ] ;
fhir:element [ fhir:v "degreeOfPolymerisation" ] ;
fhir:variable [ fhir:v "s" ]       ] ) ;
      ( fhir:target [
fhir:context [ fhir:v "tgt" ] ;
fhir:element [ fhir:v "degreeOfPolymerisation" ] ;
fhir:variable [ fhir:v "t" ]       ] ) ;
      ( fhir:dependent [
fhir:name [ fhir:v "SubstancePolymerRepeatRepeatUnitDegreeOfPolymerisation" ] ;
        ( fhir:parameter [
fhir:value [ fhir:v "s" ]         ] [
fhir:value [ fhir:v "t" ]         ] )       ] ) ;
fhir:documentation [ fhir:v "src.amount -> tgt.amount;" ]     ] [
fhir:name [ fhir:v "structuralRepresentation" ] ;
      ( fhir:source [
fhir:context [ fhir:v "src" ] ;
fhir:element [ fhir:v "structuralRepresentation" ] ;
fhir:variable [ fhir:v "s" ]       ] ) ;
      ( fhir:target [
fhir:context [ fhir:v "tgt" ] ;
fhir:element [ fhir:v "structuralRepresentation" ] ;
fhir:variable [ fhir:v "t" ]       ] ) ;
      ( fhir:dependent [
fhir:name [ fhir:v "SubstancePolymerRepeatRepeatUnitStructuralRepresentation" ] ;
        ( fhir:parameter [
fhir:value [ fhir:v "s" ]         ] [
fhir:value [ fhir:v "t" ]         ] )       ] )     ] )
  ] [
fhir:name [ fhir:v "SubstancePolymerRepeatRepeatUnitDegreeOfPolymerisation" ] ;
fhir:extends [ fhir:v "BackboneElement" ] ;
    ( fhir:input [
fhir:name [ fhir:v "src" ] ;
fhir:mode [ fhir:v "source" ]     ] [
fhir:name [ fhir:v "tgt" ] ;
fhir:mode [ fhir:v "target" ]     ] ) ;
    ( fhir:rule [
fhir:name [ fhir:v "degree" ] ;
      ( fhir:source [
fhir:context [ fhir:v "src" ] ;
fhir:element [ fhir:v "degree" ] ;
fhir:variable [ fhir:v "vvv" ]       ] ) ;
      ( fhir:target [
fhir:context [ fhir:v "tgt" ] ;
fhir:element [ fhir:v "type" ] ;
fhir:variable [ fhir:v "vvv" ] ;
fhir:transform [ fhir:v "create" ]       ] ) ;
      ( fhir:dependent [
fhir:name [ fhir:v "DefaultMappingGroupAnonymousAlias" ] ;
        ( fhir:parameter [
fhir:value [ fhir:v "vvv" ]         ] [
fhir:value [ fhir:v "vvv" ]         ] )       ] )     ] [
fhir:name [ fhir:v "amount" ] ;
      ( fhir:source [
fhir:context [ fhir:v "src" ] ;
fhir:element [ fhir:v "amount" ] ;
fhir:variable [ fhir:v "s" ]       ] ) ;
      ( fhir:target [
fhir:transform [ fhir:v "copy" ] ;
        ( fhir:parameter [
fhir:value [ fhir:v "tgt" ]         ] )       ] ) ;
      ( fhir:rule [
fhir:name [ fhir:v "amountQuantity" ] ;
        ( fhir:source [
fhir:context [ fhir:v "s" ] ;
fhir:type [ fhir:v "Quantity" ] ;
fhir:element [ fhir:v "amount" ] ;
fhir:variable [ fhir:v "v" ]         ] ) ;
        ( fhir:target [
fhir:context [ fhir:v "tgt" ] ;
fhir:element [ fhir:v "average" ] ;
fhir:transform [ fhir:v "copy" ] ;
          ( fhir:parameter [
fhir:value [ fhir:v "v.value" ]           ] )         ] )       ] [
fhir:name [ fhir:v "referenceRange" ] ;
        ( fhir:source [
fhir:context [ fhir:v "s" ] ;
fhir:element [ fhir:v "referenceRange" ] ;
fhir:variable [ fhir:v "sr" ]         ] ) ;
        ( fhir:target [
fhir:transform [ fhir:v "copy" ] ;
          ( fhir:parameter [
fhir:value [ fhir:v "tgt" ]           ] )         ] ) ;
        ( fhir:rule [
fhir:name [ fhir:v "lowLimit" ] ;
          ( fhir:source [
fhir:context [ fhir:v "sr" ] ;
fhir:element [ fhir:v "lowLimit" ] ;
fhir:variable [ fhir:v "vl" ]           ] ) ;
          ( fhir:target [
fhir:context [ fhir:v "tgt" ] ;
fhir:element [ fhir:v "low" ] ;
fhir:transform [ fhir:v "copy" ] ;
            ( fhir:parameter [
fhir:value [ fhir:v "vl.value" ]             ] )           ] )         ] [
fhir:name [ fhir:v "highLimit" ] ;
          ( fhir:source [
fhir:context [ fhir:v "sr" ] ;
fhir:element [ fhir:v "highLimit" ] ;
fhir:variable [ fhir:v "vh" ]           ] ) ;
          ( fhir:target [
fhir:context [ fhir:v "tgt" ] ;
fhir:element [ fhir:v "high" ] ;
fhir:transform [ fhir:v "copy" ] ;
            ( fhir:parameter [
fhir:value [ fhir:v "vh.value" ]             ] )           ] )         ] )       ] )     ] )
  ] [
fhir:name [ fhir:v "SubstancePolymerRepeatRepeatUnitStructuralRepresentation" ] ;
fhir:extends [ fhir:v "BackboneElement" ] ;
    ( fhir:input [
fhir:name [ fhir:v "src" ] ;
fhir:mode [ fhir:v "source" ]     ] [
fhir:name [ fhir:v "tgt" ] ;
fhir:mode [ fhir:v "target" ]     ] ) ;
    ( fhir:rule [
fhir:name [ fhir:v "type" ] ;
      ( fhir:source [
fhir:context [ fhir:v "src" ] ;
fhir:element [ fhir:v "type" ] ;
fhir:variable [ fhir:v "vvv" ]       ] ) ;
      ( fhir:target [
fhir:context [ fhir:v "tgt" ] ;
fhir:element [ fhir:v "type" ] ;
fhir:variable [ fhir:v "vvv" ] ;
fhir:transform [ fhir:v "create" ]       ] ) ;
      ( fhir:dependent [
fhir:name [ fhir:v "DefaultMappingGroupAnonymousAlias" ] ;
        ( fhir:parameter [
fhir:value [ fhir:v "vvv" ]         ] [
fhir:value [ fhir:v "vvv" ]         ] )       ] )     ] [
fhir:name [ fhir:v "representation" ] ;
      ( fhir:source [
fhir:context [ fhir:v "src" ] ;
fhir:element [ fhir:v "representation" ] ;
fhir:variable [ fhir:v "vvv" ]       ] ) ;
      ( fhir:target [
fhir:context [ fhir:v "tgt" ] ;
fhir:element [ fhir:v "representation" ] ;
fhir:variable [ fhir:v "vvv" ] ;
fhir:transform [ fhir:v "create" ]       ] ) ;
      ( fhir:dependent [
fhir:name [ fhir:v "DefaultMappingGroupAnonymousAlias" ] ;
        ( fhir:parameter [
fhir:value [ fhir:v "vvv" ]         ] [
fhir:value [ fhir:v "vvv" ]         ] )       ] )     ] [
fhir:name [ fhir:v "attachment" ] ;
      ( fhir:source [
fhir:context [ fhir:v "src" ] ;
fhir:element [ fhir:v "attachment" ] ;
fhir:variable [ fhir:v "vvv" ]       ] ) ;
      ( fhir:target [
fhir:context [ fhir:v "tgt" ] ;
fhir:element [ fhir:v "attachment" ] ;
fhir:variable [ fhir:v "vvv" ] ;
fhir:transform [ fhir:v "create" ]       ] ) ;
      ( fhir:dependent [
fhir:name [ fhir:v "DefaultMappingGroupAnonymousAlias" ] ;
        ( fhir:parameter [
fhir:value [ fhir:v "vvv" ]         ] [
fhir:value [ fhir:v "vvv" ]         ] )       ] ) ;
fhir:documentation [ fhir:v "src.format -> tgt.format;" ]     ] )
  ] ) . #