diff --git a/src/schema/rules/checks/dwi.yaml b/src/schema/rules/checks/dwi.yaml index 4183c51e74..d0b71d9a2a 100644 --- a/src/schema/rules/checks/dwi.yaml +++ b/src/schema/rules/checks/dwi.yaml @@ -41,7 +41,7 @@ DWIBvecRows: - suffix == "dwi" - '"bvec" in associations' checks: - - associations.bvec.n_rows == 1 + - associations.bvec.n_rows == 3 # 32 DWIMissingBvec: diff --git a/src/schema/rules/checks/nirs.yaml b/src/schema/rules/checks/nirs.yaml index c6b8f74548..3ec07ce1d2 100644 --- a/src/schema/rules/checks/nirs.yaml +++ b/src/schema/rules/checks/nirs.yaml @@ -23,24 +23,28 @@ NIRSChannelCount: ACCELChannelCountReq: selectors: - suffix == "nirs" + - count(associations.channels.type, "ACCEL") > 0 checks: - sidecar.ACCELChannelCount == count(associations.channels.type, "ACCEL") GYROChannelCountReq: selectors: - suffix == "nirs" + - count(associations.channels.type, "GYRO") > 0 checks: - sidecar.GYROChannelCount == count(associations.channels.type, "GYRO") MAGNChannelCountReq: selectors: - suffix == "nirs" + - count(associations.channels.type, "MAGN") > 0 checks: - sidecar.MAGNChannelCount == count(associations.channels.type, "MAGN") ShortChannelCountReq: selectors: - suffix == "nirs" + - '"ShortChannelCount" in sidecar' checks: - sidecar.ShortChannelCount == count(associations.channels.short_channel, "true") @@ -53,11 +57,15 @@ Component: checks: - columns.component != null -RequiredChannels: +RecommendedChannels: + issue: + code: NIRS_RECOMMENDED_CHANNELS + message: | + NIRS files SHOULD have an associated channels.tsv file. + level: warning selectors: - - datatype == "nirs" - - suffix == "optodes" - - extension == ".tsv" + - suffix == "nirs" + - extension == ".snirf" checks: - associations.channels != null diff --git a/src/schema/rules/sidecars/nirs.yaml b/src/schema/rules/sidecars/nirs.yaml index 4870887c23..de84a85536 100644 --- a/src/schema/rules/sidecars/nirs.yaml +++ b/src/schema/rules/sidecars/nirs.yaml @@ -149,7 +149,7 @@ NirsRequired: # Following counts required conditions enforced in checks ACCELChannelCount: level: optional - level_addendum: required if any channel type is ACC + level_addendum: required if any channel type is ACCEL GYROChannelCount: level: optional level_addendum: required if any channel type is GYRO