Code Monkey home page Code Monkey logo

daniel-olson / upheno Goto Github PK

View Code? Open in Web Editor NEW

This project forked from obophenotype/upheno

0.0 0.0 0.0 32.78 MB

The Unified Phenotype Ontology (uPheno) integrates multiple phenotype ontologies into a unified cross-species phenotype ontology.

Home Page: https://obophenotype.github.io/upheno/

License: Creative Commons Zero v1.0 Universal

Shell 4.61% Ruby 2.32% Python 8.82% Perl 1.13% Scala 4.45% Prolog 1.97% Makefile 76.49% Batchfile 0.21%

upheno's Introduction

Build Status

This repository contains common files ontologies and workflows shared between multiple phenotype ontologies.

See the wiki for additional documentation

Inter-ontology Closest Matches

See mappings/README.md for explanation of fields

Background

Many databases use their own ontology geared towards their species of interest or an area of interest. The purpose of this repository is to provide a mechanism for integrating these together into a unified phenotype ontology. We do this primarily through OWL Axiomatization and OWL Reasoning.

This approach takes advantages of the fact that phenotype ontologies typically follow a compositional structure. If each contributing ontology makes the semantics of this composition transparent through OWL Axioms then a reasoner can piece the ontologies together and find the overarching classification.

For example, if a phenotype ontology A contains a class for limb size, and also provides an OWL axiom that maps onto a decomposed form, for example:

  • A:limb size equivalentTo pato:size and inheres in some limb

And if phenotype ontology B has a class short forelimb, with axiom:

  • B:short forelimb equivalentTo pato:short and inheres in some forelimb

Then a reasoner can infer that B:short forelimb is a subclass of A:limb size

The OWL Axioms we use follow a design pattern called EQ or Entity-Quality descriptions.

Furthermore, if a database C provides a row for a genotype described compositionally, the placement of these phenotypes can also be inferred.

For background on the original formulation, see:

C J Mungall, Georgios Gkoutos, Cynthia Smith, Melissa Haendel, Suzanna Lewis, Michael Ashburner (2010) Integrating phenotype ontologies across multiple species Genome Biology 11 (1)

Exploring uPheno

The Monarch website uses uPheno to group data from multiple species. See for example: https://monarchinitiative.org/phenotype/MP:0003631

You can also query this using Monarch SciGraph services: https://scigraph-ontology.monarchinitiative.org/scigraph/docs/

To understand the mechanics of how uPheno works, we recommend opening the OWL in Protege and exploring with a fast reasoner such as Elk running

The remainder of these docs assumes some familiarity with Protege/OWL

We provide various modules:

  • mammal.owl
  • vertebrate.owl
  • metazoa.owl

Contributing Ontologies

  • mp* - mouse // mammal.owl
  • hp* - human // mammal.owl
  • zp - zebrafish** // vertebrate.owl
  • wbphenotype - C elegans // metazoa.owl
  • dpo* - Drosophila // metazoa.owl
  • fypo* - Fission Yeast // eukaryote.owl

* -- this ontology provides their own OWL axiomatization ** -- separately generated ontology

External Imports Modules

The OWL axiomatization depends on a number of external ontologies, including

  • pato
  • uberon
  • cl
  • species-specific AOs
  • go
  • chebi

Many of these are large, so we create import modules in the upheno ontology purl space

See the imports directory

PURLs

This ontology has the OBO PURL upheno

A redirect at obolibrary.org maps

History

Previously we had various things on:

This was split across multiple github repos

Design patterns

The design patterns are grouped into three higher level groupings:

  1. anatomical entity (anatomical entities (Uberon), cells (CL))
  2. cellular component (from GO)
  3. chemical entity (includes chemicals (CHEBI), proteins (PRO))

Current structure of uPheno 1:

  1. mp-hp-kboom.owl: OBSOLETE
  2. mp-hp.ow: OBSOLETE
  3. upheno_root_alignments.owl: OBSOLETE

Current uPheno structure

  1. upheno.owl (TODO needs to be obsoleted):
    1. metazoa.owl
      1. Worm
        1. OBO:uberon/bridge/cl-bridge-to-wbbt.owl
        2. OBO:uberon/bridge/uberon-bridge-to-wbbt.owl
        3. OBO:wbphenotype/wbphenotype-full.owl
      2. Fly
        1. OBO:uberon/bridge/cl-bridge-to-fbbt.owl
        2. OBO:uberon/bridge/uberon-bridge-to-fbbt.owl
        3. OBO:dpo.owl
        4. OBO:upheno/dpo/dpo-bridge.owl
        5. OBO:upheno/imports/fbbt_phenotype.owl
      3. OBO:upheno/vertebrate.owl
        1. Zebrafish:
        2. OBO:zp.owl
        3. OBO:uberon/bridge/cl-bridge-to-zfa.owl
        4. OBO:uberon/bridge/uberon-bridge-to-zfa.owl
        5. OBO:upheno/imports/zfa_import.owl
        6. OBO:vt.owl (<- this currently points to uPheno, made ticket to change that)
        7. upheno internal:
          1. OBO:upheno/imports/uberon_import.owl
          2. OBO:upheno/mammal.owl
            1. OBO:mp.owl
            2. OBO:hp.owl
            3. upheno internal:
              1. OBO:upheno/hp-mp/mp_hp-align-equiv.owl (REMOVED)
              2. OBO:upheno/upheno_root_alignments.owl (covered, root terms under uPheno:"Phenotype")
              3. OBO:upheno/imports/go_phenotype.owl (TODO)
              4. OBO:upheno/imports/mpath_phenotype.owl (TODO)
              5. OBO:upheno/imports/nbo_phenotype.owl (TODO)
              6. OBO:upheno/imports/uberon_phenotype.owl (TODO)

upheno's People

Contributors

nicolevasilevsky avatar matentzn avatar srobb1 avatar cmungall avatar balhoff avatar drseb avatar rays22 avatar chris-grove avatar seger avatar jseager7 avatar dosumis avatar lccarmody avatar clare72 avatar nlharris avatar pfey03 avatar ybradford avatar cthoyt avatar nlwashington avatar decorons avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.