knitr::opts_chunk$set(
  collapse = TRUE,
  comment = "#>"
)

Purpose of the package

This package aims at providing the server-side functions sharing encoded information between DataSHIELD servers. This package has twofold.

Firstly, some functions allow some data encoded in data frames to be transferred to a DataSHIELD client. The inspiration behind some functions arises from database connectivity API; some of the commands such as next, EndOfFile let's have access to queries' results. In this package, an addition feature checks no original data can be transferred to the client.

Secondly, some other functions offer the opportunity to encode some server-side scalar values and transfer them in a privacy-preserving manner between some servers.

Data governance

Some parametrisation needs to be setup by the data governers to set the behaviour of some functions. All these options can be set on a DataSHIELD server. Some options have therefore been added:

param.name.struct

Purpose : sets the name of a R object used during the scalar encoding process. Data Type: character Default value : sharing

transfer.name.struct

Purpose : sets the name of a R object used during the transfer of encoded values. Data Type: character Default value : transfer

sharing.allowed

Purpose : Allows the sharing of data from one server or not. Data Type: boolean (values set to 1 - TRUE or 0 - FALSE) Default value : 1

sharing.near.equal.limit

Purpose : Indicates the minimum difference between some original values and some encoded values Data Type: integer Default value : 1000

Structure of the package

The package makes available to the parser the following functions. Documentation has been produced as a manual.

Server errors

The package throws the following errors. Some explanations are provided below.

SERVER::ERR::SHARING::001

Purpose: stops the execution of a server function if sharing.allowed option is set to 0 (FALSE) Solution: request for the data governance to allow this package to execute on a DataSHIELD server

SERVER::ERR::SHARING::002

Purpose: stops the execution of a server function, when its arguments are not correct. Solution: checks the call from the client to a suitable solution

SERVER::ERR::SHARING::003

Purpose: stops the execution of a server function, when the settings list has not been created. Solution: the assignSharingSettingsDS has been called from the client

SERVER::ERR::SHARING::004

Purpose: some formating of the data prior some transfer has been unsuccessful. Solution: review the process in the client calls to provide suitable information

SERVER::ERR::SHARING::005

Purpose: some data have not been formatted incorrectly. The data types of the structure is incorrect. Solution: check either getDataDS OR getCoordinatesDS has been called before making a suitable server call

SERVER::ERR::SHARING::006

Purpose: some data have not been formatted incorrectly. The structure is incorrect. Solution: check either getDataDS OR getCoordinatesDS has been called before making a suitable server call

SERVER::ERR::SHARING::007

Purpose: some data have been encrypted incorrectly. The data cannot be decrypted. Solution: check all the previous steps required for the encryption have been completed.

SERVER::ERR::SHARING::008

Purpose: Some given parameters do not exists on a DataSHIELD server. Solution: create the scalar again using an assign function and restart the process of sharing the parameters.

SERVER::ERR::SHARING::009

Purpose: some parameters have been encrypted incorrectly. The parameters cannot be decrypted. Solution: check all the previous steps required for the encryption have been completed.



patRyserWelch8/dsShareServerNewVersion documentation built on May 29, 2021, 7:42 a.m.