Mappings for the athena-diagnosticreport-profile resource profile.
| AthenaDiagnosticReport |
| DiagnosticReport | FHIRR4_DIAGNOSTICREPORTVIEW |
| id | MakeId(%RESOURCEID%) |
| meta | |
| lastUpdated | %WHENUPDATED% |
| profile (us-core-diagnosticreport) | IfEqual(%CATEGORY%,"LAB").Then("http://hl7.org/fhir/us/core/StructureDefinition/us-core-diagnosticreport-lab") |
| profile (us-core-diagnosticreport) | IfNotEqual(%CATEGORY%,"LAB").Then("http://hl7.org/fhir/us/core/StructureDefinition/us-core-diagnosticreport-note") |
| security | |
| security (SENSITIVECHART) | CheckSensitive(%SENSITIVECHART%) |
| security (CONFABBR) | |
| system | getSiteCodeSystem("ConfidentialDocument") |
| code | %CONFABBR% |
| tag | MakeChangeTagList(%CHANGE%) |
| basedOn | MakeReference("ORDERS",%ORDERID%,"ServiceRequest") |
| status | MapCode(%DRSTATUS%,"DIAGNOSTICREPORTSTATUS") |
| category | MapConcept(%CATEGORY%,"DIAGNOSTICREPORTCATEGORY") |
| code | |
| coding (other) | IfNotEqual(%CATEGORY%,"LAB").Then(MapCodingList(%TYPE%,"DOCUMENTTYPE")) |
| coding (lab) | IfEqual( %CATEGORY%,"LAB").Then(MakeCodingForObsList(%OBSLIST%, "http://loinc.org")) |
| text | %SUMMARY% |
| subject | MakeReference("PERSON",%PID%,"Patient") |
| encounter | MakeReference("DOCUMENT",%RESOURCEID%,"Encounter") |
| effective[x] | %STARTDATE% |
| issued | %WHENCREATED% |
| performer | MakeReference("USR",%CREATOR%,"Practitioner") |
| result | MakeReferenceList("OBS",%OBSLIST%,"Observation") |
| media | MakeMediaList(%MEDIALIST%) |
| presentedForm (InternalAttachment) | MakeDiagReportContentComponentForBinary(%INTREFERENCE%, %INTREFERENCEFORMAT%,"urn:ihe:iti:xds:2017:mimeTypeSufficient","urn:oid:1.3.6.1.4.1.19376.1.2.3","MimeType Sufficient") |
| presentedForm (InternalAttachment2) | MakeDiagReportContentComponentForBinary(%INTREFERENCE2%, %INTREFERENCEFORMAT2%,"urn:oid:1.3.6.1.4.1.19376.1.2.3","urn:hl7-org:sdwg:ccda-structuredBody:2.1","Documents following C-CDA constraints using a structured body") |
| AthenaDiagnosticReport |
| DiagnosticReport | FHIRR4_DIAGNOSTICREPORTVIEW |
| id | MakeId(%RESOURCEID%) |
| meta | |
| lastUpdated | %WHENUPDATED% |
| profile (us-core-diagnosticreport) | IfEqual(%CATEGORY%,"LAB").Then("http://hl7.org/fhir/us/core/StructureDefinition/us-core-diagnosticreport-lab") |
| profile (us-core-diagnosticreport) | IfNotEqual(%CATEGORY%,"LAB").Then("http://hl7.org/fhir/us/core/StructureDefinition/us-core-diagnosticreport-note") |
| security | |
| security (SENSITIVECHART) | CheckSensitive(%SENSITIVECHART%) |
| security (CONFABBR) | |
| system | getSiteCodeSystem("ConfidentialDocument") |
| code | %CONFABBR% |
| tag | MakeChangeTagList(%CHANGE%) |
| basedOn | MakeReference("ORDERS",%ORDERID%,"ServiceRequest") |
| status | MapCode(%DRSTATUS%,"DIAGNOSTICREPORTSTATUS") |
| category | MapConcept(%CATEGORY%,"DIAGNOSTICREPORTCATEGORY") |
| code | |
| coding (other) | IfNotEqual(%CATEGORY%,"LAB").Then(MapCodingList(%TYPE%,"DOCUMENTTYPE")) |
| coding (lab) | IfEqual( %CATEGORY%,"LAB").Then(MakeCodingForObsList(%OBSLIST%, "http://loinc.org")) |
| text | %SUMMARY% |
| subject | MakeReference("PATIENTPROFILE",%PID%,"Patient") |
| encounter | MakeReference("DOCUMENT",%RESOURCEID%,"Encounter") |
| effective[x] | %STARTDATE% |
| issued | %WHENCREATED% |
| performer | MakeReference("USR",%CREATOR%,"Practitioner") |
| result | MakeReferenceList("OBS",%OBSLIST%,"Observation") |
| media | MakeMediaList(%MEDIALIST%) |
| presentedForm (InternalAttachment) | MakeDiagReportContentComponentForBinary(%INTREFERENCE%, %INTREFERENCEFORMAT%,"urn:ihe:iti:xds:2017:mimeTypeSufficient","urn:oid:1.3.6.1.4.1.19376.1.2.3","MimeType Sufficient") |
| presentedForm (InternalAttachment2) | MakeDiagReportContentComponentForBinary(%INTREFERENCE2%, %INTREFERENCEFORMAT2%,"urn:oid:1.3.6.1.4.1.19376.1.2.3","urn:hl7-org:sdwg:ccda-structuredBody:2.1","Documents following C-CDA constraints using a structured body") |
| AthenaDiagnosticReport |
| DiagnosticReport | ORU -> OBR |
| meta | |
| security | |
| security (SENSITIVECHART) | |
| security (CONFABBR) | |
| system | C*E.3 |
| version | C*E.7 |
| code | C*E.1 |
| display | C*E.2 - but note this is not well followed |
| userSelected | Sometimes implied by being first |
| identifier | OBR-51/ for globally unique filler ID - OBR-3 , For non-globally unique filler-id the flller/placer number must be combined with the universal service Id - OBR-2(if present)+OBR-3+OBR-4 |
| basedOn | ORC? OBR-2/3? |
| status | OBR-25 (not 1:1 mapping) |
| category | OBR-24 |
| code | OBR-4 (HL7 v2 doesn't provide an easy way to indicate both the ordered test and the performed panel) |
| coding | C*E.1-8, C*E.10-22 |
| coding (other) | C*E.1-8, C*E.10-22 |
| coding (lab) | C*E.1-8, C*E.10-22 |
| text | C*E.9. But note many systems use C*E.2 for this |
| subject | PID-3 (no HL7 v2 mapping for Group or Device) |
| encounter | PV1-19 |
| effective[x] | OBR-7 |
| issued | OBR-22 |
| performer | PRT-8 (where this PRT-4-Participation = "PO") |
| resultsInterpreter | OBR-32, PRT-8 (where this PRT-4-Participation = "PI") |
| specimen | SPM |
| result | OBXs |
| media | OBX? |
| conclusion | OBX |
| conclusionCode | OBX |
| presentedForm | OBX |
| presentedForm (InternalAttachment) | OBX |
| presentedForm (InternalAttachment2) | OBX |
| AthenaDiagnosticReport |
| DiagnosticReport | Entity. Role, or Act, Observation[classCode=OBS, moodCode=EVN] |
| meta | |
| id | n/a |
| extension | n/a |
| security | |
| security (SENSITIVECHART) | |
| security (CONFABBR) | |
| id | n/a |
| extension | n/a |
| system | ./codeSystem |
| version | ./codeSystemVersion |
| code | ./code |
| display | CV.displayName |
| userSelected | CD.codingRationale |
| text | Act.text? |
| contained | N/A |
| extension | N/A |
| modifierExtension | N/A |
| identifier | id |
| basedOn | outboundRelationship[typeCode=FLFS].target |
| status | statusCode Note: final and amended are distinguished by whether observation is the subject of a ControlAct event of type "revise" |
| category | inboundRelationship[typeCode=COMP].source[classCode=LIST, moodCode=EVN, code < LabService].code |
| code | code |
| id | n/a |
| extension | n/a |
| coding | union(., ./translation) |
| coding (other) | union(., ./translation) |
| coding (lab) | union(., ./translation) |
| text | ./originalText[mediaType/code="text/plain"]/data |
| subject | participation[typeCode=SBJ] |
| encounter | inboundRelationship[typeCode=COMP].source[classCode=ENC, moodCode=EVN] |
| effective[x] | effectiveTime |
| issued | participation[typeCode=VRF or AUT].time |
| performer | .participation[typeCode=PRF] |
| resultsInterpreter | .participation[typeCode=PRF] |
| specimen | participation[typeCode=SBJ] |
| result | outboundRelationship[typeCode=COMP].target |
| imagingStudy | outboundRelationship[typeCode=COMP].target[classsCode=DGIMG, moodCode=EVN] |
| media | outboundRelationship[typeCode=COMP].target |
| id | n/a |
| extension | n/a |
| modifierExtension | N/A |
| comment | .inboundRelationship[typeCode=COMP].source[classCode=OBS, moodCode=EVN, code="annotation"].value |
| link | .value.reference |
| conclusion | inboundRelationship[typeCode="SPRT"].source[classCode=OBS, moodCode=EVN, code=LOINC:48767-8].value (type=ST) |
| conclusionCode | inboundRelationship[typeCode=SPRT].source[classCode=OBS, moodCode=EVN, code=LOINC:54531-9].value (type=CD) |
| presentedForm | text (type=ED) |
| presentedForm (InternalAttachment) | text (type=ED) |
| presentedForm (InternalAttachment2) | text (type=ED) |