obophenotype / upheno

The Unified Phenotype Ontology (uPheno) integrates multiple phenotype ontologies into a unified cross-species phenotype ontology.
https://obophenotype.github.io/upheno/
Creative Commons Zero v1.0 Universal
75 stars 17 forks source link

Review abnormalCellProliferation #316

Open srobb1 opened 5 years ago

srobb1 commented 5 years ago

abnormalCellProliferation.yaml

Currently PLANP would be unable to use this pattern since it is restricted to

anatomical entity: UBERON:0001062

The planarian anatomy ontology (PLANA) has 'anatomical entity' but it has a PLANA id and has UBERON:0001062 as a dbxref.

There are quite a few other anatomy ontologies that have the same design.

I suggest using entity: BFO:0000001

Also, this pattern uses 'inheres_in_part_of: RO:0002314'. All of the other patterns PLANP has used 'inheres_in: RO:0000052'. Would this be an issue?

Sofia

matentzn commented 5 years ago

In order for anatomy patterns to interoperate, we need to align the external anatomy ontologies (such as wbbt, zfa, plana, xao) with UBERON. This is going to be a gradual process we will realise later in the process by curating xrefs between those ontologies and Uberon.

So with that goal in mind it is best to leave all the UBERON restrictions in there; you can use the pattern even without uberon alignment in any case; problems occur only when checking pattern conformance later.

cmungall commented 5 years ago

Yep, this should work for any metazoan - we should think what our strategy is for including fungi and plants

srobb1 commented 5 years ago

Great! That will be awesome for the xrefs to be used to link ontologies!!

srobb1 commented 5 years ago

Can someone explain the difference between 'inheres_in_part_of' and 'inheres_in'. I see that most of the patterns use 'inheres_in'. Will it be an issue to use both in one ontology?

balhoff commented 5 years ago

`inheres in part of is just a chain of something that inheres in something that is part of something else. So if you had a triangular that inheres in a dorsal fin, and dorsal fin is part of body, you could say ‘triangular and inheres in part of some body’. But it doesn’t inhere in it; the body is not triangular.

drseb commented 5 years ago

I drew a picture a while ago, maybe this also helps you:

screenshot 2019-02-01 at 20 31 28
nicolevasilevsky commented 5 years ago

I think in this pattern we would want to use 'quality' instead of 'process quality'

equivalentTo: text: "'has_part' some ('process quality' and ('inheres_in_part_of' some (cell_proliferation and ('occurs in' some %s))) and ('qualifier' some 'abnormal'))" vars:

matentzn commented 5 years ago

@nicolevasilevsky can you give some explanations why? just learning pato :P

nicolevasilevsky commented 5 years ago

I am only basing this on the fact that MP uses quality instead of process quality - I actually don't know what is the appropriate term to use.

It doesn't look like MP uses process quality at all in any of the logical defs.

HP uses it in only two terms:

HP_0012647 'Abnormal inflammatory response' 'has part' some ('process quality' and ('inheres in' some 'inflammatory response') and ('has modifier' some abnormal))

HP_0040224 'Abnormality of fibrinolysis' 'has part' some ('process quality' and ('inheres in part of' some fibrinolysis) and ('has modifier' some abnormal))

matentzn commented 5 years ago

I dont mind either way; my general feeling is to pick the constraints that most accurately reflect the intention of the pattern; if this pattern is about abnormal process quality, it should use that, no matter who is using it how at the moment; lets see what the others say.

drseb commented 5 years ago

It is important to use process quality here and it should be checked in other patterns as well. But let’s discuss if other mods are okay with this step as it might cause more work, because existing defs need to be revised

ybradford commented 5 years ago

I agree that if entity= process a process quality should be used. This is how it was originally intended to be used as I understand it. This is the way ZFIN has used it and constrains annotations with this in mind.

Clare72 commented 5 years ago

DPO also uses children of 'process quality' for processes.

For this pattern, I don't think the name and definition will work well if you want to use a cell type e.g. neuroblast, rather than a location e.g. brain. I'm not sure if type and location style terms can be incorporated into the same pattern, so there might need to be another pattern, maybe "abnormalCellProliferationByCellType" and rename the current one "abnormalCellProliferationByLocation".

matentzn commented 5 years ago

If I understand @cmungall and his OBO core efforts correctly, we will soon have some kind of minimal biological upper layer which has a concept called 'Anatomical structure', that encompasses both cells and anatomical entities/regions. However, it is indeed debatable whether something that affects all cells of a certain kind is the same as something that effects an anatomical entity; i mean AFAIK cells of one type can be kind of scattered everywhere and not really belong to a coherent anatomical structure. Food for thought! @dosumis @cmungall

drseb commented 5 years ago

Wouldn’t it technically be possible to state in the pattern that multiple classes can be possible here? E.g. „cell“ or „anatomical entity“?

Sent from mobile

Am 06.02.2019 um 13:02 schrieb Nico Matentzoglu notifications@github.com:

If I understand @cmungall and his OBO core efforts correctly, we will soon have some kind of minimal biological upper layer which has a concept called 'Anatomical structure', that encompasses both cells and anatomical entities/regions. However, it is indeed debatable whether something that affects all cells of a certain kind is the same as something that effects an anatomical entity; i mean AFAIK cells of one type can be kind of scattered everywhere and not really belong to a coherent anatomical structure. Food for thought! @dosumis @cmungall

— You are receiving this because you commented. Reply to this email directly, view it on GitHub, or mute the thread.

matentzn commented 5 years ago

No, by design DOSDP is taking the dead simple very seriously.. You will need to have two patterns.

mellybelly commented 5 years ago

a few things that may be relevant. In CARO cells are anatomical entities, I thought this was still true in the OBO Core (as per @matentzn comment above). Agree that process quality should be used here, proliferation is a process. It does seem like we need two patterns, one that is simply abnormal process, and one where an abnormal process is part of another anatomical entity (and thereby infer that there may be phenotypic outcomes upon that entity)? Is this what you mean @matentzn ?

matentzn commented 5 years ago

Oh, I might have misread the pattern before. Yeah @mellybelly you are right, probably we need three patterns here:

  1. abnormalCellProliferation (or what @Clare72 calls more accurately abnormalCellProliferationByCellType) (domain: cell type)
  2. abnormalCellProliferationInALocation (domain: anatomical entity)
  3. abnormalCellProliferationByCellTypeInALocation (if necessary)

The domain should be as specific as possible, not anatomical structure in general! @Clare72 good catch.

drseb commented 5 years ago

I thought the problem is the missing class that unites cells and other anatomical entities!?

matentzn commented 5 years ago

Not in this case; because if we distinguish the patterns as I suggest, we can have a distinct pattern for each one. But for other patterns where this is relevant: we will have a class soon, in OBO core.

drseb commented 5 years ago

Ok. Understood now. Sorry

matentzn commented 5 years ago

Its all still a bit confusing, but soon there will be clarity I think :-)

dosumis commented 5 years ago

equivalentTo: text: "'has_part' some ('process quality' and ('inheres_in_part_of' some (cell_proliferation and ('occurs in' some %s))) and ('qualifier' some 'abnormal'))" vars:

  • anatomical_entity

We should align compound entities with source ontologies - using the relationships they use. This maximises inference.

In this case we should use whatever GO uses. GO has:

acinar cell proliferation: 'cell population proliferation' and (acts_on_population_of some 'acinar cell')

cell proliferation in forebrain: 'cell population proliferation' and ('occurs in' some forebrain)

We should therefore have two patterns reflecting this:

abnormal_proliferation_of abnormal cell proliferation_in

The range of the var in the first pattern should be 'cell'

Ideally the range of the var in the second pattern would be 'multicellular anatomical structure'. This is in CARO, but we need to check whether Uberon supports it. Failing that we can use 'anatomical structure' which subsumes cell but name write the pattern description and name the var to make clear we want multicellular structures only.

matentzn commented 5 years ago

+1 on Davids suggestion!

dosumis commented 5 years ago

Discussion on Phenotype call:

All agree that we should follow GO and have two patterns as described above -

X cell proliferation: 'cell population proliferation' and (acts_on_population_of some 'X')

cell proliferation in X: 'cell population proliferation' and ('occurs in' some X)

'cell population proliferation' and (acts_on_population_of some 'X') and ('occurs_in some X)

nicolevasilevsky commented 5 years ago

I will create two new patterns for this

nicolevasilevsky commented 5 years ago

I am confused, should abnormal cell proliferation in an anatomical entity have the logical def: 'cell population proliferation' and (acts_on_population_of some 'X') and ('occurs_in some X)

?

nicolevasilevsky commented 5 years ago

here is one pattern: https://github.com/obophenotype/upheno/blob/master/src/patterns/dosdp-dev/abnormalCellProliferationInAnatomicalEntity.yaml

not sure if this is right, but it is a starting place

nicolevasilevsky commented 5 years ago

is there an existing relation for acts_on_population_of ?

nicolevasilevsky commented 5 years ago

@dosumis and @matentzn

dosumis commented 5 years ago

is there an existing relation for acts_on_population_of ?

There is in GO. I didn't realise until now, but this seems to be a relation never made it out of GO into RO.

It has a the iri: http://purl.obolibrary.org/obo/GOREL_0001006

I think the only public release file you'll see this in is go-plus.owl, which is still not loaded by any ontology portals (!). We might be able to use it with this ID for now - as long as it is in go-base.owl, but It really needs to be migrated to RO.

dosumis commented 5 years ago

It's in go-base - so should be usable:

image

It's possible that DOSDP-tools will have some issues with the curie. You might want to try obo:GOREL_0001006 in relations dict.

matentzn commented 4 years ago

We have

We still need

@nicolevasilevsky would you mind making PRs for those?

matentzn commented 4 years ago

@nicolevasilevsky on closer look,

https://github.com/obophenotype/upheno/blob/master/src/patterns/dosdp-dev/abnormalCellProliferationInAnatomicalEntity.yaml is also wrong! It inheres in a GO term! Can you fix? :) Thaaanks (moved it to dosdp workshop for the time being)

matentzn commented 4 years ago

Fixed above pattern last comment.