Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ZFA spatial disjointness violations #378

Open
cmungall opened this issue Nov 13, 2013 · 19 comments
Open

ZFA spatial disjointness violations #378

cmungall opened this issue Nov 13, 2013 · 19 comments

Comments

@cmungall
Copy link
Member

@cmungall
Copy link
Member Author

Some context: these ZFA classes cause problems when imported with bridge axioms to uberon, due to aggressive spatial disjointness axioms in Uberon.

In some cases the disjointness axiom (sometimes sourced externally, eg from ABA) needs to be weakened.

In other cases, ZFA should be fixed

In others, and uberon-ZFA bridging axiom should be fixed.

This should be done on a case by case basis - use Elk.

For now the temp fix is to suppress expansion of problematic constraints by putting status=pending into the axiom annotation

@cmungall
Copy link
Member Author

Tip: use the DL query tab, write queries of form

(part_of some X) and (part_of some Y)

where X and Y are spatially disjoint

Click on ? next to each query result for an answer

@cmungall
Copy link
Member Author

Here is an example:

screen shot 2013-11-12 at 5 11 33 pm

In this particular case we can see confusion arising from use of the term 'head'

cmungall added a commit that referenced this issue Nov 16, 2013
 * Syns for craniocervical region. Addresses issue #379
 * Suppressing expansion of some spatial disjointness axioms. Addresses issue #378
 * Aligned more defs with MP
 * issue #334 - implemented element/bone/cartilage pattern for radials
cmungall added a commit that referenced this issue Nov 23, 2013
 * Suppressed some neuro spatial disjoitness axioms. Addrsses #378
cmungall added a commit that referenced this issue Nov 23, 2013
 * intersomitic vessel overhaul
 * Suppressed some neuro spatial disjoitness axioms. Addrsses #378
 * syns for uber-head. Addresses issue #379
cmungall added a commit that referenced this issue Nov 23, 2013
 * intersomitic vessel overhaul
 * Suppressed some neuro spatial disjoitness axioms. Addrsses #378
 * syns for uber-head. Addresses issue #379
@matentzn
Copy link
Contributor

I am running into this issue again. I am looking at a bunch of unsatisfiable cranial nerves subclasses (most importantly right now 'cranial nerve II' in ZFA, but III, IV and some more have the same problem).

Cranial nerve 2 (CN2) is classified as a nerve, which by Uberon, is part of the peripheral nervous system (PNS). CN2 is also classified as part of the 'brain' which is part of the central nervous system. Now, something must be wrong here, but which:

  1. The brain is part of the CNS
  2. The nerve is part of the PNS
  3. What is part of the CNS cannot be part of the PNS

@cmungall @dosumis if you could tell me which of the three are likely to be too tight to be useful, I will create a pull request to having it removed.

@dosumis
Copy link
Contributor

dosumis commented Sep 21, 2018

image

I think PNS CNS spatial disjointness is tempting to add given the classical lit, but is probably untenable for multiple reasons:

  1. Nerve roots within the CNS (nerve fibre bundles in the CNS that are continuous with nerves proper) are often referred to as nerves (which seems to be the case here). Supporting the disjointness axiom here would require new nerve root terms and some way to relate nerve roots to nerves.

  2. There are some cases where, because of developmental origin, structures referred to as nerves can be considered part of the CNS. This may the case here two. Optic nerve = Cranial nerve II https://en.wikipedia.org/wiki/Optic_nerve -> "The optic nerve is the second of twelve paired cranial nerves and is technically part of the central nervous system, rather than the peripheral nervous system because it is derived from an out-pouching of the diencephalon (optic stalks) during embryonic development." To support this and the disjointness, we'd have to delete "nerve 'part of' some PNS" and add back part relationships to PNS for individual nerves. This is probably not sustainable.

  3. motor neurons extend into nerves but are considered to 'belong; to the CNS; The reverse is true for sensory neurons. If we consider 'belong' to = part_of then CNS and PNS must overlap. Alternatively this can be dealt with by using has_soma_location to record which structure neurons 'belongs' to - something we should probably do anyway.

@cmungall do you agree that this disjointness should be deleted? Or should we try to support it by applying the various fixes above?

@mellybelly
Copy link
Member

Cranial nerves should be part of both CNS and PNS imho.

@dosumis
Copy link
Contributor

dosumis commented Sep 21, 2018

Cranial nerves should be part of both CNS and PNS imho.

That definitely rules out the PNS-CNS spatial disjointness axiom.

@matentzn
Copy link
Contributor

@cmungall @dosumis @mellybelly Who else might have a stake in this decision? Or should I just prepare a pull request?

@cmungall
Copy link
Member Author

How urgent is this? I'd like to put a case for the current position. @dosumis makes excellent points in 1-3, these are all covered by separate tickets give me a chance to find these

@cerivs
Copy link

cerivs commented Sep 21, 2018

The cell bodies of the cranial nerves reside in the brain nuclei. I can't think of any cases where we say different parts of cells are in disjoint systems.

@dosumis
Copy link
Contributor

dosumis commented Sep 21, 2018

"The cell bodies of the cranial nerves reside in the brain nuclei."

We can support that by using has_soma_location to link cells to brain nuclei. I think we need to do this more generally for neuron in CL (we mostly do this in FBbt although have some legacy issues to clear up).

@cmungall
Copy link
Member Author

Who else might have a stake in this decision
@tgbugs @ukemi

@RDruzinsky
Copy link

RDruzinsky commented Sep 21, 2018 via email

@RDruzinsky
Copy link

RDruzinsky commented Sep 21, 2018 via email

@mellybelly
Copy link
Member

@RDruzinsky nice to see you in my inbox.

Do you agree that the cranial nerves should be part of both PNS and CNS?

@RDruzinsky
Copy link

RDruzinsky commented Sep 21, 2018 via email

@cmungall
Copy link
Member Author

Here is my explanation of the current way of modeling this.

Let me preface this by saying that of course we can modify the ontology according to consensus. There is no right or wrong answers here, just modeling choices.

First, I like simplicity. A definition of the PNS as being the parts of the NS outside the brain and spinal cord is both simple and IMO biologically/anatomically defensible. In particular these kinds of simple pairwise-spatially-disjoint-exhaustive spatial partitions are the norm for atlases, and I assume consistency with atlases is a goal (for more details on what I mean by spatially disjoint see this design pattern on the uberon wiki).

Another advantage of simple clear non-subjective divisions is that it makes it easier to represent things in a consistent way.

I also think any alternative has undesirable properties. I see 3 alternatives, (a) the dual part-of suggested here, (b) no part-of, and (c) two separate classes

I'm not aware of any AO that has nerve (or any structure) that is part of both CNS and of PNS. Note that if we make these assertions this entails some odd things, such as the CNS extending throughout the whole body touching the skin. A query for structures localized to the CNS would necessarily return results for structures localized to nerve endings - this seems undesirable. On top of this, I think having multiple part-of relationships for a single structure along a single axis of classification is a bad smell pattern and has many undesirable structural properties, leading to more hairballs etc.

The more common alternative is simply not to make any part-of relationship at all (of course, we would have overlaps relationships, either explicit or implicit, but these are far less useful for common AO use cases). This is what ZFA does, nerve is directly under nervous system. Some subclasses of nerves are asserted to be part-of the PNS, but not all (not sure of the criteria). This means that sometimes queries for PNS will yield incomplete results. I am still open to this proposal, but we need clearer guidelines on when a nerve should be part-of PNS vs just NS.

Another option is to have two classes, e.g. "PNS part of nerve" and "nerve plus nerve root". But I think this has some undesirable properties.

As for the current representation in Uberon, how do we deal with the issues David mentions? I'll address these in order 2,1,3

2: The optic "nerve". I believe this is the only example in this category. I think this is largely terminological. The current solution to this is outlined here: #298 (comment)

3: Yes, we really need to implement the has_some_part_of solution. This is needed regardless of this issue, as many relationships in CL are simply wrong

1: nerve roots. For more on how we represent this see the nerve root class.

Def: A continuation of the neuron projection bundle component of a nerve inside, crossing or immediately outside the central nervous system

Editor note: We consider cranial nerve roots to be primarily CNS structures, but model spinal nerve roots as PNS structures, due to the existence of ganglia on the roots.

Also some discussion of the FMA representation in #286

So overall there is no logical issue here, and IMO this makes sense biologically.

I'm happy to make the decision the community wants but I urge people to think through the issues and look at related documentation and tickets such as #298

@cmungall
Copy link
Member Author

if the distinction between central and peripheral
is some anatomical boundary (such as the point at which a nerve or nerve
root emerges from the brainstem or spinal cord, then all of those neurons
are in both the CNS and PNS

I think you mean that they overlap both the CNS and PNS? Remember if A part-of B, then every part-of is also a part-of B.

@tgbugs
Copy link
Contributor

tgbugs commented Sep 22, 2018

Here are my preliminary thoughts on this.

I too have been bitten by CNS-PNS disjointness in my dealings with the old
modeling in the NIF ontology. However, I think that making nerves part of
both PNS and CNS completely destroys the strict ontological meaning of part of
as it is used in uberon and would be a huge breaking change. The simplest solution
in my mind is to have an additional relationship which makes it possible to bridge
the usage of part of at two different scales (namely cellular and anatomical),
the word that comes to mind for me is constitution but there may be a more suitable word.

My thinking is as follows. It is more important to preserve the meaning
of part of as it is used in both the cellular context and the anatomical
context than it is to try to come up with a way to bridge the two that
also uses part of.

Nerve roots provide a clear solution to this. So here I agree with
Chris. We have the nerve roots and the nerve that are part of two disjoint things.
Therefore we cannot use 'nerve root' 'is part of' 'nerve' which to my mind is
a good modeling choice. We have already made a distinction between these two
things. The root is not part of the nerve. They may both be 'constituted by'
parts of the same axon.

Given that part of is used so pervasively for dealing with purely conceptual
(i.e. immaterial) boundaries in anatomy, I think it is important not to break
this usage. If we accept that nerve roots 'are not' nerves, then there is no
fundamental conflict.

The idea of constitution helps here because once we see that the nerves
and the roots are going to be constituted by axons, then we have cleanly
broken the cellular usage of part of from the anatomical usage of part of.
That is to say that by the strict definition of part of, axons are not
part of nerves, which is in my opinion the correct understanding of the
relationship between an axon and a nerve. I would say instead that parts of
axons constitute nerves.

Based on the current usage of part of and location, neurons are not part of any
single structure with non-disjoint parts. Similarly the idea that a neuron as a
whole has a definite location with respect to non-disjoint anatomical regions
is also false. It is also the cases that non-disjoint parts of neurons (in this
case axons) are not located in any single non-disjoint anatomical region (in
this case CNS/PNS).

Thus the question is how to relate disjoint parts of neurons to
disjoint parts of anatomical entities.

Removing the disjointness axioms in one
domain (here it is suggested to remove them from the anatomical domain) to try to
satisfy the needs of another domain is not a viable solution. Countless use cases
would be broken.

I need to give it more thought, but I suspect that it is possible to model this
using the idea of location, as an alternative to the idea of constitution.
This is because it seems fair to say 'the part of the axon located in the CNS'
and 'the part of the axon that is located in the PNS.' Just as it is fair to
say 'the part of the axon that constitutes the nerve root' and 'the part of the
axon that constitutes the nerve.'

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

7 participants