Skip to main content
Skip table of contents

XNAT Workshop 2012 - Pipeline Session


At the end of this session, attendees should be able to:

  • Add pipeline to a XNAT site
  • Setup an available pipeline for a project
  • Guide XNAT users on launching a pipeline
  • Create a new pipeline





  • Working knowledge of XML and XPATH
  • If you have not deployed a XNAT instance, you should have attended talks on Day 1 (Project Intake, Project Configuration) and Day 2 (Data upload and entry)
  • Working knowledge of linux commands.
  • In a bash shell to redirect stdout of a command to a file, we use redirection character >
  • In a XML document, > is a reserved character. To escape, we use &gt; for > and &lt; for <
  • In a XML document, & is a reserved character. To escape, we use &amp;

Tasks during the talk:

Step 1: Adding a pipeline to a site
      • We would add the pipeline /opt/xnat/pipeline_1_6/catalog/mricron/DicomToNifti.xml to the site
      • Login to XNAT as Admin.
      • Navigate to Administer -> Pipelines
      • Click on Add Pipeline to Repository
      • Input
        • Enter Path to Pipeline descriptor xml:   /opt/xnat/pipeline_1_6/catalog/mricron/DicomToNifti.xml
        • Enter Name of the custom webpage to launch this pipeline: LEAVE THIS BLANK
        • Click on Add
        • You will get a message "... was added successfully
        • If you did everything correct, you will see DicomToNifti listed in the pipeline repository.

Step 2: Setting up the pipeline for the project BOGUS_OUA

              Navigate to BOGUS_OUA project as project owner

    • Click on Pipelines tab.
    • Click on Add More Pipelines
    • Click on Add (for DicomToNifti pipeline)
    • Select Is this pipeline to be launched automatically while archiving?
    • Set the value of create_nii to N
    • Click on Submit

Step 3: Setup the datatype

    • As Admin, click on Administer -> Data types
    • Select xnat:mrSessionData
    • Under Available Report Actions, enter
      • Name:  PipelineScreen_launch_pipeline,
      • Display Name: Build,
      • Popup: always,
      • Secure Access: edit
      • (leave other columns empty)

Step 4: Launching the pipeline (via Action -> Build)

    • Navigate to project BOGUS_OUA

    • Select an MRSession
    • Click on Action -> Build
    • Select DicomToNifti
    • Click on Submit

Step 5: Launching the pipeline automatically

    • Upload a MR Session
    • Archive the session

Step 6: Provenance information
    • Navigate to /opt/xnat/data/build/BOGUS_OUA/DATESTAMPED_FOLDER/SESSION_ID_HERE
Step 7:Create a new pipeline - DicomDumpToText = HELLO PIPELINE WORLD!
Problem Statement:

Write a pipeline which will create a text file containing the dicom header dump. 


  • The input scan files are DICOMs
  • The file names are *.dcm
  • The generated text file will be a resource at the SCAN level

Executable: You could use any. You could use dcmdump or dcm_dump_file.  If you want to use  dcm_dump_file, it  is at /opt/xnat/workshop2012/d3s1-pipeline/pipeline/DicomDumpToText/resource


Step a) [Skip this if you are using dcmdump] Copy dcm_dump_file to /bin: sudo cp /opt/xnat/workshop2012/d3s1-pipeline/pipeline/DicomDumpToText/resource/dcm_dump_file /bin

Step b) [Skip this if you are using dcmdump] sudo chmod +x /bin/dcm_dump_file

Step c) Create a resource descriptor for dcm_dump_file/dcmdump


    • dcm_dump_file *.dcm > scanID.txt OR dcmdump *.dcm > scanID.txt

                     <pip:argument id="redirect_stdout" prefix="">


                       <pip:description>Redirect Std Out</pip:description>


    • Use /opt/xnat/pipeline_1_6/catalog/mricron/resource/dcm2nii.xml as a template
    • REST URI: PUT to


Step d) Create a pipeline XML. Use  /opt/xnat/pipeline_1_6/catalog/mricron/DicomToNifti.xml as a template                    

Step e) cp -r /opt/xnat/workshop2012/d3s1-pipeline/pipeline/DicomDumpToText /opt/xnat/pipeline_1_6/templates/misc/catalog

Step f) cd /opt/xnat/pipeline_1_6; http://localhost:8080/xnat

Step g) Add pipeline to site

Step h) Add pipeline to project

Step i) Launch the pipeline

Solution: /opt/xnat/workshop2012/d3s1-pipeline/pipeline/DicomDumpToText


  1. REST URI to look up the archive specification for a project:
  2. dcm2nii -
  3. Location of builddir - /opt/xnat/data/build
  4. Script to overload to interact with a Grid - /opt/xnat/pipeline_1_6/bin/schedule

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.