These tools have been developed to interact with XNAT servers. Some were developed by the XNAT Team in the Neuroinformatics Research Group (NRG) at Washington University. Others were developed by XNAT users around the world.
Developed by NRG
These tools have been developed by (or with) the core XNAT Team.
The XNAT DICOM tools are written in java and utilize the open source dcm4che library. They run on any platform with Java 1.5 or later, including Windows, Solaris, Linux, and MacOS 10.4 or later.
XGet is a tool that allows the user to easily download image files from one or more experiments hosted on an XNAT instance. It can constraint the type of image file by project, quality, format (DICOM/NIFTI/etc) and more.
DICOM Browser (NRG)
DicomBrowser is an application for inspecting and modifying many DICOM files at a time. A single imaging session can produce hundreds of DICOM files; DicomBrowser allows users to view and edit a whole session—or even multiple sessions—at once. Users can save the original or modified files to disk, or send them across a network to a DICOM C-STORE Service Class Provider.
XnatDataClient, or XDC, is a command-line tool for making HTTP calls to an XNAT server. In many ways, it's similar to curl and can even be used to make requests of non-XNAT HTTP services. However, XDC adds a layer of XNAT "awareness" to its HTTP capabilities. For example, you may want to retrieve all of the scan files that compose a complete DICOM session. This may be only a few files, but is generally quite a few more. With curl, you would need to make a call to the server to get all of the files in the session, then make subsequent calls for each of the files. Using XDC, you can make a single call to retrieve the session data and then have XDC follow the URLs for all of the constituent scan files and automatically download them. The number of HTTP calls is still the same, but XDC automates the process for you.
The XNATRestClient is deprecated. You should use XnatDataClient instead for on-going and future development.
XNATRestClient is a Java command-line tool that provides an easy way to script calls to the XNAT REST API. In many ways, XNATRestClient is similar to curl, although the syntax and usage is somewhat different. This tool is provided for platforms where curl may not be installed by default.
XNAT Gateway (NRG)
Use XNAT Gateway to query XNAT for DICOM images from a DICOM viewing workstation. You can install the Gateway locally and connect to it as to any other DICOM server. DICOM requests are translated into XNAT requests, and the result is returned over DICOM networking protocol.
Gateway serves as Query/Retrieve SCP, that is, simple database queries (C-FIND) and image retrieve requests (C-MOVE) are supported.
XNAT Desktop (NRG)
XNAT Desktop (XND) is a desktop client tool developed to help inidivdual users manage their local imaging data using simple but powerful tagging system and upload both image files and metadata to XNAT archives. XND includes automatic tag generation ruleas and graphical interface for quick data labeling.
Learn more about XND or download an early release version.
XNAT web services client tools (NRG)
A number of command line tools have been developed to store and retrieve data from XNAT archives.
- ArcGet: retrieves image data.
- ArcRead: retrieves summary text documents describing imaging data.
- ArcSim: retrieves a list of imaging sessions with similar IDs.
- StoreXML: writes XML documents to the archive.
Typical usage of the tools looks something like this:
This command would retrieve all of the imaging data for two imaging sessions stored in the www.xnathost.org archive. For detailed usage for each command, type the name of the command followed by '-h'. The command line programs follow the same security policies as the website.
Default login information can be stored in a '.xnatPass' file placed in the user's home directory. The .xnatPass file essentially removes the need to supply the '-u', '-p', and '-host' arguments at the command line. A sample .xnatPass file that connects to the OASIS project XNAT host is included in the download package. The format for .xnatPass is as follows (where the plus sign indicates the default host):
Tools in Progress
ConnectomeDB will be a stripped-down XNAT implementation designed to hold and the informatics data gathered as part of the Human Connectome Project. Since it will exist to serve only one project, and will have a fixed set of data, ConnectomeDB will have a specialized UI that emphasizes search and cross-referencing of the multiple types of data, to allow for easy exploration and research.
Externally Developed Tools
These tools have been developed outside of the NRG but are recommended by the XNAT Team.
Pyxnat is a simple python library that relies on the REST API provided by the XNAT platform. XNAT is an extensible database for neuroimaging data. The main objective is to ease communications with an XNAT server to plug-in external tools or python scripts to process the data. It features:
- resources browsing capabilities
- read and write access to resources
- complex searches
- disk-caching of requested files and resources
3D Slicer is a multi-platform, free open source software (FOSS) for visualization and image computing. XNAT-hosted data can be viewed and saved in Slicer.
GWE (Grid Wizard Enterprise) is an open source, HPC distributed enterprise system, which leverages on clusters of computers, in order to provide a powerful grid computing platform for end users to easily and effectively parallelize the execution of an (in theory) unlimited number of inter-independent processes. XNAT-hosted data can be easily downloaded and processed in GWE.
Friends of XNAT
We are currently working to integrate XNAT with some of the most useful neuroimaging tools available, including Freesurfer and SumsDB/Caret. If there are tools you'd like to see added to the list please contact us
Client Tools presentation from the XNAT Workshop 2010
On This Page: