isa-api icon indicating copy to clipboard operation
isa-api copied to clipboard

ISA Validation Configurations Too Restrictive

Open ptth222 opened this issue 5 months ago • 5 comments

isajson.validate() has a "config_dir" parameter that defaults to using some JSON configuration files for various technology and measurement types, but if you don't have one of those types, errors are reported. Is the intention to force users to add configurations to validate new experiment types? In general these seem like extra validations that aren't necessary to validate whether something fits the ISA format since they validate specific word choice and protocol order, but there is no way to indicate to the function not to do these checks. My expectation would be that setting config_dir to None would disable this highly specific validation.

I don't see any documentation on needing to create these configuration files or how they are structured, anything at all on them. Am I looking in the wrong place?

For isajson.validate() it looks fairly straight forward to change the code so it would not run these validations if config_dir was None. isatab.validate() has the same problem though, and it would be much more difficult to try and offer a way to not do them. This makes it seem to me that it was intended to force the user to create configuration files, but then the lack of documentation on it contradicts that idea. What is the intention with these configuration files for users with new experiment types?

ptth222 avatar Jan 19 '24 07:01 ptth222