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

Implement support for library schemas #67

Closed
happy5214 opened this issue May 11, 2022 · 6 comments · Fixed by #75
Closed

Implement support for library schemas #67

happy5214 opened this issue May 11, 2022 · 6 comments · Fixed by #75
Labels
bids BIDS integration hed 3 HED 3-specific issues parsing String parsing schema Schema parsing validation Tag validation issues

Comments

@happy5214
Copy link
Member

The HED 3 spec allows people to implement library schemas to supplement the base schema. We must support these library schemas by writing code to load them, modifying the parser to detect when they are used in tags, and adjusting existing code to reference their SchemaEntry data when tags are pulled from them.

@happy5214 happy5214 added bids BIDS integration hed 3 HED 3-specific issues validation Tag validation issues schema Schema parsing parsing String parsing labels May 11, 2022
@happy5214 happy5214 added this to the Library Schemas milestone May 11, 2022
@garrettmflynn
Copy link

Is there anything I could do to help get this feature implemented and added to the BIDS Validator? I'm working with Jorge Valdes-Sosa and Jorge Bosch from the Global Brain Consortium to develop an application to read/write HED SCORE tags to BIDS datasets, and a major concern of ours is that we currently have to ignore the HED errors generated during validation.

Looks like there's an open pull request (#75), but I thought I'd offer my support if it's useful.

@VisLab
Copy link
Member

VisLab commented Jun 9, 2022

Yes this is a top priority for us too. There are three aspects to getting that done:

  1. Changing the BIDS specification.
  2. Modifying the calling stub in the bids-validator to construct the appropriate schema object to pass to the hed-validator.
  3. Modifying the hed-validator to validate the HED annotations that use library schema.

Here is the status of these things:

The BIDS spec has to be changed. There is a Draft PR on the BIDS specification. However, I am holding off on moving this to a PR, because I think a couple of changes need to be made. Hopefully, we'll resolve those soon and finalize the interface in dataset_description.json.

Modifying the stub in the bids-validator: Once the spec has been agreed upon, then work can begin on this.

Modifying the hed-validator to validate with library schema: @happy5214 is working on this part.

Bottom line: I am working to resolve No. 1 and @happy5214 is working on No. 3.

Once No. 1 has been resolved and moved to a regular pull request in the BIDS Specification, we could use your help on No. 2.

You would need to look at how the bids-validator interacts with the hed-validator. They used to be tightly coupled, but we have worked hard to separate them with a well-defined interface so that they can be updated independently. This has resulted in a better structure on both sides and better error reporting on the HED side. Note: @dungscout96 @dorahermes @tpatpa @smakeig @sappelhoff @Remi-Gau @effigies @rwblair.

@garrettmflynn
Copy link

Perfect! I'll keep my eye on that Draft PR and coordinate further once it's through.

@happy5214 happy5214 linked a pull request Jul 21, 2022 that will close this issue
@garrettmflynn
Copy link

Hi @VisLab and @happy5214! What's the status of each of the three points mentioned above?

I see that there's a draft pull request—though it has not been merged to close out this issue.

@VisLab
Copy link
Member

VisLab commented Aug 24, 2022 via email

@garrettmflynn
Copy link

garrettmflynn commented Aug 24, 2022 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bids BIDS integration hed 3 HED 3-specific issues parsing String parsing schema Schema parsing validation Tag validation issues
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants