Giter Site home page Giter Site logo

flybase / drosophila-phenotype-ontology Goto Github PK

View Code? Open in Web Editor NEW
4.0 7.0 1.0 39.6 MB

The home of the Drosophila phenotype ontology

License: Creative Commons Attribution 4.0 International

Dockerfile 0.04% Makefile 53.79% Shell 6.96% Batchfile 0.09% Perl 27.67% Ruby 2.40% Scala 3.27% Python 5.77%
phenotype ontology flybase obofoundry

drosophila-phenotype-ontology's People

Contributors

clare72 avatar gouttegd avatar matentzn avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

drosophila-phenotype-ontology's Issues

New terms: Intracellular/Axonal transport defective

From Sylvie, by email:

NEW terms request:

Intracellular transport defective
¬ Child term: Axonal transport defective

I don’t see any particularly good place within the fb_cv ontology to place these terms, so I’d suggest just adding them to the main trunk

Suggested definitions and relevant GO terms:

‘Intracellular transport defective’
Phenotype that is a defect in intracellular transport (GO:0046907). ‘Intracellular transport’ is defined as: ‘The directed movement of substances within a cell.’

id: GO:0046907
name: intracellular transport
namespace: biological_process
alt_id: GO:1902582
def: "The directed movement of substances within a cell." [GOC:ai]
subset: gosubset_prok
synonym: "single organism intracellular transport" RELATED [GOC:TermGenie]
synonym: "single-organism intracellular transport" RELATED []
is_a: GO:0006810 ! transport
is_a: GO:0051641 ! cellular localization
is_a: GO:0051649 ! establishment of localization in cell
relationship: occurs_in: GO:0005622 ! intracellular
intersection_of: GO:0006810 ! transport
intersection_of: occurs_in GO:0005622 ! intracellular

‘Axonal transport defective’
Phenotype that is a defect in axonal transport (GO:0098930). ‘axonal transport’ is defined as: ‘The directed movement of organelles or molecules along microtubules in axons.’

id: GO:0098930
name: axonal transport
namespace: biological_process
def: "The directed movement of organelles or molecules along microtubules in axons." [ISBN:0815316194]
subset: goslim_synapse
synonym: "axon cargo transport" EXACT []
synonym: "axoplasmic transport" EXACT []
xref: Wikipedia:Axoplasmic_transport
is_a: GO:0008088 ! axo-dendritic transport
relationship: occurs_in: GO:0030424 ! axon

Example of dbxref on EQ/human readable def?

@dosumis Would you mind extending this pattern to allow the generation of

  1. a definition in the usual way and
  2. a dbxref (list var) on that definition?

I think on second thought the issues referenced here are not the same after all. The ticket should be sufficiently general: allow committing ALL columns pertaining to any kinds of annotations; But the current attempt to extend the uPheno patterns was actually dbxrefs on the terms. If we want dbxrefs on the EQs and the human readable diffs, we need to do some more work to extend the general uPheno scheme. If I get an example from you, I can get the ball rolling! Merci :)

Simplify names for lethal phenotypes

lethal phenotypes currently have rather complex names that could be simplified in a relatively obvious way.

lethal - all die before end of embryonic stage -> embryonic lethal

Current names should be kept as synonyms.

(I can only think that I got carried away with naming consistency. Other lethal phase terms are not so easy to simplify: some die during embryonic stage != embryonic semi-lethal)

Consider importing the Janelia CV for phenotype

Import the Janelia Phenotypes CV directly into DPO (Wyatt showed them during SAB)

Us integrating those would give them immediately access to related GO processes, anatomical entities etc.

Consider revising definitions (4)

The following 4 definitions contain disjunctions (OR statements), which will obstruct their classification in a multispecies context. It also seems that this makes them unnecessarily complex;

  • 'cell death defective': Here I would consider reducing to GO:cell death, rather than regulation of cell death?

EDIT:
The three behaviours where now changed to the 'inheres in part of' pattern.

Major screw up in temporal relation IDs between old and new versions of dpo.owl

The original dpo.owl (still in src/trunk/ontology at the time of ticket writing) defined lethal phase terms using BFO_0000060 which it defined as 'precedes'. This term appears to be obsolete and where I can find a record of its usage, it is mapped to BFO_0000062 = preceded_by - the opposite of what we need!!

Somehow this mapping has been used to update the relation in the new DPO, resulting in an inverted hierarchy following reasoning.

Fix: switch all usage in DPO to BFO_0000063

Behavioral phenotypes & patterns

(copied from some old meeting minutes I have now retired)

  • Initial focus of behavior terms should be movement behaviors - coming from big screens

  • We will need behavior terms in order to define these new phenotypes.

  • We need to avoid getting too hung up on where these behavior terms live. There are 3 possibilities:

    • A new fly behavior onotology
    • Extend GO
    • Extend NBO
    • -> Agreement on Phenotype call was to prefer GO if possible but use NBO for more species specific. Wherever there is an GO term, NBO should use it. We may need to work with GO on alignment. We will soon start up a regular meeting NBO/GO and behavior ontologies in general

Some Relevant branches:

Relevant tickets

Behavior phenotype patterns

  • Lets try building a DOSDP pattern for some simple kind of behaviour

Screens generally measure an increase or decrease in some movement, e.g.

Q: Increased frequency of 
E:  wing flicking
Qual: Abnormal

Sometimes we need social/environmental context:

Near wall
male behavior during pursuit of female
Male behavior while facing female 
  • Fold into behavior terms or post-compose?
  • What relations to use?

FlyBowl

  • Unsupervised learning revealed behaviour that people have not noticed before

  • Winflick Glossary

  • Behaviour Map

    • Thousand driver lines that drive expression in one of that lines, and than you check what kind of behaviour emerges
    • They have expression patterns in terms, they can correlate
    • Regions of expression patterns where you are most likely to get wing flick
  • Headless flies

    • Goal: What circuits in the ventral nervous system drive the movement
    • Manually curated
  • Should we create our own fly behaviour ontology

    • Is NBO aligned with GO? To some extent, but needs work
    • Wherever there is a GO behaviour, it should be in NBO
  • UBERON-CARO tension

    • Granularity divergence
    • Reduce ontological commitment in higher level terms
    • Storage of memory vs recall
    • GO term should encompass both?

How to fold in anatomy:

  • Decision: Avoid Uberon references in NBO for now.
  • Use FBbt to fold in classification by anatomy - e.g. wing flicking under wing behavior phenotype vis FBbt

@Clare72

  • Try to group the behaviours in some kind of sensible way
Increased Frewuency of Kinethetic movement
…
…
Priority on things that we have circuits on
Olfactory behaviour is weird.
  • Unified semantics of sex modelling

phenotypes for increased/decreased memory

Definition of 'memory' in GO:

The activities involved in the mental information processing system that receives (registers), modifies, stores, and retrieves informational stimuli. The main stages involved in the formation and retrieval of memory are encoding (processing of received information by acquisition), storage (building a permanent record of received information as a result of consolidation) and retrieval (calling back the stored information and use it in a suitable way to execute a given task).

It is not usually clear which parts of this are better or worse when a memory phenotype is observed.
What is measured is usually the retrieval (% of a population exhibiting expected behavior), but retrieval may not be where the problem lies and none of this really fits rate (which is a defined as occurrence/time).

'rate' in PATO:

A quality of a single process inhering in a bearer by virtue of the bearer's occurrence per unit time.

'efficacy' - PATO:0015002 may be better for memory

The ability of a process to produce its output.

Review DPO EQ defs and assign to uPheno patterns

For this or the next VFB ontology call, it would be good to do the following:

  1. Review all the tsv files in the original pipeline -> @dosumis suggests to do this carefully together with dpo paper, phenotype by phenotype. If you want, you can put the four tables into a google sheets for easier collaboration; thats how we did it with the other MODs
  2. Assign all phenotypes in these spreadsheets to appropriate uPheno patterns; maybe best to suggest an appropriate pattern and then review with @dosumis
  3. The outcome should be that all or most of the phenotypes are in tsv files that are named after there corresponding uPheno pattern, for example abnormalAnatomicalEntity.tsv
  4. Once @dosumis gives me the go, I will switch the patterns to the standard pipeline

Creating abnormalAnatomicalEntity phenotypes from FBBT for downstream tools

Flybase annotates abnormal anatomical entities with FBBT terms; downstream tools need to be able to distinguish FBBT terms from their phenotypes, and need a term for "abnormal eye". Can we find out from FlyBase if they would consider to host a component here in this repo that reads Flybase annotations from the database and automatically creates corresponding phenotype terms (plus mappings to FBBT terms) here, ideally in the FBcv IRI namespace?

Sleep phenotypes

Phenotypes for subclasses of 'abnormal sleep'
e.g. 'abnormal sleep bout duration', 'abnormal daytime sleep'

Curators to decide which classes will be most useful - may need new GO terms/new upheno patterns.

Behaviors for FlyBowl phenotyes

Decide on classes to use for behaviors from FlyBowl

Links to behavior pages are http://research.janelia.org/bransonlab/FlyBowl/BehaviorResults/BehaviorStats/<behavior_name>.html

MOVEMENT
backup - NBO:0000101 'retropulsion'
jump - GO:0007630 'jump response' (have this as 'jump response defective' phenotype), NBO:0000016 'jumping behavior' (this might be better if there is no stimulus to trigger a 'response')
pivotcenter + pivottail - NBO:0009001 'rotation behavior'
walk - GO:0090659 'walking behavior', NBO:0000056 'walking behavior'

crabwalkextreme - NEW
stop - NEW
wingflick - NEW
winggrooming - NEW (unless we use existing 'grooming behavior defective')

righting - this phenotype seems to be the result of flies falling over more often rather than any changes to the righting mechanism? GO:0060013 'righting reflex', NBO:0000578 'righting reflex'? or use existing 'uncoordinated' phenotype?

SOCIAL
attemptedcopulation + copulation - GO:0007620 'copulation', NBO:0000060 'copulation'
chase - NEW (existing chase behaviors are for play or aggression)
touch - NEW
wingextension - GO:0048065 'male courtship behavior, veined wing extension'

notanybehavior -> leave this out?

Definition of flightless

Is:

PATO_0000001 and (RO_0000052 some GO_0060361) and (RO_0002573 some PATO_0000462)

Should be

PATO_0000462 and (RO_0000052 some GO_0060361) and (RO_0002573 some PATO_0000460)

I took the liberty to change this @dosumis, please let me know if this was wrong!

Manual review of dpo.owl and dpo.obo required

We need some basic looking at (sanity checking, does it look mostly normal?) and diffing of dpo.obo (and .owl) with previous releases! The only thing that is missing is the definition generator. Working on that!

Obsolete endo/exo-cytosis phenotypes

These phenotypes have been judged to be unnecessary as the are too 'molecular' for use in FlyBase phenotype curation and the same information can be captured at the gene level by GO curation. There are no replacement terms.

FBcv:0001324 - 'endocytosis defective'
FBcv:0001325 - 'exocytosis defective'

additional size and weight phenotypes

dpoAbnormalBiologicalProcessByQuality needs to be assigned to uPheno patterns

I have started going through your tsv files; the next goal is to break out the individual phenotypes and assign them to the correct uPheno patterns.

https://github.com/FlyBase/drosophila-phenotype-ontology/blob/master/src/patterns/data/original/dpoAbnormalBiologicalProcessByQuality.tsv

For example:

http://purl.obolibrary.org/obo/FBcv_0000718	decreased cell growth	http://purl.obolibrary.org/obo/GO_0016049	cell growth	http://purl.obolibrary.org/obo/PATO_0000911	decreased rate

Needs to be placed in a tsv corresponding to the abnormallyDecreasedRateOfBiologicalProcess pattern.

After the tsv is created and the respective phenotypes are placed in there, you need to:

  1. delete the rows from the dpoAbnormalBiologicalProcessByQuality tsv (the ones you moved over)
  2. delete the last two columns of the abnormallyDecreasedRateOfBiologicalProcess.tsv (the quality and its label; these are now covered by the pattern).

Note that this work may involve creating new uPheno patterns! Ping me of you need help for that.

FBdv import

FBdv import seems to pull in the whole of FBdv, despite only a handful of terms being used. Maybe this is inevitable given the use of SLME, but it has serious consequences for reasoning efficiency for DPO with HermiT or Fact++ compared to reasoning using the stripped down import previously in place.

It should be sufficient to have classification + (x)<-immediately_preceded_by-(y) where x and y are FBdv terms used in DPO.

Rename 'thermotaxis behavior defective'

'thermotaxis' is not a behavior in GO, so 'thermotaxis behavior defective' should be renamed to 'thermotaxis defective' (similar to other 'taxis' phenotypes).

Assign dpoAbnormalAnatomicalEntityByQuality to uPheno patterns

I have started going through your tsv files; the next goal is to break out the individual phenotypes and assign them to the correct uPheno patterns.

https://github.com/FlyBase/drosophila-phenotype-ontology/blob/master/src/patterns/data/archive/dpoAbnormalAnatomicalEntityByQuality.tsv

For example:

http://purl.obolibrary.org/obo/FBcv_0000361	large body	http://purl.obolibrary.org/obo/FBbt_00000001	organism	http://purl.obolibrary.org/obo/PATO_0000586	increased size

Needs to be placed in a tsv corresponding to the increasedSizeOfAnatomicalEntity pattern.

After the tsv is created and the respective phenotypes are placed in there, you need to:

  1. delete the rows from the dpoAbnormalAnatomicalEntityByQuality tsv (the ones you moved over)
  2. delete the last two columns of the increasedSizeOfAnatomicalEntity.tsv (the quality and its label; these are now covered by the pattern).

defective to abnormal in phenotype names

Other phenotype ontologies favour 'abnormal' over 'defective' in phenotype names. This is generally considered to be clearer if it can be any difference from controls (including increases and decreases).
We should consider renaming our phenotypes to use 'abnormal' ('defective' versions can be kept as synonyms)

Cancer phenotypes

Merge 'neoplasia' and 'tumorigenic' because tumor and neoplasia are synonyms.
For definitions, please see:
https://www.cancer.gov/publications/dictionaries/cancer-terms/def/neoplasm
https://www.cancer.gov/publications/dictionaries/cancer-terms/def/tumor

To cover malignancy, please also create the child term 'cancer' and the grandchild term 'metastatic cancer'

1. Tumor:

Preferred term label

tumor

Synonyms

neoplasia

Textual definition

A phenotype that consists of the presence of "an abnormal mass of tissue that forms when cells grow and divide more than they should or do not die when they should. Tumors may be benign (not cancer) or malignant (cancer). Benign tumors may grow large but do not spread into, or invade, nearby tissues or other parts of the body. Malignant tumors can spread into, or invade, nearby tissues. They can also spread to other parts of the body through the blood and lymph systems. Also called neoplasm.
[Please see https://www.cancer.gov/publications/dictionaries/cancer-terms/def/tumor]

parent term

size defective

2. Cancer

Preferred term label

cancer

Synonyms

invasive tumor, malignant tumor, malignancy

Textual definition

A phenotype that consists of the presence of a tumor where cells invade nearby tissues and can also spread to other parts of the body.

[Please see https://www.cancer.gov/publications/dictionaries/cancer-terms/def/cancer]
[Please see https://www.cancer.gov/publications/dictionaries/cancer-terms/def/malignancy]

parent term

tumor

3. Metastatic cancer

Preferred term label

metastatic cancer

Synonyms

metastatic tumor

Textual definition

A phenotype that consists of the presence of a tumor where cells spread to other parts of the body, forming metastasis.

[Please see https://www.cancer.gov/publications/dictionaries/cancer-terms/def/metastasis]

parent term

cancer

Restrictions on aplastic/hypoplastic definition inconsistent with PATO worldview.

It boils down to this:

aplastic, a subclass of aplastic/hypoplastic, is defined in PATO as the intersection of agenesis and aplastic/hypoplastic. agensis explicitly implies "absent". Unfortunately, DPO (FBCV) asserts that aplastic/hypoplastic is a subclass of "decreased size", which, via a trail of complicated expressions, implies "present". Since present and absent are disjoint, aplastic becomes unsatisfiable (inconsistent).

An easy way to fix this would be to remove the assertion that aplastic/hypoplastic is a subclass of decreased size. It is up to you. Is this something you would be willing to fix? It would help me in my agenda to unify phenotype pattern design across species.

fbcvsubset_mgiribbons seems to be slighly accidentally formatted (would not work in the fbcv.obo)

Declaration(AnnotationProperty(:fbcvsubset_mgiribbons))
Declaration(AnnotationProperty(fbcv:BRAIN_NAME_ABV))
Declaration(AnnotationProperty(fbcv:BRAND_NAME))

I am wondering whether i can change that to:

Declaration(AnnotationProperty(fbcv:subset_mgiribbons))
Declaration(AnnotationProperty(fbcv:BRAIN_NAME_ABV))
Declaration(AnnotationProperty(fbcv:BRAND_NAME))

And, of course, fix all other references in the file as well. Note that : is the default namespace, which is ontology iri, so in this here case purl/dpo.owl, so this may not what you want (because you want this to work with fbcv.obo).

Document larval locomotor modes for defining phenotypes

https://www.nature.com/articles/nature14297 FBrf0228257

The paper characterises and escape response circuit and so has behavioral phenotypes in which this response is disrupted. A quick query of FB-chado shows no phenotype curation for this paper:

SELECT p.uniquename from phenotype p JOIN phenstatement ps on ps.phenotype_id = p.phenotype_id JOIN pub on ps.pub_id = pub.pub_id where pub.uniquename = 'FBrf0228257';

=>

uniquename

(0 rows)

Investigate problem with upper level equivalences

This has no bearing on the release, but during qc I noticed that there are some strange equivalences that need to be investigated:

2019-08-16 07:42:48,375 ERROR org.obolibrary.robot.ReasonOperation - Only equivalent classes that have been asserted are allowed. Inferred equivalencies are forbidden.
2019-08-16 07:42:48,376 ERROR org.obolibrary.robot.ReasonOperation - Equivalence: <http://purl.obolibrary.org/obo/CL_0000003> == <http://purl.obolibrary.org/obo/CL_0000000>
2019-08-16 07:42:48,377 ERROR org.obolibrary.robot.ReasonOperation - Equivalence: <http://purl.obolibrary.org/obo/CL_0000000> == <http://purl.obolibrary.org/obo/CARO_0000013>
2019-08-16 07:42:48,377 ERROR org.obolibrary.robot.ReasonOperation - Equivalence: <http://purl.obolibrary.org/obo/CL_0000003> == <http://purl.obolibrary.org/obo/GO_0005623>

In particular I dont like the two CL equivalences..

3 FBcv terms are missing 'phenotypic_class' namespace

The following FBcv terms are under 'phenotype' but are missing the 'phenotypic_class' namespace. This means that they are not loading up into Canto properly (as its presumably using the namespace to 'find' all the phenotypic class terms).

I don't know whether any of the other recently created pheno class terms have a similar issue, but please could the following line be added to these three terms and any others where it is missing:

namespace: phenotypic_class

[Term]
id: FBcv:0007504
name: abnormal body weight
def: "Phenotype that is any abnormality in body weight compared to identically raised wild-type controls." [FBC:CP]
is_a: FBcv:0001347 ! phenotype
created_by: http://orcid.org/0000-0002-1373-1705
creation_date: 2020-12-15T15:47:07Z

[Term]
id: FBcv:0007505
name: increased body weight
def: "Phenotype that is an increase in body weight compared to identically raised wild-type controls." [FBC:CP]
is_a: FBcv:0001347 ! phenotype
created_by: http://orcid.org/0000-0002-1373-1705
creation_date: 2020-12-15T15:50:18Z

[Term]
id: FBcv:0007506
name: decreased body weight
def: "Phenotype that is a decrease in body weight compared to identically raised wild-type controls." [FBC:CP]
is_a: FBcv:0001347 ! phenotype
created_by: http://orcid.org/0000-0002-1373-1705
creation_date: 2020-12-15T15:50:44Z

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.