StructureMap-ExampleScenario4Bto5

Sourcehl7.fhir.uv.extensions.r4#1.0.0:FHIR Extensions Pack (v4.0.1)
resourceTypeStructureMap
idExampleScenario4Bto5
canonicalhttp://hl7.org/fhir/StructureMap/ExampleScenario4Bto5
version1.0.0
statusactive
publisherHL7 International / FHIR Infrastructure
nameExampleScenario4Bto5
titleFML Conversion for ExampleScenario: R4B to R5
date2023-03-26T08:47:34+11:00
descriptionFMLConversionforExampleScenarioR4BtoR5
jurisdictionsuv
Usages(none)

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

    
/// name = 
    
    'ExampleScenario4Bto5'

    
/// title = 
    
    'FML Conversion for ExampleScenario: R4B to R5'

    
/// status = 
    
    'active'


    conceptmap
     "
ExampleScenarioActorType    " {

      prefix 
s     = "
http://hl7.org/fhir/4.3/examplescenario-actor-type    "

      prefix 
t     = "
    http://hl7.org/fhir/examplescenario-actor-type
    "


  s    :
person     -
 t    :
person
  s    :
entity     -
 t    :
system
    }


    conceptmap
     "
PublicationStatus    " {

      prefix 
s     = "
http://hl7.org/fhir/4.3/publication-status    "

      prefix 
t     = "
    http://hl7.org/fhir/publication-status
    "


  s    :
draft     -
 t    :
draft
  s    :
active     -
 t    :
active
  s    :
retired     -
 t    :
retired
  s    :
unknown     -
 t    :
unknown
    }


    uses
     "
http://hl7.org/fhir/4.3/StructureDefinition/ExampleScenario    " 
    alias 
ExampleScenarioR4B     as 
    source

    uses
     "
    http://hl7.org/fhir/StructureDefinition/ExampleScenario
    " 
    alias 
ExampleScenarioR5     as 
    target


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


    group 
ExampleScenario    (
    source
     src
     : 
ExampleScenarioR4B,     target
     tgt
     : 
ExampleScenarioR5    )
     extends 
DomainResource     <<type+>>
     {

  src.url    
 ->     
tgt.url    ;

  src.identifier    
 ->     
tgt.identifier    ;

  src.version    
 ->     
tgt.version    ;

  src.name    
 ->     
tgt.name    ;
     // 
    src.versionAlgorithm : string -> tgt.versionAlgorithm;

  src.status     as 
    v
    
 ->     
tgt.status =     translate
    (
    v
    , 
    '#PublicationStatus'
    , 
    'code'
    )
    ;
     // 
    src.title -> tgt.title;

  src.experimental    
 ->     
tgt.experimental    ;

  src.date    
 ->     
tgt.date    ;

  src.publisher    
 ->     
tgt.publisher    ;

  src.contact    
 ->     
tgt.contact    ;

  src.useContext    
 ->     
tgt.useContext    ;
     // 
    src.description -> tgt.description;

  src.jurisdiction    
 ->     
tgt.jurisdiction    ;

  src.purpose    
 ->     
tgt.purpose    ;

  src.copyright    
 ->     
tgt.copyright    ;

  src.actor     as 
    s
    
 ->     
tgt.actor     as 
    t
     then 
ExampleScenarioActor    (
    s
    , 
    t
    )
    ;
     // 
    src.copyrightLabel -> tgt.copyrightLabel;

  src.instance     as 
    s
    
 ->     
tgt.instance     as 
    t
     then 
ExampleScenarioInstance    (
    s
    , 
    t
    )
    ;

  src.process     as 
    s
    
 ->     
tgt.process     as 
    t
     then 
ExampleScenarioProcess    (
    s
    , 
    t
    )
    ;

    }


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

  src.actorId    
 ->     
tgt.key    ;

  src.type     as 
    v
    
 ->     
tgt.type =     translate
    (
    v
    , 
    '#ExampleScenarioActorType'
    , 
    'code'
    )
    ;

  src.name    
 ->     
tgt.title    ;

  src.description    
 ->     
tgt.description    ;

    }


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

  src.resourceId    
 ->     
tgt.key    ;

  src.resourceType     as 
    s
    
 ->     
 tgt.structureType =     create
    (
    'Coding'
    )
     as 
    t
    , 
 t.system =     'http://hl7.org/fhir/fhir-types'
    , 
 t.code =     s
    ;

  src.version     as 
    s
    
 ->     
tgt.version     as 
    t
     then 
ExampleScenarioInstanceVersion    (
    s
    , 
    t
    )
    ;

  src.name    
 ->     
tgt.title    ;
     // 
    src.structureProfile : canonical -> tgt.structureProfile;

  src.description    
 ->     
tgt.description    ;

  src.containedInstance     as 
    s
    
 ->     
tgt.containedInstance     as 
    t
     then 
ExampleScenarioInstanceContainedInstance    (
    s
    , 
    t
    )
    ;
     // 
    src.content -> tgt.content;

    }


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

  src.versionId    
 ->     
tgt.key    ;

  src.description    
 ->     
tgt.description    ;
     // 
    src.title -> tgt.title;

    }


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

  src.resourceId    
 ->     
tgt.instanceReference    ;

  src.versionId    
 ->     
tgt.versionReference    ;

    }


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

  src.title    
 ->     
tgt.title    ;

  src.description    
 ->     
tgt.description    ;

  src.preConditions    
 ->     
tgt.preConditions    ;

  src.postConditions    
 ->     
tgt.postConditions    ;

  src.step     as 
    s
    
 ->     
tgt.step     as 
    t
     then 
ExampleScenarioProcessStep    (
    s
    , 
    t
    )
    ;

    }


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

  src.operation     as 
    s
    
 ->     
tgt.operation     as 
    t
     then 
ExampleScenarioProcessStepOperation    (
    s
    , 
    t
    )
    ;
     // 
    src.number -> tgt.number;

  src.alternative     as 
    s
    
 ->     
tgt.alternative     as 
    t
     then 
ExampleScenarioProcessStepAlternative    (
    s
    , 
    t
    )
    ;

  src.pause    
 ->     
tgt.pause    ;

    }


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

  src.type    
 ->     
tgt.title    ;
     // 
    src.type -> tgt.type;

  src.initiator    
 ->     
tgt.initiator    ;

  src.receiver    
 ->     
tgt.receiver    ;

  src.description    
 ->     
tgt.description    ;

  src.initiatorActive    
 ->     
tgt.initiatorActive    ;

  src.receiverActive    
 ->     
tgt.receiverActive    ;

    }


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

  src.title    
 ->     
tgt.title    ;

  src.description    
 ->     
tgt.description    ;

    }


  

Produced 06 Apr 2023