Skip to content

Conversation

Lestropie
Copy link
Contributor

Related to bids-standard/bids-specification#2155.

In looking at the specification content on the Inheritance Principle, across many versions (retrospective and speculative), it has become clear that showing exemplar filesystem structures / JSON metadata contents has been totally unfit for purpose.
Moreover, even worse, there were many circumstances that were explained in text as hypothetical modifications to the presented filesystem structures, which just opens to floodgates for confusion.

I have therefore gone to the effort of explicitly instantiating each of these examples as exemplar datasets; both what weas shown in the specification and all hypothetical manipulations thereof.
Other datasets I have specifically crafted in order to highlight what the differences in validation should be depending on which particular IP ruleset is instantiated.


One crucial detail here is that many of these examples are defined as they are specifically because they should fail validation. Am I correct in inferring that all datasets in the bids-examples repository should pass validation (with the potential exclusion of content not yet included in a tagged specification), and anything that fails validation should instead be going into bids-validator/tests/data?

I am also aware that the addition of these data will result in failure of run_tests.sh.

Maintainers will need to advise on whether some of these datasets need to be moved, whether some of these datasets should be excluded from validator testing, or whether merging the PR needs to be deferred until requisite rectifications to the validator are made.

Lestropie added 12 commits June 23, 2025 15:49
Datasets relate to restrictions on the directories in which it is permissible to place metadata files depending on their applicability.
These datasets exemplify what happens when there are entity-linked file collections intersecting across multiple entities.
Utilise tailored metadata key-values to highlight not only which metadata files are inherited from for any given data file, but also the value that should be inherited when multiple applicable key-value metadata files contain different values for the same key.
Also add dataset "ipi1195v2", which has the filesystem structure of the example shown in Issue #1195, but includes key-value metadata that highlights the ambiguity that arises if trying to permit metadata overloading when there is full flexibility in applicable metadata files at a single filesystem hierarchy level.
Save expected inherited metadata for more datasets to facilitate testing of pybids.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant