Bids-validator, physio and inheritance

Summary of what happened:

I have a dataset that includes physio (respiratory) data and eeg data. Per the inheritance principle I put all of the physio.json values that don’t change across subjects/sessions into a physio.json file that is a sibling to the subject directories, and put subject-/session-/task-specific *physio.json files that include the required StartTime parameter (which does vary by subject/session) into the subject/session directories. The validator complains that the top-level physio.json file is missing the required StartTime parameter.

Command used (and if a helper script was used, a link to the helper script or the command generated):

Version:

bids-validator 1.10

Environment (Docker, Singularity, custom installation):

I’m using the npm bids-validator package, but get the same results from https://bids-standard.github.io/bids-validator/ .

Data formatted according to a validatable standard? Please provide the output of the validator:

Relevant log outputs (up to 20 lines):

bids-validator eeg-physio
bids-validator@1.10.0
	1: [ERR] Invalid JSON file. The file is not formatted according the schema. (code: 55 - JSON_SCHEMA_VALIDATION_ERROR)
		./physio.json
			Evidence:  should have required property 'StartTime'

Screenshots / relevant information:

Hi, thanks for this. This seems like a bug where the JSON schema is being applied to root-level JSON files and not the compiled sidecar. Could you open an issue on the validator repository? You could copy and paste what you have in your post.

Done: inheritance principle fails on physio.json · Issue #1632 · bids-standard/bids-validator · GitHub .

1 Like