Skip to content

Conversation

@MichaelStritt
Copy link
Contributor

Linked issue

Check out #603

How to test

Just run the import workflow, you should now get a dataset_description.json within derivatives/ExploreASL

Comments

None

@MichaelStritt MichaelStritt added import Related to data import module bids Moving ExploreASL to BIDS compatibility labels May 30, 2021
@MichaelStritt MichaelStritt requested a review from jan-petr May 30, 2021 12:50
@MichaelStritt MichaelStritt self-assigned this May 30, 2021
@MichaelStritt MichaelStritt linked an issue May 30, 2021 that may be closed by this pull request
@jan-petr jan-petr changed the title #603 xALS_bids_BIDS2Legacy: Add dataset_description.json #603 xASL_bids_BIDS2Legacy: Add dataset_description.json May 30, 2021
Copy link
Contributor

@jan-petr jan-petr left a comment

Choose a reason for hiding this comment

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

Good. But we want the same thing also in ASL.json and M0.json of derivatives - see explanation in the comments. Should be an easy fix.

datasetDescription = spm_jsonread(fullfile(pathStudy, 'rawdata', 'dataset_description.json'));
% Add "GeneratedBy" field
datasetDescription.GeneratedBy = struct;
datasetDescription.GeneratedBy.Name = 'xASL-BIDS';
Copy link
Contributor

Choose a reason for hiding this comment

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

Thinking if xASL-BIDS is the name we want. It might sound as conversionASL-BIDS not making the link to ExploreASL. Plain ExploreASL might be better. @HenkMutsaerts what do you think?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Sure, changed to ExploreASL in e7ee311 👍

% 10. Create DataPar.json
% 11. Copy participants.tsv
% 12. Clean up
% 12. Add dataset_description.json
Copy link
Contributor

Choose a reason for hiding this comment

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

Theoretically, enough to have it there. But practically, we mostly need it on the subject level - written to all ASL and M0 JSONs, because at the individual file level, we will always check what ExploreASL version was used.

Our motivation here is that we currently remove and apply the Philips scalings already when doing DCM2BIDS conversion. But we leave the SIemens and GE scalings only in the quantification module, because they are not really stored directly in DICOM. But for ASL-BIDS, we wanted to remove any scalings, independent of what is their origin. So once we implement that, we want to be sure what version of ExploreASL was used to create data - data generated by the old version will apply these scalings still in quantification, data generated by the newer version will apply the scalings already in import - as promised in ASL-BIDS.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Sounds good. It's just added to all JSONs now in e7ee311 👍
I can remove it from the dataPar.json if you want, but it probably doesn't hurt either.

Copy link
Contributor

Choose a reason for hiding this comment

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

That's an elegant way to add it. We indeed want it in all JSON data sidecars. We want it in dataset_description, it doesn't hurt in dataPar.json. We probably don't want it in participants.json as this should have fields describing columns and an extra field that doesn't match the structure can be confusing.
See the BIDS-modality-agnostic-files.html.

What do you think?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Agree, just read about it. I exclude it in 3afe366 👍

@MichaelStritt MichaelStritt requested a review from jan-petr May 30, 2021 19:19
Copy link
Contributor

@jan-petr jan-petr left a comment

Choose a reason for hiding this comment

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

One minor discussion point.

% 10. Create DataPar.json
% 11. Copy participants.tsv
% 12. Clean up
% 12. Add dataset_description.json
Copy link
Contributor

Choose a reason for hiding this comment

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

That's an elegant way to add it. We indeed want it in all JSON data sidecars. We want it in dataset_description, it doesn't hurt in dataPar.json. We probably don't want it in participants.json as this should have fields describing columns and an extra field that doesn't match the structure can be confusing.
See the BIDS-modality-agnostic-files.html.

What do you think?

@MichaelStritt MichaelStritt requested a review from jan-petr May 31, 2021 08:13
@jan-petr jan-petr force-pushed the feature-#603_DatasetDescription branch 2 times, most recently from 232809f to 3afe366 Compare May 31, 2021 08:40
Copy link
Contributor

@jan-petr jan-petr left a comment

Choose a reason for hiding this comment

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

OK to merge. I made a minor commit. Note that I changed the commit message so I had to remove the commit and force-pushed it again - so hopefully you didn't pull inbetween...

Anyway - extra caution during merging :)

@MichaelStritt MichaelStritt merged commit 110ee45 into develop May 31, 2021
@MichaelStritt MichaelStritt deleted the feature-#603_DatasetDescription branch May 31, 2021 08:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bids Moving ExploreASL to BIDS compatibility import Related to data import module

Projects

None yet

Development

Successfully merging this pull request may close these issues.

ExploreASL version in Legacy data

3 participants