INCATools / INCATools/ontology-access-kit

Add a generate-categories method

Open
#41 2 comments 0 reactions 1 assignee Claimed by @sierra-moxon View on GitHub
enhancement
Dominant language
Python
Stars
198
Forks
35
Avg merge
3d 4h
Merged PRs (30d)
1

Description

Interface:

tbd

- add to BasicOntologyInterface
- make a new interface

?

the input will be a curie or curies, and an optional list of preferred systems, drawn from:

- biolink
- cob
- UMLS STY
- owl vocabulary (e.g. owl:Class)
- design pattern

these are typically indicated via rdf:type (but not in OWL-DL), dc:conformsTo, subproperties of rdf:type (e.g. biolink:category)

the results will be an iterator of tuples (curie, system, category_curie)

Implementation:

not all implementations will be able to resolve this for all systems. if the preferred systems is empty, it will do a best effort. if preferred systems are passed and cannot be satisfied, throw a NotImplemented

for now start with ubergraph, this precomputes biolink categories, so it should be a simple lookup query

out of scope for this issue but in future:

- add cob categories to ubergraph implementation, depends on https://github.com/INCATools/ubergraph/issues/55
- use either graph walking or relation-graph (e.g. for sqldb which already loads RG) to compute other categories - related to what @jhc is doing

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.