|
1 | 1 | # Eclipse Dataspace Connector
|
2 | 2 |
|
3 |
| -**Please note**: Work in progress. All content reflects the current state of discussion, not final decisions. |
| 3 | +**Please note**: Work in progress. All content of provided documentation reflects the current state of discussion. |
4 | 4 |
|
5 | 5 | ## Overview
|
6 | 6 |
|
7 |
| -TBD |
| 7 | +Data spaces allow organizations to securely share data with others. They enable data cooperation in a multi-cloud |
| 8 | +federation by focusing on identity, trust, sovereignty, and interoperability. |
8 | 9 |
|
9 |
| -## Configuration |
| 10 | +- Identity: Each participant remains in control of their identity. |
| 11 | +- Trust: Each participant decides who to trust. |
| 12 | +- Sovereignty: Each participant decides under what policies their data is shared. |
| 13 | +- Interoperability: Each participant remains in control of their deployment. |
10 | 14 |
|
11 |
| -TBD |
| 15 | +Since the concept of data spaces is emerging and promises new capabilities to the data exchange between participants |
| 16 | +(organizations) in terms of data sovereignty, many may ask the questions "What is a connector?" and "When and why should |
| 17 | +I use it?". |
12 | 18 |
|
13 |
| -## Installation |
| 19 | +**What is a connector?** |
14 | 20 |
|
15 |
| -TBD |
| 21 | +A participant in a data space wants to share and consume data offers, transfer data, and - most important - maintain |
| 22 | +control over its usage. All processes are based on the aforementioned principles of identity, trust, sovereignty, and |
| 23 | +interoperability. This is why a connector component is used to participate in a data space and mainly focuses on |
| 24 | +these aspects while ensuring data sovereignty along the entire data supply and value chain. |
16 | 25 |
|
17 |
| -## Troubleshooting |
| 26 | +In order to build up and participate in a data space, it is not enough to consider existing communication protocols. |
| 27 | +This means, besides the actual data transfer, a connector has to provide capabilities, i.e., for discovering, |
| 28 | +connecting, automated contract negotiation, policy enforcement, and auditing processes. Data space connectors act as |
| 29 | +logical gatekeepers that integrate into each participant’s infrastructure and communicate with each other. |
18 | 30 |
|
19 |
| -TBD |
| 31 | +**When to use a data space connector?** |
20 | 32 |
|
21 |
| -## Architecture |
| 33 | +A connector should be used each time the controlling (legal) entity of the data changes. A connector provides a |
| 34 | +generic way to express, negotiate, and document the rules under which data is shared, and also with whom. Not just |
| 35 | +in plain text but machine-readable and technically enforceable. |
22 | 36 |
|
23 |
| -[Architecture Principles](architecture-principles.md) |
| 37 | +Existing open-source projects address the technical challenges of cataloguing and transferring data for a wide |
| 38 | +range of use cases. However, there is no open-source effort aimed at providing an interoperable, cross-organization |
| 39 | +framework for data sharing that is built on a common identity model and uniform policy enforcement. This project |
| 40 | +will integrate with existing data exchange technologies and provide these missing pieces to create a system for data |
| 41 | +sharing where each organization is able to exert control over how its shared data is used. |
24 | 42 |
|
25 |
| -[Sequence Diagrams](architecture/README.md) |
| 43 | +**About the Eclipse Dataspace Connector** |
26 | 44 |
|
27 |
| -[Domain Model](domain-model.md) |
| 45 | +A data-sharing system requires a protocol implementation for policy enforcement among participants. The EDC will |
| 46 | +implement the International Data Spaces (IDS) standard as well as relevant protocols and requirements associated |
| 47 | +with Gaia-X, and thereby provide implementation and feedback to these initiatives. However, the EDC will be |
| 48 | +extensible in a way that it may support alternative protocols. |
| 49 | +Its added value is achieved through the separation of control and data plane, which enables a modular and |
| 50 | +thereby customizable way to build data spaces. Due to common interfaces and mapping of existing standards, the EDC |
| 51 | +adds capabilities of contract negotiating and policy handling in an interoperable manner. |
28 | 52 |
|
29 |
| -## Terminology |
| 53 | +**Open, community-driven and extensible** |
30 | 54 |
|
31 |
| -see [Terminology](Terminology.md) |
| 55 | +As an open source project hosted by the Eclipse Foundation, the EDC provides a growing list of modules for many |
| 56 | +widely-deployed cloud environments (AWS, Azure, GCP, OTC, etc.) "out-of-the-box" and can easily be extended for |
| 57 | +more customized environments, while avoiding any intellectual property rights (IPR) headaches. |
| 58 | + |
| 59 | + |
| 60 | + |
| 61 | +### How to get started |
| 62 | + |
| 63 | +According to the [Eclipse Foundation Development Process](https://www.eclipse.org/projects/dev_process/#2_3_Three_Communities), |
| 64 | +each person that interacts with and is interested in an Eclipse Foundation project can be assigned to specific roles: developers, |
| 65 | +users, and adopters. This documentation addresses all of them by defining explicit sections, next to the general information |
| 66 | +and overviews. Depending on your interests, you can take a look at one or more of the following. |
| 67 | + |
| 68 | +- **Adopter**: Adopters are the individuals and organizations that adopt Eclipse technology for inclusion in their own products and services. |
| 69 | +- **Developer**: Developers are committers or contributors. A contributor is anybody who makes contributions to a project. A |
| 70 | +committer is a software developer who has the necessary rights to make decisions regarding a Project. |
| 71 | +- **User**: Users use the project to realize use cases. They do not want to contribute code or customize the software; they want |
| 72 | +to use it as-is. Users provide valuable feedback and proof that a project is useful and needed. |
| 73 | + |
| 74 | +No matter what role you assign yourself to, if you want to become familiar with the EDC and its functionalities, |
| 75 | +please take a look at our [hands-on](overview/hands-on.md) section and samples. |
| 76 | + |
| 77 | +### How to contribute |
| 78 | + |
| 79 | +All developments follow the [principles defined by the Eclipse Foundation](https://www.eclipse.org/projects/handbook/#preamble-principles). |
| 80 | +* Transparency: A project’s discussions, minutes, deliberations, project plans, plans for new features, and other |
| 81 | +artifacts are open, public, and easily accessible. |
| 82 | +* Openness: The project is open to all. Everyone has the same opportunities; everyone participates with the same rules. |
| 83 | +* Meritocracy: The more that somebody contributes, the more responsibility they will earn. |
| 84 | +* Vendor-neutrality: No vendor is permitted to dominate a project, and nobody can be excluded from participating |
| 85 | +in a project based on their employment status. |
| 86 | + |
| 87 | +If you want to know more about actually contributing code, please find more information [here](./_helper/contributing.md) |
| 88 | +and take a look at our [developer documentation](./developer/README.md). |
| 89 | + |
| 90 | +> To join our Discord server, you may use [this](https://discord.gg/n4sD9qtjMQ) invite. |
| 91 | +Details about our biweekly open Q&A session can be seen [here](https://github.com/eclipse-dataspaceconnector/DataSpaceConnector/discussions/1303). |
| 92 | + |
| 93 | +## Statement: EDC vs DSC |
| 94 | + |
| 95 | +_Also to be read on [GitHub](https://github.com/eclipse-dataspaceconnector/DataSpaceConnector/discussions/1037)._ |
| 96 | + |
| 97 | +**The Eclipse Dataspace Connector (EDC) expands and improves the Dataspace Connector (DSC) as a follow-up development |
| 98 | +by an OSS community that is being contributed to the various initiatives that are involved in building data spaces. |
| 99 | +Both connectors do _not_ have the same codebase, but follow the same ideas of sovereign data spaces.** |
| 100 | + |
| 101 | +The DSC is a component previously developed by Fraunhofer ISST. The goal was to build an IDS-compliant connector |
| 102 | +driven by a community (e.g., from initiatives as Catena-X, Gaia-X, Mobility Data Space) as OSS to foster distribution |
| 103 | +and usage. While some discussions with several partner organizations begin/mid last year, it became very clear that |
| 104 | +the underlying governance and rules for contributions did not fit the requirements to form such a community and work |
| 105 | +on the code together due to questions regarding intellectual property (IP), licensing, etc. |
| 106 | + |
| 107 | +As a solution, partners agreed in June '21 to create a project within the Eclipse Foundation (EF), since EF provides |
| 108 | +clear governance structures and rules allowing exactly the collaboration and community building, it was aimed for. |
| 109 | +While the transfer process and meetings with initial committers (among others), the architecture was rethought to |
| 110 | +directly address future requirements in terms of applicability, robustness, scaling, etc. A much-discussed issue |
| 111 | +dealt with the limitation to a single data protocol such as the IDS vs. a solution that can support multiple such |
| 112 | +protocols. The decision fell on the latter and so the EDC is now developed based on a new architecture and design |
| 113 | +principles but based on available parts (like the DSC) that were transferred as initial contributions to the EF |
| 114 | +(see the [project's proposal](https://projects.eclipse.org/proposals/eclipse-dataspace-connector)). This time |
| 115 | +with a [community of various companies](https://projects.eclipse.org/projects/technology.dataspaceconnector/who) |
| 116 | +that bring in requirements from different initiatives like Catena-X, Eona-X, IDSA, Gaia-X, or MDS, and work on |
| 117 | +a decentralized data space implementation based on a data space connector that provides capabilities for data |
| 118 | +exchange and extensibility to various shared service implementations (catalog, identity, usage control, logging, etc.) |
| 119 | +through interfaces. Thereby, the EDC can support IDS(A)-based components like the DAPS (Identity), or Metadata Broker |
| 120 | +(Catalog) as well as other approaches like WEB-DID (Identity) or Federated Catalog (Catalog). All with the same core |
| 121 | +to enable organizations to use a single technology to participate in multiple data spaces/ecosystems/federations in |
| 122 | +parallel. |
| 123 | + |
| 124 | +## Correlating projects |
| 125 | + |
| 126 | +**Please note**: Not every project may be mentioned here. If you want to add one, please feel free to open a PR |
| 127 | +or provide us with information via an issue. |
| 128 | + |
| 129 | +| Name | Description | |
| 130 | +| :--------- | :---------- | |
| 131 | +| Gaia-X | The EDC allows organizations to exchange data compliant to rules and policies of the Gaia-X AISBL according to the corresponding Trust Framework | |
| 132 | +| Catena-X | Uses the EDC as Connector component to build a data space between participants | |
| 133 | +| Tractus-X | Eclipse Foundation OSS project initiated by Catena-X consortia, where specific (Catena-X related) EDC-extensions can be implemented under clear governance and rules | |
| 134 | + |
| 135 | +## Important links |
| 136 | + |
| 137 | +If you want to get more information, besides the one provided here, you may take a look |
| 138 | +at the following links: |
| 139 | + |
| 140 | +| Name | Link | |
| 141 | +| :--------- | :--- | |
| 142 | +| Homepage | <https://dataspace-connector.io/> (in progress) | |
| 143 | +| Eclipse project page | <https://projects.eclipse.org/projects/technology.dataspaceconnector> | |
| 144 | +| EDC project proposal | <https://projects.eclipse.org/proposals/eclipse-dataspace-connector> | |
| 145 | +| YouTube Channel | <https://www.youtube.com/channel/UCYmjEHtMSzycheBB4AeITHg> | |
| 146 | +| LinkedIn | in progress | |
| 147 | +| Main Repository | <https://github.com/eclipse-dataspaceconnector/DataSpaceConnector> | |
| 148 | +| Documents & presentations | <https://github.com/eclipse-dataspaceconnector/Collateral> | |
| 149 | +| Publications | <https://github.com/eclipse-dataspaceconnector/Publications> | |
0 commit comments