Closed geowk closed 4 years ago
Good question (and by that I mean I have no clear idea how to answer it). :smile:
Tried to see into the archives of issues of the validator if there is anything about this.
The is issue mentions this:
"The validator should validate the latest released version of the standard."
So I don't know if the validator checks that the version mentioned in the dataset description matches the requirement of that specific version.
But this highlights the fact that the validator could do 2 things that could help many users:
So I don't know if the validator checks that the version mentioned in the dataset description matches the requirement of that specific version
It does not - and I am not sure whether that's a good or bad thing. Ideally of course, the validator would check BIDS datasets according to the BIDSVersion field --> and a dataset formatted under BIDS 1.2 would pass the validator under 1.2 requirements, but potentially fail under 1.4 requirements.
But such a logic is not built into the validator. That piece of software can only validate one "BIDS version" (the newest stable release, 1.4 currently).
have an output message mentioning the BIDS version it is using
that sounds good to me in principle, yet practically the validator does not have full coverage of the BIDS specification (yet) and additionally, it is lagging behind the specification in terms of development. Given these two points, it would currently be a lie of the validator to claim to be validating according to version 1.4.
To JavaScript knowledgeable BIDS contributors: If you read this, please head over to the "low hanging fruits" project --> we would very much welcome some developers over at bids-validator!
How does one determine what BIDSVersion is used?
IMHO it's up to the conversion / curating software to tell you according to which standard version the processing is happening. For example in mne-bids we print the BIDSVersion that we use as an output of our pipeline automatically.
And if you are manually curating your BIDS dataset, you would put into this field the version of the docs that you used to prepare your dataset. Ideally you would always use the newest stable release (1.4 currently)
Thank you both for your feedback.
It appears that people using various pipelines to format the data into BIDS might run into this issue.
For example, take the tutorials listed in this site:
https://github.com/bids-standard/bids-starter-kit/wiki/Tutorials
Both of these walk-through examples were very straightforward and helpful, yet they were created in 2018 and reference BIDSVersions 1.0.2. and 1.1.0, respectively.
If the current stable release is 1.4, that means thing would have changed.
Should BIDS users only use the following website with the pdf link as the template:
https://bids.neuroimaging.io/specification.html https://bids-specification.readthedocs.io/en/stable/
How often are newer BIDSVersions released, and what is the most efficient way for users to know when new versions are released?
Regarding the bids-validator, it is stated the latest release of bids-validator always look for the datasets adhering to the latest BIDSVersion format. As long as we keep bids-validator up to date, we are assured that it will determine if your dataset meets the latest BIDSVersion criteria?
Thanks again.
g.
It appears that people using various pipelines to format the data into BIDS might run into this issue.
yes, I can imagine that.
How often are newer BIDSVersions released,
we don't have a stable period or releases, but looking at the releases page can perhaps give you a feeling for it. We are following semver and increment a minor
version whenever we add a new BIDS extension proposal, and we increment a patch
version whenever we feel like some threshold is reached of new clarifications or inclusions and we don't want to wait until the next minor
increment.
The major
increment is reserved for breaking changes that'll come about with BIDS 2.0 --> no timeline exists for that as of yet.
hat is the most efficient way for users to know when new versions are released?
subscribing to our channels
As long as we keep bids-validator up to date, we are assured that it will determine if your dataset meets the latest BIDSVersion criteria?
yes, keeping your bids-validator up to date is a good idea. If it passes at timepoint 1, it's highly likely that it will also pass at timepoint 2 in the future, because in BIDS we are keeping breaking changes to an absolute minimum until BIDS 2.0 comes around.
That means the only way your BIDS formatted dataset that passes the validator now can fail in the future is for these reasons:
FWIW: Re validating against a specific bids version, eventually #475 would open possibility to validator(s) to validate at least parts of the specification against the specified BIDS version.
thanks sapplehhoff for the clarification
g
Hello,
We are starting to convert are datasets to BIDS format.
In the dataset_description.json file, the BIDSVersion is listed.
"BIDSVersion | REQUIRED. The version of the BIDS standard that was used."
How does one determine what BIDSVersion is used? Is it based on a specific conversion pipeline (e.g, dcm2bids ,etc.). We convert our data from dicom format to nifiti using dcm2niix, but don't see any BIDSversion listed in the .json files. We've arranged the data in BIDS format based on the tutorial (http://reproducibility.stanford.edu/bids-tutorial-series-part-1a/#man3) using a bash script and then use the bids_validator to confirm the dataset.
Thanks.
g.