I recall that earlier versions of the BIDS specification prescribed that stimulus material could be added to the dataset in a
stimuli/ subdirectory directly under the bidsroot. That is also what I am seeing in for example https://github.com/bids-standard/bids-examples/tree/master/ds000117, without the stimulus files being mentioned in the
.bidsignore file. However, on https://bids-specification.readthedocs.io/en/stable/ I cannot find anything about this.
Am I overlooking something? Could someone enlighten me here?
Looking at the last PDF version and searching for
stimuli, I find:
7 Directory structure
Overall directories hierarchy is
where  depicts OPTIONAL content (the same nomenclature is used throughout the spec). Session level is
OPTIONAL, first we detail single session example. See below (section 9) for an example with multiple sessions.
and under “Task Events”:
||OPTIONAL. Represents the location of the stimulus file (image, video, sound etc.) presented at the given onset time. There are no restrictions on the file formats of the stimuli files, but they should be stored in the /stimuli folder (under the root folder of the dataset; with optional subfolders). The values under the stim_file column correspond to a path relative to “ /stimuli ”. For example “ images/cat03.jpg ” will be translated to “ /stimuli/images/cat03.jpg ”.
The first seems to have gone missing, but the latter still exists in Task events.
Ah yes, in the CHANGES file “1.0.1-rc1 Added ability to store stimuli files” and for
func in the Task events table There are no restrictions on the file formats of the stimuli files, but they should be stored in the /stimuli folder
In the v1.1.0.pdf version on zenodo it still states that the overall directories hierarchy is
I now also see it in https://github.com/bids-standard/bids-specification/blob/master/src/schema/associated_data.yaml which explains why the validator considers it to be ok.