-
Notifications
You must be signed in to change notification settings - Fork 161
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[SCHEMA] Change modalities to instruments #1237
base: master
Are you sure you want to change the base?
Conversation
Codecov Report
@@ Coverage Diff @@
## master #1237 +/- ##
=======================================
Coverage 88.09% 88.09%
=======================================
Files 6 6
Lines 974 974
=======================================
Hits 858 858
Misses 116 116
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here. |
instrument: | ||
name: Instrument | ||
display_name: Instrument | ||
description: | | ||
The class of technology used to record data to a file. | ||
For example, both EEG and iEEG are data types using biopotential amplification. | ||
Instrument is not directly reflected in the BIDS filesystem, | ||
though the specification itself generally nests **data type**-specific sections within | ||
**instrument**-specific chapters. | ||
**Data types** reflects specific applications of **instruments**. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This describes the new "instrument" common principle.
src/schema/rules/instruments.yaml
Outdated
eeg: | ||
bioamp: | ||
datatypes: | ||
- eeg | ||
ieeg: | ||
datatypes: | ||
- ieeg |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a core change- now EEG and iEEG are both considered "biopotential amplification". At some point it would be nice to reorganize the specification to reflect this, but I don't think it's necessary.
@nellh noted that OpenNeuro uses the term "Modality", and keeps EEG and iEEG separate. If we change it to "Instrument" and combine EEG and iEEG under "Biopotential Amplification", OpenNeuro would likely be impacted, and users probably want to search for either EEG or iEEG, not both. |
|
Yes, OpenNeuro can maintain its own mapping. It has been nice to rely on BIDS validation outputs directly, as it reduces maintenance tasks when updating software for new BEPs and avoids getting out of sync. I wonder if we could keep modality as an unexposed component of the validator that OpenNeuro (and other tools that want a more intuitive, albeit less logically consistent, grouping) could rely on, so that this information does stay single sourced. So it would get emitted by the validator JSON but not be exposed in UI or used in schema rules. |
Closes #593 and possibly closes #1141. The problem that this PR attempts to address is that the definition of "modality" in Common Principles conflicts with its use in the schema.
Related proposal from Robert Oostenveld: https://docs.google.com/document/d/1cY-iZL8rtgDJ1-YVs1f2h5ugOiuK144zu4ju9UXZEGY/edit
Changes proposed:
schema/objects/modalities.yaml
toschema/objects/instruments.yaml
.schema/rules/modalities.yaml
toschema/rules/instruments.yaml
.