Formalize "life-cycle"/movement and placement of metadata #85
Labels
consistency
Aspect requiring special treatment/logic outside of generic common principles
metadata
Changes to metadata fields/files.
A brief discussion came up on this topic in the recent BIDS 2.0 WG meeting.
ATM we have two major principled formats and locations for metadata:
.json
file (e.g. at higher level in hierarchy) already can provide metadata for many data files, groupping on the entities or suffix used in the filename (e.g.task-rest_bold.json
){entity_plural}.tsv
(e.g.participants.tsv
,sessions.tsv
, etc) - metadata which is typically not placed into individual sidecar files and groups metadata based on a specific single entity per{entity_id}
value (so similar to aforementioned{entity}-{value}*.json
where it is not groupped)scans.tsv
- summarization of metadata about individual data files at the higher level in hierarchy (TODO: link issues on need to rename, since no longer a good name which initially MRI specific){nonentity_plural}.tsv
(e.g.channels.tsv
, etc) -- metadata on some groupping level present within data files, and thus without (yet) an explicit{entity}
definedThere is of cause also notion of an
entity
itself which some times (e.g.sub
,ses
etc) contains the actual metadata "value" which could also be present in a.tsv
or.json
file(s). But for those we are in agreement that "use of the entity values for metadata storage is discouraged and they are used more for indexing and identification" (TODO: replace with quote and ref)In particular, both "sidecar
.json
" and{entity_plural}.tsv
(andscans.tsv
) are the places for metadata in groupped or not "fashion"..json
and.tsv
formalizations have some similaritiesbut also different "features", (TODO: make into a table?) e.g.
.tsv
have formalization to describe their columns and validator complains whenever undescribed column is included.json
files have nothing like that!CamelCase
ing for fields in.json
butsnake_case
for columns in.tsv
Ideally, for consistency, and also various needs (e.g. in BEP036) where metadata clearly could be defined in two forms ("summarized" in .tsv, hence also see "inheritance->summarization" issue ) and thus for overall "standard forming common principles (#66) it would be great if
snake_case
, with some metadata field describing all or non-standard fields etc)blah
in .json would be the same meanin/type/etc as columnblah
in .tsv.x-
prefix for all non-standard not only sidecar fields but columns as well)and provide recommendations on where/when to place metadata
The text was updated successfully, but these errors were encountered: