99MRIHardware :
1010 selectors :
1111 - modality == "mri"
12+ - match(extension, "^\.nii(\.gz)?$")
1213 fields :
1314 Manufacturer :
1415 level : recommended
@@ -57,6 +58,7 @@ MRIChunkPosition:
5758MRISample :
5859 selectors :
5960 - modality == "mri"
61+ - match(extension, "^\.nii(\.gz)?$")
6062 fields :
6163 BodyPart :
6264 level : optional
@@ -69,12 +71,14 @@ MRIScannerHardwareASL:
6971 - datatype == "perf"
7072 - suffix == "asl"
7173 - intersects([suffix], ["asl", "m0scan"])
74+ - match(extension, "^\.nii(\.gz)?$")
7275 fields :
7376 MagneticFieldStrength : required
7477
7578MRISequenceSpecifics :
7679 selectors :
7780 - modality == "mri"
81+ - match(extension, "^\.nii(\.gz)?$")
7882 fields :
7983 PulseSequenceType : recommended
8084 ScanningSequence : recommended
@@ -105,13 +109,15 @@ PETMRISequenceSpecifics:
105109 selectors :
106110 - modality == "mri"
107111 - intersects(dataset.modalities, ["pet"])
112+ - match(extension, "^\.nii(\.gz)?$")
108113 fields :
109114 NonlinearGradientCorrection : required
110115
111116ASLMRISequenceSpecifics :
112117 selectors :
113118 - datatype == "perf"
114119 - suffix == "asl"
120+ - match(extension, "^\.nii(\.gz)?$")
115121 fields :
116122 MRAcquisitionType : required
117123
@@ -147,6 +153,7 @@ SpoilingGradient:
147153MRISpatialEncoding :
148154 selectors :
149155 - modality == "mri"
156+ - match(extension, "^\.nii(\.gz)?$")
150157 fields :
151158 NumberShots : recommended
152159 ParallelReductionFactorInPlane : recommended
@@ -164,6 +171,7 @@ PhaseEncodingDirectionRec:
164171 selectors :
165172 - modality == "mri"
166173 - suffix != "epi"
174+ - match(extension, "^\.nii(\.gz)?$")
167175 fields :
168176 PhaseEncodingDirection :
169177 level : recommended
@@ -201,27 +209,24 @@ PhaseEncodingDirectionReq:
201209MRITimingParameters :
202210 selectors :
203211 - modality == "mri"
212+ - match(extension, "^\.nii(\.gz)?$")
204213 fields :
205214 EchoTime :
206215 level : recommended
207216 level_addendum : |
208217 required if corresponding fieldmap data is present,
209218 or the data comes from a multi-echo sequence or Arterial Spin Labeling.
210- issue :
211- code : ECHO_TIME_NOT_DEFINED
212- message : |
213- You must define 'EchoTime' for this file. 'EchoTime' is the echo time (TE)
214- for the acquisition, specified in seconds. Corresponds to DICOM Tag
215- 0018, 0081 Echo Time (please note that the DICOM term is in milliseconds
216- not seconds). The data type number may apply to files from any MRI modality
217- concerned with a single value for this field, or to the files in a file
218- collection where the value of this field is iterated using the echo entity.
219- The data type array provides a value for each volume in a 4D dataset and
220- should only be used when the volume timing is critical for interpretation
221- of the data, such as in ASL or variable echo time fMRI sequences.
222219 InversionTime : recommended
223220 DwellTime : recommended
224221
222+ EchoTimeRequiredASL :
223+ selectors :
224+ - modality == "mri"
225+ - datatype == "perf"
226+ - match(extension, "^\.nii(\.gz)?$")
227+ fields :
228+ EchoTime : required
229+
225230SliceTimingMRI :
226231 selectors :
227232 - modality == "mri"
@@ -240,7 +245,6 @@ SliceTimingASL:
240245 - intersects([suffix], ["asl", "m0scan"])
241246 - sidecar.MRAcquisitionType == "2D"
242247 fields :
243- EchoTime : required
244248 SliceTiming :
245249 level : required
246250 issue :
@@ -260,16 +264,10 @@ SliceTimingASL:
260264 final entry in the `SliceTiming` list is the time of acquisition of slice 0.
261265 Without this parameter slice time correction will not be possible.
262266
263- # This is technically for sparse sequences only, but I don't know how to encode that.
264- # SliceTimingSparse:
265- # selectors:
266- # - modality == "mri"
267- # fields:
268- # SliceTiming: required
269-
270267MRIRFandContrast :
271268 selectors :
272269 - modality == "mri"
270+ - match(extension, "^\.nii(\.gz)?$")
273271 fields :
274272 NegativeContrast : optional
275273
@@ -307,13 +305,15 @@ MRIFlipAngleLookLockerTrue:
307305MRISliceAcceleration :
308306 selectors :
309307 - modality == "mri"
308+ - match(extension, "^\.nii(\.gz)?$")
310309 fields :
311310 MultibandAccelerationFactor : recommended
312311
313312MRIAnatomicalLandmarks :
314313 selectors :
315314 - datatype == "anat"
316315 - intersects(dataset.datatypes, ["meg"])
316+ - match(extension, "^\.nii(\.gz)?$")
317317 fields :
318318 AnatomicalLandmarkCoordinates__mri : recommended
319319
@@ -328,12 +328,14 @@ MRIEchoPlanarImagingAndB0FieldSource:
328328 selectors :
329329 - intersects(datatype, ['dwi', 'func', 'perf'])
330330 - intersects(dataset.datatypes, ['fmap'])
331+ - match(extension, "^\.nii(\.gz)?$")
331332 fields :
332333 B0FieldSource : recommended
333334
334335MRIInstitutionInformation :
335336 selectors :
336337 - modality == "mri"
338+ - match(extension, "^\.nii(\.gz)?$")
337339 fields :
338340 InstitutionName :
339341 level : recommended
0 commit comments