23 May 2007

CCOW 1.5 example implementation using WSDL/SOAP

This web page describes an example implementation of CCOW version 1.5 specification using WSDL/SOAP. CCOW provides a framework for building single signon application environments, and sharing patient related data among applications, which are connected to a shared clinical context.

The example consists of implementations of Authentication Repository, Context Manager, Context Data and Context Participant interfaces.

Two dummy test web application are provided to test the basic functionality of the APIs, which is to share a single context between the applications. The context can contains three items in this current implementation: User's name (User.Id.Logon), Patient's National Id Number (Patient.Id.NationalIdNumber), Patient's Name (Patient.Name)

The applications also share a single login page, which can be launched here. The login page works as a front end for AuthenticationRepository. Below is a diagram for the login functionality.


Diagram 1: Login page functionality

Once the user has "logged" using the login page, the web applications (A or B) can be launched. For this example, the applications are identical but separate. The application receives it's initial state from the common context. This functionality can be seen in the following diagram.


Diagram 2: Initial application state functionality

The user can use the applications to set patient's ID number or name to the common context. Below is a diagram about an application setting the common context.


Diagram 3: An application setting the common context item values

The CCOW version 1.5 has been implemented as SOAP web services in this example on top of Apache Axis SOAP implementation.

The API for the CCOW services is specified using the WSDL language, which would allow easy adaptation for other platform supporting WSDL and SOAP.

WSDL specifications for the CCOW API

The WSDL descriptions contain documentation about the usage of these APIs. For more information about these APIs, please see the CCOW documentation provided by HL7.

Package file Description
AuthenticationRepository The API for client applications to retrieve connection coupons and setting authentication data
ContextManager The API for client applications to manage the connections to the shared contexts
ContextData The API for client applications to set the shared context data items
ContextParticipant The API for the Context Manager to inform client applications about changes in the shared context

University of Kuopio, SerAPI project, HIS research
Marko.Sormunen@uku.fi