Limitations of internal BIDS dataset assembly in XNAT (1.8.9 / 1.9.x)

18 views
Skip to first unread message

Reda Fritet

unread,
Dec 23, 2025, 9:32:41 AM (9 days ago) 12/23/25
to xnat_discussion
Hello XNAT community,

I am working with XNAT (tested on 1.8.9 and considering 1.9.3) and I would like to clarify the current limitations regarding BIDS dataset generation inside XNAT.

Here is my current pipeline and observations:

1) I successfully use the container:
   - xnat/dcm2bids-session

This works correctly and produces:
- NIFTI files
- BIDS-style JSON sidecars
at the scan/session level (stored under scan resources in XNAT).

2) I also configured a valid bidsmap.json at the project level via the REST API, and the mapping is applied correctly
(e.g. resting-state scans mapped to task-rest_bold).

3) After this step, I have valid scan-level BIDS outputs inside XNAT
(NIFTI + JSON), which is expected and works well.

However, my goal is to generate a FULL BIDS DATASET inside XNAT, meaning:
- a proper directory hierarchy:
  sub-*/ses-*/anat|func|dwi
- stored under a session or project-level BIDS resource
- directly usable by BIDS Apps (MRIQC, fMRIPrep, etc.)

I tried using:
- xnat/xnat2bids-setup

I was able to configure and run it through Container Service, but:
- it does not assemble a complete BIDS dataset
- it either exits silently or fails without producing a structured BIDS directory
- it seems to be a setup/initialization container rather than a dataset assembler

From my experiments, it appears that:
- dcm2bids-session handles conversion and scan-level BIDS annotation
- but XNAT does not provide a native container/command to assemble a full BIDS dataset internally

My questions are therefore:

1) Is there currently (XNAT 1.8.x / 1.9.x) an officially supported way to generate a full BIDS dataset *entirely within XNAT*?
2) Is xnat2bids-setup intended to be used directly for dataset assembly, or only as a preparation step?
3) Is the recommended approach still to export data and run xnat2bids or other BIDS assembly tools externally?

I want to confirm whether this is a known and expected limitation of XNAT, or if I am missing a specific container or workflow.

Thank you very much for your guidance.
Capture d'écran 2025-12-23 111906.png

Timothy Olsen

unread,
Dec 23, 2025, 9:42:32 AM (9 days ago) 12/23/25
to xnat_di...@googlegroups.com
We've been working on a plugin that will build the FULL BIDS directory under a project resource (symlinked to the BIDS directories at the subject).  We have a prototype and should have something for you to play with in early Jan.  It works really well and is very exciting.

I'm not the biggest fan of using Project level resources for this.  If you make a project 'protected' then its project level resources are public to everyone.  The project resources were originally used for project docs.  This method is fine on Private projects, but could be problematic if projects are made protected. And that isn't always intuitive.

We'll be looking at other options.  It may be the right use case for a new extension of the 'genericData' data type that is a 'project asset'.  That way it maintains the security options of an experiment.

Tim

Timothy R Olsen 

Founder, President




--
You received this message because you are subscribed to the Google Groups "xnat_discussion" group.
To unsubscribe from this group and stop receiving emails from it, send an email to xnat_discussi...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/xnat_discussion/c4b3f783-663f-440f-9206-38d11417caf6n%40googlegroups.com.
Reply all
Reply to author
Forward
Message has been deleted
0 new messages