What is a Foundation Production?


What is a Foundation Production and what does it do?

We are currently on HealthShare Health Connect  15.03 and we are starting the process of moving to HealthShare Health Connect 2019.1.

The 2019.1 Installation Guide is pretty clear that it is essential, but I'm having trouble working out exactly what it does?

Leading on from this is what should I call it?

From the installation guide: 

5. For Local Name, enter the name that will identify the Foundation production. This name will become the namespace that contains the class definitions for the production

So the name I give it will be the name of the production and the namespace.

The name in guide is FHIR234 - which makes me wonder if the Foundation Production ONLY for FHIR interfaces?   (should I just call it FHIR ?)

Any advice or guidance appreciated.

Kind regards, 



PS: Our current naming strategy is has a separate namespace for HL7v2 and Document interfaces (no FHIR yet), for historical reasons called PRODUCTION and DOCUMENTS, with our test server replication this naming strategy exactly  (so we have a PRODUCTION namespace on both our test and live servers).

The installation guide: 

Install and activate a Foundation production, which is critical to the functionality of Health Connect.



A foundation production is a production that is created using the Install Wizard and when created will include some useful business hosts for integrations


Added questions:

  • Should the foundation production be used as a Interoperability Production or a routing Production
  • Are Interoperability and Routing productions the same thing?
    • I am coming from ensemble where you build all your interfaces all in a single production. 

An Interoperability production is a general integration production, vs a routing production is one that automatically includes some basic business hosts needed for routing messages.

Typically you would use a routing production if you wanted to route HL7 messages, for example.

An Interoperability production is a blank slate allowing you to add whatever business hosts you need.

There is no real difference in capabilities other than what is automatically created as part of the production configuration when it is first created

You can use the foundation production as a router if you want, the difference is that in that scenerio you would be adding all of the components that you needed to the production manually.   Configuring a routing production should give you the basic components needed, e.g., a service for input, a router for applying rules based routing and then an operation.   It provides the basic building blocks needed to route messages.

A generic interoperability production can route messages as well.

This brings me back to what does a Foundation production do?

Unlike a HL7 routing production a Foundation Production only has  an Ens.Activity.Operation.Local operation.

While the HL7 routing production components are easily added manually, I'm reading their absence as an implied indication that HL7 routing is *intended* to be a separate production, in a separate namespace - assuming the one active production per namespace still applies.



With regard to the name, it's just that, a name.  It doesn't have any effect on what the production can and cant be used for.