@@ -12,6 +12,7 @@ PhaseSuffixDeprecated:
1212 level : warning
1313 selectors :
1414 - datatype == "func"
15+ - match(extension, "^\.nii(\.gz)?$")
1516 checks :
1617 - suffix != "phase"
1718
@@ -67,6 +68,7 @@ SliceTimingGreaterThanRepetitionTime:
6768 level : error
6869 selectors :
6970 - suffix == "bold"
71+ - match(extension, "^\.nii(\.gz)?$")
7072 - type(sidecar.SliceTiming) != "null"
7173 - type(sidecar.RepetitionTime) != "null"
7274 checks :
@@ -88,24 +90,24 @@ VolumeTimingRepetitionTimeMutex:
8890 or 'VolumeTiming' when variable times are used.
8991 level : error
9092 selectors :
91- - type(nifti_header) != "null"
9293 - intersects([suffix], ["asl", "bold"])
94+ - match(extension, "^\.nii(\.gz)?$")
9395 - type(sidecar.VolumeTiming) != "null"
9496 checks :
9597 - type(sidecar.RepetitionTime) == "null"
9698
97- RepetitionTimeAcquisitionDurationMutex :
99+ RepetitionTimeFrameAcquisitionDurationMutex :
98100 issue :
99101 code : REPETITION_TIME_AND_ACQUISITION_DURATION_MUTUALLY_EXCLUSIVE
100102 message : |
101- The fields 'RepetitionTime' and 'AcquisitionDuration ' for this file are mutually exclusive.
103+ The fields 'RepetitionTime' and 'FrameAcquisitionDuration ' for this file are mutually exclusive.
102104 To specify acquisition duration, use 'SliceTiming' or 'DelayTime'
103- (RepetitionTime - AcquisitionDuration ).
105+ (RepetitionTime - FrameAcquisitionDuration ).
104106 level : error
105107 selectors :
106- - type(nifti_header) != "null"
107108 - intersects([suffix], ["asl", "bold"])
108- - type(sidecar.AcquisitionDuration) != "null"
109+ - match(extension, "^\.nii(\.gz)?$")
110+ - type(sidecar.FrameAcquisitionDuration) != "null"
109111 checks :
110112 - type(sidecar.RepetitionTime) == "null"
111113
@@ -114,24 +116,44 @@ VolumeTimingDelayTimeMutex:
114116 code : VOLUME_TIMING_AND_DELAY_TIME_MUTUALLY_EXCLUSIVE
115117 message : |
116118 The fields 'VolumeTiming' and 'DelayTime' for this file are mutually exclusive.
117- To specify acquisition duration, use 'AcquisitionDuration ' or 'SliceTiming'.
119+ To specify acquisition duration, use 'FrameAcquisitionDuration ' or 'SliceTiming'.
118120 level : error
119121 selectors :
120- - type(nifti_header) != "null"
121122 - intersects([suffix], ["asl", "bold"])
123+ - match(extension, "^\.nii(\.gz)?$")
122124 - type(sidecar.VolumeTiming) != "null"
125+ - type(sidecar.RepetitionTime) == "null"
123126 checks :
124127 - type(sidecar.DelayTime) == "null"
125128
126- VolumeTimingMissingAcquisitionDuration :
129+ VolumeTimingMissingFrameAcquisitionDuration :
127130 issue :
128131 code : VOLUME_TIMING_MISSING_ACQUISITION_DURATION
129132 message : |
130- The field 'VolumeTiming' requires 'AcquisitionDuration ' or 'SliceTiming' to be defined.
133+ The field 'VolumeTiming' requires 'FrameAcquisitionDuration ' or 'SliceTiming' to be defined.
131134 level : error
132135 selectors :
133- - type(nifti_header) != "null"
134136 - intersects([suffix], ["asl", "bold"])
137+ - match(extension, "^\.nii(\.gz)?$")
138+ - type(sidecar.VolumeTiming) != "null"
139+ - type(sidecar.RepetitionTime) == "null"
140+ checks :
141+ - |
142+ "SliceTiming" in sidecar ||
143+ "FrameAcquisitionDuration" in sidecar ||
144+ "AcquisitionDuration" in sidecar
145+
146+ DeprecatedAcquisitionDuration :
147+ issue :
148+ code : DEPRECATED_ACQUISITION_DURATION
149+ message : |
150+ The 'AcquisitionDuration' field has been replaced with 'FrameAcquisitionDuration'
151+ to indicate the duration of volume acquisition in sparse acquisition sequences.
152+ level : warning
153+ selectors :
154+ - intersects([suffix], ["asl", "bold"])
155+ - match(extension, "^\.nii(\.gz)?$")
135156 - type(sidecar.VolumeTiming) != "null"
157+ - type(sidecar.FrameAcquisitionDuration) == "null"
136158 checks :
137- - ' "SliceTiming" in sidecar || " AcquisitionDuration" in sidecar'
159+ - ' !(" AcquisitionDuration" in sidecar) '
0 commit comments