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

FHIR IG Statistics: StructureMap/DeviceDefinition4Bto5

Packagehl7.fhir.uv.xver
Resource TypeStructureMap
IdDeviceDefinition4Bto5
FHIR VersionR5
Sourcehttp://hl7.org/fhir/extensions/https://build.fhir.org/ig/HL7/fhir-cross-version/StructureMap-DeviceDefinition4Bto5.html
URLhttp://hl7.org/fhir/StructureMap/DeviceDefinition4Bto5
Version0.1.0
Statusactive
Date2024-02-22T03:16:50+00:00
NameDeviceDefinition4Bto5
TitleDeviceDefinition Transforms: R4B to R5
Realmuv
Authorityhl7
DescriptionDeviceDefinitionTransformsR4BtoR5

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/DeviceDefinition4Bto5'
/// name = 'DeviceDefinition4Bto5'
/// title = 'DeviceDefinition Transforms: R4B to R5'
/// status = 'active'

uses "http://hl7.org/fhir/4.3/DeviceDefinition" alias DeviceDefinitionR4B as source
uses "http://hl7.org/fhir/5.0/DeviceDefinition" alias DeviceDefinitionR5 as target

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

group DeviceDefinition(source src : DeviceDefinitionR4B, target tgt : DeviceDefinitionR5) extends DomainResource <<type+>> {
  src.identifier -> tgt.identifier;
  src.udiDeviceIdentifier as s -> tgt.udiDeviceIdentifier as t then DeviceDefinitionUdiDeviceIdentifier(s, t);
  src.manufacturer : Reference -> tgt.manufacturer;
  src.deviceName as s -> tgt.deviceName as t then DeviceDefinitionDeviceName(s, t);
  src.modelNumber -> tgt.modelNumber;
  src.version as s ->  tgt.version as t,  t.value = s;
  src.safety -> tgt.safety;
  src.shelfLifeStorage -> tgt.shelfLifeStorage;
  src.languageCode -> tgt.languageCode;
  src.property as s -> tgt.property as t then DeviceDefinitionProperty(s, t);
  src.owner -> tgt.owner;
  src.contact -> tgt.contact;
  src.note -> tgt.note;
  src.material as s -> tgt.material as t then DeviceDefinitionMaterial(s, t);
}

group DeviceDefinitionUdiDeviceIdentifier(source src, target tgt) extends BackboneElement {
  src.deviceIdentifier -> tgt.deviceIdentifier;
  src.issuer -> tgt.issuer;
  src.jurisdiction -> tgt.jurisdiction;
}

// group DeviceDefinitionUdiDeviceIdentifierMarketDistribution(source src, target tgt) extends BackboneElement {
// src.marketPeriod -> tgt.marketPeriod;
// src.subJurisdiction -> tgt.subJurisdiction;
// }
// group DeviceDefinitionRegulatoryIdentifier(source src, target tgt) extends BackboneElement {
// src.type as v -> tgt.type = translate(v, '#DeviceRegulatoryIdentifierType', 'code');
// src.deviceIdentifier -> tgt.deviceIdentifier;
// src.issuer -> tgt.issuer;
// src.jurisdiction -> tgt.jurisdiction;
// }
group DeviceDefinitionDeviceName(source src, target tgt) extends BackboneElement {
  src.name -> tgt.name;
  src.type as v -> tgt.type = translate(v, 'http://hl7.org/fhir/ConceptMap/DeviceDefinitionB.deviceName.type-R4BtoR5', 'code');
}

// group DeviceDefinitionClassification(source src, target tgt) extends BackboneElement {
// src.type -> tgt.type;
// src.justification -> tgt.justification;
// }
// group DeviceDefinitionConformsTo(source src, target tgt) extends BackboneElement {
// src.category -> tgt.category;
// src.specification -> tgt.specification;
// src.version -> tgt.version;
// src.source -> tgt.source;
// }
// group DeviceDefinitionHasPart(source src, target tgt) extends BackboneElement {
// src.reference -> tgt.reference;
// src.count -> tgt.count;
// }
// group DeviceDefinitionPackaging(source src, target tgt) extends BackboneElement {
// src.identifier -> tgt.identifier;
// src.type -> tgt.type;
// src.count -> tgt.count;
// src.distributor as s -> tgt.distributor as t then DeviceDefinitionPackagingDistributor(s,t);
// }
// group DeviceDefinitionPackagingDistributor(source src, target tgt) extends BackboneElement {
// src.name -> tgt.name;
// src.organizationReference -> tgt.organizationReference;
// }
// group DeviceDefinitionVersion(source src, target tgt) extends BackboneElement {
// src.type -> tgt.type;
// src.component -> tgt.component;
// src.value -> tgt.value;
// }
group DeviceDefinitionProperty(source src, target tgt) extends BackboneElement {
  src.type -> tgt.type;
  src.valueQuantity : Quantity -> tgt.value;
  src.valueCode : CodeableConcept -> tgt.value;
}

// group DeviceDefinitionLink(source src, target tgt) extends BackboneElement {
// src.relation -> tgt.relation;
// src.relatedDevice -> tgt.relatedDevice;
// }
group DeviceDefinitionMaterial(source src, target tgt) extends BackboneElement {
  src.substance -> tgt.substance;
  src.alternate -> tgt.alternate;
  src.allergenicIndicator -> tgt.allergenicIndicator;
}


Source

{
  "resourceType": "StructureMap",
  "id": "DeviceDefinition4Bto5",
  "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/DeviceDefinition4Bto5",
  "version": "0.1.0",
  "name": "DeviceDefinition4Bto5",
  "title": "DeviceDefinition Transforms: R4B 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": "DeviceDefinitionTransformsR4BtoR5",
  "jurisdiction": [
    {
      "coding": [
        {
          "system": "http://unstats.un.org/unsd/methods/m49/m49.htm",
          "code": "001"
        }
      ]
    }
  ],
  "structure": [
    {
      "url": "http://hl7.org/fhir/4.3/DeviceDefinition",
      "mode": "source",
      "alias": "DeviceDefinitionR4B"
    },
    {
      "url": "http://hl7.org/fhir/5.0/DeviceDefinition",
      "mode": "target",
      "alias": "DeviceDefinitionR5"
    }
  ],
  "import": [
    "http://hl7.org/fhir/StructureMap/*4Bto5"
  ],
  "group": [
    {
      "name": "DeviceDefinition",
      "extends": "DomainResource",
      "typeMode": "type-and-types",
      "input": [
        {
          "name": "src",
          "type": "DeviceDefinitionR4B",
          "mode": "source"
        },
        {
          "name": "tgt",
          "type": "DeviceDefinitionR5",
          "mode": "target"
        }
      ],
      "rule": [
        {
          "name": "identifier",
          "source": [
            {
              "context": "src",
              "element": "identifier",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "identifier",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "udiDeviceIdentifier",
          "source": [
            {
              "context": "src",
              "element": "udiDeviceIdentifier",
              "variable": "s"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "udiDeviceIdentifier",
              "variable": "t"
            }
          ],
          "dependent": [
            {
              "name": "DeviceDefinitionUdiDeviceIdentifier",
              "parameter": [
                {
                  "valueId": "s"
                },
                {
                  "valueId": "t"
                }
              ]
            }
          ]
        },
        {
          "name": "manufacturerReference",
          "source": [
            {
              "context": "src",
              "type": "Reference",
              "element": "manufacturer",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "manufacturer",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "deviceName",
          "source": [
            {
              "context": "src",
              "element": "deviceName",
              "variable": "s"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "deviceName",
              "variable": "t"
            }
          ],
          "dependent": [
            {
              "name": "DeviceDefinitionDeviceName",
              "parameter": [
                {
                  "valueId": "s"
                },
                {
                  "valueId": "t"
                }
              ]
            }
          ]
        },
        {
          "name": "modelNumber",
          "source": [
            {
              "context": "src",
              "element": "modelNumber",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "modelNumber",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "version",
          "source": [
            {
              "context": "src",
              "element": "version",
              "variable": "s"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "version",
              "variable": "t"
            },
            {
              "context": "t",
              "element": "value",
              "transform": "copy",
              "parameter": [
                {
                  "valueId": "s"
                }
              ]
            }
          ]
        },
        {
          "name": "safety",
          "source": [
            {
              "context": "src",
              "element": "safety",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "safety",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "shelfLifeStorage",
          "source": [
            {
              "context": "src",
              "element": "shelfLifeStorage",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "shelfLifeStorage",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "languageCode",
          "source": [
            {
              "context": "src",
              "element": "languageCode",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "languageCode",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "property",
          "source": [
            {
              "context": "src",
              "element": "property",
              "variable": "s"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "property",
              "variable": "t"
            }
          ],
          "dependent": [
            {
              "name": "DeviceDefinitionProperty",
              "parameter": [
                {
                  "valueId": "s"
                },
                {
                  "valueId": "t"
                }
              ]
            }
          ]
        },
        {
          "name": "owner",
          "source": [
            {
              "context": "src",
              "element": "owner",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "owner",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "contact",
          "source": [
            {
              "context": "src",
              "element": "contact",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "contact",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "note",
          "source": [
            {
              "context": "src",
              "element": "note",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "note",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "material",
          "source": [
            {
              "context": "src",
              "element": "material",
              "variable": "s"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "material",
              "variable": "t"
            }
          ],
          "dependent": [
            {
              "name": "DeviceDefinitionMaterial",
              "parameter": [
                {
                  "valueId": "s"
                },
                {
                  "valueId": "t"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name": "DeviceDefinitionUdiDeviceIdentifier",
      "extends": "BackboneElement",
      "input": [
        {
          "name": "src",
          "mode": "source"
        },
        {
          "name": "tgt",
          "mode": "target"
        }
      ],
      "rule": [
        {
          "name": "deviceIdentifier",
          "source": [
            {
              "context": "src",
              "element": "deviceIdentifier",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "deviceIdentifier",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "issuer",
          "source": [
            {
              "context": "src",
              "element": "issuer",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "issuer",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "jurisdiction",
          "source": [
            {
              "context": "src",
              "element": "jurisdiction",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "jurisdiction",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name": "DeviceDefinitionDeviceName",
      "extends": "BackboneElement",
      "documentation": "group DeviceDefinitionUdiDeviceIdentifierMarketDistribution(source src, target tgt) extends BackboneElement {\r\nsrc.marketPeriod -> tgt.marketPeriod;\r\nsrc.subJurisdiction -> tgt.subJurisdiction;\r\n}\r\ngroup DeviceDefinitionRegulatoryIdentifier(source src, target tgt) extends BackboneElement {\r\nsrc.type as v -> tgt.type = translate(v, '#DeviceRegulatoryIdentifierType', 'code');\r\nsrc.deviceIdentifier -> tgt.deviceIdentifier;\r\nsrc.issuer -> tgt.issuer;\r\nsrc.jurisdiction -> tgt.jurisdiction;\r\n}",
      "input": [
        {
          "name": "src",
          "mode": "source"
        },
        {
          "name": "tgt",
          "mode": "target"
        }
      ],
      "rule": [
        {
          "name": "name",
          "source": [
            {
              "context": "src",
              "element": "name",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "name",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "type",
          "source": [
            {
              "context": "src",
              "element": "type",
              "variable": "v"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "type",
              "transform": "translate",
              "parameter": [
                {
                  "valueId": "v"
                },
                {
                  "valueString": "http://hl7.org/fhir/ConceptMap/DeviceDefinitionB.deviceName.type-R4BtoR5"
                },
                {
                  "valueString": "code"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name": "DeviceDefinitionProperty",
      "extends": "BackboneElement",
      "documentation": "group DeviceDefinitionClassification(source src, target tgt) extends BackboneElement {\r\nsrc.type -> tgt.type;\r\nsrc.justification -> tgt.justification;\r\n}\r\ngroup DeviceDefinitionConformsTo(source src, target tgt) extends BackboneElement {\r\nsrc.category -> tgt.category;\r\nsrc.specification -> tgt.specification;\r\nsrc.version -> tgt.version;\r\nsrc.source -> tgt.source;\r\n}\r\ngroup DeviceDefinitionHasPart(source src, target tgt) extends BackboneElement {\r\nsrc.reference -> tgt.reference;\r\nsrc.count -> tgt.count;\r\n}\r\ngroup DeviceDefinitionPackaging(source src, target tgt) extends BackboneElement {\r\nsrc.identifier -> tgt.identifier;\r\nsrc.type -> tgt.type;\r\nsrc.count -> tgt.count;\r\nsrc.distributor as s -> tgt.distributor as t then DeviceDefinitionPackagingDistributor(s,t);\r\n}\r\ngroup DeviceDefinitionPackagingDistributor(source src, target tgt) extends BackboneElement {\r\nsrc.name -> tgt.name;\r\nsrc.organizationReference -> tgt.organizationReference;\r\n}\r\ngroup DeviceDefinitionVersion(source src, target tgt) extends BackboneElement {\r\nsrc.type -> tgt.type;\r\nsrc.component -> tgt.component;\r\nsrc.value -> tgt.value;\r\n}",
      "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": "valueQuantityQuantity",
          "source": [
            {
              "context": "src",
              "type": "Quantity",
              "element": "valueQuantity",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "value",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "valueCodeCodeableConcept",
          "source": [
            {
              "context": "src",
              "type": "CodeableConcept",
              "element": "valueCode",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "value",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name": "DeviceDefinitionMaterial",
      "extends": "BackboneElement",
      "documentation": "group DeviceDefinitionLink(source src, target tgt) extends BackboneElement {\r\nsrc.relation -> tgt.relation;\r\nsrc.relatedDevice -> tgt.relatedDevice;\r\n}",
      "input": [
        {
          "name": "src",
          "mode": "source"
        },
        {
          "name": "tgt",
          "mode": "target"
        }
      ],
      "rule": [
        {
          "name": "substance",
          "source": [
            {
              "context": "src",
              "element": "substance",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "substance",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "alternate",
          "source": [
            {
              "context": "src",
              "element": "alternate",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "alternate",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "allergenicIndicator",
          "source": [
            {
              "context": "src",
              "element": "allergenicIndicator",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "allergenicIndicator",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        }
      ]
    }
  ]
}