-
Notifications
You must be signed in to change notification settings - Fork 47
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
Add direct inferred edges as part of loading SciGraph #42
Comments
This illustrates the test case. We are using the reasoner to 'repair' a missing link between dx and cx (inferred based on the base hierarchy of e-d-c-b-a). A call to reasoner.getSuperClasses(dx, true) would return cx, but not root (root becomes an indirect inferred superclass). @hdietze to check algorithm, but I think it should be
|
@cmungall - should this be a configuration option in the YAML or should every SciGraph load include this elk step? |
Configuration is good. In theory we may also want to plug in different reasoners (Konklude looks promising) |
And would it be configured on a per ontology basis or for the entire graph? On Mon Nov 03 2014 at 1:10:20 PM Chris Mungall notifications@github.com
|
For the ontology that is the root of the import chain (== graph?) On 3 Nov 2014, at 13:13, Chris Condit wrote:
|
If the YAML configuration looks like
Should all URLs receive the same reasoning or should it be configurable for each ontology import? |
As far as SG is concerned, is a set of ontologyUrls equivalent to a single Url that imports the others? i.e. does it effectively merge all axioms? I can see cases where it would potentially be useful to have a different reasoner configured for each ontology root, so let's go with this (for Monarch we will typically have a single ontology that is an importer, but others may want the flexibility). Just a FYI, all OWLAPI reasoners follow the import chain when reasoning |
At this point it loads each I'll set it up so that each root can have a different reasoner associated with it. |
@cmungall The unit test works correctly but when the algorithm is applied to monarch.owl it ends up adding 70,775,921 edges and removing none. Does this seem correct? |
The ontology may be incoherent ie it has unsat classes, any unsat class is a subclass of nothing. Need to work with ont grp in removing these. For now sg should test for incoherency and not load but we may want intermediate soln where constraint axioms eg disjoints are removed prior to reasoning. Sent from my iPhone.
|
When loading SciGraph from an ontology import chain, we should fill in missing edges in the graph (and remove any redundancies that arise from this).
I will first add a test case that demonstrates the desired behavior.
TBD: do we force the import chain to be coherent (ie no unsatisfiable classes) prior to loading? The presence of unsatisfiable classes creates false edges.
The text was updated successfully, but these errors were encountered: