Skip to content

Backends

Dataset definitions written in ehrQL can be run inside different secure environments, managed by different providers of EHR data.

For each such secure environment, there is a corresponding "backend" defined in ehrQL. Each ehrQL backend:

  • specifies the datasets available inside each secure environment
  • does the necessary translation work to allow the same dataset definition to run against data modelled in different ways and stored in different systems

When writing a dataset definition you don't need to explicitly reference any particular backend. But, as not every dataset is available in every backend, the table schema you use to write your dataset definition will determine which backends it can be run against.

Below are the backends currently supported in ehrQL, together with the list of table schemas each one supports.

TPP🔗

ehrql.backends.tpp.TPPBackend

TPP are the developers and operators of the SystmOne EHR platform. The ehrQL TPP backend provides access to primary care data from SystmOne, plus data linked from other sources.

Patients included in the TPP backend🔗

SystmOne is a primary care clinical information system used by roughly one third of GP practices in England, with records for approximately 44% of the English population.

Only patients with a full GMS (General Medical Services) registration are included.

We have registration history for:

  • all patients currently registered at a TPP practice
  • all patients registered at a TPP practice any time from 1 Jan 2009 onwards:
    • who have since de-registered
    • who have since died

A patient can be registered with zero, one, or more than one practices at a given time. For instance, students are often registered with a practice at home and a practice at university.

This backend implements the following table schemas:

EMIS🔗

ehrql.backends.emis.EMISBackend

Warning

Research access to the backend provided by EMIS is temporarily unavailable, pending funding arrangements between NHS England and EMIS. When funding has been secured, we will publish a timeline for gradually reopening access.

EMIS Health are the developers and operators of the EMIS Web EHR platform. The ehrQL EMIS backend provides access to primary care data from EMIS Web, plus data linked from other sources.

This backend implements the following table schemas: