OpenSAFELY documentation
Why Airlock?
Initializing search
GitHub
OpenSAFELY documentation
GitHub
Introduction
About OpenSAFELY
About OpenSAFELY
Our philosophy
Security
Safe data access: The Five Safes
Access policies
Technical architecture
Type One Opt Outs
Contributing
Getting started
Getting started
Tutorial
Tutorial
Introduction
Create a GitHub account
Create a GitHub repository
Create a GitHub codespace
Generate a first dataset
Update the dataset definition
Run the project pipeline
Add a scripted action to the pipeline
Publish the changes to GitHub
Check the automated tests pass
Delete the GitHub codespace
See the next steps
How-to guides
How-to guides
How to add GitHub Codespaces to your project
How to update GitHub Codespaces in your project
How to use GitHub Codespaces in your project
How to use released outputs in GitHub Codespaces
How to troubleshoot common issues in GitHub Codespaces
How to use Git effectively
How to use the OpenSAFELY command-line interface
How to create a code repository for your project
Explanation
Explanation
Options for running OpenSAFELY
Understanding GitHub Codespaces
Understanding the software used to run OpenSAFELY
Using OpenSAFELY
Using OpenSAFELY
Analysis workflow
Federated analytics
GitHub repositories
Codelists
Codelists
Introduction to codelists
Building a codelist
Adding codelists to a project
Keeping codelists up to date
Actions
Actions
Overview
The project pipeline
Scripted actions
Reusable actions
Jobs site
Level 4 server
Releasing research outputs
Releasing research outputs
Applying statistical disclosure control
Requesting release of research outputs
Review process for release requests
Viewing released outputs
Releasing with Airlock
Releasing with Airlock
How-to guides
How-to guides
How to access and log in Airlock
For researchers
For researchers
View output files in a workspace
Create and submit a release request
Respond to a returned request
Update a file on a request
Withdraw a file from a request
Withdraw a request
For output checkers
For output checkers
Review a request
Download a file
Reject a request
Release files
Explanation
Explanation
Why Airlock?
Workflow and permissions
Notifications
Reference
Reference
Terms and definitions
Alternative ways to view files
Viewing underlying source code
Request state diagram
Reports
Reports
Overview
Create a draft
Review process
Publishing a report
Managing your OpenSAFELY project
Managing your OpenSAFELY project
Telling us about changes to your project
Project completion
Adding your pre-print/paper to OpenSAFELY.org
Information for system integrators
Legacy
Legacy
Study definitions
Study definitions
Overview
Working with dates
Working with codelists
Dummy data and expectations
Variable reference
Measures
Create inclusion/exclusion flowcharts
Programming tricks
OpenSAFELY best practice
OpenSAFELY best practice
Developing a protocol
Using Git effectively
Code reviews
Case-control studies
Writing performant code
ehrQL
ehrQL
Tutorial
Tutorial
Setting up
Working with tables
Writing a dataset definition
Generating a dummy dataset
Committing the dataset definition
Writing a more complex dataset definition
Pushing the commits to GitHub
Tidying up
How-to guides
How-to guides
Using ehrQL to answer specific questions
How to include and exclude patients from your study population
Resolving ehrQL errors
How to use dummy data in an ehrQL dataset definition
How to use dummy data in an ehrQL measures definition
How to assign multiple columns to a dataset programmatically
How to work with codelists
How to test your dataset definition
Reference
Reference
Language reference
Language features
Backends
Table schemas
Command line interface
Upgrading ehrQL from v0 to v1
Explanation
Explanation
ehrQL backend tables
ehrQL output formats
Using ehrQL in OpenSAFELY projects
Running ehrQL
Using the measures framework
Selecting populations for study
Data sources
Data sources
Overview
SystmOne primary care
EMIS primary care
Covid-19 test results
Covid-19 therapeutics
Emergency attendances
High Cost Drugs
Hospital admissions
In-hospital deaths (covid-19 only)
Intensive care admissions (covid-19 only)
International Severe Acute Respiratory and emerging Infection Consortium
Registered deaths
UK Renal Registry
Support
Support
How to get help
OpenSAFELY co-piloting service
Requesting new libraries
Plan S and OpenSAFELY
Updating the documentation
Bennett Institute Open Manifesto
Platform News
Why Airlock?