StructureMap-MedicinalProductDefinition4to5

Sourcehl7.fhir.uv.extensions.r4#1.0.0:FHIR Extensions Pack (v4.0.1)
resourceTypeStructureMap
idMedicinalProductDefinition4to5
canonicalhttp://hl7.org/fhir/StructureMap/MedicinalProductDefinition4to5
version1.0.0
statusactive
publisherHL7 International / FHIR Infrastructure
nameMedicinalProductDefinition4to5
titleFML Conversion for MedicinalProductDefinition: R4 to R5
date2023-03-26T08:47:34+11:00
descriptionFMLConversionforMedicinalProductDefinitionR4toR5
jurisdictionsuv
Usages(none)

    
/// url = 
    
    'http://hl7.org/fhir/StructureMap/MedicinalProductDefinition4to5'

    
/// name = 
    
    'MedicinalProductDefinition4to5'

    
/// title = 
    
    'FML Conversion for MedicinalProductDefinition: R4 to R5'

    
/// status = 
    
    'active'


    uses
     "
http://hl7.org/fhir/4.0/StructureDefinition/MedicinalProduct    " 
    alias 
MedicinalProductR4     as 
    source

    uses
     "
    http://hl7.org/fhir/StructureDefinition/MedicinalProductDefinition
    " 
    alias 
MedicinalProductDefinitionR5     as 
    target


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


    group 
MedicinalProductDefinition    (
    source
     src
     : 
MedicinalProductR4,     target
     tgt
     : 
MedicinalProductDefinitionR5    )
     extends 
DomainResource     <<type+>>
     {

  src.identifier    
 ->     
tgt.identifier    ;

  src.type    
 ->     
tgt.type    ;

  src.domain    
 ->     
tgt.domain    ;

  src.combinedPharmaceuticalDoseForm    
 ->     
tgt.combinedPharmaceuticalDoseForm    ;
     // 
    src.version -> tgt.version;

  src.legalStatusOfSupply    
 ->     
tgt.legalStatusOfSupply    ;
     // 
    src.route -> tgt.route;

  src.additionalMonitoringIndicator    
 ->     
tgt.additionalMonitoringIndicator    ;

  src.specialMeasures    
 ->     
tgt.specialMeasures    ;

  src.paediatricUseIndicator    
 ->     
tgt.pediatricUseIndicator    ;

  src.productClassification    
 ->     
tgt.classification    ;

  src.marketingStatus    
 ->     
tgt.marketingStatus    ;

  src.attachedDocument    
 ->     
tgt.attachedDocument    ;
     // 
    src.packagedMedicinalProduct -> tgt.packagedMedicinalProduct;

  src.masterFile    
 ->     
tgt.masterFile    ;

  src.contact     as 
    s
    
 ->     
 tgt.contact     as 
    t
    , 
 t.contact =     s
    ;

  src.clinicalTrial    
 ->     
tgt.clinicalTrial    ;

  src.name     as 
    s
    
 ->     
tgt.name     as 
    t
     then 
MedicinalProductDefinitionName    (
    s
    , 
    t
    )
    ;
     // 
    src.code -> tgt.code;

  src.manufacturingBusinessOperation     as 
    s
    
 ->     
tgt.operation     as 
    t
     then 
MedicinalProductDefinitionOperation    (
    s
    , 
    t
    )
    ;
     // 
    src.crossReference as s -> tgt.crossReference as t then MedicinalProductDefinitionCrossReference(s,t);

    }


    // 
    group MedicinalProductDefinitionContact(source src, target tgt) extends BackboneElement {

    // src.type -> tgt.type;

    // src.contact -> tgt.contact;

    // 
    }

    group 
MedicinalProductDefinitionName    (
    source
     src
,     target
     tgt
    )
     extends 
BackboneElement     {

  src.productName    
 ->     
tgt.productName    ;

  src.namePart     as 
    s
    
 ->     
tgt.part     as 
    t
     then 
MedicinalProductDefinitionNamePart    (
    s
    , 
    t
    )
    ;
     // 
    src.type -> tgt.type;

  src.countryLanguage     as 
    s
    
 ->     
tgt.usage     as 
    t
     then 
MedicinalProductDefinitionNameUsage    (
    s
    , 
    t
    )
    ;

    }


    group 
MedicinalProductDefinitionNamePart    (
    source
     src
,     target
     tgt
    )
     extends 
BackboneElement     {

  src.part    
 ->     
tgt.part    ;

  src.type    
 ->     
tgt.type    ;

    }


    group 
MedicinalProductDefinitionNameUsage    (
    source
     src
,     target
     tgt
    )
     extends 
BackboneElement     {

  src.country    
 ->     
tgt.country    ;

  src.jurisdiction    
 ->     
tgt.jurisdiction    ;

  src.language    
 ->     
tgt.language    ;

    }


    // 
    group MedicinalProductDefinitionCrossReference(source src, target tgt) extends BackboneElement {

    // src.product -> tgt.product;

    // src.type -> tgt.type;

    // 
    }

    group 
MedicinalProductDefinitionOperation    (
    source
     src
,     target
     tgt
    )
     extends 
BackboneElement     {

  src.operationType    
 ->     
tgt.type    ;

  src.effectiveDate     : 
dateTime     as 
    s
    
 ->     
 tgt.effectiveDate     as 
    t
    , 
 t.start =     s
    ;

  src.manufacturer    
 ->     
tgt.organization    ;

  src.confidentialityIndicator    
 ->     
tgt.confidentialityIndicator    ;

    }


  

Produced 06 Apr 2023