bids-specification icon indicating copy to clipboard operation
bids-specification copied to clipboard

Introducing chaining rule for derivatives

Open CPernet opened this issue 1 year ago • 8 comments

Your idea

As many are writing derivatives extensions, and I was working on that with @melanieganz and @mnoergaard, the idea came that we may need a chaining rule. For raw data, the location of entities is based on a priori rules. For derivatives, it would be based on how entities apply.

Example for this proposal

<pipeline_name>/
    tpl-<label>/
        [cohort-<label>/]
           [<datatype>/]
               tpl-<label>_<source_entities>[_cohort-<label>][_atlas-<label>][seg-<label>][_scale-<label>][_res-<label>][_den-<label>][_desc-<label>]_<suffix>.<extension>

In this work, [_res-

<pipeline_name>/
    tpl-<label>/
        [cohort-<label>/]
           [<datatype>/]
               tpl-<label>_][_res-<label>][_den-<label>]<source_entities>[_cohort-<label>][_atlas-<label>][_scale-<label>[seg-<label>][_desc-<label>]_<suffix>.<extension>

Again, this is not specific to this example; it works for any derivative one builds with operators seen as entities. We have, of course, the 255-long character limits, so we do not want mega-long names that are not human-friendly, but it makes sense to have a few entities and we think the order helps to understand what the file represents.

CPernet avatar Oct 09 '24 14:10 CPernet