001package org.biopax.paxtools.model.level3; 002 003/** 004 * Stoichiometric coefficient of a physical entity in the context of a conversion or complex. For 005 * each participating element there must be 0 or 1 stoichiometry element. A non-existing 006 * stoichiometric element is treated as unknown. This is an n-ary bridge for left, right and 007 * component properties. 008 */ 009public interface Stoichiometry extends UtilityClass 010{ 011 012 013 /** 014 * @return the physical entity to be annotated with stoichiometry. 015 */ 016 PhysicalEntity getPhysicalEntity(); 017 018 /** 019 * @param physicalEntity entity to be annotated with stoichiometry. 020 */ 021 void setPhysicalEntity(PhysicalEntity physicalEntity); 022 023 024 /** 025 * Stoichiometric coefficient of the physicalEntity specified by {@link #getPhysicalEntity()} in 026 * the context of the owner interaction or complex. This value can be any rational number. Generic 027 * values such as "n" or "n+1" should not be used - polymers are currently not covered. 028 * 029 * @return Stoichiometric coefficient for one of the entities in an interaction or complex 030 */ 031 float getStoichiometricCoefficient(); 032 033 /** 034 * Sets the stoichiometric coefficient of the physicalEntity specified by {@link 035 * #getPhysicalEntity()} in the context of the owner interaction or complex. { can be any 036 * rational number. Generic values such as "n" or "n+1" should not be used - polymers are currently 037 * not covered. 038 * 039 * @param newStoichiometricCoefficient of the physical entity 040 */ 041 void setStoichiometricCoefficient(float newStoichiometricCoefficient); 042}