Skip to content

XML Import issues with IBM

Vishnupriya Varadharaju edited this page Nov 12, 2024 · 3 revisions

The XML file exported by Blaze, adds additional namespaces to the server in the div tag where the namespace is <div xmlns="http://www.w3.org/1999/xhtml"> (as in the original Synthea file). When Blaze imports and exports a Synthea patient file, the div tag is changed to <div xmlns="" xmlns:a="http://www.w3.org/1999/xhtml" xmlns:i="http://hl7.org/fhir">.

When imported into IBM as the next server in the chain. IBM throws the following error -

<OperationOutcome xmlns="http://hl7.org/fhir"><iss [blaze_output.txt](https://github.com/user-attachments/files/17721759/blaze_output.txt) ue><severity value="fatal"/><code value="invalid"/><details><text value="FHIRProvider: Namespace URI http://www.w3.org/1999/xhtml specified did not match with current namespace URI [Bundle.entry[0].resource.text]"/></details><expression value="Bundle.entry[0].resource.text"/></issue></OperationOutcome> HTTP Status: 400

On modifying the div tag to one of the two, we were able to import the file into IBM -

  1. <div xmlns="http://www.w3.org/1999/xhtml" xmlns:a="http://www.w3.org/1999/xhtml" xmlns:i="http://hl7.org/fhir">
  2. <div xmlns="http://www.w3.org/1999/xhtml">

This was observed only in IBM and not in Blaze, Hapi, or IRIS. This is an interoperability issue. But to integrate into the FHIR-garden, the div tag will be manipulated in ibm_client.py to handle the above issue.

See the differences in the output from the following two servers - hapi_output.txt blaze_output.txt