FHIR Versioning

Our application helps hospitals manage their patients episodes of care. As such it offers an API to allow Patient resources to be Created/Read and Updated. I’m a little confused about how using CareConnect profiled resources might effect our applications declared FHIR version. More generally, I don’t quite grasp how to incorporate profiles that might be based on different versions of the FHIR specification.

It seems appropriate to use the CareConnect API Patient resource as we are working with hospitals in England. Looking at the Care Connect RI capability statement, that resource was based on the 3.0.1 version of the specification. As a greenfield build, I’d initially anticipated basing our APIs on the latest R4 release of the specification. If I declare our Patient resource to be from the CareConnect profile, does that imply that capability statement should require clients to use a fhirVersion of 3.0.1 (or really 3.0.2 now)? From what I understand from reading the specification, the fhirVersion used in the interaction should be consistent for not just the resource involved but the whole interaction.

Perhaps the intention is to vary the fhirVersion according to the resource? That would seem like a tricky proposition for clients trying to integrate with our API (having to change the FHIR semantics per request).

Any advice or shared experience is welcome.

I would aim to use R4 and UK Core HL7 FHIR® UK Core Implementation Guide R4 - July 2020

I’d expect few, if any, issues around mismatch of minor versions. For example the reference server I believe is using 3.0.2 (its a typo in the capability statement), exisitng clients continued to work without any issue.

On a practical level its more important to get the model, codes and valuesets correct. Differrneces in versions can be handled if required and cost is small. The main issues I’ve seen over the last few months are:
Hl7v3 model differing from v2 and fhir
Using dstu1 fhir in a mixed stu3 and r4 health system (which also includes hl7v2 and ihe xds).