Fundamentals & Deployment
This page provides an introduction to the concept of data spaces, primarily using Fiware technology. Its main objective is to guide those interested in joining a data space from a technical perspective, giving them the necessary knowledge to understand what a data space is, how it works, and how they can participate in it.
Before starting
It is recommended to have basic knowledge of Kubernetes, as most data space deployments are done in this environment. However, it is not necessary to be an expert to understand the concepts and follow the steps below.
- Kubernetes:
- Helm: To understand it quickly, this is like pip packages (Python) but for Kubernetes (more or less).
Basic Principles
The initial adoption of the FIWARE Data Space technology within the CitCom.ai project is a strategic decision that aligns with old Data Space Business Alliance (DSBA) and the Data Spaces for Smart Cities (DS4SCC) recommendations, ensuring a robust and interoperable framework for data exchange across Testing and Experimentation Facilities (TEFs).
For those interested in delving deeper into the technical pillars on which the Fiware Data Space Connector is developed, it is recommended to review the document: DSBA Technical Convergence recommendations. This document is the reference that Fiware uses for its developments. Although in some aspects it may be somewhat outdated, it is useful for a first contact.
Other interesting links to understand the basic concepts of data spaces and their implementation with Fiware are the different webinars that Fiware has on its YouTube channel. At first, it is recommended to watch these:
-
FIWARE Vision on Data Spaces
-
Data Spaces – A Practical Introduction Into Roles and Components (up to minute 32, as the Local Minimal Viable Dataspace demo is not relevant at this point)
-
Smart Data Models Other links of interest:
Practical Case
Having a theoretical basis on what a data space is, its components and how it works, the next step is to put it into practice. For this, it is recommended to deploy a data space locally.
At the moment, the explanations focus solely on the Fiware Data Space Connector: This is the official repository of Fiware with the developments, the explanation of what a data space is and how the different components interact with each other.
Option 1: Official Fiware Local Deployment
This is the most complete example, but also the one that consumes the most resources. If your computer does not have enough resources, it may never deploy correctly. (As of March 17, 2026, the latest version is 8.5.1).
Option 2: Minimum Viable Data Space Examples (Recommended)
Note
The Citcom.ai minimum viable data space is a reference implementation that has been developed to facilitate the understanding and deployment of what a data space is using Fiware technology. This example deploys version 7.29.0, a fully functional and stable version to understand the basic concepts of a data space.
This development uses a different orchestration framework, which makes the deployment more controlled and ensures that it deploys correctly in more situations than the official Fiware deployment.
You can follow the deployment instructions found in the GitHub repository to get the minimum viable data space up and running. This repository contains all the necessary information to carry out the deployment, including prerequisites, step-by-step instructions, and necessary resources.
As you can see, the repository contains different examples of environments that have been developed.
| Example | Link | Description |
|---|---|---|
| Minimal DS Local | kind_minimal_ds_local | Minimal Data Space (FIWARE) deployment in a local Kind cluster. |
| Minimal DS Local + Raw Consumer | raw_fiware_components-ds_local | Minimal Data Space (FIWARE) deployment in a local Kind cluster and a raw consumer. |
| Raw Consumer | raw_fiware_consumer | Raw Fiware consumer deployment (also with Trust Anchor). |
| Kind Cluster | kind_cluster | Kind cluster deployment. |
| K3s Cluster | k3s_cluster | K3s cluster deployment. |
For a first contact, it is recommended to deploy the Minimal DS Local example, which is the simplest and fastest to deploy. This example deploys a minimum viable data space using Fiware in a local Kind cluster.
Advanced users
If you want to go a little deeper, you can deploy the Minimal DS Local + Raw Consumer example, which in addition to the minimum viable data space, deploys a raw Fiware consumer, which allows you to better understand how a consumer should be configured from scratch.
You have all the instructions for the different services deployed in the example in the repository itself. Once deployed and verified that everything works correctly, it is recommended to follow the Fiware documentation to test the interaction between the different components of the data space, such as data exchange between a provider and a consumer, identity and access management, etc.
Other Resources
-
Decentralized IAM based on Verifiable Credentials and ODRL
-
Contract Negotiation in Data Spaces
