StructureMap-Person5to4B

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

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

    
/// name = 
    
    'Person5to4B'

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

    
/// status = 
    
    'active'


    conceptmap
     "
AdministrativeGender    " {

      prefix 
s     = "
    http://hl7.org/fhir/administrative-gender
    "

      prefix 
t     = "
http://hl7.org/fhir/4.3/administrative-gender    "


  s    :
male     -
 t    :
male
  s    :
female     -
 t    :
female
  s    :
other     -
 t    :
other
  s    :
unknown     -
 t    :
unknown
    }


    conceptmap
     "
IdentityAssuranceLevel    " {

      prefix 
s     = "
    http://hl7.org/fhir/identity-assuranceLevel
    "

      prefix 
t     = "
http://hl7.org/fhir/4.3/identity-assuranceLevel    "


  s    :
level1     -
 t    :
level1
  s    :
level2     -
 t    :
level2
  s    :
level3     -
 t    :
level3
  s    :
level4     -
 t    :
level4
    }


    uses
     "
    http://hl7.org/fhir/StructureDefinition/Person
    " 
    alias 
PersonR5     as 
    source

    uses
     "
http://hl7.org/fhir/4.3/StructureDefinition/Person    " 
    alias 
PersonR4B     as 
    target


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


    group 
Person    (
    source
     src
     : 
PersonR5,     target
     tgt
     : 
PersonR4B    )
     extends 
DomainResource     <<type+>>
     {

  src.identifier    
 ->     
tgt.identifier    ;

  src.active    
 ->     
tgt.active    ;

  src.name    
 ->     
tgt.name    ;

  src.telecom    
 ->     
tgt.telecom    ;

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

  src.birthDate    
 ->     
tgt.birthDate    ;

  src.address    
 ->     
tgt.address    ;
     // 
    src.deceased : boolean -> tgt.deceased;

  src.photo    
 ->     
tgt.photo    ;
     // 
    src.maritalStatus -> tgt.maritalStatus;

  src.managingOrganization    
 ->     
tgt.managingOrganization    ;
     // 
    src.communication as s -> tgt.communication as t then PersonCommunication(s,t);

  src.link     as 
    s
    
 ->     
tgt.link     as 
    t
     then 
PersonLink    (
    s
    , 
    t
    )
    ;

    }


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

    // src.language -> tgt.language;

    // src.preferred -> tgt.preferred;

    // 
    }

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

  src.target    
 ->     
tgt.target    ;

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

    }


  

Produced 06 Apr 2023