Uploaded image for project: 'NIF'
  1. NIF
  2. NIF-11734

Query API functionality for closures required

    XMLWordPrintable

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.

      Attachments

        Activity

          People

            condit Chris Condit
            cmungall Chris Mungall
            Votes:
            0 Vote for this issue
            Watchers:
            12 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: