In short
A data catalog describes what a database contains — which concepts, over which periods, for how many patients — without ever publishing an individual record. An anonymization threshold removes rows carrying too few patients, and the result exports as a standalone HTML page with embedded Health-DCAT-AP metadata.
Two 'catalogs' not to confuse
The data catalog, described here, answers: “what is in this warehouse?” It describes your data so other teams can tell whether it is worth asking for.
The community catalog answers an entirely different question: “which schemas, plugins or projects can I install?” It indexes published Linkr entities, not data.
The problem: announcing without exposing
A hospital warehouse is invisible from the outside. A team looking for a cohort of septic patients cannot tell whether you have any, how many, or over which years — short of asking, waiting, and often finding out the answer was no.
Publishing the data is out of the question. But publishing its description — which concepts are present, how many records, how they spread over time — does not carry the same risk, provided the counts are too coarse to re-identify anyone.
That is exactly what a catalog produces: a quantified, anonymized, publishable inventory.
Building a catalog
1. Choose the database
A catalog describes one database, chosen in the Source tab.
The database must have a schema
With no schema mapping, Linkr does not know what a patient or a stay is: there is nothing to count. See Schemas.
2. Configure what gets counted
Three settings, in the Configuration tab:
Concept classification
Which dictionary columns act as category and subcategory. In OMOP, typically the domain and the concept class — this is what makes the inventory navigable rather than a list of ten thousand codes.
Dimensions
The demographic axes of the breakdown — sex, age. They enrich the inventory without ever descending to the individual.
Periods
One row per month, quarter or year, with patients and hospitalizations, and optionally a breakdown by department. Turned off, the catalog simply counts concepts.
3. Compute
The computation walks the database and counts. On a large warehouse this takes a while, so the operation is interruptible: you can pause it, resume it, or start the whole thing over. Progress is shown period by period.
The result is kept with its date. The Data, Anonymization and Publish tabs stay empty until a computation has run.
Changing the database invalidates the computation
The counts describe one specific database. Change it and the existing results no longer mean anything: the computation has to be run again.
4. Anonymize
This is the step that makes publication acceptable. You set a minimum number of patients per row; rows below it are removed from the export.
A row reading “2 patients, neonatal unit, March 2024” is not a statistic, it is an identification. The threshold removes it.
Linkr flags when the breakdown is too fine
If too many cells are masked, a warning suggests widening the granularity — month to quarter, quarter to year. A catalog with half its rows gone informs nobody: better wider periods and numbers that survive.
Publishing
Two output formats, both produced from the Publish tab.
A standalone HTML page
A single file, to open or to drop onto a website.
It carries charts, a filterable table, and Health-DCAT-AP metadata embedded as JSON-LD — readable by a search engine or a data portal, with nothing to install.
A ZIP archive
The same information, separated and reusable.
catalog.html, concepts.csv, dimensions.csv and metadata.jsonld. This is the form to take when feeding an existing institutional catalogue.
A preview shows the page before producing it, and a counter reports how many rows anonymization removed — the number to look at before distributing anything.
Health-DCAT-AP, briefly
It is the European vocabulary for describing health datasets: publisher, licence, contact, temporal coverage, themes. Using it means a data portal can harvest your catalog and display it alongside others, with no conversion.
What never leaves
A catalog contains only aggregated counts. No patient rows, no identifiers, no individual event dates — and, below the anonymization threshold, not even a count.
It is the same logic as for databases: what leaves the hospital describes the data without carrying it.
Going further
- Schemas — essential for the computation to know what to count.
- Databases — a catalog’s source.
- Community catalog — the other catalog, the one of published entities.
- Publishing content — distributing beyond your own site.