-
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
[ENH] Add a Consistency principle to Common principles #1530
base: master
Are you sure you want to change the base?
Conversation
Explicitly adds a new Consistency principle which I think it is implicit in the motivation and other principles, but I believe we need to make explicit to establish a shared standpoint to the interpretation of the specs.
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## master #1530 +/- ##
==========================================
- Coverage 88.00% 87.83% -0.18%
==========================================
Files 16 16
Lines 1326 1356 +30
==========================================
+ Hits 1167 1191 +24
- Misses 159 165 +6 ☔ View full report in Codecov by Sentry. |
Do we have examples where this isn't followed and has caused problems? Or is this a guideline that rule crafters should ensure remains the easiest behavior for users? How does the development of two mechanisms, for example, B0FieldIdentifier and IntendedFor comport with this principle? Does the increased expressiveness justify an exception? Is it an exception? As another example, BIDS-URIs are intended to unify (and expand) existing file links; would that be acceptable under this rule? |
I think BIDS is not there (yet) in terms of rules for "conversion" (what subject label to choose if there is no subject ID in dicom? what session label to choose?) to establish such somewhat stringent rule. Having said that, it might be something to inspire and strive for. |
If this is a principle we all share, it should be stated as such, and then act upon examples and problems. Nonetheless, I mentioned #105 where I felt there are several interpretations of the specs' spirit that signify we may not agree on this simple (or derivation thereof) articulation of "consistency". In fact, I have several minor edits here and there prepared in case this is accepted as a foundational standpoint. I was planning to propose those on a subsequent PR, so that there's no conflict between discussing this and secondary effects. I believe we should agree on the basics first before we go into the details.
While I agree accepting this modification opens the door to new decisions and potential conflicts such as those you bring up, my point here is that this addition is necessary to better support currently unclear and, more worryingly, hard to interpret aspects of the specs. That said, as it reads right now, I don't think this has any implication in the B0FieldIdentifier vs. IntendedFor as they are optional (though the spirit is openly toward trying to make a more directive stance in this regard). Unfortunately, I am not familiar enough with BIDS-URIs, but I don't see why it would not be acceptable under this principle (i.e., not a rule). |
I apologize in advance if the current articulation is unclear and I'm totally open to suggestions to make this more accurate and unambiguous. Indeed, the goal here is to say: BIDS allows some degrees of freedom to choose whatever participant name, session identifier, task name (except for rest), acquisition, etc. etc. but, saving those, two experts on BIDS should give you the same dataset structurally. This could be more specific as to use the same entities (but allowing differing actual values for those choices).
It is defined, but I may have a poor job at articulating it - please help here to make it better. The previous point is going in this direction
This is a principle, so it should not be confused with a rule. I'm proposing it as such because we need to establish a starting point to be able to be specific on the specific ruling. As it is written now, again, I don't think this is against your example. But I agree it enforces that such a rule is written to explicitly allow having |
Isn't a fundamental principle of replicability that given the same dataset, the same method should give you the same output no matter the platform you run it in or the operator? |
Kind of agreeing that the lack of definition / operationalization of "virtually" is a bit of a problem. I think that people may organize their dataset differently depending on what they want to do with it. I am especially thinking that people may group things in sessions quite differently given that sessions are just a logical grouping. One can imagine that the same following data could easily be organized in different ways:
The 3 following are technically possible and allowed by BIDS: and I am sure we can think of others.
Would you call those virtually identical? BTW I agree that some may be more "logical" or "desirable" but then I think what we need are more like "guidelines" or recommendation to augment the starter kit rather than adding rules in the spec that are going to be very hard to enforce. |
No - but there are two different concepts conflated. If participants came on 2 different days, then this principle would open the door to Example two - participants did 2 tasks. is this in the same session (i.e., simultaneous fMRI and EEG) or different sessions. Although I agree it is possible, I find that your What I find "virtually" equivalent is this:
or
EDIT: I have checked, and BIDS is currently a bit more specific than I thought:
I still see
Disagree. Rules may be hard to enforce. Principles just guide progress. |
Explicitly adds a new Consistency principle which I think is implicit in the motivation and other principles. Still, I believe we need to make it explicit to establish a shared standpoint on the interpretation of the specs.
The reason I think we want to discuss about this proposed "Consistency principle" is that interpretation of modifications, etc. may change dramatically. I informally voiced this here #105 (comment) and at least for that particular PR to go forward, I think we want to make several of these basic agreements/conventions explicit.