StructureMap-Specimen5to4B

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

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

    
/// name = 
    
    'Specimen5to4B'

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

    
/// status = 
    
    'active'


    conceptmap
     "
SpecimenStatus    " {

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

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


  s    :
available     -
 t    :
available
  s    :
unavailable     -
 t    :
unavailable
  s    :
unsatisfactory     -
 t    :
unsatisfactory
  s    :
"entered-in-error"     -
 t    :
    "
entered-in-error    "

    }


    uses
     "
    http://hl7.org/fhir/StructureDefinition/Specimen
    " 
    alias 
SpecimenR5     as 
    source

    uses
     "
http://hl7.org/fhir/4.3/StructureDefinition/Specimen    " 
    alias 
SpecimenR4B     as 
    target


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


    group 
Specimen    (
    source
     src
     : 
SpecimenR5,     target
     tgt
     : 
SpecimenR4B    )
     extends 
DomainResource     <<type+>>
     {

  src.identifier    
 ->     
tgt.identifier    ;

  src.accessionIdentifier    
 ->     
tgt.accessionIdentifier    ;

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

  src.type    
 ->     
tgt.type    ;

  src.subject    
 ->     
tgt.subject    ;

  src.receivedTime    
 ->     
tgt.receivedTime    ;

  src.parent    
 ->     
tgt.parent    ;

  src.request    
 ->     
tgt.request    ;

  src.collection     as 
    s
    
 ->     
tgt.collection     as 
    t
     then 
SpecimenCollection    (
    s
    , 
    t
    )
    ;
     // 
    src.combined as v -> tgt.combined = translate(v, '#PublicationStatus', 'code');

  src.processing     as 
    s
    
 ->     
tgt.processing     as 
    t
     then 
SpecimenProcessing    (
    s
    , 
    t
    )
    ;

  src.container     as 
    s
    
 ->     
tgt.container     as 
    t
     then 
SpecimenContainer    (
    s
    , 
    t
    )
    ;

  src.condition    
 ->     
tgt.condition    ;

  src.note    
 ->     
tgt.note    ;

    }


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

    // src.type -> tgt.type;

    // src.description -> tgt.description;

    // 
    }

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

  src.collector    
 ->     
tgt.collector    ;

  src.collected     : 
dateTime    
 ->     
tgt.collected    ;

  src.collected     : 
Period    
 ->     
tgt.collected    ;

  src.duration    
 ->     
tgt.duration    ;

  src.quantity    
 ->     
tgt.quantity    ;

  src.method    
 ->     
tgt.method    ;

  src.bodySite    
 ->     
tgt.bodySite    ;
     // 
    src.device -> tgt.device;

  src.fastingStatus     : 
CodeableConcept    
 ->     
tgt.fastingStatus    ;

  src.fastingStatus     : 
Duration    
 ->     
tgt.fastingStatus    ;

    }


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

  src.description    
 ->     
tgt.description    ;

  src.method    
 ->     
tgt.procedure    ;

  src.additive    
 ->     
tgt.additive    ;

  src.time     : 
dateTime    
 ->     
tgt.time    ;

  src.time     : 
Period    
 ->     
tgt.time    ;

    }


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

  src.specimenQuantity    
 ->     
tgt.specimenQuantity    ;
     // 
    src.device -> tgt.device;

    }


  

Produced 06 Apr 2023