Closed cmungall closed 4 years ago
OK, this appears to be fixed on master. However, the bug is present in https://github.com/biolink/biolinkml/releases/tag/v1.5.3
I recollect that this bug was introduced in the last set of changes to the owlgen module but wasn't caught by any of the existing unit tests. I also recollect that we added a test for it once we found it and fixed it in the latest version.
Would welcome more find-grained owl unit tests -- at the moment they are mostly macro level -- generate biolinkml.owl, biolink-model.owl and a couple of others and compare the new output to the old. The issue with tests of that sort is that a lot of things can make the new output change and unless someone gives the changes a close look, bugs can slip by.
We have test_issue_163.py, which is pretty good. I'm pretty confused about how my example at the top of this issue fails yet issue_163.yaml presumably succeeded.
It's quite possible I'm doing something dumb here...
Seems that we've captured an unstable state in the 1.5.3 release -- will look at why it only impacts OWL.
This only impacts OWL because OWL is the only generator parses a copy of 'https://w3id.org/biolink/biolinkml/meta.yaml' . Meta.yaml comes from the main branch of biolinkml and, in the process of adding the annotations, we started using a couple of aspects of the model that hadn't been completely debugged. The bug you are seeing is one we fixed while adding the annotations.
The short term solution is to release the 1.5.4 distro. The long term solution is to figure out why the OWL generator is parsing the meta.yaml model and either a) localize the source or b) figure out what it uses and make it static.
This does lead to a more foundational problem: I think we will need to support versioning on biolink models themselves. Will create a new issue for this. https://github.com/biolink/biolinkml/issues/217
Issue #251 further addresses this problem. Closing and moving to there
gen-owl is failing for all my schemas in 1.5.3
this replicates the error:
When I debug schemaloader, it appears to be failing here:
Class "extensible" - unknown slot: "e" e
unclear why this only manifests in gen-owl
also curious as to how this bug escaped - we have a pretty serious set of unit tests....