What is a Foundation Production?


1. Still don't know what a foundation production does?  What does Ens.Activity.Operation.Local.cls do?

2. Why does creating additional namespaces in 2019.1 causes foundation productions to be created automatically
(with Ens.Activity.Operation.Local operation).  I can't run a foundation production and a routing production in the same namespace. (no change from 15.03)

I've raised with WRC.






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.


  • 0
  • 0
  • 104
  • 9
  • 1


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.


Thanks @Jenna Poindexter,

This is helpful.  It triggered my memory.  So I created a new namespace and HL7 production which included some nice base features to help me test an integration on my local system.

Services: HL7FileService

Processes: Ens.Alert and MsgRouter

Operations: BadMessageHandler, EmailAlert, HL7FileOperation and PagerAlert.


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.

Using the Installer Wizard to create a foundation production and namespace provides you with a base production with all the mappings needed for a healthcare interoperability production. It saves you the time and effort of creating your own namespace and production needed for healthcare interoperability. You do not always have to start with a foundation production; if you are comfortable creating your own namespace and production, you can do so.  As a side note, when you create an HL7 production, you are creating a foundation production.

The Ens.Activity.Operation.Local operation is used for activity monitoring. It is not required by the foundation production. For more about activity monitoring, see https://docs.intersystems.com/healthconnect20191/csp/docbook/DocBook.UI.Page.cls?KEY=EMONITOR_activity