| name | fdpg-portal-navigation |
| description | Navigation und Bedienung des FDPG-Machbarkeitsportals (feasibility.forschen-fuer-gesundheit.de). Nutze wenn jemand fragt, wie man im Portal eine Kohorte zusammenklickt, Kriterien sucht/hinzufügt, Ein-/Ausschlusskriterien setzt, eine Machbarkeitsanfrage absendet, oder wenn geprüft werden soll, ob ein Kriterium im Portal tatsächlich auswählbar ist (Suchbaum, Contexts, Verfügbarkeit, Bioproben/Specimen, Zeitbezug). |
FDPG-Portal – Navigation & Usability
Praxisleitfaden für das Machbarkeitsportal des Forschungsdatenportals Gesundheit
(FDPG): https://feasibility.forschen-fuer-gesundheit.de. Beschreibt die reale
UI-Bedienung (Stand: live verifiziert 2026-07) — ergänzend zum fdpg-query-Skill,
der das JSON erzeugt.
Dieser Skill sagt, wie man klickt. fdpg-query sagt, was im JSON steht.
Die Grenzen (was NICHT abbildbar ist) stehen in FDPG_DATENPUNKTE.md.
Zwei-Stufen-Modell (wichtig!)
Das Portal trennt zwei Phasen — sichtbar am Fortschrittsbalken ① Cohort
Selection → ② Feature Selection:
| Phase | Zweck | Ergebnis | Rechtlich |
|---|
| Cohort Selection (Feasibility) | „Gibt es genug Fälle?" | nur aggregierte Fallzahlen pro Standort | niedrigschwellig, kein Ethikvotum |
| Feature Selection | welche Attribute später ausgeliefert werden | Merkmalsliste für die Datenauslieferung | Antrag/Ethik nötig (Data Extraction) |
Konsequenz: Zeitliche/zählende Feinlogik (Baseline-vor-Therapie, ≥1 Folgeprobe,
Längsschnitt-Stratifizierung) ist kein Feasibility-Thema — die Fallzahl ist
immer eine Obermenge. Feinauswertung erst in Phase 2 / Eigenanalyse.
Hinweis im Portal: Für lokale Rohdatenanalyse das Kriterium
„MDAT scientific use EU GDPR NIVEAU" bzw. Kriterien aus dem Modul
„EINWILLIGUNG" mit aufnehmen.
Login
- Startseite leitet auf Keycloak um (E-Mail + Passwort).
- Zugangsdaten muss der Nutzer selbst eingeben — nie im Auftrag ausfüllen.
- Nach Login landet man auf Data Definition › Cohort Definition.
Navigations-Karte
Linke Seitenleiste:
- Data Definition – Übersicht der aktuellen Kohorte (leer: „New Cohort")
- Cohort Selection – der Suchbaum (
/feasibility-query/search)
- Feature Selection – Phase 2 (Attribut-/Merkmalsauswahl)
- Saved data definitions – gespeicherte Kohorten laden
Wichtige URLs:
- Suche:
/feasibility-query/search
- Editor:
/feasibility-query/overview
Kern-Workflow (Kohorte zusammenklicken)
- Cohort Selection öffnen → Kriterien-Suche.
- Suchbegriff oder Terminologie-Code eingeben, Enter/Search.
- ICD-10 (
C50.9), ATC (L01EC01), OPS, LOINC oder Freitext (Specimen).
- Filter einschränken: Context, Terminology, CDS Modules.
- In der Trefferliste die Checkbox des gewünschten Kriteriums setzen.
- „Add to cohort selection" (Badge zeigt Anzahl vorgemerkter Treffer).
- „Show cohort selection" → wechselt in den Criteria editor.
- Im Editor das Kriterium aus „Selected criteria" per Drag & Drop in
„Inclusion criteria" oder „Exclusion criteria" ziehen (Griff-Symbol ✛).
- Optional Zahnrad ⚙ am platzierten Kriterium → Zeitbezug / Wert- bzw.
Attributfilter setzen (nur verfügbar, wenn das Kriterium in einer Zone liegt).
- „Send Feasibility query" → Fallzahlen anfordern.
Trefferliste – Spalten
| Spalte | Bedeutung |
|---|
| Name | Anzeigename (+ Baum-Icon = Hierarchie öffnen) |
| Availability | Balken Very Low → Very High: wie gut das Merkmal an den Standorten befüllt ist |
| Terminology | ICD-10-GM, OPS, ATC, LOINC, SNOMED CT |
| Term code | der eigentliche Code |
| Context | Diagnose, Prozedur, Laboruntersuchung, Medikament(-verabreichung/-verordnung/-anordnung), Specimen, … |
Detail-Panel & Terminologie-Hierarchie
Klick auf einen Treffernamen/Baum-Icon öffnet rechts ein Panel mit Tabs
Details | Parent element (n) | Child element (n). Damit navigiert man den
SNOMED/ICD-Baum (Zahnrad ⚙ je Eintrag springt zum Parent/Child). So findet man
speziellere Codes — z. B. unter Tissue specimen das Child
„Paraffin embedded tissue block specimen" (FFPE, SNOMED 3040001000004107).
Panel schließt über „Close ✕" oben rechts. Es überlagert die Buttons unten
rechts — vor „Add"/„Show" ggf. erst schließen.
Usability-Fallen (real beobachtet)
- Nicht jedes Kriterium ist auswählbar. Gruppen-/Hierarchieknoten zeigen beim
Hover über die Checkbox „Criterion cannot be selected" — dann ein konkretes
(Blatt-)Kind auswählen statt des Sammelknotens.
- Checkbox vs. Zeilenklick: Ein Klick auf Name/Baum-Icon öffnet nur das
Detail-Panel. Zum Vormerken die Checkbox treffen (bei fummeligen Koordinaten
Element-Referenz statt Pixelklick nutzen).
- Editor braucht Drag & Drop: Ein Kriterium in „Selected criteria" zählt erst,
wenn es in Inclusion/Exclusion gezogen wurde (Griff ✛, „Use drag & drop to
sort"). Verifiziert 2026-07: DnD funktioniert im echten Browser für einen
menschlichen Nutzer, lässt sich aber NICHT per Browser-Automation auslösen —
synthetischer
left_click_drag markiert nur den Zonentext und verschiebt das
Kriterium nicht. Automations-Weg daher: JSON per ⬆-Upload einspielen statt
Suche+DnD (siehe Werkzeug-Icons).
- Zahnrad = kontextabhängig: In „Selected criteria" zeigt ⚙ nur einen Tooltip;
die echten Filter (Zeit/Wert) erscheinen erst nach dem Ablegen in einer Zone.
AND/OR-Logik im Editor
- Mehrere getrennte Boxen innerhalb Inclusion = UND.
- Mehrere Kriterien in derselben Box = ODER.
- Exclusion criteria = Ausschluss (NOT).
- Entspricht der JSON-Struktur:
inclusionCriteria: [[…], […]] (äußeres Array UND,
inneres Array ODER).
Werkzeug-Icons (unten links, beide Ansichten)
- ⬆ Upload – gespeicherte Kohorten-JSON importieren
- ⬇ Download – aktuelle Kohorte als JSON exportieren
- 💾 Save – als „data definition" im Portal speichern
→ Der fdpg-query-Skill erzeugt genau dieses importierbare JSON; damit lässt sich
das Zusammenklicken überspringen (Upload statt manuell).
Single vs. Bulk Search
Oben rechts Single Search ⟷ Bulk Search. Bulk Search / „To bulk search" im
Editor: mehrere Codes auf einmal einfügen (z. B. Liste von ATC-/ICD-Codes) statt
einzeln zu suchen — praktisch bei Medikamenten-ODER-Gruppen.
Was im Portal abbildbar ist (Kurzreferenz)
Abbildbar als Kriterium: Diagnose (ICD-10-GM), Prozedur (OPS), Medikament (ATC,
3 Kontexte), Labor (LOINC, mit Wertfilter), Geschlecht, Alter, Onkologie
(Diagnose/Metastase/Grading/ECOG/UICC/OP), Specimen (SNOMED-Typ inkl. FFPE),
Consent/EINWILLIGUNG.
Nicht abbildbar (→ Data Extraction / Eigenanalyse): zeitliche Beziehungen
zwischen Events, Zählen/Ordnen von Ereignissen, Stratifizierung, freie genetische
Varianten (HGVS/Genkomponente-Freitext), Bildgebungsbefunde, Outcomes/Vitalstatus.
Details & Workarounds: FDPG_DATENPUNKTE.md.
Phase 2: Feature Selection (Data Extraction)
Linke Navigation Feature Selection (/data-selection/search) — hier wählt
man, welche Daten die Kohorte liefern soll. Aufbau: Liste von Modulen,
jedes per Kästchen aktivierbar → „Add to Selection" / „Show Selection".
Verifizierte Module (2026-07): Diagnosis · Procedure · Person · Laboratory ·
Medication · Case · Biobank · Consent · Intensive Care · Molecular
Genetics · Findings of Imaging Procedures · Oncology · Pathology.
- Modul anhaken = Modul in die Auslieferung aufnehmen.
- Modul-Editier-View (ins Modul klicken): Auslieferung auf einzelne Felder
eingrenzen — Zwischenstände dort per „Save" sichern (Portal-Hinweis!).
- FDPG empfiehlt, die Feature Selection mit FDPG-Personal durchzuführen
(Kontakt im Seiten-Intro).
Molekulargenetik / BRAF & Co. gehört hierher, nicht in die Feasibility
Genetische Varianten sind im Feasibility-Suchbaum nur als LOINC-Tests und
mit dünner Verfügbarkeit vorhanden. Der belastbare Weg ist die Extraction
über das Modul Molecular Genetics (KDS GenetischeTests,
„Molekulargenetischer Befundbericht"): Variante.component[gene-studied] = Gen
per HGNC-ID (z. B. BRAF = HGNC:1097) plus representative-coding-hgvs
(c.HGVS) → V600E exakt. Danach filterst du selbst auf Gen/Variante.
Vorbehalte: viele DIZ liefern MolGen noch als PDF/Freitext (nicht strukturiert);
Consent-Scope nötig.
Feature Selection ⊇ Feasibility (Reproduktions-Prinzip)
Jeder cohort-definierende Datenpunkt aus der Feasibility MUSS in der Feature
Selection als Modul reproduziert werden — sonst lässt sich die
Kohortenzugehörigkeit auf den Rohdaten nicht validieren und die Zeit-/
Längsschnitt-Logik nicht nachrechnen.
Mapping-Checkliste (Feasibility-Kriterium → Feature-Selection-Modul):
| Feasibility-Kriterium | → Modul Phase 2 | liefert für Feinlogik |
|---|
| Diagnose (ICD-10) | Diagnosis | Nachweis + Diagnosedatum |
| Geschlecht | Person | Patient.gender |
| Medikation (ATC) | Medication | Substanz + effectivePeriod (Therapie-Zeitachse) |
| Probentyp/FFPE | Biobank | Typ + collectedDateTime (Entnahmezeitpunkt) |
| Labor/LOINC | Laboratory | Werte + Zeitpunkt |
| (Therapieart/Protokoll, nicht in Feas.) | Oncology | systemische_therapie_art, usedCode, performedPeriod |
| (Variante, in Feas. nur LOINC) | Molecular Genetics | gene-studied (HGNC) + HGVS |
| (immer) | Consent | Rechtsgrundlage der Auslieferung |
→ Damit rechenbar in Eigenauswertung: Baseline / On- / Post-Treatment
(collectedDateTime vs. Therapie-Period) und cross-sectional vs.
longitudinal — genau das, was die Feasibility nicht kann.
Verweise
- Logik & Mechanik (Import-Format, ATC/Medikation, ATC-Versionierung, CDK-DnD,
OPS-Pfad, Datenlage):
FDPG_LOGIK.md
- JSON-Generierung: Skill
fdpg-query, Tool generate_cohort_query
- Grenzen/Datenpunkte:
FDPG_DATENPUNKTE.md
- Fachliche KDS-Beratung / Phasen-Entscheidung: Skill
ask-mii