StructureMap-ObservationDefinition5to4B

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

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

    
/// name = 
    
    'ObservationDefinition5to4B'

    
/// title = 
    
    'FML Conversion for ObservationDefinition: 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
     "
ObservationDataType    " {

      prefix 
s     = "
    http://hl7.org/fhir/permitted-data-type
    "

      prefix 
t     = "
http://hl7.org/fhir/4.3/permitted-data-type    "


  s    :
Quantity     -
 t    :
Quantity
  s    :
CodeableConcept     -
 t    :
CodeableConcept
  s    :
string     -
 t    :
string
  s    :
boolean     -
 t    :
boolean
  s    :
integer     -
 t    :
integer
  s    :
Range     -
 t    :
Range
  s    :
Ratio     -
 t    :
Ratio
  s    :
SampledData     -
 t    :
SampledData
  s    :
time     -
 t    :
time
  s    :
dateTime     -
 t    :
dateTime
  s    :
Period     -
 t    :
Period
    }


    conceptmap
     "
ObservationRangeCategory    " {

      prefix 
s     = "
    http://hl7.org/fhir/observation-range-category
    "

      prefix 
t     = "
http://hl7.org/fhir/4.3/observation-range-category    "


  s    :
reference     -
 t    :
reference
  s    :
critical     -
 t    :
critical
  s    :
absolute     -
 t    :
absolute
    }


    conceptmap
     "
PublicationStatus    " {

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

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


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


    uses
     "
    http://hl7.org/fhir/StructureDefinition/ObservationDefinition
    " 
    alias 
ObservationDefinitionR5     as 
    source

    uses
     "
http://hl7.org/fhir/4.3/StructureDefinition/ObservationDefinition    " 
    alias 
ObservationDefinitionR4B     as 
    target


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


    group 
ObservationDefinition    (
    source
     src
     : 
ObservationDefinitionR5,     target
     tgt
     : 
ObservationDefinitionR4B    )
     extends 
DomainResource     <<type+>>
     {

  src.identifier    
 ->     
tgt.identifier    ;
     // 
    src.url -> tgt.url;

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

  src.code    
 ->     
tgt.code    ;

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

  src.multipleResultsAllowed    
 ->     
tgt.multipleResultsAllowed    ;

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

  src.preferredReportName    
 ->     
tgt.preferredReportName    ;
     // 
    src.specimen -> tgt.specimen;

  src.permittedUnit     as 
    s
    
 ->     
 tgt.quantitativeDetails     as 
    t
    , 
 t.customaryUnit     as 
    t1
    , 
 t1.coding =     s
    ;

  src.qualifiedValue     as 
    s
    
 ->     
tgt.qualifiedInterval     as 
    t
     then 
ObservationDefinitionQualifiedValue    (
    s
    , 
    t
    )
    ;

  src.qualifiedValue     as 
    s
    
 ->     
tgt.validCodedValueSet =     t.validCodedValueSet
    ;

  src.qualifiedValue     as 
    s
    
 ->     
tgt.normalCodedValueSet =     t.normalCodedValueSet
    ;

  src.qualifiedValue     as 
    s
    
 ->     
tgt.abnormalCodedValueSet =     t.abnormalCodedValueSet
    ;

  src.qualifiedValue     as 
    s
    
 ->     
tgt.criticalCodedValueSet =     t.criticalCodedValueSet
    ;

    }


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

  src.context    
 ->     
tgt.context    ;

  src.appliesTo    
 ->     
tgt.appliesTo    ;

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

  src.age    
 ->     
tgt.age    ;

  src.gestationalAge    
 ->     
tgt.gestationalAge    ;

  src.condition    
 ->     
tgt.condition    ;

  src.rangeCategory     as 
    v
    
 ->     
tgt.category =     translate
    (
    v
    , 
    '#ObservationRangeCategory'
    , 
    'code'
    )
    ;

  src.range    
 ->     
tgt.range    ;

    }


  

Produced 06 Apr 2023