Closed arnejduranovic closed 4 months ago
Hey team! Please add your planning poker estimate with Zenhub @adegolier @arnejduranovic @brick-green @david-navapbc @jack-h-wang @jalbinson @JFisk42 @mkalish @thetaurean
In case it helps, I did some debugging last week on this issue and found a couple of things:
prime-router/metadata/HL7/catchall/hl7/segments/OBX/Observation.yml
and the mappings for CE CodeableConcept are here prime-router/metadata/HL7/catchall/hl7/datatypes/CE/CodeableConcept.yml
. The CE/CodeableConcept.yml
seems like is not working as expected. I found that replacing CE
for CWE
in CE/CodeableConcept.yml
fixes the issue, but I don't fully understand whyce-coding-system
and ce-coding
extensions don't get mapped from FHIR to HL7. Changing them to cwe-coding-system
and cwe-coding
fixes it and I think that's because of a missing FHIR path filter for CE when mapping FHIR to HL7FYI, this is the ticket where we're tracking this issue on our side. It also has some more context: https://github.com/CDCgov/trusted-intermediary/issues/1133
I also took a look at this issue.
Findings:
OBX.2
has CWE
, the FHIR resource comes with a coding resource as part of the Observation
resource. This coding resource is used to populate OBX.3
and OBX.5
, and this resource is missing when OBX.2
has CE
as the datatype.CWE
datatype:
CE
datatype:
Describe the bug
When processing the message below in the UP (HL7v2 sender HL7v2 receiver) the output HL7v2 is missing data from OBX.3 and OBX.5
Impact on ReportStream
ETOR cannot move forward with pilot. RS can't properly map HL7v2 messages when value of
OBX.2
isCE
.Steps to reproduce
Steps to reproduce the behavior:
Expected behavior
Output HL7v2 should match input HL7v2
Additional context
This issue appears when
OBX.2
is set toCE
. This is a known issue that our OBX -> Observation mappings are not correct. We should make the following changes to make the mappings more correct and THEN see if it fixes the issue above.prime-router/metadata/HL7/catchall/hl7/segments/OBX/Observation.yml
If these changes don't fix the issue above, then figure out why and make additional changes as needed. Also, make sure the following commented out test passes now:
test converts with CE for obx2
OBXToObservationTests