R4 Ballot #1 #2 (Mixed Normative/Trial use)

This page is part of the FHIR Specification (v3.3.0: (v3.5.0: R4 Ballot 2). #2). The current version which supercedes this version is 5.0.0 . For a full list of available versions, see the Directory of published versions . Page versions: R5 R4B R4 R3

Orders and Observations Work Group Maturity Level : N/A Ballot Status : Informative Compartments : Device , Encounter , Patient , Practitioner

R2 : R3 : R4 Conversion maps for DiagnosticReport.

Functional status for this map: 11 14 tests of which 3 8 fail to execute . 8 6 fail round-trip testing and 3 6 r3 resources are invalid (22 (0 errors). ( see documentation)

map "http://hl7.org/fhir/StructureMap/DiagnosticReport2to3" = "R2 to R3 Conversions for DiagnosticReport"

map "http://hl7.org/fhir/StructureMap/DiagnosticReport3to4" = "R3 to R4 Conversions for DiagnosticReport"


uses "http://hl7.org/fhir/DSTU2/StructureDefinition/DiagnosticReport" alias DiagnosticReportR2 as source


uses "http://hl7.org/fhir/3.0/StructureDefinition/DiagnosticReport" alias DiagnosticReportR3 as source

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

imports "http://hl7.org/fhir/StructureMap/*2to3"

imports "http://hl7.org/fhir/StructureMap/*3to4"


group for type+types  DiagnosticReport extends DomainResource
  input src : DiagnosticReportR2 as source



group DiagnosticReport extends DomainResource
  input src : DiagnosticReportR3 as source

  input tgt : DiagnosticReport as target

  "DiagnosticReport-identifier" : for src.identifier make tgt.identifier
  "DiagnosticReport-status" : for src.status make tgt.status
  "DiagnosticReport-category" : for src.category make tgt.category
  "DiagnosticReport-code" : for src.code make tgt.code
  "DiagnosticReport-subject" : for src.subject make tgt.subject
  "DiagnosticReport-encounter" : for src.encounter make tgt.context
  "DiagnosticReport-effective" : for src.effective make tgt.effective 
  "DiagnosticReport-issued" : for src.issued make tgt.issued
  "DiagnosticReport-performer" : for src.performer as v make tgt.performer as p, p.actor as v
  "DiagnosticReport-request" : for src.request make tgt.basedOn
  "DiagnosticReport-specimen" : for src.specimen make tgt.specimen
  "DiagnosticReport-result" : for src.result make tgt.result
  "DiagnosticReport-imagingStudy" : for src.imagingStudy make tgt.imagingStudy
  "DiagnosticReport-image" : for src.image as vs0 make tgt.image as vt0 then drpImage(vs0, vt0)
  "DiagnosticReport-conclusion" : for src.conclusion make tgt.conclusion
  "DiagnosticReport-codedDiagnosis" : for src.codedDiagnosis make tgt.codedDiagnosis
  "DiagnosticReport-presentedForm" : for src.presentedForm make tgt.presentedForm

  "DiagnosticReport.identifier" : for src.identifier as vs make tgt.identifier as vt
  "DiagnosticReport.basedOn" : for src.basedOn as vs make tgt.basedOn as vt
  "DiagnosticReport.status" : for src.status as vs make tgt.status as vt
  "DiagnosticReport.category" : for src.category as vs make tgt.category as vt
  "DiagnosticReport.code" : for src.code as vs make tgt.code as vt
  "DiagnosticReport.subject" : for src.subject as vs make tgt.subject as vt
  "DiagnosticReport.context" : for src.context as vs make tgt.context as vt
  "DiagnosticReport.effective-dateTime" : for src.effective  : dateTime as vs make tgt.effective = create("dateTime") as vt then dateTime(vs,vt)
  "DiagnosticReport.effective-Period" : for src.effective  : Period as vs make tgt.effective = create("Period") as vt then Period(vs,vt)
  "DiagnosticReport.issued" : for src.issued as vs make tgt.issued as vt
  "DiagnosticReport.specimen" : for src.specimen as vs make tgt.specimen as vt
  "DiagnosticReport.result" : for src.result as vs make tgt.result as vt
  "DiagnosticReport.imagingStudy" : for src.imagingStudy as vs make tgt.imagingStudy as vt
  "DiagnosticReport.media" : for src.image as vs0 make tgt.media as vt0 then {
    "DiagnosticReport.media.comment" : for vs0.comment as vs make vt0.comment as vt
    "DiagnosticReport.media.link" : for vs0.link as vs make vt0.link as vt
  }
  "DiagnosticReport.conclusion" : for src.conclusion as vs make tgt.conclusion as vt
  "DiagnosticReport.codedDiagnosis" : for src.codedDiagnosis as vs make tgt.conclusionCode as vt
  "DiagnosticReport.presentedForm" : for src.presentedForm as vs make tgt.presentedForm as vt

endgroup

group drpImage extends BackboneElement
  input src as source
  input tgt as target


  "DiagnosticReport.image-comment" : for src.comment make tgt.comment
  "DiagnosticReport.image-link" : for src.link make tgt.link
endgroup

map "http://hl7.org/fhir/StructureMap/DiagnosticReport3to2" = "R3 to R2 Conversion for DiagnosticReport"

map "http://hl7.org/fhir/StructureMap/DiagnosticReport4to3" = "R4 to R3 Conversion for DiagnosticReport"



uses "http://hl7.org/fhir/StructureDefinition/DiagnosticReport" alias DiagnosticReport as source
uses "http://hl7.org/fhir/DSTU2/StructureDefinition/DiagnosticReport" alias DiagnosticReportR2 as target

uses "http://hl7.org/fhir/3.0/StructureDefinition/DiagnosticReport" alias DiagnosticReportR3 as target


imports "http://hl7.org/fhir/StructureMap/*3to2"

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


group for type+types  DiagnosticReport extends DomainResource
  input src : DiagnosticReport as source
  input tgt : DiagnosticReportR2 as target


  "DiagnosticReport-identifier" : for src.identifier make tgt.identifier
  "DiagnosticReport-status" : for src.status make tgt.status
  "DiagnosticReport-category" : for src.category make tgt.category
  "DiagnosticReport-code" : for src.code make tgt.code
  "DiagnosticReport-subject" : for src.subject make tgt.subject
  "DiagnosticReport-encounter" : for src.context make tgt.encounter
  "DiagnosticReport-effective" : for src.effective make tgt.effective 
  "DiagnosticReport-issued" : for src.issued make tgt.issued
  "DiagnosticReport-performer" : for src.performer as v then drpPerformer(v, tgt)
  "DiagnosticReport-request" : for src.basedOn make tgt.request
  "DiagnosticReport-specimen" : for src.specimen make tgt.specimen
  "DiagnosticReport-result" : for src.result make tgt.result
  "DiagnosticReport-imagingStudy" : for src.imagingStudy make tgt.imagingStudy
  "DiagnosticReport-image" : for src.image as vs0 make tgt.image as vt0 then drpImage(vs0, vt0)
  "DiagnosticReport-conclusion" : for src.conclusion make tgt.conclusion
  "DiagnosticReport-codedDiagnosis" : for src.codedDiagnosis make tgt.codedDiagnosis
  "DiagnosticReport-presentedForm" : for src.presentedForm make tgt.presentedForm
endgroup


group drpPerformer extends BackboneElement
  input src as source
  input tgt as target
  
  "DiagnosticReport.performer-actor" : for src.actor make tgt.performer
  

group DiagnosticReport extends DomainResource
  input src : DiagnosticReport as source
  input tgt : DiagnosticReportR3 as target

  "DiagnosticReport.identifier" : for src.identifier as vs make tgt.identifier as vt
  "DiagnosticReport.basedOn" : for src.basedOn as vs make tgt.basedOn as vt
  "DiagnosticReport.status" : for src.status as vs make tgt.status as vt
  "DiagnosticReport.category" : for src.category as vs make tgt.category as vt
  "DiagnosticReport.code" : for src.code as vs make tgt.code as vt
  "DiagnosticReport.subject" : for src.subject as vs make tgt.subject as vt
  "DiagnosticReport.context" : for src.context as vs make tgt.context as vt
  "DiagnosticReport.effective-dateTime" : for src.effective  : dateTime as vs make tgt.effective = create("dateTime") as vt then dateTime(vs,vt)
  "DiagnosticReport.effective-Period" : for src.effective  : Period as vs make tgt.effective = create("Period") as vt then Period(vs,vt)
  "DiagnosticReport.issued" : for src.issued as vs make tgt.issued as vt
  "DiagnosticReport.specimen" : for src.specimen as vs make tgt.specimen as vt
  "DiagnosticReport.result" : for src.result as vs make tgt.result as vt
  "DiagnosticReport.imagingStudy" : for src.imagingStudy as vs make tgt.imagingStudy as vt
  "DiagnosticReport.image" : for src.media as vs0 make tgt.image as vt0 then {
    "DiagnosticReport.image.comment" : for vs0.comment as vs make vt0.comment as vt
    "DiagnosticReport.image.link" : for vs0.link as vs make vt0.link as vt
  }
  "DiagnosticReport.conclusion" : for src.conclusion as vs make tgt.conclusion as vt
  "DiagnosticReport.conclusionCode" : for src.conclusionCode as vs make tgt.codedDiagnosis as vt
  "DiagnosticReport.presentedForm" : for src.presentedForm as vs make tgt.presentedForm as vt

endgroup

group drpImage extends BackboneElement
  input src as source
  input tgt as target


  "DiagnosticReport.image-comment" : for src.comment make tgt.comment
  "DiagnosticReport.image-link" : for src.link make tgt.link
endgroup

f001 ERROR @ DiagnosticReport.contained: Profile http://hl7.org/fhir/StructureDefinition/ProcedureRequest, Element 'DiagnosticReport.contained.status': minimum required = 1, but only found 0 (src = InstanceValidator) ERROR @ DiagnosticReport.contained: Profile http://hl7.org/fhir/StructureDefinition/ProcedureRequest, Element 'DiagnosticReport.contained.intent': minimum required = 1, but only found 0 (src = InstanceValidator) ERROR @ DiagnosticReport.contained.extension: The extension http://hl7.org/fhir/diagnosticorder-r2-marker is unknown, and not allowed here (src = InstanceValidator) ERROR @ DiagnosticReport.basedOn.contained: Profile http://hl7.org/fhir/StructureDefinition/ProcedureRequest, Element 'DiagnosticReport.basedOn.contained.status': minimum required = 1, but only found 0 (src = InstanceValidator) ERROR @ DiagnosticReport.basedOn.contained: Profile http://hl7.org/fhir/StructureDefinition/ProcedureRequest, Element 'DiagnosticReport.basedOn.contained.intent': minimum required = 1, but only found 0 (src = InstanceValidator) ERROR @ DiagnosticReport.basedOn.contained.extension: The extension http://hl7.org/fhir/diagnosticorder-r2-marker is unknown, and not allowed here (src = InstanceValidator) f202 ERROR @ DiagnosticReport.contained: Profile http://hl7.org/fhir/StructureDefinition/ProcedureRequest, Element 'DiagnosticReport.contained.status': minimum required = 1, but only found 0 (src = InstanceValidator) ERROR @ DiagnosticReport.contained: Profile http://hl7.org/fhir/StructureDefinition/ProcedureRequest, Element 'DiagnosticReport.contained.intent': minimum required = 1, but only found 0 (src = InstanceValidator) ERROR @ DiagnosticReport.contained: Profile http://hl7.org/fhir/StructureDefinition/ProcedureRequest, Element 'DiagnosticReport.contained.code': minimum required = 1, but only found 0 (src = InstanceValidator) ERROR @ DiagnosticReport.contained.extension: The extension http://hl7.org/fhir/diagnosticorder-r2-marker is unknown, and not allowed here (src = InstanceValidator) ERROR @ DiagnosticReport.basedOn.contained: Profile http://hl7.org/fhir/StructureDefinition/ProcedureRequest, Element 'DiagnosticReport.basedOn.contained.status': minimum required = 1, but only found 0 (src = InstanceValidator) ERROR @ DiagnosticReport.basedOn.contained: Profile http://hl7.org/fhir/StructureDefinition/ProcedureRequest, Element 'DiagnosticReport.basedOn.contained.intent': minimum required = 1, but only found 0 (src = InstanceValidator) ERROR @ DiagnosticReport.basedOn.contained: Profile http://hl7.org/fhir/StructureDefinition/ProcedureRequest, Element 'DiagnosticReport.basedOn.contained.code': minimum required = 1, but only found 0 (src = InstanceValidator) ERROR @ DiagnosticReport.basedOn.contained.extension: The extension http://hl7.org/fhir/diagnosticorder-r2-marker is unknown, and not allowed here (src = InstanceValidator) micro ERROR @ DiagnosticReport.contained[26]: Profile http://hl7.org/fhir/StructureDefinition/ProcedureRequest, Element 'DiagnosticReport.contained[26].status': minimum required = 1, but only found 0 (src = InstanceValidator) ERROR @ DiagnosticReport.contained[26]: Profile http://hl7.org/fhir/StructureDefinition/ProcedureRequest, Element 'DiagnosticReport.contained[26].intent': minimum required = 1, but only found 0 (src = InstanceValidator) ERROR @ DiagnosticReport.contained[26]: Profile http://hl7.org/fhir/StructureDefinition/ProcedureRequest, Element 'DiagnosticReport.contained[26].code': minimum required = 1, but only found 0 (src = InstanceValidator) ERROR @ DiagnosticReport.contained[26].extension: The extension http://hl7.org/fhir/diagnosticorder-r2-marker is unknown, and not allowed here (src = InstanceValidator) ERROR @ DiagnosticReport.basedOn.contained: Profile http://hl7.org/fhir/StructureDefinition/ProcedureRequest, Element 'DiagnosticReport.basedOn.contained.status': minimum required = 1, but only found 0 (src = InstanceValidator) ERROR @ DiagnosticReport.basedOn.contained: Profile http://hl7.org/fhir/StructureDefinition/ProcedureRequest, Element 'DiagnosticReport.basedOn.contained.intent': minimum required = 1, but only found 0 (src = InstanceValidator) ERROR @ DiagnosticReport.basedOn.contained: Profile http://hl7.org/fhir/StructureDefinition/ProcedureRequest, Element 'DiagnosticReport.basedOn.contained.code': minimum required = 1, but only found 0 (src = InstanceValidator) ERROR @ DiagnosticReport.basedOn.contained.extension: The extension http://hl7.org/fhir/diagnosticorder-r2-marker is unknown, and not allowed here (src = InstanceValidator)