User Guide
A practical guide for business users, researchers, and data stewards working with the Health Dataspace platform. Each section links directly to the feature page in the live demo. For a complete end-to-end walkthrough covering every persona and workflow, see the Full User Journey.
Static Demo vs Full Stack
The GitHub Pages demo runs as a static export with mock data. The Azure EHDS Portal runs the full stack with live services (reset nightly). The following features require the full stack:
- Keycloak SSO login — the static demo uses a persona switcher instead
- Live Neo4j graph queries — graph explorer uses pre-loaded mock data
- Contract negotiation & transfers — require EDC connectors
- Natural language / federated queries — require neo4j-proxy service
- ODRL policy enforcement — requires live dataspace middleware
See the Developer Guide for full stack setup instructions.
Purpose
This platform is a reference implementation of the European Health Data Space (EHDS) regulation. Its purpose is to demonstrate how sovereign health data exchange works in practice — combining the Dataspace Protocol (DSP 2025-1), FHIR R4 clinical resources, OMOP CDM analytics, and biomedical ontologies into a unified Neo4j knowledge graph.
The five knowledge-graph layers model the complete EHDS data lifecycle:
- L1 Dataspace Marketplace — Participants, DataProducts, ODRL policies, contracts, HDAB approvals
- L2 HealthDCAT-AP Metadata — Catalogues, datasets, distributions, data services
- L3 FHIR R4 Clinical — Patients, encounters, conditions, observations, medications
- L4 OMOP CDM Analytics — Persons, condition occurrences, drug exposures, measurements
- L5 Biomedical Ontology — SNOMED CT, ICD-10, RxNorm, LOINC concept mappings
All data is fully synthetic. Organisation names are fictional (AlphaKlinik Berlin, PharmaCo Research AG, MedReg DE, Limburg Medical Centre, Institut de Recherche Santé).
Personas & Roles — Who Uses What?
The EHDS regulation defines distinct participant roles to ensure accountability, data sovereignty, and patient rights across the health data ecosystem. This platform adapts its navigation, graph view, and available actions to the signed-in user's EHDS role. Sign in at /auth/signin with any demo account — password equals username in local dev.
Sign In — Demo Persona Cards
The sign-in page lists every demo account with its role badge, organisation, and the graph persona view it will open after login. Clicking a card calls Keycloak SSO and redirects directly to the user's personalised graph.
| Username | Organisation | Role | Graph view | Primary question | EHDS basis |
|---|---|---|---|---|---|
| edcadmin | Dataspace Operator | EDC Admin | edc-admin | Who are my participants? What contracts are active? | EHDS Art. 52 — operates the dataspace infrastructure and ensures interoperability between participants |
| clinicuser | AlphaKlinik Berlin | Data Holder | hospital | Who has approved access to my datasets? | EHDS Art. 33-34 — health data holders must make electronic health data available for secondary use when authorized |
| lmcuser | Limburg Medical Centre | Data Holder | hospital | What contracts are active for my NL datasets? | EHDS Art. 33-34 — cross-border data holder demonstrating multi-country interoperability |
| researcher | PharmaCo Research AG | Researcher | researcher | What datasets match my study protocol? | EHDS Art. 34(1) — data users access health data for permitted secondary use purposes (research, innovation, public health) |
| regulator | MedReg DE | HDAB Authority | hdab | What approvals are pending? Is the chain complete? | EHDS Art. 36-37 — Health Data Access Bodies are designated by each Member State to authorize secondary use of health data |
Why These Roles? — EHDS Regulatory Background
The European Health Data Space regulation establishes a governance framework for both primary use (patient access to their own data) and secondary use (research, innovation, policy-making). Each role in this platform maps to a specific actor defined in the regulation:
Healthcare providers, insurers, and registries that hold electronic health data are legally required to make it available for authorized secondary use. They retain sovereignty over their data and control access through ODRL policies and contract negotiation.
Researchers, public health agencies, and innovators who need health data for permitted purposes must apply through an HDAB, receive a data permit, and access data only in a secure processing environment. They never receive raw patient data directly.
Each EU Member State must designate one or more Health Data Access Bodies (HDABs) as the national authority that reviews data access applications, issues data permits, and ensures compliance. MedReg DE represents the German HDAB in this implementation.
The dataspace operator runs the technical infrastructure: participant onboarding, connector management, federated catalog, and transfer monitoring. They ensure interoperability across all participants but do not access health data directly.
The EHDS mandates pseudonymisation and re-identification controls. The Trust Center manages pseudonym resolution, secure processing environment (SPE) sessions, and ensures that data users only access de-identified data. This role enforces the technical privacy safeguards the regulation requires.
Menu Items per Role
Navigation is filtered by role — items not relevant to a user's function are hidden entirely. This separation of concerns reflects the EHDS principle that each actor should only see the tools and data relevant to their regulatory function.
| Route | Public | Data Holder | Researcher | HDAB | EDC Admin |
|---|---|---|---|---|---|
| /graph | ✅ | ✅ | ✅ | ✅ | ✅ |
| /catalog | ✅ | ✅ | ✅ | ✅ | ✅ |
| /catalog/editor | — | ✅ | — | — | ✅ |
| /patient | ✅ | ✅ | ✅ | ✅ | ✅ |
| /analytics | — | — | ✅ | ✅ | ✅ |
| /query (NLQ) | — | — | ✅ | ✅ | ✅ |
| /eehrxf | ✅ | ✅ | ✅ | ✅ | ✅ |
| /compliance | — | — | — | ✅ | ✅ |
| /data/share | — | ✅ | — | — | ✅ |
| /data/discover | — | — | ✅ | ✅ | ✅ |
| /negotiate | — | ✅ | ✅ | — | ✅ |
| /admin + /admin/* | — | — | — | — | ✅ |
| /admin/policies + audit | — | — | — | ✅ | ✅ |
| /docs | ✅ | ✅ | ✅ | ✅ | ✅ |
Graph Explorer — Persona Views
The “View as” panel in the graph sidebar and the “My graph view” link in the UserMenu dropdown load a role-specific subgraph that answers each persona's primary question. Each view surfaces only the graph layers and node types relevant to that regulatory function.
/graph?persona=hospital“Who has approved access to my datasets?”
Focus nodes: Participant · HealthDataset · Contract · HDABApproval · EEHRxFProfile
/graph?persona=researcher“What datasets match my study? What OMOP analytics can I run?”
Focus nodes: HealthDataset · OMOPPerson · SnomedConcept · SPESession
/graph?persona=hdab“What approvals are pending? Is the governance chain complete?”
Focus nodes: HDABApproval · VerifiableCredential · TrustCenter · AccessApplication
/graph?persona=trust-center“Which pseudonym resolution flows am I managing?”
Focus nodes: TrustCenter · SPESession · ResearchPseudonym · ProviderPseudonym
/graph?persona=edc-admin“Who are my participants? What contracts and transfers are live?”
Focus nodes: Participant · DataProduct · Contract · TransferEvent
Getting Started
After authenticating through Keycloak SSO, you land on the graph view personalised for your role. You can also browse datasets, review patient timelines, run analytics, or check EHDS compliance. The UserMenu (top-right) shows your role badge and a “My graph view” shortcut to your persona graph.
Home Dashboard
The landing page presents a high-level overview of the dataspace: active participants, registered datasets, and recent transfers. Quick-action cards let you jump to common tasks.
Example: PharmaCo Research AG logs in and sees 5 active participants, 3 published datasets, and a pending contract negotiation with AlphaKlinik Berlin.
Participant Onboarding
The onboarding wizard guides new participants through dataspace registration: creating a DID identity, registering with the Credential Federated Manager, and enrolling in the federated catalog. This process implements the EHDS requirement for authorised participation (Art. 52) with verifiable credentials.
Example: Limburg Medical Centre joins the EHDS dataspace by providing its organization details, generating did:web:lmc.nl:clinic, and obtaining a MembershipCredential.
Participant Settings
View and manage your participant profile, verifiable credentials (MembershipCredential, EHDSParticipantCredential), connector endpoints, and Keycloak SSO configuration.
Example: AlphaKlinik Berlin checks that both its MembershipCredential and EHDSParticipantCredential are active and not expired before publishing a new dataset.
Explore
Graph Explorer
The force-directed graph visualisation displays all five architecture layers of the knowledge graph. Nodes are colour-coded by layer: Marketplace, HealthDCAT-AP, FHIR R4, OMOP CDM, and Ontology. This unified view shows how the EHDS connects clinical data (FHIR), analytics (OMOP), and governance (DSP) into a coherent ecosystem.
- Click nodes to see properties and related entities
- Use the layer toggle to filter visible layers
- Zoom and pan with mouse controls
- Search bar finds specific nodes across all layers
Example: A researcher explores how a FHIR Patient resource connects to OMOP Person and condition_occurrence records via the SNOMED ontology layer.
Dataset Catalog
Browse and search HealthDCAT-AP metadata records for all published datasets. Each entry shows title, description, publisher, temporal/spatial coverage, and distribution formats. The catalog implements the EHDS metadata requirements (Art. 55) for discoverable, machine-readable dataset descriptions.
- Filter by publisher, theme, or keyword
- View distribution endpoints (FHIR, OMOP, bulk export)
- Check data quality metrics (DQV dimensions)
- Initiate data access requests from catalog entries
Example: PharmaCo Research AG searches for "diabetes" datasets and finds AlphaKlinik Berlin's Type 2 Diabetes Cohort with FHIR R4 and OMOP CDM distributions.
Patient Journey
View the clinical timeline for synthetic patients, showing FHIR R4 resources (Encounters, Conditions, Observations, Medications, Procedures) mapped to their OMOP CDM equivalents. This dual-view demonstrates how primary-use clinical data (EHDS Art. 3-12) can be transformed for secondary-use analytics while preserving semantic integrity.
- Select patients from the patient list
- Timeline displays events chronologically
- Toggle between FHIR and OMOP views
- Explore SNOMED/LOINC/RxNorm concept mappings
Example: A data steward reviews the timeline for a synthetic patient with hypertension, verifying that the FHIR Condition correctly maps to OMOP condition_occurrence with SNOMED code 38341003.
OMOP Analytics
Cohort-level research analytics powered by the OMOP CDM layer. Run aggregate queries across conditions, measurements, drug exposures, and procedures. This implements the EHDS secondary-use analytics capability (Art. 34) where researchers work with de-identified, standardised data.
- View condition prevalence and demographics
- Analyse drug exposure patterns
- Run cohort characterisation queries
- Export results for further analysis
Example: PharmaCo Research AG runs a cohort query to identify patients with Type 2 Diabetes who received Metformin, showing age and gender distribution across the cohort.
Natural Language / Federated Query
Execute cross-participant queries using natural language or structured query syntax. The query engine translates requests into federated SPARQL/Cypher queries across connected dataspace nodes. This demonstrates how the EHDS enables cross-border data access without centralising raw health data.
Example: A researcher types "How many patients with hypertension are older than 65?" and the system queries both AlphaKlinik Berlin and Limburg Medical Centre, returning aggregated results without moving raw data.
EEHRxF Profiles
European EHR Exchange Format profile alignment view. Analyse which FHIR profiles satisfy EHDS priority categories (Patient Summary, ePrescription, Laboratory Results, Medical Imaging, Hospital Discharge) and identify coverage gaps. The EEHRxF is mandated by EHDS Art. 6 to ensure interoperability of primary-use health data across Member States.
Example: MedReg DE reviews AlphaKlinik Berlin's profile coverage and sees that Patient Summary and Laboratory Results are fully aligned, while ePrescription has one missing profile.
Governance
The governance modules manage EHDS compliance, protocol testing, and verifiable credential issuance as required by the European Health Data Space regulation (Articles 36-52). These modules ensure that every data access follows the legally mandated approval chain: application, HDAB review, data permit issuance, contract negotiation, and audited transfer.
EHDS Approval
Manage data access permits as required by EHDS Articles 45-49. Data users submit applications specifying the purpose, scope, and duration of data access. HDABs review applications against the permitted purposes in Art. 34(1) and issue verifiable credentials as proof of authorization.
Example: PharmaCo Research AG submits a data access application for the diabetes cohort. MedReg DE (HDAB) reviews the request, approves it under Art. 46, and a DataPermitCredential is issued.
Protocol TCK
The Technology Compatibility Kit validates that your EDC connector implements the Dataspace Protocol (DSP 2025-1) correctly. Tests cover catalog queries, contract negotiations, and transfer processes. Passing the TCK is a prerequisite for interoperability within the EHDS ecosystem.
Example: The operator runs the TCK suite and confirms 20/20 tests passing — verifying DSP-compliant catalog, negotiation, and transfer process implementations.
Verifiable Credentials
View and manage verifiable credentials across all dataspace participants. Each participant holds a MembershipCredential and an EHDSParticipantCredential, issued by the trusted issuer service. Credentials follow the DCP v1.0 standard for decentralised claims, enabling trust without a central authority.
Example: The operator verifies that all 5 participants (AlphaKlinik Berlin, PharmaCo Research AG, MedReg DE, Limburg Medical Centre, Institut de Recherche Santé) each hold 2 active credentials.
Data Exchange
The sovereign data exchange pipeline follows the Dataspace Protocol (DSP 2025-1): share assets, discover via federated catalog, negotiate contracts, manage tasks, and transfer data. This pipeline implements EHDS Art. 33-34 requirements for making health data available while preserving data holder sovereignty through policy-controlled access.
Share Data
Publish datasets with HealthDCAT-AP metadata and ODRL access policies for the federated catalog. Define distribution endpoints, data quality attributes, and usage constraints. Data holders use this page to fulfil their obligation under EHDS Art. 33 to make data available for secondary use.
Example: AlphaKlinik Berlin publishes a "Synthetic Diabetes Cohort" dataset with FHIR R4 bulk export distribution, EHDS Art. 33 usage policy, and spatial coverage set to DE.
Discover
Search the federated catalog across all connected dataspace participants. Results aggregate datasets from multiple EDC connectors, showing availability and access terms. The federated catalog enables cross-border dataset discovery without centralising metadata.
Example: PharmaCo Research AG discovers 3 datasets across 2 participants for "cardiovascular" research — one from AlphaKlinik Berlin and two from Limburg Medical Centre.
Negotiate
Initiate and track DSP contract negotiations with data holders. View negotiation state (REQUESTED, AGREED, VERIFIED, FINALIZED), ODRL policy terms, and counter-offer history. Contract negotiation ensures that data access terms are mutually agreed before any transfer occurs, as required by EHDS Art. 34.
Example: PharmaCo Research AG initiates a contract negotiation with AlphaKlinik Berlin for the diabetes cohort. The negotiation progresses to FINALIZED with an EHDS Art. 33(c) research use policy.
Tasks
Monitor the task queue for pending and active data transfer operations. Tasks track the full lifecycle from initiation through provisioning to completion, providing the audit trail required by EHDS for accountability.
Example: The operator monitors a bulk FHIR export task from AlphaKlinik Berlin to PharmaCo Research AG — currently at the provisioning stage with an estimated 2-minute completion time.
Transfer
View the complete history of data transfers — both initiated and received. Each entry includes timestamps, transfer size, protocol used, and a link to the audit trail. Transfer logging implements the EHDS requirement for full traceability of all health data movements across the dataspace.
Example: PharmaCo Research AG reviews its transfer history showing a completed 12 MB FHIR bulk export from AlphaKlinik Berlin, transferred via HTTP-PUSH with full W3C PROV audit trail.
Administration
Platform administrators manage participants, access policies, and audit logs. The admin dashboard provides an overview of system health, active connections, and recent activity. Access requires the EDC_ADMIN role assigned through Keycloak. The operator role is defined by EHDS Art. 52 as responsible for ensuring the technical infrastructure supports interoperable, sovereign data exchange.
Operator Dashboard
The admin dashboard shows system health at a glance: connector uptime, active participants, recent negotiations, transfer throughput, and credential status.
Example: The operator sees all 5 participants are online, 3 contract negotiations are active, and 12 transfers completed in the last 24 hours with no failures.
EDC Components
Inspect the runtime status of Eclipse Dataspace Connector components — Control Plane, Data Plane, Identity Hub, Issuer Service, and Credential Federated Manager. View health checks, versions, and configuration details.
Example: The operator checks that the Control Plane (port 19193), Data Plane (port 19195), and Identity Hub (port 17171) are all reporting healthy status for AlphaKlinik Berlin's connector.
Need Help?
For technical questions, see the Developer Guide. For architecture details, visit the Architecture Diagrams. Try the live demo at GitHub Pages.
For the complete end-to-end walkthrough of every persona and workflow, read the Full User Journey.