|
|
(16 intermediate revisions by 4 users not shown) |
Line 1: |
Line 1: |
− | =RO - OBO Relation Ontology= | + | = Announcement = |
| | | |
− | The main RO page is located on [http://obofoundry.org/ro The OBO Foundry Website]
| + | OBO_REL has been replaced by RO - the new website and wiki can be found at http://purl.obolibrary.org/obo/ro |
| | | |
− | You can browse the ontology and get e-mail list details there.
| + | Old material that was previously kept here has been moved to [[RO:Historic Material]] |
− | | |
− | =Open issues=
| |
− | | |
− | An RO expert meeting took place in May, 2008. See [[OntologyRelations]] for notes and presentations.
| |
− | | |
− | Note that requests for new terms etc should go in the [http://sourceforge.net/tracker/?group_id=76834&atid=947684 RO tracker]
| |
− | | |
− | Mike And Chris' Relation Ontology Proposed (MACROP), a list targets relations is [[MACROP]]
| |
− | | |
− | ==Three types of relations==
| |
− | | |
− | The OBO Relation Ontology (aka the OBO Relationship Types Ontology) distinguished three families of relations, according to whether they hold between instances, types, or combinations thereof, for example:
| |
− | | |
− | *1. '''instance_of''' holding between an instance and a type
| |
− | *2. '''part_of''' holding between an instance and an instance
| |
− | *3. ''part_of'' holding between a type and a type
| |
− | | |
− | We use bold face to mark out those relational expressions used in ontologies such as GO to represent the relations between the types these ontologies represent.
| |
− | | |
− | In the original Genome Biology [http://genomebiology.com/2005/6/5/R46 paper] we focused primarily on defining relations of type 3. in terms of those of types 1. and 2. This was to meet the need among biologists for clear guidance as to what the relational expressions used in ontologies such as GO precisely mean.
| |
− | | |
− | In our treatment of relations of types 1. and 2. we focused primarily on picking out certain instance level relations which we fixed on as primitive -- meaning that they are so basic to the relational architecture of reality that they cannot be defined in terms of anything more basic. The primitive relations selected were as follows:
| |
− | | |
− | *c '''instance_of''' C '''at''' t - a primitive relation between a continuant instance and a class which it instantiates at a specific time
| |
− | | |
− | *p '''instance_of''' P - a primitive relation between a process instance and a class which it instantiates holding independently of time
| |
− | | |
− | *c '''part_of''' c1 '''at''' t - a primitive relation between two continuant instances and a time at which the one is part of the other
| |
− | | |
− | *p '''part_of''' p1, r '''part_of''' r1 - a primitive relation of parthood, holding independently of time, either between process instances (one a subprocess of the other), or between spatial regions (one a subregion of the other)
| |
− | | |
− | *c '''located_in''' r '''at''' t - a primitive relation between a continuant instance, a spatial region which it occupies, and a time
| |
− | | |
− | *r '''adjacent_to''' r1 - a primitive relation of proximity between two continuants
| |
− | | |
− | *t '''earlier''' t1 - a primitive relation between two times
| |
− | | |
− | *c '''derives_from''' c1 - a primitive relation involving two distinct material continuants c and c1
| |
− | | |
− | *p '''has_participant''' c '''at''' t - a primitive relation between a process, a continuant, and a time
| |
− | | |
− | *p '''has_agent''' c at '''t''' - a primitive relation between a process, a continuant and a time at which the continuant is causally active in the process
| |
− | | |
− | In proposing new relations (both on the [http://www.bioontology.org/wiki/index.php/RO:Main_Page#Proposed_new_relations wiki] and in the http://sourceforge.net/tracker/?group_id=76834&atid=947684&func=browse Sourceforge Tracker], please specify to which of the three types your proposed relation belongs.
| |
− | | |
− | *If it is an instance-level relation, please answer the following questions:
| |
− | **a. is it already on the list above?
| |
− | **b. is it primitive in the above-mentioned sense?
| |
− | *If the answer to both of these questions is no,
| |
− | **c. can it be defined in terms of the relations on the above list?
| |
− | *If yes, please supply a definition (an example is provided below)
| |
− | *If no, please propose also those primitive instance-level relations which would need to be added to the RO in order to define it.
| |
− | | |
− | ==How to Define an Instance-Level Relation==
| |
− | | |
− | First, check whether your proposed relation needs a definition -- perhaps it is primitive (see above).
| |
− | | |
− | All definitions specify necessary and sufficient conditions. Thus if we are defining what it is to be an A, then the definition might read, for example:
| |
− | | |
− | x is an A =def. x has features F1, F2, F3.
| |
− | | |
− | This definition would be correct if and only if everything which has features F1, F2, and F3 is an A, and everything which is an A has features F1, F2, and F3.
| |
− | | |
− | For instance-level relations, the definition might read as follows:
| |
− | | |
− | x stands in instance-level relation r to y =def. x has features F1, F2, y has features F3, F4, x stands in instance-level relations r1, r2 to y.
| |
− | | |
− | For a specific example consider '''preceded_by''', a relation between occurrents (drawn from the RO paper).
| |
− | | |
− | With the primitive relations '''has_participant''' and '''earlier''' at our disposal we first define the instance-level relation p '''occurring_at''' t as follows:
| |
− | | |
− | p '''occurring_at''' t =def. for some c, p '''has_participant''' c '''at''' t.
| |
− | | |
− | We can then define:
| |
− | | |
− | c '''exists_at''' t =def. for some p, p '''has_participant''' c '''at''' t
| |
− | | |
− | p '''preceded_by''' p1 =def. for all t, t1, if p '''occurring_at''' t and p1 '''occurring_at''' t1, then t1 '''earlier''' t
| |
− | | |
− | :t '''first_instant''' p =def.
| |
− | ::p '''occurring_at''' t, and
| |
− | ::for all t1, if t1 '''earlier''' t, then not p '''occurring_at''' t1
| |
− | | |
− | :t '''last_instant''' p =def.
| |
− | ::p '''occurring_at''' t and
| |
− | ::for all t1, if t '''earlier''' t1, then not p '''occurring_at''' t1
| |
− | | |
− | :p '''immediately_preceded_by''' p1 =def.
| |
− | ::for some t, t '''first_instant''' p and
| |
− | ::t '''last_instant''' p1.
| |
− | | |
− | In these terms we can also define the instance-level relation '''has_duration''' proposed by Liju:
| |
− | | |
− | :p '''has_duration''' y =def.
| |
− | ::p is an occurrent, and
| |
− | ::for some t1, t1 '''first_instant''' p, and
| |
− | ::for some t2, t2 '''last_instant''' p, and
| |
− | ::for all t, t1 '''earlier''' t and t '''earlier t2''' implies p '''occurring_at''' t [this to ensure that p is continuous; has no gaps],
| |
− | ;; y is the interval (t1,t2).
| |
− | | |
− | Here a new functional operator 'the interval ( , )' has been introduced, which generates the name of an interval from a pair of names for times.
| |
− | | |
− | ==Proposed new type-level relations (posted by Melanie Courtot) ==
| |
− | | |
− | relations between generically dependent continuants and specifically dependent continuants:
| |
− | * concretizes
| |
− | * is_concretized_by
| |
− | | |
− | * about
| |
− | * inheres_in
| |
− | * depends_on
| |
− | * output_of
| |
− | * has_input
| |
− | * has_function
| |
− | * has_quality
| |
− | * realization_of
| |
− | * lacks
| |
− | | |
− | The lacks family of relations is discussed at: [http://ontology.buffalo.edu/medo/NegativeFindings.pdf]
| |
− | | |
− | Some of those are described in the [http://obo.cvs.sourceforge.net/*checkout*/obo/obo/ontology/OBO_REL/ro_proposed.obo RO proposed] file.
| |
− | | |
− | The treatment of the derives_from relation has been criticised from an ontological point of view: [http://www.ifomis.uni-saarland.de/Home/DerivationBookVersion1-2.pdf]. Transformation_of is always, by definition a 1-1 relation. The thesis in the original [http://genomebiology.com/2005/6/5/R46 RO paper] was (A) that the derives_from relation could be n-1 or 1-n (for n > 1) but also (B) that there are examples of 1-1 derives from relations (e.g. the relation between a living organism and a corpse). This thesis (B) has now been dropped. The relation between a corpse and the predecessor organism is one of transformation.
| |
− | | |
− | There is also the terminological problem that "derives_from" is used specifically for evolutionary relationships by some. We will report back on this after the september NCBO anatomy meeting. We may create a "develops_from" parent for transformation_of corresponding to how that relation is currently used in MOD AOs
| |
− | | |
− | See also
| |
− | | |
− | [http://obofoundry.org/ro/#pending Pending]
| |
− | | |
− | '''The relation of ''overlaps'''''
| |
− | | |
− | X ''overlaps'' Y =def. for every t and every x, if x '''instance_of''' X at t, then there is some instance y of Y at t such that (x '''overlaps''' y at t)
| |
− | | |
− | where
| |
− | | |
− | x '''overlaps''' y at t =def there is some z such that z is '''part_of''' x '''at t''' and z '''part_of''' y '''at t'''
| |
− | | |
− | Note that it can be the case that X ''overlaps'' Y as thus defined, even though Y does not ''overlap'' X.
| |
− | | |
− | Thus uterine tracts ''overlaps'' urinogenital sysem but not uriongenital system OVERLAPS uterine tract (because of male urinogenital systems)
| |
− | | |
− | Actually uterine tract is part_of urinogenital system, which raises the question of whether each of X's parts overlaps X.
| |
− | | |
− | ==Proposed Gene Ontology 'Regulates' Relations==
| |
− | | |
− | | |
− | | |
− | [Typedef]
| |
− | id: OBO_REL:regulates
| |
− | :name: regulates
| |
− | :def: "A relation between a process and a process or quality. A regulates B if the unfolding of A affects the frequency, rate or extent of B. A is called the regulating process, B the regulates process" []
| |
− | :transitive_over: OBO_REL:part_of
| |
− | | |
− | [Typedef]
| |
− | id: OBO_REL:positively_regulates
| |
− | :name: positively_regulates
| |
− | :def: "A regulation relation in which the unfolding of the regulating process *increases* the frequency, rate or extent of the regulated process"
| |
− | :is_a: OBO_REL:regulates
| |
− | :transitive_over: OBO_REL:part_of
| |
− | | |
− | [Typedef]
| |
− | id: OBO_REL:negatively_regulates
| |
− | :name: negatively_regulates
| |
− | :def: "A regulation relation in which the unfolding of the regulating process *decreases* the frequency, rate or extent of the regulated process"
| |
− | :is_a: OBO_REL:regulates
| |
− | :transitive_over: OBO_REL:part_of
| |
− | | |
− | Example file:
| |
− | :ftp://ftp.geneontology.org/pub/go/scratch/gene_ontology_with_regulates_relations_test.obo
| |
− | | |
− | Some follow-up comments at the sourceforge tracker page
| |
− | :[https://sourceforge.net/tracker/index.php? func=detail&aid=1874192&group_id=76834&atid=947684 here]
| |
− | | |
− | ==Hunter/Bada Proposal for new relations==
| |
− | | |
− | GRANULARITY/SPECIFICITY
| |
− | | |
− | | |
− | We assert that the level of granularity/specifity of the proposed
| |
− | relations is a central issue that, once resolved, will provide useful
| |
− | guidelines as to what is needed to capture a piece of knowledge by a
| |
− | relational link. The examples in this proposal use process terms from
| |
− | the Gene Ontology, but we believe that this issue applies to other OBOs
| |
− | as well.
| |
− | | |
− | | |
− | We assert that the addition of relations should be primarily guided by
| |
− | the effort to link OBO terms with other OBO terms, as is being done in
| |
− | the OBO cross-product project. A composite set of links from a given
| |
− | more complex OBO terms to more atomic OBO terms will provide the
| |
− | (hopefully complete) definition of the former. A given link from the
| |
− | term being defined, employing an RO relation, must unambiguously capture
| |
− | some piece of knowledge, some part of the definition, of this term. It
| |
− | is this unambiguous representation of some part of the complete
| |
− | definition of the term that should determine the specificity of the
| |
− | relation. This may require the use of a specific relation, but we assert
| |
− | that it is more important to avoid losing knowledge in the represented
| |
− | definition than to exclusively use general relations.
| |
− | | |
− | | |
− | It is ideal to use general, reusable relations in such definitions
| |
− | without losing information, and we believe that this is sometimes
| |
− | possible. For example, for the many GO process terms that use “during”
| |
− | to specify a process that is taking place within the span of another
| |
− | process (''e.g.'', “actin filament reorganization during cell cycle”), it is
| |
− | acceptable to use a standard temporal relation, as no information is
| |
− | lost by doing so. However, especially in the definitions of processes,
| |
− | we assert that the unambiguous capture of roles of participants will
| |
− | require relatively specific relations.
| |
− | | |
− | | |
− | There have been efforts to use general relations to denote roles, but
| |
− | they have been difficult to define (''e.g.'', has_agent, has_patient,
| |
− | has_central_participant) and/or insufficient to specify the role
| |
− | (''e.g.'', has_output_participant). If suitably precise general relations
| |
− | cannot be defined, relatively specific relations are needed. Thus, for
| |
− | all of the growth terms (''e.g.'', “organ growth”, “filamentous growth”),
| |
− | if a general relation to indicate what is growing cannot be suitably
| |
− | defined, then a specific relation must be created to capture this,
| |
− | either in the form of a lexically analogous relation (''e.g.'',
| |
− | results_in_growth_of) or as one that incorporates the template
| |
− | definitions of the term (''e.g.'', results_in_increase_in_size_or_mass_of,
| |
− | since most of the growth terms are defined as the increase in size or
| |
− | mass of an entity). These two approaches by themselves are
| |
− | computationally synonymous but differ in terms of human comprehension.
| |
− | The former, while not adding information for human users, can be
| |
− | straightforwardly formed. The latter, while helpful for human users, can
| |
− | get unwieldy in the case of complex definitions. For example, the
| |
− | detection-of-stimulus terms are defined as the series of events in which
| |
− | a stimulus is received by an entity and converted into a molecular
| |
− | signal, and
| |
− | results_in_reception_of_stimulus_and_conversion_into_molecular_signal_of
| |
− | is clearly getting ridiculous.
| |
− | | |
− | | |
− | It is also ideal for relations, especially relatively specific ones as
| |
− | exemplified above, to be formally defined (''i.e.'', in a computationlly
| |
− | procesable way) in terms of more atomic relations. However, it will be
| |
− | very difficult to produce formal definitions in terms of more atomic
| |
− | relations, especially for relatively specific relations. We assert that
| |
− | the linking of OBO terms to generate cross-products should be a
| |
− | priority, and this requires the specification of relations (as discussed
| |
− | above) to link the terms. A requirement for any proposed relation to
| |
− | have a formal decomposed definition in terms of more atomic relations
| |
− | would be a significant bottleneck to this process. Just as there is no
| |
− | requirement for an added OBO term to have a formal definition, there
| |
− | should be no such requirement for an added OBO relation. We would like
| |
− | to be clear that we believe it extremely beneficial to have such formal
| |
− | definitions (and thus efforts should continually be put into creating
| |
− | such definitions), but this should not be an obstacle to the introduction of
| |
− | new relations.
| |
− | | |
− | | |
− | LEXICAL FORM
| |
− | | |
− | | |
− | We propose that each relation should canonically be in the form of a
| |
− | verb phrase. We assert that this promotes usability in that it
| |
− | emphasizes the fact that these are relationships between entities.
| |
− | | |
− | ==TAIR Relations==
| |
− | | |
− | See http://sourceforge.net/tracker/index.php?func=detail&aid=1888149&group_id=76834&atid=947684
| |
− | | |
− | Relations between continuants and occurrents:
| |
− | | |
− | * has (function)
| |
− | * involved in
| |
− | * functions as
| |
− | * required for
| |
− | * functions in
| |
− | * has protein modification of type
| |
− | * contributes to
| |
− | * is upregulated by
| |
− | * is downregulated by
| |
− | | |
− | Relations between continuants:
| |
− | | |
− | * located in
| |
− | * expressed in
| |
− | * colocalizes with
| |
− | * is subunit of
| |
− | * constituent of
| |
− | * has protein-protein physical interaction with
| |
− | * has protein-DNA interaction with
| |
− | * binds to cis-element of
| |
− | * acts upstream of
| |
− | * acts downstream of
| |
− | * expressed during
| |
− | * protein is modified by
| |
− | * is regulated by
| |
− | * represses
| |
− | | |
− | Relations between continuants and qualities (phenotypes in our case):
| |
− | | |
− | * suppresses gene
| |
− | * enhances gene
| |
− | * partially enhances gene
| |
− | * partially suppresses gene
| |
− | | |
− | ==Proposed homologous_to relation==
| |
− | | |
− | x1 '''directly_descends_from''' x2 iff there are y1, y2 such that:
| |
− | | |
− | - y1 is an organism
| |
− | | |
− | - x1 is an anatomical structure
| |
− | | |
− | - x1 '''part_of''' y1
| |
− | | |
− | - y2 is an organism
| |
− | | |
− | - x2 is an anatomical structure
| |
− | | |
− | - x2 '''part_of''' y2
| |
− | | |
− | - y2 is a parent of y1
| |
− | | |
− | - the genetic sequence that determined the morphology of x1 is partially a copy of the genetic sequence that determined the morphology of. *(see notes below)
| |
− | | |
− | '''descends_from''' is the instance level relation which is the transitive closure over '''directly_descends_from'''
| |
− | | |
− | From this we can define a type level relation:
| |
− | | |
− | A in B ''descends_from'' C in D :
| |
− | | |
− | For all A(a) -> exists b, d, c: B(b) & C(c) & D(d)
| |
− | | |
− | a '''part_of''' b
| |
− | | |
− | a '''descends_from''' c
| |
− | | |
− | c '''part_of''' d
| |
− | | |
− | (Note – B must be a subclade of the clade genealogically descended from D)
| |
− | | |
− | A1 in B1 ''homologous_to A2'' in B2
| |
− | | |
− | iff
| |
− | | |
− | exists A3, B3:
| |
− | | |
− | A1 in B1 ''descends_from A3'' in B3
| |
− | | |
− | &
| |
− | | |
− | A2 in B2 ''descends_from'' A3 in B3
| |
− | | |
− | (Note B1 and B2 must both be subclades of the clade descending (in the genealogical sense) from D)
| |
− | | |
− | [* This clause still needs some work] | |
− | | |
− | [* On the Phenoscape project list, Jim Balhoff added the following critique of this: | |
− | | |
− | Something that jumps out at me in the definition of directly_descends_from:
| |
− | | |
− | I would not say that genetic sequences "determine" any morphology. I would prefer something like "participates in the development of" the morphology of x1. Anyway, I don't see genetic sequences as an absolutely necessary component of homology (although they would very often be an important component).]
| |
− | | |
− | [* DS: comment - I agree that reference to genetic sequence is (probably) unnecessary. Anyway, it is clear that the current formulation doesn't work: The morphology of my leg is determined by a partial copy of the genetic sequence that determined morphology of my father's arm. One possible alternative, deliberately ignoring genetics: Of all the anatomical structures in y2, x2 is the most morphologically similar to x1.
| |
− | ]
| |
− | | |
− | Note: Do we need to include time (exists & existed)?
| |
− | | |
− | FN – just to be on the safe side we can include time – it's not obviously useful but it could block some objections and won't affect the logic.
| |
− | | |
− | === relation to what is in RO proposed ===
| |
− | | |
− | Note that there are a number of synonyms for descended_from, including 'evolutionarily_derived_from' which is currently in ROproposed as follows:
| |
− | | |
− | id: OBO_REL:evolutionarily_derived_from
| |
− | | |
− | name: evolutionarily_derived_from
| |
− | | |
− | def: "Instance 3-ary relation: x edf y as T iff x specified_by gx and gx ancestral_copy_of gy and gy specifies y" []
| |
− | | |
− | synonym: "derived_from" RELATED []
| |
− | | |
− | synonym: "descended_from" RELATED []
| |
− | | |
− | synonym: "evolved_from" RELATED []
| |
− | | |
− | is_transitive: true
| |
− | | |
− | ==OWL Conversion==
| |
− | | |
− | The standard GO obo->owl conversion is used. See [[OboInOwl:Main_Page]] for details
| |
− | | |
− | obo1.2 defines "builtin" tags for relations that are hardwired into the obo semantics - is_a and instance_of are tagged builtin. These are not exported in OWL, as these are also part of the OWL language
| |
− | | |
− | == Measurements ==
| |
− | | |
− | At the [http://neurocommons.org/page/First_IEO_workshop IEO meeting] people seemed to agree that we use a relation
| |
− | called is_measurement_of to relate a measurement to some entity. (I
| |
− | can't remember if these were the exact names we used).
| |
− | is_measurement_of is subpropertyOf is_about
| |
− | | |
− | In the following we are discussing instance level relationships.
| |
− | | |
− | * measurement_datum:
| |
− | ** has_value:
| |
− | ** in_units:
| |
− | ** of_dimension:
| |
− | | |
− | m1 type measurement:
| |
− | | |
− | * m1 has_value 30^^xsd:float
| |
− | * m1 in_units_of degree_celsius (UO:0000027)
| |
− | * m1 of_dimension temperature_dimension (PATO:0000146? -that's what's in UO, but need to think about that)
| |
− | | |
− | (Unresolved: latter two are classes. I guess that means that
| |
− | in_units_of and of_dimension are annotation properties, which is a
| |
− | shame. Either that or degree_celsius and temperature_dimension are
| |
− | instances of some sort. Barry?)
| |
− | | |
− | * room1 type site
| |
− | * room1 has_quality t1
| |
− | * t1 instance_of temperature (PATO:0000146)
| |
− | | |
− | * m1 is_measurement_of t1
| |
− | | |
− | It was left open exactly how to represent uncertainty in the
| |
− | measurement, but this was thought to be perhaps something associated
| |
− | with the instrument or with a collection of measurements, rather than
| |
− | what was associated with the individual measurement.
| |
− | | |
− | Inference rule on is_about: forall x, y, z, if x is_about y and y inheres_in z then x is_about z
| |
− | | |
− | == Realization_of and Associated Relations ==
| |
− | | |
− | For OBI purposes there is a need for an instance-level relation between a plan (for instance a protocol) and the occurrent which realizes this plan.
| |
− | | |
− | In its terms we might define, for example,
| |
− | | |
− | x deviation_from y
| |
− | | |
− | =def. x is an occurrent and y is a plan and there is an agent z who is the agent_of x and is attempting in performing x to realize y and it is not the case that x realization_of y
| |
− | | |
− | =Background Material=
| |
− | | |
− | [http://obofoundry.org/ro/ Relation Ontology Home]
| |
− | | |
− | [http://genomebiology.com/2005/6/5/R46 Relations in Biomedical Ontologies]
| |