The Patient Registry project is dedicated to the management of patient demographics and identifiers test data. It will embed connectors such as FHIR PDQm, PIXm or PAM.
The sources are accessible here: https://gitlab.inria.fr/gazelle/applications/test-execution/simulator/patient-registry
Bugs and issue tracking are accessible here : https://gazelle.ihe.net/jira/projects/PATREG. The name of the latest release, can be obtained in the “Releases” section.
To get official artifact (binaries), search for patient-registry
in IHE Nexus : https://gazelle.ihe.net/nexus
and select the patient-registry.jar artifact for download.
Patient Registry depends currently on the database of Patient Manager. Only patients created/managed in Patient Manager will be accessible in the Patient Registry Search API.
Please follow Patient Manager installation process.
Patient Registry needs at least Patient Manager version 9.11.6.
Patient registry need to be deployed on Widlfly-18.
Please read first the documentation on how to install and configure this server for Gazelle
applications : general considerations for WildFly 18
Patient registry is using Patient Manager’s database. It only needs a datasource connection declared in wildfly 18.
See Setup datasources for gazelle applications
Datasource name : patientRegistryDS
Database name : pam-simulator
Copy the jar artifact app.patient-registry-service-X.X.X.jar in the deployment folder of the wildfly installation under the name patient-registry.jar. This is important for the path on which Patient Registry’s web services will be exposed.
cp app.patient-registry-service-X.X.X.jar /usr/local/wildfly18/standalone/deployments/patient-registry.jar
Start wildfly. The API can be accessed at (depending on your configured host and port)
For Patient processing Service :
For CrossReference Processing Service :
PDQm Connector is a connector for Patient Registry. It is dedicated to interface FHIR requests defined in PDQm standard to and the Patient Registry API for patient demographics and identifiers test data management.
The sources are accessible here: https://gitlab.inria.fr/gazelle/applications/test-execution/simulator/pdqmsimulator
Bugs and issue tracking are accessible in the same project as the Patient Registry : https://gazelle.ihe.net/jira/projects/PATREG. The name of the latest release, can be obtained in the “Releases” section.
To get official artifact (binaries), search for pdqm-connector-service
in IHE Nexus : https://gazelle.ihe.net/nexus
and select the pdqm-connector.war artifact for download.
Same as Patient Manager Dependency for PATREG
AND PDQm also needs Patient Registry to be installed with connector version >1.0.x, you will need Patient Registry version >1.0.x.
PDQm connector defines mandatory Operational Preferences that you will have to define in your Application server. To know how to do that, see General considerations for WildFly 18
Define a resource in your server with name java:/app/gazelle/pdqm-connector/operational-preferences.
This resource should refer to a deployment.properties file. This file shall contain the following properties :
Property Name | Description | Example value |
---|---|---|
patientregistry.url | URL of the Patient Registry Processing Service used to manage patients. | https://example.com/patient-registry/patient-registry/PatientProcessingService/patient-processing-service?wsdl |
PDQm need to be deployed on Wildfly-18. Please read first the documentation on how to install and configure this server for Gazelle applications : General considerations for WildFly 18
Install factories module
Stop wildfly and go to:
sudo mkdir -p /usr/local/wildfly18/modules/system/layers/base/net/ihe/gazelle/factories/main
cd /usr/local/wildfly18/modules/system/layers/base/net/ihe/gazelle/factories/main
Download module factories.jar
:
sudo wget https://gazelle.ihe.net/wildfly18/factories.jar
Create module.xml
file:
<?xml version="1.0" encoding="UTF-8"?>
<module xmlns="urn:jboss:module:1.1" name="net.ihe.gazelle.factories">
<resources>
<resource-root path="factories.jar"/>
</resources>
<dependencies>
<module name="javax.api"/>
<module name="javax.transaction.api"/>
<module name="javax.servlet.api" optional="true"/>
</dependencies>
</module>
Add jboss:jboss-admin
rights:
sudo chown -R jboss:jboss-admin .
sudo chmod -R 775 .
Stop Wildfly and edit standalone.xml in /usr/local/wildfly18/standalone/configuration
; add the factories binding in the naming subsystem :
Replace this property ${DEPLOYMENT_PROPERTIES}
with your own path to the deployment property, which is stored in the pdqm-connector project : pdqm-connector/pdqm-connector-service/src/main/resources/deployment.properties
<subsystem xmlns="urn:jboss:domain:naming:2.0">
<bindings>
<object-factory name="java:/app/gazelle/pdqm-connector/operational-preferences" module="net.ihe.gazelle.factories" class="net.ihe.gazelle.factories.PropertiesFactory">
<environment>
<property name="path" value="${DEPLOYMENT_PROPERTIES}"/>
</environment>
</object-factory>
</bindings>
<remote-naming/>
</subsystem>
Same as Database for PATREG EXCEPT FOR :
Datasource name : pdqmConnectorDS
Database name : pam-simulator
Copy the war artifact pdqm-connector-X.X.X.war
in the deployment folder of the wildfly installation under the name pdqm-connector.war
This is important for the path on which connector’s web services will be exposed.
cp pdqm-connector-X.X.X.war /usr/local/wildfly18/standalone/deployments/pdqm-connector.war
Start wildfly. The API can be accessed at (depending on your configured host and port)
PIXm Connector is a connector for Patient Registry. It is dedicated to interface FHIR requests defined in PIXm standard to and the Patient Registry API for patient demographics and identifiers test data management.
The sources are accessible here: https://gitlab.inria.fr/gazelle/applications/test-execution/simulator/pixm-connector.
Bugs and issue tracking are accessible in the same project as the Patient Registry : https://gazelle.ihe.net/jira/projects/PATREG. The name of the latest release, can be obtained in the “Releases” section.
To get official artifact (binaries), search for pixm-connector-service
in IHE Nexus : https://gazelle.ihe.net/nexus
and select the pixm-connector.war artifact for download.
Same as Patient Manager dependency for PATREG
PIXm also needs Patient Registry to be installed:
PIXm version | PATREG version |
---|---|
1.0.0 |
2.0.0 |
2.0.0 |
2.1.0 |
3.0.0 |
2.2.0 |
Since 3.0.0
PIXm needs two deployed applications for validation:
PIXm connector defines mandatory Operational Preferences that you will have to define in your Application server. To know how to do that, see General considerations for WildFly 18
/!\ Since 3.0.0
PIXm connector needs to be installed in Wildfly version that supports JDK 17
. But the tutorial remains the same as Wildfly 18.
PIXm version | JDK version | Wildfly version |
---|---|---|
1.0.0 |
11 | 18.0.1.Final |
2.0.0 |
11 | 18.0.1.Final |
3.0.0 |
17 | 30.0.1.Final |
Define a resource in your server with name java:/app/gazelle/pixm-connector/operational-preferences.
<subsystem xmlns="urn:jboss:domain:naming:2.0">
<bindings>
<object-factory name="java:/app/gazelle/pixm-connector/operational-preferences" module="net.ihe.gazelle.factories" class="net.ihe.gazelle.factories.PropertiesFactory">
<environment>
<property name="path" value="${DEPLOYMENT_PROPERTIES}"/>
</environment>
</object-factory>
</bindings>
<remote-naming/>
</subsystem>
Replace this property ${DEPLOYMENT_PROPERTIES}
with the path to the deployment.properties
file (like /opt/pixm-connector/deployment.properties
)
This file shall contain the following properties :
Property Name | Description | Example value |
---|---|---|
patientregistry.url | URL of the Patient Registry Processing Service used to manage patients. | https://example.com/patient-registry/PatientProcessingService/patient-processing-service?wsdl |
xrefpatientregistry.url | URL of the CrossReference Processing Service used to XReference. | https://example.com/patient-registry/CrossReferenceService/xref-processing-service?wsdl |
Since version 3.0.0
PIXm needs:
Property Name | Description | Example value |
---|---|---|
APP_HTTP_VALIDATOR_SERVER | Endpoint of HTTP-Validator | https://www.example.com/http-validator |
PROFILE_ID_CREATE_UPDATE_DELETE_ITI_104 | Profile ID for ITI-104 | IHE_ITI-104-PatientFeed_Query |
PROFILE_ID_POST_ITI_83 | Profile ID for POST ITI-83 | IHE_ITI-83_POST_PIXm_Query |
PROFILE_ID_GET_ITI_83 | Profile ID for GET ITI-83 | IHE_ITI-83_GET_PIXm_Query |
APP_IG_FHIR_SERVER | Endpoint for Matchbox | https://www.example.com/matchboxv3/fhir |
PIXM_PATIENT_PROFILE | Canonical URL for PIXm Patient Profile | https://profiles.ihe.net/ITI/PIXm/StructureDefinition/IHE.PIXm.Patient |
PIXM_PARAMETERS_PROFILE | Canonical URL for PIXm Paramaters Profile | https://profiles.ihe.net/ITI/PIXm/StructureDefinition/IHE.PIXm.Query.Parameters.In |
Same as Application Server (PDQm) for both Wildfly 18 and Wildfly 30.
Copy the war artifact pixm-connector-X.X.X.war
(< 3.0.0) or pixm-connector-service-X.X.X.war
(>= 3.0.0) in the deployment folder of the wildfly installation under the name
pixm-connector.war
.
This is important for the path on which connector’s web services will be exposed.
Before 3.0.0
:
cp pixm-connector-X.X.X.war /usr/local/wildfly18/standalone/deployments/pixm-connector.war
Since 3.0.0
:
cp pixm-connector-service-X.X.X.war /usr/local/wildfly30/standalone/deployments/pixm-connector.war
Start wildfly.
The API can be accessed at (depending on your configured host and port):