Guidelines for logical definitions: Difference between revisions

From GO Wiki
Jump to navigation Jump to search
mNo edit summary
mNo edit summary
(20 intermediate revisions by the same user not shown)
Line 2: Line 2:




  NEED TO DESCRIBE HOW TO DEFINE SPECIFIC TYPES OF TERMS: for example protein complex:  
'''Note: Equivalence Axioms (or Logical Definitions) used to be referred to as 'cross-products', but we have largely abandoned this nomenclature. '''
Discussion GO editors 2019-05-06: We sould only add 'capable of' MF when there is an emerging function
----


==Moved from the GO website: TO REVIEW==
==Equivalence Axioms==
'''Equivalence Axioms''', also known as '''Logical Definitions (LD)''', are '''computable logical definitions''' that complement the existing text definitions. Equivalence Axioms enable tools to access the data and perform tasks and analyses that would be time-consuming and work intensive for humans. One aspect that can aid automated access to the ontology is creating


  See also http://wiki.geneontology.org/index.php/Logical_Definitions
==Structure of Equivalence Axioms==
Equivalence Axioms are in the '''genus-differentia form''', such that an equivalence axiom consists of:  
* a '''genus''': the broader class to which the term belongs, and
* one or more '''differentia''':  the property/ies that distinguish the term from other members of the same class.  


Examples:


* '''mitochondrial DNA replication''' ''is'' DNA replication that ''occurs in'' a mitochondrion
** genus: 'DNA replication'
** differentia: 'occurs in' some mitochondrion


Cross-Products and Logical Definitions
[Term]
To be maximally useful, the Gene Ontology should be accessible to computers as well as to human users, enabling tools to access the data and perform tasks and analyses that would be time-consuming and work intensive for humans. One aspect that can aid automated access to the ontology is creating computable logical definitions to complement the existing text definitions. These logical definitions are in the genus-differentia form: the definition consists of the genus, the broader class to which the term belongs, and the differentia, the properties that distinguish the term from other members of the class. For example:
id: GO:0006264
name: mitochondrial DNA replication
namespace: biological_process
def: "The process in which new strands of DNA are synthesized in the mitochondrion." [GOC:ai]
is_a: GO:0006261 ! DNA-dependent DNA replication
intersection_of: GO:0006260 ! DNA replication
intersection_of: occurs_in GO:0005739 ! mitochondrion


mitochondrial DNA replication is DNA replication that occurs in a mitochondrion
* '''lysosomal membrane''' ''is'' the membrane that ''surrounds'' a lysosome
** genus: 'whole membrane'
** differentia:  and 'bounding layer of' some lysosome


DNA replication is the genus and the differentia is occurs in a mitochondrion.


lysosomal membrane is the membrane that surrounds a lysosome
[Term]
id: GO:0005765
name: lysosomal membrane
namespace: cellular_component
def: "The lipid bilayer surrounding the lysosome and separating its contents from the cell cytoplasm." [GOC:ai]
is_a: GO:0005774 ! vacuolar membrane
intersection_of: GO:0098805 ! whole membrane
intersection_of: bounding_layer_of GO:0005764 ! lysosome
relationship: part_of GO:0005764 ! lysosome


membrane is the genus and the differentia is surrounds a lysosome.
  IS THIS STILL RIGHT :
  These definitions of terms created by combining other terms with relations are called cross-products in GO parlance. In the OBO 1.2 ('''NOTE: CURRENT VERSION is 1.4 ???? 1.4 according to GO website but GO-edit states 1.2''') format file, the human-readable text definition is held in the def line, and the cross-product definition in the intersection_of lines of a stanza. The cross-products above would be represented as follows:


If we use ontology terms in the genus and the differentia, we can see that these logical definitions take the general form


term = term that relation term
==Types of differentia classes allowed==
Differentia can be made with terms from ontologies other than GO.


For example:
Examples:


mitochondrial DNA replication is DNA replication that occurs in a mitochondrion
* '''megasporocyte nucleus''' ''is a'' '''nucleus''' that is ''part of'' a '''megasporocyte'''


lysosomal membrane is a membrane that surrounds a lysosome
[Term]
id: GO:0043076
name: megasporocyte nucleus
namespace: cellular_component
def: "The nucleus of a megasporocyte, a diploid cell that undergoes meiosis to produce four megaspores, and its descendents." [GOC:jl, ISBN:0618254153]
synonym: "megaspore mother cell nucleus" EXACT []
is_a: GO:0005634 ! nucleus
intersection_of: GO:0005634 ! nucleus
intersection_of: part_of PO:0000431 ! megasporocyte


These definitions of terms created by combining other terms with relations are called cross-products in GO parlance. In the OBO 1.2 format file, the human-readable text definition is held in the def line, and the cross-product definition in the intersection_of lines of a stanza. The cross-products above would be represented as follows:
* '''osteoblast development''' ''is'' '''cell development''' that ''results in the complete development'' of an '''osteoblast'''


        [Term]
[Term]
        id: GO:0006264
id: GO:0002076
        name: mitochondrial DNA replication
name: osteoblast development
        def: "The process whereby new strands of DNA are synthesized in the mitochondrion." [source: GOC:ai]
namespace: biological_process
        intersection_of: GO:0006260 ! DNA replication
def: "The process whose specific outcome is the progression of an osteoblast over time, from its formation to the mature structure. Osteoblast development does not include the steps involved in committing a cranial neural crest cell or an osteoprogenitor cell to an osteoblast fate. An osteoblast is a cell that gives rise to bone." [GOC:dph]
        intersection_of: OBO_REL:occurs_in GO:0005739 ! mitochondrion
is_a: GO:0048468 ! cell development
intersection_of: GO:0032502 ! developmental process
intersection_of: results_in_development_of CL:0000062 ! osteoblast
relationship: part_of GO:0001649 ! osteoblast differentiation


        [Term]
        id: GO:0005765
        name: lysosomal membrane
        def: "The lipid bilayer surrounding the lysosome and separating its contents from the cell cytoplasm." [source: GOC:ai]
        intersection_of: GO:0016020 ! membrane
        intersection_of: part_of GO:0005764 ! lysosome


Cross-Products with external ontologies
==Equivalence Axioms must be 'necessary and sufficient' to define a GO class==
Cross-products need not be restricted to terms within GO; cross-products can also be created by combining GO terms with those from other ontologies. For example, by using the Cell Ontology, we can easily extract cell type information from GO terms. For example:
* For some background see the '''[https://en.wikipedia.org/wiki/Necessity_and_sufficiency Necessity and sufficiency]''' article in Wikipedia.


megasporocyte nucleus (GO:0043076) is a nucleus (GO:0005634) that is part of a megasporocyte (CL:0000320)
  THIS IS NOT CLEAR TO ME: Are we saying that part_of is a necessity condition?
* In GO, some relationships assert classification (a '''nucleolus''' ''is a'' class of organelle), others make statements about necessary conditions for being a member of a class (being ''part of'' a '''nucleus''' is a necessary condition of being in the class '''nucleolus'''). 
* Other relationships specify both necessary and sufficient conditions for being a class member (any channel activity that transports ions is an ion channel activity). Along with reasoning software, we can use these to automate classification.


        [Term]
==Molecular function==
        id: GO:0043076
Equivalent axioms for MF that include 'binding': use 'has_part' some binding (see https://github.com/geneontology/go-ontology/issues/14266)
        name: megasporocyte nucleus
        def: "The nucleus of a megasporocyte, a diploid cell that undergoes meiosis to produce four megaspores, and its descendents."
        [source: GOC:jl, ISBN:0618254153]
        intersection_of: GO:0005634 ! nucleus
        intersection_of: part_of CL:0000320 ! megasporocyte
 
osteoblast development (GO:0002076) is cell development (GO:0048468) that results in the complete development of an osteoblast (CL:0000062)
 
        [Term]
        id: GO:0002076
        name: osteoblast development
        def: "The process whose specific outcome is the progression of an osteoblast over time, from its formation to the mature structure. Osteoblast development does not include the steps involved in committing a cranial neural crest cell or an osteoprogenitor cell to an osteoblast fate. An osteoblast is a cell that gives rise to bone." [source: GOC:dph]
        intersection_of: GO:0048468 ! cell development
        intersection_of: OBO_REL:results_in_complete_development_of CL:0000062 ! osteoblast
 
Cross-products are currently being retrofitted to existing ontology terms and added to new terms. Eventually, the hope is that cross-products could be dynamically generated, rather than having be added manually each time a new term is required. This would obviate the need for some of highly specific terms in GO—for example, many of the terms referring to organism anatomy or chemical entities—and simplify ontology searches and browsing.


More information on the ongoing work on cross-products can be found in the cross-products category on the GO wiki.
==When to add an equivalence axiom==
An equivalence axiom can be added when there is a criteria that can be specified that distinguishes the GO class from its parent and siblings. Hence, top-level classes cannot have equivalence axioms, since a genera from GO is needed.  




==Define 'necessary and sufficient'==  
===Equivalence axioms for specific GO classes===
Some relationships assert classification (a nucleolus is a class of organelle), others make statements about necessary conditions for being a member of a class (being part of a nucleus is a necessary condition of being in the class nucleolus).  Other relationships specify both necessary and sufficient conditions for being a class member (any channel activity that transports ions is an ion channel activity). Along with reasoning software, we can use these to automate classification. 
 
++ How can you tell that a term's equivalence axioms are necessary and sufficient?


==Molecular function==
==Molecular function==
Equivalent axioms for MF that include 'binding': use 'has_part' some binding (see https://github.com/geneontology/go-ontology/issues/14266)




==Children of transcription regulator activity==
Examples:
===Children of transcription regulator activity===


For example: DNA-binding transcription factor activity
For example: DNA-binding transcription factor activity
Line 91: Line 104:
'part of' some 'regulation of transcription, DNA-templated'
'part of' some 'regulation of transcription, DNA-templated'
'has necessary component activity' some 'transcription regulatory region sequence-specific DNA binding'
'has necessary component activity' some 'transcription regulatory region sequence-specific DNA binding'
  NEED TO DESCRIBE HOW TO DEFINE SPECIFIC TYPES OF TERMS: for example protein complex:
* Discussion GO editors 2019-05-06: We should only add 'capable of' MF when there is an emerging function
* in this case these are different functions, not some emerging function of the complex. We would capture a logical definition only if there is one overall function for the complex.
==Biological processes==
===x biosynthesis===
'biosynthetic process'
and ('has primary output' some x)
Can add individual reactions as subclasses


==Using the reasoner in Protégé==
==Using the reasoner in Protégé==

Revision as of 13:03, 13 April 2020

  In progress


Note: Equivalence Axioms (or Logical Definitions) used to be referred to as 'cross-products', but we have largely abandoned this nomenclature.


Equivalence Axioms

Equivalence Axioms, also known as Logical Definitions (LD), are computable logical definitions that complement the existing text definitions. Equivalence Axioms enable tools to access the data and perform tasks and analyses that would be time-consuming and work intensive for humans. One aspect that can aid automated access to the ontology is creating

Structure of Equivalence Axioms

Equivalence Axioms are in the genus-differentia form, such that an equivalence axiom consists of:

  • a genus: the broader class to which the term belongs, and
  • one or more differentia: the property/ies that distinguish the term from other members of the same class.

Examples:

  • mitochondrial DNA replication is DNA replication that occurs in a mitochondrion
    • genus: 'DNA replication'
    • differentia: 'occurs in' some mitochondrion
[Term]
id: GO:0006264
name: mitochondrial DNA replication
namespace: biological_process
def: "The process in which new strands of DNA are synthesized in the mitochondrion." [GOC:ai]
is_a: GO:0006261 ! DNA-dependent DNA replication
intersection_of: GO:0006260 ! DNA replication
intersection_of: occurs_in GO:0005739 ! mitochondrion
  • lysosomal membrane is the membrane that surrounds a lysosome
    • genus: 'whole membrane'
    • differentia: and 'bounding layer of' some lysosome


[Term]
id: GO:0005765
name: lysosomal membrane
namespace: cellular_component
def: "The lipid bilayer surrounding the lysosome and separating its contents from the cell cytoplasm." [GOC:ai]
is_a: GO:0005774 ! vacuolar membrane
intersection_of: GO:0098805 ! whole membrane
intersection_of: bounding_layer_of GO:0005764 ! lysosome
relationship: part_of GO:0005764 ! lysosome
  IS THIS STILL RIGHT : 
 These definitions of terms created by combining other terms with relations are called cross-products in GO parlance. In the OBO 1.2 (NOTE: CURRENT VERSION is 1.4 ???? 1.4 according to GO website but GO-edit states 1.2) format file, the human-readable text definition is held in the def line, and the cross-product definition in the intersection_of lines of a stanza. The cross-products above would be represented as follows:


Types of differentia classes allowed

Differentia can be made with terms from ontologies other than GO.

Examples:

  • megasporocyte nucleus is a nucleus that is part of a megasporocyte
[Term]
id: GO:0043076
name: megasporocyte nucleus
namespace: cellular_component
def: "The nucleus of a megasporocyte, a diploid cell that undergoes meiosis to produce four megaspores, and its descendents." [GOC:jl, ISBN:0618254153]
synonym: "megaspore mother cell nucleus" EXACT []
is_a: GO:0005634 ! nucleus
intersection_of: GO:0005634 ! nucleus
intersection_of: part_of PO:0000431 ! megasporocyte
  • osteoblast development is cell development that results in the complete development of an osteoblast
[Term]
id: GO:0002076
name: osteoblast development
namespace: biological_process
def: "The process whose specific outcome is the progression of an osteoblast over time, from its formation to the mature structure. Osteoblast development does not include the steps involved in committing a cranial neural crest cell or an osteoprogenitor cell to an osteoblast fate. An osteoblast is a cell that gives rise to bone." [GOC:dph]
is_a: GO:0048468 ! cell development
intersection_of: GO:0032502 ! developmental process
intersection_of: results_in_development_of CL:0000062 ! osteoblast
relationship: part_of GO:0001649 ! osteoblast differentiation


Equivalence Axioms must be 'necessary and sufficient' to define a GO class

 THIS IS NOT CLEAR TO ME: Are we saying that part_of is a necessity condition? 
  • In GO, some relationships assert classification (a nucleolus is a class of organelle), others make statements about necessary conditions for being a member of a class (being part of a nucleus is a necessary condition of being in the class nucleolus).
  • Other relationships specify both necessary and sufficient conditions for being a class member (any channel activity that transports ions is an ion channel activity). Along with reasoning software, we can use these to automate classification.

Molecular function

Equivalent axioms for MF that include 'binding': use 'has_part' some binding (see https://github.com/geneontology/go-ontology/issues/14266)

When to add an equivalence axiom

An equivalence axiom can be added when there is a criteria that can be specified that distinguishes the GO class from its parent and siblings. Hence, top-level classes cannot have equivalence axioms, since a genera from GO is needed.


Equivalence axioms for specific GO classes

Molecular function

Examples:

Children of transcription regulator activity

For example: DNA-binding transcription factor activity

transcription regulator activity 'part of' some 'regulation of transcription, DNA-templated' 'has necessary component activity' some 'transcription regulatory region sequence-specific DNA binding'


 NEED TO DESCRIBE HOW TO DEFINE SPECIFIC TYPES OF TERMS: for example protein complex: 
  • Discussion GO editors 2019-05-06: We should only add 'capable of' MF when there is an emerging function
  • in this case these are different functions, not some emerging function of the complex. We would capture a logical definition only if there is one overall function for the complex.


Biological processes

x biosynthesis

'biosynthetic process'

and ('has primary output' some x)

Can add individual reactions as subclasses


Using the reasoner in Protégé

Back to: Editing the Ontology