-
Notifications
You must be signed in to change notification settings - Fork 8
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
Remodeling of range for analyte_cateogry #2249
Remodeling of range for analyte_cateogry #2249
Conversation
…m) that inherit from AnalyteCategoryEnum minus certain invalid PVs (ex NucleotideSequencingEnum has no PV metaproteome). assigned NucleotideSequencing and MassSpectrometry subclasses these enums in analyte_category. added two new tests to invalid folder (NucleotideSequencing-working.yaml and MassSpectrometry-working.yaml) which should allow test to pass because they use nonpermissible values (metaproteome and metagenome respectively) in analyte_category. BUT test is failing when these are in the invalid folder and passing when they're in the valid folder. need to figure out why
|
…into-types-allowable-for-nucleotidesequencing-and-massspectrometry
@aclum and @turbomam FYI, neither @samobermiller or I could actually get the inheritance on the "sub Enums" to result in properly validating or invalidating examples (see this example src/data/invalid/MassSpectrometry-working.yaml in this branch validates but it should not). We tried a few different things to no avail. We only opened this PR to see if the documentation would render appropriately (it doesn't). Just to give you a heads up about this branch and PR. I don't think @samobermiller or I plan to pick it back up anytime soon (we were using it as a training example for how to write and test example yaml data). |
This does not appear to be working properly based on the passing invalid data MassSpectrometry-working.yaml, it should fail b/c of an invalid analyte_category PV. |
@kheal yes, I see that now. |
cc @pkalita-lbl in case you have any linkml insights |
The JSON Schema generator only handles explicitly defined permissible values at the moment: https://github.com/linkml/linkml/blob/5cc5a16e345d3ee5233a193eba4909a8999b43db/linkml/generators/jsonschemagen.py#L426-L457 So, in particular, it doesn't have any logic yet to deal with |
NucleotideSequencing
and MassSpectrometry
, post berkeley
I will wait until the 12/16 release to merge this in but @turbomam @sierra-moxon @kheal @mslarae13 I need at least one reviewer on this |
@@ -413,7 +413,7 @@ slots: | |||
description: > | |||
The type of analyte(s) that were measured in the data generation process and analyzed | |||
in the Workflow Chain | |||
range: AnalyteCategoryEnum | |||
|
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.
👍 - so for now, we fall back to "string" for the range of analyte_category
if not otherwise defined in slot_usage
.
This PR replaces AnalyteCategoryEnum with NucelotideSequencingEnum and MassSpectrometryEnum and adds titles to the corresponding permissible values
fixes #2154