Back to Docs

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.

127
Synthetic patients
5,300+
Graph nodes
5
Architecture layers
5
Fictional organisations

The five knowledge-graph layers model the complete EHDS data lifecycle:

  1. L1 Dataspace Marketplace — Participants, DataProducts, ODRL policies, contracts, HDAB approvals
  2. L2 HealthDCAT-AP Metadata — Catalogues, datasets, distributions, data services
  3. L3 FHIR R4 Clinical — Patients, encounters, conditions, observations, medications
  4. L4 OMOP CDM Analytics — Persons, condition occurrences, drug exposures, measurements
  5. 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.

UsernameOrganisationRoleGraph viewPrimary questionEHDS basis
edcadminDataspace OperatorEDC Adminedc-adminWho are my participants? What contracts are active?EHDS Art. 52 — operates the dataspace infrastructure and ensures interoperability between participants
clinicuserAlphaKlinik BerlinData HolderhospitalWho has approved access to my datasets?EHDS Art. 33-34 — health data holders must make electronic health data available for secondary use when authorized
lmcuserLimburg Medical CentreData HolderhospitalWhat contracts are active for my NL datasets?EHDS Art. 33-34 — cross-border data holder demonstrating multi-country interoperability
researcherPharmaCo Research AGResearcherresearcherWhat datasets match my study protocol?EHDS Art. 34(1) — data users access health data for permitted secondary use purposes (research, innovation, public health)
regulatorMedReg DEHDAB AuthorityhdabWhat 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:

Data HolderArt. 33-34

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.

Data User (Researcher)Art. 34(1), Art. 45-46

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.

HDAB AuthorityArt. 36-37

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.

EDC Admin / Dataspace OperatorArt. 52

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.

Trust Center OperatorArt. 50(1)(e)

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.

RoutePublicData HolderResearcherHDABEDC 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.

Hospital / Data Holder/graph?persona=hospital
Try it

Who has approved access to my datasets?

Focus nodes: Participant · HealthDataset · Contract · HDABApproval · EEHRxFProfile

Researcher / Data User/graph?persona=researcher
Try it

What datasets match my study? What OMOP analytics can I run?

Focus nodes: HealthDataset · OMOPPerson · SnomedConcept · SPESession

HDAB Authority/graph?persona=hdab
Try it

What approvals are pending? Is the governance chain complete?

Focus nodes: HDABApproval · VerifiableCredential · TrustCenter · AccessApplication

Trust Center Operator/graph?persona=trust-center
Try it

Which pseudonym resolution flows am I managing?

Focus nodes: TrustCenter · SPESession · ResearchPseudonym · ProviderPseudonym

EDC Admin/graph?persona=edc-admin
Try it

Who are my participants? What contracts and transfers are live?

Focus nodes: Participant · DataProduct · Contract · TransferEvent

Getting Started

User workflow overview

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

JAD StackTry it

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

JAD StackTry it

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

JAD StackTry it

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 data access compliance workflow

EHDS Approval

JAD StackTry it

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

JAD StackTry it

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

JAD StackTry it

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

JAD StackTry it

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

JAD StackTry it

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

JAD StackTry it

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

JAD StackTry it

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

JAD StackTry it

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

JAD StackTry it

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.