Sharing data between autonomous entities requires the provision of metadata to facilitate the transfer of Datasets by making use of a data transfer (or application layer) protocol. The Dataspace Protocol defines how this metadata is provisioned:
- How Datasets are deployed as DCAT Catalogs and usage control is expressed as ODRL Policies.
- How Agreements that govern data usage are syntactically expressed and electronically negotiated.
- How Datasets are accessed using Transfer Process Protocols.
These specifications build on protocols located in the ISO OSI model (ISO/IEC 7498-1:1994) layers, like HTTPS. The purpose of this specification is to define interactions between systems independent of such protocols, but describing how to implement it in an unambiguous and extensible way. To do so, the messages that are exchanged during the process are described in this specification and the states and their transitions are specified as state machines, based on the key terms and concepts of a Dataspace. On this foundation the bindings to data transfer protocols, like HTTPS, are described.
The specifications are organized into the following documents:
- Dataspace Model and Dataspace Terminology documents that define key terms.
- Common Functionalities and their Binding in HTTPS declares cross-cutting functions as, e.g., the declaration of supported versions of this Dataspace Protocol.
- Catalog Protocol and Catalog HTTPS Binding documents that define how DCAT Catalogs are published and accessed as HTTPS endpoints respectively.
- Contract Negotiation Protocol and Contract Negotiation HTTPS Binding documents that define how Contract Negotiations are conducted and requested via HTTPS endpoints.
- Transfer Process Protocol and Transfer Process HTTPS Binding documents that define how Transfer Processes using a given data transfer protocol are governed via HTTPS endpoints.
This specification does not cover the data transfer process as such.
While the data transfer is controlled by the Transfer Process Protocol mentioned above, e.g. the initation of the transfer channels or their decomissioning, the data transfer itself and especially the handling of technical exceptions is an obligation to the Transport Protocol.
As an implication, the data transfer can be conducted in a separated process if required, as long as this process is to the specified extend controlled by the Transfer Process Protocol.
Nevertheless, illustrative message examples are provided in the Transfer Process Protocol section. The best practices section may contain further non-normative examples and explanations.