The Data Contract Service (DCS) enables data transactions in a secure, trusted, and auditable way. It offers interfaces for the negotiation of data contracts detailing the agreed terms (Data Asset Usage Policy) for planned data exchange. The service is not meant to handle the transaction of data (that is described in the negotiated data contracts).
From a functional perspective, the DCS provides a formal data transaction initiation handshake between the data provider and the data consumer. The identity of the data provider and data consumer is ensured by invoking the functionality of the Identity framework provided by WP1. Basically, the service allows sending offers and counter-offers resulting in agreement or rejection. The contract is packaged in a human and a machine-readable format based on ODRL. The content of the contract has to be defined. Possible use cases are the purpose of data usage, time-range for allowed data usage, and other obligations for data usage, like geolocations for usage, applying laws and sanctions for the violation of the contract. The duration for the storage of the contract is not a technical but a legal question.
The DCS provides endpoints for initiating the handshake and retrieving the contract for later reference. It provides log tokens to Data Provider and Data Consumer (except when logging is forbidden) to authorize metadata logging at the Logging Service.
In general, various DCS can be provided inside one federation. A Federator may provide contract templates and general requirements for data exchange in the federation to specialize the DSC from the generic perspective. Additionally, the federator can provide capabilities for claim resolution or billing. Based on the technical component different business capabilities can be realized.