Description
openedon Oct 17, 2024
While conducting our multi-modal MRI study, also a physiological baseline (cardiac and respiratory) was acquired parallel to the anatomical measurements. According to the BIDS specifications on physiological recordings (https://bids-specification.readthedocs.io/en/latest/modality-specific-files/physiological-recordings.html), the physio data files (.tsv.gz and .json) may be stored in the subject's anatomical recordings sub-directory. We have T1w and PDw anatomical recordings and corresponding physio data only for the T1w recording. The subject directories currently look as follows:
...
./physio.json
./sub-01/
./sub-01/anat/
./sub-01/anat/sub-01_PDw.nii.gz
./sub-01/anat/sub-01_T1w.nii.gz
./sub-01/anat/sub-01_T1w.json
./sub-01/anat/sub-01_PDw.json
./sub-01/anat/sub-01_physio.tsv.gz
...
The specification's naming convention for physio data within modality sub-directories is:
<matches>[_recording-<label>]_physio.tsv.gz
<matches>[_recording-<label>]_physio.json
Therefore, in the example above, the part <matches>
is sub-01, [_recording-<label>]
is empty (we only have one physio recording), and the modality suffix is _physio
. Hence, we have sub-01_physio.tsv.gz
as the filename. Now, we are facing two problems.
- With this naming scheme we cannot relate the physio data to the T1w recording from the filename. Is there an alternative way to capture this relationship?
- The bids-validator (bids-validator@1.14.14 and also 1.14.15-dev) complains with an error about this naming scheme.
1: [ERR] Files with such naming scheme are not part of BIDS specification. ... (code: 1 - NOT_INCLUDED)
./sub-01/anat/sub-01_physio.tsv.gz
Evidence: sub-01_physio.tsv.gz
I had a look at the source code bids-validator/bids_validator/rules/file_level_rules.json
. For EEG, *_physio.tsv.gz
seems to be covered:
"@@@_cont_ext_@@@": [
"_physio\\.tsv\\.gz",
"_stim\\.tsv\\.gz",
"_physio\\.json",
"_stim\\.json"
]
However, there is no such block for "anat_nonparametric" (where we have T1w and PDw suffixes) in this rules file. Is this the issue for why the bids-validator complains? I'm happy to provide a PR, if this is the correct place to fix it.