001package org.biopax.paxtools.io.sif; 002 003/** 004 * This class holds the description, tag (used in SIF file), the information if the interaction is 005 * directed for the relevant binary interaction types. 006 */ 007public enum BinaryInteractionType 008{ 009 010 COMPONENT_OF( 011 "The first entity is a component of the second entity, which is a complex. " + 012 "This interaction is transitive in the sense that A component_of B and B component_of " + 013 "C implies A component_of C. " + 014 "This interaction is directed.", true), 015 016 IN_SAME_COMPONENT( 017 "Two entities belong to the same molecular complex. This does not necessarily " + 018 "mean they interact directly. In a complex with n molecules, this rule will create a " + 019 "clique composed of n(n-1)/2 interactions. " + 020 "This interaction is undirected.", false), 021 022 CO_CONTROL( 023 "This rule infers an interaction " + 024 "if the first and second entities have control over the same process. " + 025 "This interaction is undirected.", false), 026 027 SEQUENTIAL_CATALYSIS( 028 "The entities catalyze two conversions that are connected via a common molecule, " + 029 "e.g. the first entity produces a substrate that is consumed by the second entity. " + 030 "This interaction is directed.", true), 031 032 METABOLIC_CATALYSIS( 033 "The first entity catalyzes a reaction that either consumes or produces the second entity. " + 034 "This interaction is directed.", true), 035 036 STATE_CHANGE( 037 "The first entity controls a reaction that changes the state of the " + 038 "second entity, e.g. by phosphorylation or other posttranslational modification, " + 039 "or by a change in subcellular location. " + 040 "This interaction is directed.", true), 041 042 ACTIVATES( 043 "The first entity controls a reaction that changes the state of the " + 044 "second entity, from inactive or notr, to active. " + 045 "This interaction is directed.", true), 046 047 INACTIVATES( 048 "The first entity controls a reaction that changes the state of the " + 049 "second entity, from active or notr, to inactive. " + 050 "This interaction is directed.", true), 051 052 REACTS_WITH( 053 "The entities participate in a conversion as substrates or products. Controllers are not included. " + 054 "This interaction is undirected.", false), 055 056 INTERACTS_WITH( 057 "The entities participate in an interaction. Controllers are not included. " + 058 "This interaction is undirected.", false), 059 060 UPREGULATE_EXPRESSION( 061 "The first entity upregulates the expression of the second entity. " + 062 "This interaction is directed.", true), 063 064 DOWNREGULATE_EXPRESSION( 065 "The first entity downregulates the expression of the second entity. " + 066 "This interaction is directed.", true), 067 068 GENERIC_OF( 069 "The first entity is a generic form of the second entity.This interaction is directed",true), 070 071 SIMILAR( 072 "The two entities are members of a generic form. This interaction is undirected",false); 073 074 private String description; 075 private boolean directed; 076 077 BinaryInteractionType( 078 String description, 079 boolean directed) 080 { 081 this.description = description; 082 this.directed = directed; 083 } 084 085 /** 086 * Returns the description of the binary interaction as a string. 087 * 088 * @return a string describing the interaction 089 */ 090 public String getDescription() 091 { 092 return description; 093 } 094 095 /** 096 * Returns the tag of the binary interaction. This tag is used in the SIF file(s). 097 * 098 * @return tag name as it is used in SIF files 099 */ 100 public String getTag() 101 { 102 return this.toString(); 103 } 104 105 /** 106 * Returns true, if the interaction is directed. 107 * 108 * @return false, if the interaction is not directed. 109 */ 110 public boolean isDirected() 111 { 112 return directed; 113 } 114}