FHIR © HL7.org  |  Server Home  |  XIG Home  |  Server Source  |  FHIR  

FHIR IG Statistics: StructureMap/SubstancePolymer4to5

Packagehl7.fhir.uv.xver
TypeStructureMap
IdSubstancePolymer4to5
FHIR VersionR5
Sourcehttp://hl7.org/fhir/extensions/https://build.fhir.org/ig/HL7/fhir-cross-version/StructureMap-SubstancePolymer4to5.html
URLhttp://hl7.org/fhir/StructureMap/SubstancePolymer4to5
Version0.1.0
Statusactive
Date2024-02-22T03:16:50+00:00
NameSubstancePolymer4to5
TitleSubstancePolymer Transforms: R4 to R5
Realmuv
Authorityhl7
DescriptionSubstancePolymerTransformsR4toR5

Resources that use this resource

No resources found


Resources that this resource uses

No resources found


Narrative

Note: links and images are rebased to the (stated) source

/// url = 'http://hl7.org/fhir/StructureMap/SubstancePolymer4to5'
/// name = 'SubstancePolymer4to5'
/// title = 'SubstancePolymer Transforms: R4 to R5'
/// status = 'active'

uses "http://hl7.org/fhir/4.0/SubstancePolymer" alias SubstancePolymerR4 as source
uses "http://hl7.org/fhir/5.0/SubstancePolymer" alias SubstancePolymerR5 as target

imports "http://hl7.org/fhir/StructureMap/*4to5"

group SubstancePolymer(source src : SubstancePolymerR4, target tgt : SubstancePolymerR5) extends DomainResource <<type+>> {
  src.class -> tgt.class;
  src.geometry -> tgt.geometry;
  src.copolymerConnectivity -> tgt.copolymerConnectivity;
  src.modification -> tgt.modification;
  src.monomerSet as s -> tgt.monomerSet as t then SubstancePolymerMonomerSet(s, t);
  src.repeat as s -> tgt.repeat as t then SubstancePolymerRepeat(s, t);
}

group SubstancePolymerMonomerSet(source src, target tgt) extends BackboneElement {
  src.ratioType -> tgt.ratioType;
  src.startingMaterial as s -> tgt.startingMaterial as t then SubstancePolymerMonomerSetStartingMaterial(s, t);
}

group SubstancePolymerMonomerSetStartingMaterial(source src, target tgt) extends BackboneElement {
  src.material -> tgt.code;
  src.type -> tgt.category;
  src.isDefining -> tgt.isDefining;
  src.amount as s ->  tgt.amount as t,  t = s.amount;
}

group SubstancePolymerRepeat(source src, target tgt) extends BackboneElement {
  src.averageMolecularFormula -> tgt.averageMolecularFormula;
  src.repeatUnitAmountType -> tgt.repeatUnitAmountType;
  src.repeatUnit as s -> tgt.repeatUnit as t then SubstancePolymerRepeatRepeatUnit(s, t);
}

group SubstancePolymerRepeatRepeatUnit(source src, target tgt) extends BackboneElement {
  src.repeatUnit -> tgt.unit;
  src.orientationOfPolymerisation -> tgt.orientation;
  src.degreeOfPolymerisation as s -> tgt.degreeOfPolymerisation as t then SubstancePolymerRepeatRepeatUnitDegreeOfPolymerisation(s, t);
  src.structuralRepresentation as s -> tgt.structuralRepresentation as t then SubstancePolymerRepeatRepeatUnitStructuralRepresentation(s, t);
}

group SubstancePolymerRepeatRepeatUnitDegreeOfPolymerisation(source src, target tgt) extends BackboneElement {
  src.degree -> tgt.type;
  src.amount as s -> tgt then {
    s.amount : Quantity as v -> tgt.average = v.value;
    s.referenceRange as sr -> tgt then {
      sr.lowLimit as vl -> tgt.low = vl.value;
      sr.highLimit as vh -> tgt.high = vh.value;
    };
  };
}

group SubstancePolymerRepeatRepeatUnitStructuralRepresentation(source src, target tgt) extends BackboneElement {
  src.type -> tgt.type;
  src.representation -> tgt.representation;
  src.attachment -> tgt.attachment;
}


Source

{
  "resourceType": "StructureMap",
  "id": "SubstancePolymer4to5",
  "text": {
    "status": "generated",
    "div": "<!-- snip (see above) -->"
  },
  "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/SubstancePolymer4to5",
  "version": "0.1.0",
  "name": "SubstancePolymer4to5",
  "title": "SubstancePolymer Transforms: R4 to R5",
  "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": "SubstancePolymerTransformsR4toR5",
  "jurisdiction": [
    {
      "coding": [
        {
          "system": "http://unstats.un.org/unsd/methods/m49/m49.htm",
          "code": "001"
        }
      ]
    }
  ],
  "structure": [
    {
      "url": "http://hl7.org/fhir/4.0/SubstancePolymer",
      "mode": "source",
      "alias": "SubstancePolymerR4"
    },
    {
      "url": "http://hl7.org/fhir/5.0/SubstancePolymer",
      "mode": "target",
      "alias": "SubstancePolymerR5"
    }
  ],
  "import": [
    "http://hl7.org/fhir/StructureMap/*4to5"
  ],
  "group": [
    {
      "name": "SubstancePolymer",
      "extends": "DomainResource",
      "typeMode": "type-and-types",
      "input": [
        {
          "name": "src",
          "type": "SubstancePolymerR4",
          "mode": "source"
        },
        {
          "name": "tgt",
          "type": "SubstancePolymerR5",
          "mode": "target"
        }
      ],
      "rule": [
        {
          "name": "class",
          "source": [
            {
              "context": "src",
              "element": "class",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "class",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "geometry",
          "source": [
            {
              "context": "src",
              "element": "geometry",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "geometry",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "copolymerConnectivity",
          "source": [
            {
              "context": "src",
              "element": "copolymerConnectivity",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "copolymerConnectivity",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "modification",
          "source": [
            {
              "context": "src",
              "element": "modification",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "modification",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "monomerSet",
          "source": [
            {
              "context": "src",
              "element": "monomerSet",
              "variable": "s"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "monomerSet",
              "variable": "t"
            }
          ],
          "dependent": [
            {
              "name": "SubstancePolymerMonomerSet",
              "parameter": [
                {
                  "valueId": "s"
                },
                {
                  "valueId": "t"
                }
              ]
            }
          ]
        },
        {
          "name": "repeat",
          "source": [
            {
              "context": "src",
              "element": "repeat",
              "variable": "s"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "repeat",
              "variable": "t"
            }
          ],
          "dependent": [
            {
              "name": "SubstancePolymerRepeat",
              "parameter": [
                {
                  "valueId": "s"
                },
                {
                  "valueId": "t"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name": "SubstancePolymerMonomerSet",
      "extends": "BackboneElement",
      "input": [
        {
          "name": "src",
          "mode": "source"
        },
        {
          "name": "tgt",
          "mode": "target"
        }
      ],
      "rule": [
        {
          "name": "ratioType",
          "source": [
            {
              "context": "src",
              "element": "ratioType",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "ratioType",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "startingMaterial",
          "source": [
            {
              "context": "src",
              "element": "startingMaterial",
              "variable": "s"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "startingMaterial",
              "variable": "t"
            }
          ],
          "dependent": [
            {
              "name": "SubstancePolymerMonomerSetStartingMaterial",
              "parameter": [
                {
                  "valueId": "s"
                },
                {
                  "valueId": "t"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name": "SubstancePolymerMonomerSetStartingMaterial",
      "extends": "BackboneElement",
      "input": [
        {
          "name": "src",
          "mode": "source"
        },
        {
          "name": "tgt",
          "mode": "target"
        }
      ],
      "rule": [
        {
          "name": "material",
          "source": [
            {
              "context": "src",
              "element": "material",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "code",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "type",
          "source": [
            {
              "context": "src",
              "element": "type",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "category",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "isDefining",
          "source": [
            {
              "context": "src",
              "element": "isDefining",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "isDefining",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "amount",
          "source": [
            {
              "context": "src",
              "element": "amount",
              "variable": "s"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "amount",
              "variable": "t"
            },
            {
              "context": "t",
              "transform": "copy",
              "parameter": [
                {
                  "valueId": "s.amount"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name": "SubstancePolymerRepeat",
      "extends": "BackboneElement",
      "input": [
        {
          "name": "src",
          "mode": "source"
        },
        {
          "name": "tgt",
          "mode": "target"
        }
      ],
      "rule": [
        {
          "name": "averageMolecularFormula",
          "source": [
            {
              "context": "src",
              "element": "averageMolecularFormula",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "averageMolecularFormula",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "repeatUnitAmountType",
          "source": [
            {
              "context": "src",
              "element": "repeatUnitAmountType",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "repeatUnitAmountType",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "repeatUnit",
          "source": [
            {
              "context": "src",
              "element": "repeatUnit",
              "variable": "s"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "repeatUnit",
              "variable": "t"
            }
          ],
          "dependent": [
            {
              "name": "SubstancePolymerRepeatRepeatUnit",
              "parameter": [
                {
                  "valueId": "s"
                },
                {
                  "valueId": "t"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name": "SubstancePolymerRepeatRepeatUnit",
      "extends": "BackboneElement",
      "input": [
        {
          "name": "src",
          "mode": "source"
        },
        {
          "name": "tgt",
          "mode": "target"
        }
      ],
      "rule": [
        {
          "name": "repeatUnit",
          "source": [
            {
              "context": "src",
              "element": "repeatUnit",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "unit",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "orientationOfPolymerisation",
          "source": [
            {
              "context": "src",
              "element": "orientationOfPolymerisation",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "orientation",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "degreeOfPolymerisation",
          "source": [
            {
              "context": "src",
              "element": "degreeOfPolymerisation",
              "variable": "s"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "degreeOfPolymerisation",
              "variable": "t"
            }
          ],
          "dependent": [
            {
              "name": "SubstancePolymerRepeatRepeatUnitDegreeOfPolymerisation",
              "parameter": [
                {
                  "valueId": "s"
                },
                {
                  "valueId": "t"
                }
              ]
            }
          ]
        },
        {
          "name": "structuralRepresentation",
          "source": [
            {
              "context": "src",
              "element": "structuralRepresentation",
              "variable": "s"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "structuralRepresentation",
              "variable": "t"
            }
          ],
          "dependent": [
            {
              "name": "SubstancePolymerRepeatRepeatUnitStructuralRepresentation",
              "parameter": [
                {
                  "valueId": "s"
                },
                {
                  "valueId": "t"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name": "SubstancePolymerRepeatRepeatUnitDegreeOfPolymerisation",
      "extends": "BackboneElement",
      "input": [
        {
          "name": "src",
          "mode": "source"
        },
        {
          "name": "tgt",
          "mode": "target"
        }
      ],
      "rule": [
        {
          "name": "degree",
          "source": [
            {
              "context": "src",
              "element": "degree",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "type",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "amount",
          "source": [
            {
              "context": "src",
              "element": "amount",
              "variable": "s"
            }
          ],
          "target": [
            {
              "transform": "copy",
              "parameter": [
                {
                  "valueId": "tgt"
                }
              ]
            }
          ],
          "rule": [
            {
              "name": "amountQuantity",
              "source": [
                {
                  "context": "s",
                  "type": "Quantity",
                  "element": "amount",
                  "variable": "v"
                }
              ],
              "target": [
                {
                  "context": "tgt",
                  "element": "average",
                  "transform": "copy",
                  "parameter": [
                    {
                      "valueId": "v.value"
                    }
                  ]
                }
              ]
            },
            {
              "name": "referenceRange",
              "source": [
                {
                  "context": "s",
                  "element": "referenceRange",
                  "variable": "sr"
                }
              ],
              "target": [
                {
                  "transform": "copy",
                  "parameter": [
                    {
                      "valueId": "tgt"
                    }
                  ]
                }
              ],
              "rule": [
                {
                  "name": "lowLimit",
                  "source": [
                    {
                      "context": "sr",
                      "element": "lowLimit",
                      "variable": "vl"
                    }
                  ],
                  "target": [
                    {
                      "context": "tgt",
                      "element": "low",
                      "transform": "copy",
                      "parameter": [
                        {
                          "valueId": "vl.value"
                        }
                      ]
                    }
                  ]
                },
                {
                  "name": "highLimit",
                  "source": [
                    {
                      "context": "sr",
                      "element": "highLimit",
                      "variable": "vh"
                    }
                  ],
                  "target": [
                    {
                      "context": "tgt",
                      "element": "high",
                      "transform": "copy",
                      "parameter": [
                        {
                          "valueId": "vh.value"
                        }
                      ]
                    }
                  ]
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name": "SubstancePolymerRepeatRepeatUnitStructuralRepresentation",
      "extends": "BackboneElement",
      "input": [
        {
          "name": "src",
          "mode": "source"
        },
        {
          "name": "tgt",
          "mode": "target"
        }
      ],
      "rule": [
        {
          "name": "type",
          "source": [
            {
              "context": "src",
              "element": "type",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "type",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "representation",
          "source": [
            {
              "context": "src",
              "element": "representation",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "representation",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "attachment",
          "source": [
            {
              "context": "src",
              "element": "attachment",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "attachment",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        }
      ]
    }
  ]
}