XCPD Initiating Gateway - Developer Guidelines

Click here to enter the XCPD Initiating Gateway Simulator

The XCPD Initiating Gateway Simulator has been developed to replace the Initiating Gateway actor of the XCPD (Cross Community Access) integration profile in connectathon (or pre-connectathon) tests when needed. This tool can participate as an initiator in many tests like XCPD_Patient_Discovery thanks to its web service methods which provide to Gazelle a mean to communicate with it. A Web GUI is also available and enables the users to test their XCPD responding gateway outside of a connectathon context. From this GUI, connecthaton participants can sends HL7V3 XCPD request to a specified responding gateway web service. Note that this tool is able to send requests using TLS.

This simulator also supports the XUA (Cross Enterprise User Authentication) profile and can act as a X-Service User actor.

First developed for epSOS purposes, the epSOS instance of this simulator sends signed-body SOAP messages. 

Transactions and Messages supported

As an Initiating Gateway for XCPD, this simulator supports the ITI-55 transaction.

Communication between the simulator and Gazelle

All simulators developed for interacting with Gazelle are built on the same model. The following diagram represents the different steps performed during a test instance.

 

How to write tests involving XCPD Initiating Gateway actor

When a test instance is created with the XCPD Initiating Gateway Simulator as one of the test instance participants, Gazelle needs some additional information to be able to communicate with the tool. 

When you edit a test definition, for each step in which the XCPD INIT_GATEWAY actor acts as the initiator of the transaction, you are expected to give the following information:

  • Transaction must be ITI-55
  • You also need to fill the contextual information according the rules defined in the table present at the end of this page.
  • If the communications have to be secured, make sure you have checked the TLS option.
  • If the communications is xua, you have to add a contextual information "isxua" to the testSteps.

Installation and Documentation

You can download sources of the XCPDINITSimulator project from the INRIA Forge. This project required two additional modules: GSCommon-ejb and GSCommon-ui. Links to those sources are:

https://scm.gforge.inria.fr/svn/gazelle/branches/simulators/GSCommon-ejb

https://scm.gforge.inria.fr/svn/gazelle/branches/simulators/GSCommon-ui

https://scm.gforge.inria.fr/svn/gazelle/branches/simulators/XCPDINITSimulator

Javadoc relative to the XCPDINITSimulator will be soon available.

 

Contextual Informations

This table lists the input and output contextual informations that Gazelle is expected to send to the simulator for each step, during a test instance. For each test instance, the simulator stores the contextual informations so that it can retrieve them for the next steps. Information extracted from the responding gateway response are also stored. If XUA is used, you only need to fill the contextual informations for the first step.

Output Contextual Informations
label path description possible values
is XUA isxua indicates whether the simulator must turn
XUA mode on or off
true or false
family family optional : indicate the value of the family request, if no contextual informations about the request are specified, a default patient request will be used. family name
given given

optional: the given of the patient request , if no contextual informations about the request are specified, a default patient request will be used.

given name
birthdate birthdate

optional: the birthdate of the patient request , if no contextual informations about the request are specified, a default patient request will be used.

birthdate of the patient request
root root

optional: the root of the patient request , if no contextual informations about the request are specified, a default patient request will be used.

The root of hte patient
gender gender

optional: the gender of the patient request , if no contextual informations about the request are specified, a default patient request will be used.

Male or Female
extension extension
 

optional: the extension of the patient request , if no contextual informations about the request are specified, a default patient request will be used.

the extension of the patient
street street

optional: the street of the patient request , if no contextual informations about the request are specified, a default patient request will be used.

The street
city city

optional: the city of the patient request , if no contextual informations about the request are specified, a default patient request will be used.

 


postalcode postalcode

optional: the postalcode of the patient request , if no contextual informations about the request are specified, a default patient request will be used.

 
maidenname maidenname

optional: the postalcode of the patient request , if no contextual informations about the request are specified, a default patient request will be used.