Skip to content
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] Define YAML tables for MRI common metadata fields and anatomy data #1017

Merged
merged 6 commits into from
Mar 17, 2022

Conversation

tsalo
Copy link
Member

@tsalo tsalo commented Feb 24, 2022

References #1014 and #1002.

Changes proposed:

  • Add YAML definitions for the remaining tables in the MRI page's common metadata fields and anatomy imaging data sections.

@@ -61,21 +63,21 @@ MRISequenceSpecifics:

PETMRISequenceSpecifics:
selectors:
- modality == "MRI"
- "PET" in dataset.modalities
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Having quotes around PET causes syntax error: expected <block end>, but found '<scalar>' (syntax)

RepetitionTimeExcitation: OPTIONAL
RepetitionTimePreparation: OPTIONAL

# Entities
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I added these because they weren't covered in #1014, but I'm not sure if they should go in this file.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This feels like it should be its own file, but it does need to be highest priority.

Only issue I'm seeing is that these will correspond to data files, and not, say, an events.tsv.

selectors:
- modality == "MRI"
# NOTE: This is my idea for "field is defined", but I don't know if it's the best approach.
- sidecar.DelayTime != "n/a"
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

From today's call, we can create a keyword for "is defined".

src/schema/rules/sidecars.yml Outdated Show resolved Hide resolved
- modality == "MRI"
- "PET" in dataset.modalities
- modality == "MRI"
- PET in dataset.modalities
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What about the inverse?

Suggested change
- PET in dataset.modalities
- dataset.modalities contains "PET"

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That works for me.

SliceTimingSparse:
selectors:
- modality == "MRI"
- sidecar.DelayTime isDefined
Copy link
Collaborator

@effigies effigies Mar 10, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just a thought:

Suggested change
- sidecar.DelayTime isDefined
- sidecar contains "DelayTime"

Or maybe

Suggested change
- sidecar.DelayTime isDefined
- defined(sidecar.DelayTime)

@effigies effigies merged commit 226c2a0 into bids-standard:schema/sidecar_validation Mar 17, 2022
@tsalo tsalo deleted the tsalo-tables branch March 17, 2022 20:06
@tsalo tsalo mentioned this pull request Mar 17, 2022
22 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants