Single Server Deployment 
Setup of the Client Registry RI on a single server

This tutorial differs from the 20 minute Client Regsitry tutorial in that it provides enhanced security setup of the PostgreSQL database server.

Note: If you already have PostgreSQL installed on your machine you may use the standalone version.

Install the Client Registry

Time to Complete: ~10 minutes

The CR reference implementation is distributed as two different installers. In this tutorial we will be using the package which has PostgreSQL 9.2.4 bundled ( This will save us an extra step of building a PostgreSQL server.

After downloading the bundle run the setup application. The first step of installation is setup of the PostgreSQL server. To perform this step, check the box labeled Install PostgreSQL 9.2.4 and enter an administrative user account and password (for the postgresql instance).


After setup has completed, uncheck the "Configure the Client Registry" option.

Setup the PostgreSQL User Accounts

Time to Complete: ~5 minutes

After setup has completed, launch PgAdmin III on your machine. Connect to the local instance of PostgreSQL 9.2 and enter command prompt mode (pressing the SQL script button". This deployment will segregate data based on component in the client registry. Create four database accounts for each feature: client data, codes, messages, and queries.


Setup the Client Registry Service

Time to Complete: ~25 minutes

After setting up the client registry database users you can use the configuration tool. Launch it by selecting Start -> All Programs -> Mohawk College -> Client Registry -> Client Registry Configuration. On the initial configuration page, select "Advanced Configuration" and enter the server credentials for your super user (no worries, nothing will be deployed).

Startup screen

 Pressing Continue will launch an empty configuration tool.

Empty configuration

We recommend setting up the OID registry first as all other components rely on this component. To do this, click on OID Registrar and configure the provided OIDs to match your configuration. This process is covered on the Setting up Your OIDs library page.

Next, configure the Client Registry Persistence component. Enable the configuration option and enter the credentials for the "cr" account we created

Persistence service

Next, create an database called "cr" using the tool with owner of "cr". In order to do this, you will need to enter the credentials of the superuser account created during setup

Create a database

Clicking Ok will create the database. It can then be selected from the database dropdown. Follow this configuration by setting up any additional options (such as auto-merging, matching algorithms, etc...)

Additional configuration options

These options are described in more detail on the Client Registry Persistence library topics.

Continue this process for each option in the configuration tool using the following database configurations:

 mdb mdb  Message Persistence 
 codes codes  Code Validation
 query       qry        Query Persistence
 cr cr Client Registry / Persistence

Setup the Client Registry service host, on this setup the default "Local System" will do. More information about the configuration options on this page is available in the "Service" library topic.

Next, setup code validation. The Client Registry RI uses the code validation tables to verify and translate codified concepts drawn from non-HL7 defined value sets

Message persistence is used to track the messages that have been received by the client registry during its operation. Message persistence enables the execute-once functionality of the client registry. If you do not have a need for execute once or message persistence you may disable this option

The Administration Interface provides a SOAP based administration tool that can be used to view merge records, retrieve patient data, and resolve conflicts

Configuring the integration interface will involve setting up either HL7v3 endpoints or HL7v2.x endpoints. This tutorial will focus on the Everest messaging handler (which supports HL7v3 interfaces). Simply enable the interfaces you wish to receive messages from and the endpoint properties. Note: changing the scheme from "https://" to "http://" will not require certificate selection. More information about the Everest Framework message handler can be found in the Everest Message Handler topic

Configuration of query persistence allows the Client Registry to keep track of recordsets and deliver partial result sets to clients. Whenever a query is executed, the client registry executes the query and stores all results (identifiers and version) to provide a snapshot resultset. This snapshot can then be delivered in windows (via QUQI_IN000003UV02, QUQI_IN000003CA, or QBP with DSC pointer) to clients. This feature is optional, and may be disabled if you do not require query continuation.

Next, setup the core service attributes. This includes identifying the custodianship (the logical organization which maintains records stored within the client registry), the jurisdiction (the group under which records have authority) and device identifiers for the service. Note; you may wish to configure your system's OID registrar prior to performing this step as it will save you some typing.

Finally, setup auditing on your service. Auditing will allow the client registry to audit disclosures, imports, merges, errors and other events to an RFC-3881 (or ATNA) audit repository. Simply select the desired transport, the IP address and port for communications with the audit repository

You may also choose to configure Service Logging and Tracing as it will provide additional details as to the health of your client registry deployment. Simply inform the configuration tool where logs should be located

After your client registry configuration is complete, click the "Configuration Options" button, and select the options you would like deployed:

After clicking OK, the tool will deploy the schemas and make the necessary changes to your configuration file.

You may now start the client registry service on your machine