22 Followers · 540 Posts

Fast Healthcare Interoperability Resources (FHIR, pronounced "fire") is a draft standard describing data formats and elements (known as "resources") and an application programming interface (API) for exchanging electronic health records

Official site

Question Evgeny Shvarov · Oct 30, 2023

Hi colleages!

This is very easy to setup a FHIR server in InterSystems IRIS for Health.

It could be even one IPM command with this package:

USER>zpm "install fhir-server"

But which FHIR portal could you recommend to use?

I used to work with this one, which is very easy to install too:

USER>zpm "install fhir-portal"

 but it doesn't work at the moment and I'm not sure if its main contributors @José Pereira and @Henrique Dias plan to support it.

What do you use? What do you recommend? Ideally installable with IPM package manager. Thanks!

3
0 394
Question Dmitry Maslennikov · Sep 17, 2016

Working on implementation FHIR to my project, I found interesting project HAPI-FHIR, which could help me to quickly launch my FHIR api server with InterSystems Caché as a storage, because this projects uses Hibernate to connect to database, as an example they use DerbyDB. I tried to change settings to use InterSystems Caché, but unfortunately it does not work and throw some errors inside HIbernate. As I found in Caché documentation, I have not some many options, I just have to set Cache dialect, and set database url.  This projects uses Hibernate 5.

13
0 1860
Question Stephen De Gabrielle · May 21, 2019

Hi, 

Most of my development experience is with HL7v2 interfaces and I don't have a background in web development and I'm very weak with javascript.

I'm looking for suggestions of learning resources to learn FHIR  and 'SMART on FHIR' (JavaScript, OpenID connect, OAuth2) for developers like myself who mostly do HL7v2 integrations - but see FHIR as the future - and want to develop their skills!

I've found these 

1
1 1768
Question Surya Sekhar Yerram · Mar 17, 2017

Hello Greetings-

I am exploring on converting HL7 to FHIR.

1. I saw there are built in DTLs “FHIR.FromSDA” and “FHIR.ToSDA” to convert SDA -> FHIR and FHIR -> SDA. Similarly Do Intersystems have DTLs for HL7 -> FHIR and FHIR -> HL7?

2. The reason why I am asking is, I see in HSLIB namespace HS->GateWay->HL7->HL7toSDA3 and HS->GateWay->SDA3->SDA3toHL7 DTLs. Like-wise I am trying to locate HL7 -> FHIR and FHIR -> HL7. Please help me to locate them

3. If there are no built-in DTLs for converting HL7 -> FHIR and FHIR -> HL7, what is the process to achieve this?

Thanks much in-advance.

Thanks,

Surya

3
2 2320
Question Jim Lyons · Oct 16, 2024

Working on a project where I'm needing to make FHIR calls from my HealthConnect Interop production to Epic. 

My issue is I'm not able to construct a valid JWT for the OAuth token retrieval that Epic will accept. I have the below code where I'm able to create a valid header and payload that I'm base64URL encoding and then trying to sign with my .pem private key file. However, Epic is not liking the signature portion of my JWT.

As such, I wanted to present my code to see if I'm performing the signature steps correctly? I've seen some posts where the %Net.

1
0 246
Question PaulSomebody · Oct 24, 2025

Hi,

  We have some concerns on how to implement FHIR, do we do facade?, how do we get resources?, what is a resource?, is a resource "Patient" or an instance of a patient?, How can we have a FHIR repository AND send the patient details to healthshare MPI?

  Has anyone correctly created a FHIR server that has custom methods?, handles "normal" methods and forwards onto Healthshare MPI , processing the response and creates a accurate FHIR response back to the calling system.

2
0 115
Question Ewan Whyte · Nov 2, 2023

I am receiving a FHIR bundle and I need to extract data from it and wondered if there was an easier way of doing this rather than looping through the data as suggested in Working with FHIR Data | FHIR Support in InterSystems Products | InterSystems IRIS for Health 2023.2.

Ideally it would be great if there was a DTL the accept STU3 and then extract the data from there and I did try using the HS.FHIR.DTL.vSTU3.Model.Resource.Bundle class (depreciated) but that only allowed me to see the data at the bundle level and not the resources within it (entry).

3
0 886
Question Paul Hula · Nov 2, 2016

Hello All,

   Having a recent project to create a FHIR repository, I want to know (as looking at the code) if HealthShare FHIR implementaton supports subscriptions?.  I know it records the subscriptions ok, BUT does it handle sending the subscription out (based on the tags) to an endpoint (i.e. when a new FHIR request commits data that would trigger the subscription) ?, I'm 50% it doesn't, but would rather find out for sure before shoe horning something in.

   Regards

9
0 1237
Question Mike Yackanich · May 14, 2021

I have an interoperability production that functions as a FHIR proxy. I have a need to add an HTTP Header value to the outbound request. I've subclassed HS.FHIRServer.Interop.HTTPOperation, but I cannot find a way to add an HTTP Header to the request. The HTTP class used in HS.FHIRServer.Interop.HTTPOperation is HS.FHIRServer.RestClient.HTTP. That RestClient class does not seem to expose or allow modification of the actual HttpRequest.

I'm used to using %Net.HttpRequest and doing a request.SetHeader(key, value) - but that isn't available - or I can't find it - when using HS.FHIRServer.

3
0 533
Question Eyal Levin · Feb 25, 2024

Hi,

I have a scenario where I recognize that I have a duplicate patient in FHIR , both have a different set of data attached to them (Specimens / Observations / Conditions) and I want to transfer all the data from patient X to patient Y,  and maybe mark patient X as not relevant or delete it IDK yet.

since Patch currently supports only single patch,

"The Conditional Patch query identified more than one resource."

I can't use it as a bulk, but I need to loop through all the resources I find that are connected to patient X,

so I guess my question is how would you do it?

5
0 393
Question Martin Staudigel · Feb 2, 2022

Hello community,

on my first steps with processing FHIR requests, I tried to create a capability statement resource an returning its content JSON or XML, depending on what is requested by the client.

I create a CapabilityStatement object by parsing a JSON file with:

#dim tCapStat as HS.FHIR.DTL.vR4.Model.Resource.CapabilityStatement = ##class(HS.FHIR.DTL.vR4.Model.Resource.CapabilityStatement).FromJSONFile("/opt/home/data/fhir/UkerQsCapabilityStatement.json","vR4")

then, depending on the content of  pRequest.Request.ResponseFormatCode I create a HS.SDA3.QuickStream Object with

do tStream.

4
1 607
Question Scott Roth · Aug 23, 2024

I thought I knew how to return a Response from a Business Process back to the Source Config Name, but I guess not. 

I am working on a Proof of Concept, that the Request Message Class would determine a "Route" within a Business Process to make a FHIR call (search, read) to our External FHIR repository, and return back the HS.FHIR.DTL.vR4.Model.Resource.xxxxxxx as a Response to the Source Config Name.

I have the FHIR part working, however now that I have the data in the form of HS.FHIR.DTL.vR4.Model.Resource.

2
0 152
Question Stephen De Gabrielle · Mar 9, 2017

Hi, 

We have a mixture of legacy and new systems, and are grappling with the issue of moving documents between systems.

At the moment we are mostly using file drops and encoding metadata in filenames, but a new supplier (letter transcription) is going to provide a Hl7v2 feed sending MDM^T02 messages with PDF's of letters base64 encoded in the message itself.

We are thinking of asking all our suppliers to go with MDM (or ORU) for sending documents. 

I'm interested in the pros and cons of the options; and if there are options I haven't thought of.

2
0 816
Question Dean Rochester · Feb 21, 2023

In article

https://community.intersystems.com/print/518106

Traceback (most recent call last):
  File "c:\Users\rochesterd\PythonScripts\fhir_stuff\fhir-client-python-main\fhir-client-python-main\src\client.py", line 57, in <module>
    patient0 = Patient.parse_obj(patients_resources.search(
AttributeError: 'NoneType' object has no attribute 'serialize'

8
0 363
Question Hassan Mirza · Jan 27

Currently in the health connect code, we are using Epic FHIR API Patient.Create, code return 200 or 201 status values, we process the message based on this return values.

Now I need to use Epic FHIR Patient.$match API, need to check FHIR Error code 4101 for this API. I looked for FHIR statndard return code, but this this seems not standard code, please advice how can I check 4101 value?

1
0 77
Question Vivek Nayak · Sep 16, 2021

I want to install a new FHIR server from the Management Portal using the below steps, but not able to find FHIR Configuration setting under my newly created foundation namespace. 

  1. Open the Management Portal and switch to the Foundation namespace where you want the FHIR server installed. If you do not have a Foundation namespace, go to Health, and select Installer Wizard from the top menu bar. The Configure Foundation button allows you to create a new Foundation namespace. Be sure to activate the namespace after creating it. Done
  2. Navigate to Health > MyNamespace > FHIR Configuration
4
0 887
Question Ikara Ikliki · Nov 6, 2019

I am sending a PUT FHIR message for a CodeSystem Resource using the defailt Service and server that was installed when I installed the FHIR on the NameSpace.

When I try to use the FHIR Request "id" property it is empty; e.g. pFHIRRequest.id is EMPTY. I really need to get this value, how can I get it?

I added a trace ion both the HS.FHIR.Service and HS.FHIR.Server.Process, details to follow:

The trace in HS.FHIR.Service is as follows, this is inside the OnProcessInput where the Id is validated I added the "else", it prints the line in the "else" and the result is an EMPTY input.

3
0 570
Question Laura Blázquez García · Jun 9, 2025

I have created a new docker stack with webgateway and IRIS for Health 2025.1. I have mapped the posts of wegateway like this:

  • 8743:443
  • 8780:80

I can access IRIS portal through 8743 without problems.

I also have created a FHIR repository, and I'm able to access it through 8743 port.

I have a web application, in another server with another domain, that connects to this FHIR repository. I have configured in FHIR endpoint the allowed origin to the domain of this application.

3
0 188