Processing With XNAT

Table of contents

  1. The XNAT Container Service
  2. The Event Service

Your objectives here:

  • Familiarise yourself with to processing via XNAT using the Container Service
  • Obtain a basic understanding of how to automate processing within XNAT using the Event Service

The XNAT Container Service

The XNAT Container Service is a way for us to run processing pipelines on data stored in XNAT without the need for downloading the data and re-uploading the results.

Pipelines and tools are packaged into Docker containers, and a command translation layer is used to map XNAT objects (for example, MRI scan volumes) to inputs that the container can accept. Processing is then done by the containers, and results can be returned to the XNAT.

For a more general introduction to the use of containers in reproducible research we refer you to this page of The Turing Way handbook.

By using XNAT and containers in this way, we can make complex pipelines available to XNAT users that can be run with a few clicks. Watch the video below to gain an overview:

The Event Service

The Container Service can be used in conjunction with XNAT’s Event Service to automate the running of processing based on the occurrence of data events. This is useful when you want to perform certain processing when new sessions are uploaded to your project - e.g. run the same analysis pipeline whenever new data arrives.

You can see a video description of this in the following video: