MEMdoc and MEMdoc-Module Distributed Data Concept

The MEMdoc documentation platform consists of two main components: the MEMdoc central server and the MEMdoc Module. The MEMdoc central server houses the central Oracle database and the MEMdoc application. The purpose of the MEMdoc Module is to provide a mechanism whereby all sensitive patient data can physically reside on a server within the institution where it is collected. The ‘module’, consists of an Apache web server and a local database. The local database stores all of the user information and patient demographic information. The MEMdoc central database houses the definitions (structure) of the data collection forms as well as the actual data collected. The link to the 'central' (MEMdoc) server is controlled via internal IDs only. Therefore, patient demographic data resides solely on the module and documentation data (questionnaires containing specific surgical or health status information) resides solely on the central server. 

Web Services

Due to the distributed data collection standard employed by MEMdoc it was necessary to develop separate MEMdoc and MEMdoc-Module web services that communicate using the same secure protocols as the entire MEMdoc platform. This allows data collection from external sources without compromising the integrity of the MEMdoc system.

The WSDL for the MEMdoc server service can be found here:

The WSDL for the module is here:


The MEMdoc application is written completely in JAVA and uses the jax-ws library for the web service. The Module is coded in PHP and uses the PHP::SOAP library. The encoding used on both services is document/literal


Both services use a regular SSL connection with HTTPS instead of a standard HTTP connection and sessions to identify the user. The data has to be transferred from the client directly to the server without any intermediary servers.