Details
-
New Feature Request
-
Resolution: Canceled
-
Blocker
-
None
-
None
-
None
-
NIF
Description
Use Case 1
I would like to query this resource (HPO annotations):
http://beta.neuinfo.org/mynif/search.php?q=cerebellar&t=indexable&nif=nlx_151835-1&b=0&r=20
Using the HPO ontology. This is in the monarch import chain. HPO concepts are linked to eachother via subclass (other object properties for inter-ontology relationships but we ignore for this use case).
At the API level I would like to query using the concept ID or URI HP:0002011 (Abnormality of the central nervous system). I would like results to include any row in which the Phenotype_Id column matches either this concept or a subclass [note: when I say subclass I always mean entailed. I use 'direct' for the most direct entailed subclass].
On the NIF UI level I would like this to operate in roughly the same way, although I may select the Id via autocompleting on its label.
There should be no depth limit in the ancestor hierarchy.
Use case 2:
I want to query:
http://beta.neuinfo.org/mynif/search.php?q=ZFIN&t=indexable&nif=nif-0000-21427-7
I want to query using the concept ZFA:0000008 ! brain
I want results to include any row in which affected_structure_or_process_
{1,2}_Id matches either a subclass of brain or part of some brain. Again, assume this is a DL query. I want at least EL properties of the ontology used (here just transitivity).
For this query I only care about the axioms in ZFA
Use case 2b:
This is a variant of 2. Here I want to query using UBERON:0000955 ! brain. I want query results to include the brain or parts of the brain.
In this case I want the reasoner to make use of axioms in uberon, zfa and uberon-bridge-to-zfa. (there are some complexities in the choice of ontologies here that require some further explanation)
From a UI perspective (just the generic NIF UI, a Monarch one will be different) I'd like to arrive at UBERON:0000955 through some kind of autocomplete.
Use case 3:
Going back to HPO annotations:
http://beta.neuinfo.org/mynif/search.php?q=cerebellar&t=indexable&nif=nlx_151835-1&b=0&r=20
I want to query for any phenotype that affects the brain or its parts. My query term UBERON:0000955 ! brain. Underneath, the reasoner should perform the DL query:
inheres_in some (part_of some UBERON:0000955) OR inheres_in some UBERON:0000955
(With the Union this is no longer EL, but it's trivial to perform the union post-hoc)
Each class that satisfies this query should be used to probe the phenotype_Id column.
The required ontologies are are somewhat complex and variations may be possible. But the basic set should be in the monarch importer already.
- uberon
- uberon-bridge-to-fma
- hp-equivalence-axioms
- hp
Note: in all of these cases we could include the closure as part of the ingest.