StructureMap-Location5to4B

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

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

    
/// name = 
    
    'Location5to4B'

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

    
/// status = 
    
    'active'


    conceptmap
     "
LocationMode    " {

      prefix 
s     = "
    http://hl7.org/fhir/location-mode
    "

      prefix 
t     = "
http://hl7.org/fhir/4.3/location-mode    "


  s    :
instance     -
 t    :
instance
  s    :
kind     -
 t    :
kind
    }


    conceptmap
     "
LocationStatus    " {

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

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


  s    :
active     -
 t    :
active
  s    :
suspended     -
 t    :
suspended
  s    :
inactive     -
 t    :
inactive
    }


    uses
     "
    http://hl7.org/fhir/StructureDefinition/Location
    " 
    alias 
LocationR5     as 
    source

    uses
     "
http://hl7.org/fhir/4.3/StructureDefinition/Location    " 
    alias 
LocationR4B     as 
    target


    imports
     "
http://hl7.org/fhir/StructureMap/*5to4B    "


    group 
Location    (
    source
     src
     : 
LocationR5,     target
     tgt
     : 
LocationR4B    )
     extends 
DomainResource     <<type+>>
     {

  src.identifier    
 ->     
tgt.identifier    ;

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

  src.operationalStatus    
 ->     
tgt.operationalStatus    ;

  src.name    
 ->     
tgt.name    ;

  src.alias    
 ->     
tgt.alias    ;

  src.description    
 ->     
tgt.description    ;

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

  src.type    
 ->     
tgt.type    ;

  src.contact     as 
    s
    
 ->     
tgt.telecom =     s.telecom
    ;

  src.address    
 ->     
tgt.address    ;

  src.form    
 ->     
tgt.physicalType    ;

  src.position     as 
    s
    
 ->     
tgt.position     as 
    t
     then 
LocationPosition    (
    s
    , 
    t
    )
    ;

  src.managingOrganization    
 ->     
tgt.managingOrganization    ;

  src.partOf    
 ->     
tgt.partOf    ;

  src.hoursOfOperation     as 
    s
    
 ->     
 tgt.hoursOfOperation =     create
    (
    'BackboneElement'
    )
     as 
    te
    , 
 te.daysOfWeek =     s.daysOfWeek
    , 
 te.allDay =     s.allDay
    , 
 te.openingTime =     s.availableStartTime
    , 
 te.closingTime =     s.availableEndTime
    ;
     // 
    src.characteristic -> tgt.characteristic;

  src.endpoint    
 ->     
tgt.endpoint    ;
     // 
    src.virtualService -> tgt.virtualService;

    }


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

  src.longitude    
 ->     
tgt.longitude    ;

  src.latitude    
 ->     
tgt.latitude    ;

  src.altitude    
 ->     
tgt.altitude    ;

    }


  

Produced 06 Apr 2023