rly / ndx-events

NWB extension to store event and TTL pulse data
BSD 3-Clause "New" or "Revised" License
4 stars 7 forks source link

(Optional?) support of HED tags in events descriptors? #8

Open yarikoptic opened 1 year ago

yarikoptic commented 1 year ago

See information on how supported by BIDS: https://bids-specification.readthedocs.io/en/stable/appendices/hed.html and how schemas are supported in https://bids-specification.readthedocs.io/en/stable/appendices/hed.html#using-hed-library-schemas .

yarikoptic commented 1 year ago

currently being implemented to be supported as a part of the https://github.com/rly/ndx-events/pull/9 , e.g. https://github.com/rly/ndx-events/pull/9/files#diff-f4a25f0ab72ddb9f88dcf8894186985ff7569d752a6060702aeb8655c768888fR74

rly commented 1 year ago

After discussion with HED folks, we are thinking of adding a new neurodata type called HedTags that extends VectorData -- i.e., it is a specialized column of a DynamicTable. Has string attribute with the HED version.

VisLab commented 1 year ago

The HedTags would be a list of HED strings containing the tags corresponding to the other entries.

The HED version just appears once in the dataset. In Bids this is something like "HEDVersion": ["8.2.0", "tst:score_1.0.0"] and appears in the dataset_description.json at the top level. This says that tags in the annotations in this dataset come from HED standard vocabulary version 8.2.0 and from HED library vocabulary SCORE version 1.0.0. The tags from SCORE are prefixed with the user chosen tst: prefix to distinguish them from the other vocabularies

rly commented 1 year ago

Thanks for the clarification @VisLab ! cc @oruebel

oruebel commented 1 year ago

The HedTags would be a list of HED strings containing the tags corresponding to the other entries.

@VisLab does HED usually expect a single string consisting of potentially multiple tags or is it common to have a list of strings of HED tags for a particular entry?

VisLab commented 1 year ago

It needs a single string to tag an entity or a mechanism to assemble a single string from a list taken from different places. Parentheses are important. For example, HED tags are unordered so the tag string:

Red, Triangle, Blue, Square could mean a red triangle and a blue square or a blue triangle and a red square. Annotators should use something like: (Red, Triangle), (Blue, Square).

On Fri, Aug 4, 2023 at 11:18 AM Oliver Ruebel @.***> wrote:

The HedTags would be a list of HED strings containing the tags corresponding to the other entries.

@VisLab https://github.com/VisLab does HED usually expect a single string consisting of potentially multiple tags or is it common to have a list of strings of HED tags for a particular entry?

— Reply to this email directly, view it on GitHub https://github.com/rly/ndx-events/issues/8#issuecomment-1665870116, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAJCJOSGUQDJJUVEC4XMCMLXTUODVANCNFSM6AAAAAASO2A5EU . You are receiving this because you were mentioned.Message ID: @.***>