XNAT 1.8 introduces the XNAT Event Service, which offers powerful tools for automating tasks based on very specific data actions. See Using the XNAT Event Service
In November 2019, the XNAT team unveiled its first demonstration of machine learning support in XNAT, in collaboration with NVIDIA. Later in 2020, the first XNAT ML beta was released. Now, with XNAT 1.8 and the XNAT OHIF Viewer 3.0, support for machine learning and AI-assisted annotations has been strengthened.
See: XNAT ML & XNAT OHIF Viewer Plugin
Since the introduction of XNAT 1.7, the XNAT installation process uses a Gradle plugin to generate code from data-type schema files. The XNAT application is delivered as a .war file, which can be dropped right into your Tomcat 7 server. There is no source code or folder to worry about. This makes upgrading to newer versions of XNAT much easier than in the past.
See: XNAT Installation Guide & How to Upgrade XNAT
There are now multiple ways to get a prepackaged XNAT running in a virtual environment. The latest, using docker-compose, allows you to bring up a full XNAT ecosystem with pre-installed plugins and other systems, such as a development instance of an ORTHANC PACS server.
See: Running XNAT in a Dockerized Container with Configurable Dependencies
See: Running XNAT in a Vagrant Virtual Machine
XNAT has historically relied on the Autorun pipeline to generate snapshots of scans at the conclusion of the session-builder process. This has meant that the pipeline engine was required to be installed in order to complete the image import process. In XNAT 1.8, snapshots are now generated natively, removing this dependency. Users can also generate their own montage views on the fly.
See: Generating Scan Snapshots and Montages in XNAT
Users may wish to keep the Autorun pipeline enabled to receive emails upon successful image imports. See: XNAT Pipeline API
XNAT supports two separate image viewing plugins, and XNAT administrators can choose to install one or both depending on their needs.
XNAT 1.8 offers support for enabling image scan data to be searchable, which also allows users to launch batches of process on scans using the Batch Launch Plugin and Container Service. XNAT 1.8 also offers improved support for project-level experiments, such as a Machine Learning training run.
Key XNAT data workflows such as the Compressed Image Uploader, the Review and Archive feature in the Prearchive, and Container launches are now handled asynchronously, allowing the user to navigate away from a submitted form and continue working. The status of their workflow is tracked in a new "Activity" tab that is pinned to the bottom of the user's browser window.
XNAT Site Administrators can customize which DICOM tags are used to route incoming image sessions without requiring a plugin.
XNAT 1.8 uses version 6.3 of the DicomEdit Language to create anonymization scripts. This version is backwards compatible with previous DicomEdit 6 versions and adds some new capabilities. New features include the ability to mask regions of pixel data that contain burned-in PHI and a shift date-time by increment function which obscures dateTimes for privacy but retains the intervals between dates. See: DicomEdit 6.3 Language Reference for complete details.
XNAT 1.8 is built on Java 8 and PostgreSQL 9.6 (though PostgreSQL 10 is recommended). Additionally, the XNAT Pipeline Engine is no longer a requirement for image archiving in XNAT (though it still provides value).
See: Prerequisites for Installing XNAT
The XNAT plugin architecture is unchanged from XNAT 1.7 to 1.8, but plugins themselves often have version-specific dependencies. This is particularly true of plugins that offer new functional features. Notable plugins receiving updates simultaneously with XNAT:
XNAT continues to run two sets of API in parallel. The legacy API endpoints, accessible at /REST
or /data
, are still supported but are only documented through this wiki. Modern endpoints, accessible at /xapi
, are "self-documenting" using the Swagger UI. These are accessible in every installed XNAT (1.7 and later) at https://{xnat-server}/xapi/swagger-ui.html
The underlying architecture for 1.8 is largely the same as 1.7.6: