-
Notifications
You must be signed in to change notification settings - Fork 157
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 the ability of users to specify an explicit HED.xml schema for validation. #527
Conversation
Corrected typo.
Changed HEDSchemaPath to be HEDSchemaFile in json sidecar
More carefully laid out what the preferred behavior is.
Fixed typeface and capitalization.
This seems like a good approach. I like that you can specify a version or an explicit schema. I can make more specific suggestions once this is marked ready for review, but here are some initial thoughts:
Also, does it make sense to have two separate keys |
Agree with all suggestions....thanks..... |
Moved the specification of which HED schema to validate against to the dataset_description.json file as suggested.
This optional field is used to specify the HED version or specific XML schema file used for HED validation.
Updated dataset_description to include HEDSchema. Fixed table spacing error this introduced.
src/03-modality-agnostic-files.md
Outdated
@@ -27,6 +27,7 @@ Every dataset MUST include this file with the following fields: | |||
| EthicsApprovals | OPTIONAL. List of ethics committee approvals of the research protocols and/or protocol identifiers. | | |||
| ReferencesAndLinks | OPTIONAL. List of references to publication that contain information on the dataset, or links. | | |||
| DatasetDOI | OPTIONAL. The Document Object Identifier of the dataset (not the corresponding paper). | | |||
| HEDVersion | OPTIONAL. HED version number or the name of HED XML schema file used to validate HED tags for study. | |
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.
If there's a significant likelihood of backwards-incompatible changes, then this should probably be RECOMMENDED:
| HEDVersion | OPTIONAL. HED version number or the name of HED XML schema file used to validate HED tags for study. | | |
| HEDVersion | RECOMMENDED if HED tags are used. HED version number or the name of HED XML schema file used to validate HED tags for study. | |
If it's mostly a way to test new features, then OPTIONAL seems fine.
It should definitely be RECOMMENDED. The hed-standard group is doing a
major redesign that I think will be a great improvement, both in terms of
capability and usability. The schema will not be backwards compatible,
though the validators should still work.
…On Wed, Jul 15, 2020 at 4:20 PM Chris Markiewicz ***@***.***> wrote:
***@***.**** commented on this pull request.
------------------------------
In src/03-modality-agnostic-files.md
<#527 (comment)>
:
> @@ -27,6 +27,7 @@ Every dataset MUST include this file with the following fields:
| EthicsApprovals | OPTIONAL. List of ethics committee approvals of the research protocols and/or protocol identifiers. |
| ReferencesAndLinks | OPTIONAL. List of references to publication that contain information on the dataset, or links. |
| DatasetDOI | OPTIONAL. The Document Object Identifier of the dataset (not the corresponding paper). |
+| HEDVersion | OPTIONAL. HED version number or the name of HED XML schema file used to validate HED tags for study. |
If there's a significant likelihood of backwards-incompatible changes,
then this should probably be RECOMMENDED:
⬇️ Suggested change
-| HEDVersion | OPTIONAL. HED version number or the name of HED XML schema file used to validate HED tags for study. |
+| HEDVersion | RECOMMENDED if HED tags are used. HED version number or the name of HED XML schema file used to validate HED tags for study. |
If it's mostly a way to test new features, then OPTIONAL seems fine.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
<#527 (review)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAJCJOTXFXY72DYWH4WP4OTR3YMSJANCNFSM4OWXN3PA>
.
|
Not sure whether this should be qualified by some statement that it is recommended if you are using HED tags to annotate.
Making a local path a URI would require the BIDS validator to parse it into a local path before passing it to the HED validator, as the latter does not accept URIs (including for remote schemata). Even if the HED validator were to accept URIs, it would not be able to find the file with the URI because the proposed URI is relative to the dataset directory rather than the execution directory, so the HED validator would have the wrong origin for the relative path. Keeping the filename under sourcedata/ as a simple name is much easier to implement. I have implemented the other proposed changes (merging the two fields in |
We don't need the URI syntax. The file will always be in sourcedata.
We aren't using URIs, just filenames in the sourcedata directory.
@happy5214 and @VisLab would like to move forward with the merge. There will be additional suggestions/fixes but this merge is needed to move forward. |
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.
Okay, fine with me to iterate on the examples, but then I suggest to make the brief intro sentences before the examples a bit more clear, so that readers know there is more to define in the JSONS, and that the examples are not "full examples".
@@ -65,6 +65,28 @@ onset duration trial_type response_time stim_file | |||
5.6 0.6 stop 1.739 images/blue_square.jpg | |||
``` | |||
|
|||
The accompanying JSON side car might be: |
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.
The accompanying JSON side car might be: | |
In the accompanying JSON sidecar, the `trial_type` column might look as follows: |
I am doing the requested corrections.... but am having trouble figuring out
what the spacing rules are for the description table for the able fences.
Could you clarify for me?
…On Sun, Aug 2, 2020 at 7:29 AM Stefan Appelhoff ***@***.***> wrote:
Finally, please have a look at the "Checks" section in the GitHub user
interface of this Pull Request (see screenshot):
[image: image]
<https://user-images.githubusercontent.com/9084751/89123002-425c8d00-d4cc-11ea-8ad1-f4d3592c41e1.png>
You currently have once check failing: Travis CI.
Please click on "Details" for more information
[image: image]
<https://user-images.githubusercontent.com/9084751/89123007-50aaa900-d4cc-11ea-965e-de02ce639253.png>
This will lead you to an overview, where you can click on "The build" to
get information on WHY the check has failed
[image: image]
<https://user-images.githubusercontent.com/9084751/89123013-6029f200-d4cc-11ea-8803-cb71916f5479.png>
That will finally show you line by line what the outstanding issues are:
[image: image]
<https://user-images.githubusercontent.com/9084751/89123021-76d04900-d4cc-11ea-88cf-2017649acda9.png>
In your case, these are related to Markdown style. Please fix these issues
as well, so that we can keep a consistent style throughout the BIDS
specification. If you have issues or problems with that, just let me know
and I can help you.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#527 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAJCJOWLRHVLBXMXOP2BEILR6VL23ANCNFSM4OWXN3PA>
.
|
sure, a markdown table has fences made out of pipes A good table looks like this:
a bad table (although technically correct syntax) looks like this (for example):
In a rendered state, both will look like this:
|
Okay, I have attempted to fix this. |
I see you fixed all errors, thanks! Now there remain two small outstanding issues (linked below) from my side and then a final review from @effigies (if he has time and energy): |
Note, I think there was an correct duplication of text code. I removed it, but someone should check it.
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.
Minor formatting and wording suggestions.
hypothesis extensions of BIDS. Note that the `trial_type` and any additional | ||
columns in a TSV file SHOULD be documented in an accompanying JSON sidecar file. |
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.
Just adding a newline to keep future changes confined to fewer lines.
hypothesis extensions of BIDS. Note that the `trial_type` and any additional | |
columns in a TSV file SHOULD be documented in an accompanying JSON sidecar file. | |
hypothesis extensions of BIDS. | |
Note that the `trial_type` and any additional columns in a TSV file SHOULD be | |
documented in an accompanying JSON sidecar file. |
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.
Not sure if I got the correction right on this one. Were there supposed to be two spaces after BIDS.
src/99-appendices/03-hed.md
Outdated
relevant HED tags will then be associated with the event instance. | ||
|
||
The tags in the `HED` column of the `*_events.tsv` file are often specific to the individual event instances, | ||
while the common properties are represented by categorial values appearing in other columns. |
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.
while the common properties are represented by categorial values appearing in other columns. | |
while the common properties are represented by categorical values appearing in other columns. |
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.
Corrected the spelling of categorical. Not sure about the removing of the space?
src/99-appendices/03-hed.md
Outdated
the categorical specifications, but should form the union before analysis. Further, | ||
the normal BIDS inheritance principle applies, so the data dictionaries can | ||
appear higher in the BIDS hierarchy. |
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.
the categorical specifications, but should form the union before analysis. Further, | |
the normal BIDS inheritance principle applies, so the data dictionaries can | |
appear higher in the BIDS hierarchy. | |
the categorical specifications, but should form the union before analysis. | |
Further, the [inheritance principle](../02-common-principles.md#the-inheritance-principle) applies, | |
so the data dictionaries can appear higher in the BIDS hierarchy. |
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.
Corrected, but again, I am not sure about the rules that should be followed for inserting new lines and the extra spaces after periods.
Added a new line.
Corrected spelling of categorical.
Added the inheritance link.
Is there anything else that needs attention on this? |
I think we can merge this now 👍 Just a note for you --> when a reviewer makes "code suggestions", you see these two buttons (screenshot): You can use them to commit these suggestions directly to the code, which can often be easier and sometimes cleaner for the review process. Regarding line breaks and spaces in the spec:
|
Thanks for your work and patience @VisLab @happy5214 |
Thanks for your help. I'll know next time......
…On Thu, Aug 6, 2020 at 11:38 AM Stefan Appelhoff ***@***.***> wrote:
Thanks for your work and patience @VisLab <https://github.com/VisLab>
@happy5214 <https://github.com/happy5214>
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#527 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAJCJOVZAVHXSW4LVYYK6MLR7LL6XANCNFSM4OWXN3PA>
.
|
Thanks @VisLab! I appreciate your patience! |
closes #537
We have refactored the HED validation in BIDS so that it does not depend on a specific HED schema version. The HED schema itself is under active development by a hed-standard group. As this schema specification evolves, people will be tagging their data at a specific point in time. We do not want their tagging to become invalid because we changed the schema. They just need to specify the vocabulary they used.
This change will require some modifications of the BIDS validator. Our group is working on a draft pull request for those changes. When it is ready, we will do a regular request, but we would appreciate comments/suggestions during the process.