UserDefinedConstraintComponent¶
One weighted variable of a user defined constraint.
A component is one term of the sum a user defined constraint bounds: the model variable it is about, the parameter which holds the number the variable is multiplied with, and whether the variable enters the sum linearly or quadratically.
The variable is either a reaction, whose flux is meant, or a parameter which is not constant, which is how a constraint reaches a quantity the network does not carry.
Attributes¶
| attribute | type | required | meaning | specification |
|---|---|---|---|---|
| variable | SIdRef |
required | the reaction or the parameter this term of the constraint weighs | fbc v3 3.15 |
| variable2 | SIdRef |
optional | the second variable of a mixed quadratic term | fbc v3 3.15 |
| coefficient | SIdRef |
required | the parameter which holds the number the variable is multiplied with | fbc v3 3.15 |
| variableType | FbcVariableType |
required | whether the variable enters the constraint linearly or quadratically | fbc v3 3.15 |
Every element of a model also carries the common attributes of SBase.
variable
The attribute is required and names either a reaction, in which case the term is about its flux, or a parameter which is not constant. The report links the element it names.
2021305(error): The value of the attribute 'fbc:variable' of an <userDefinedConstraintComponent> object must be the identifier of an existing <reaction> or <parameter> object defined in the enclosing <model> object.
variable2
A quadratic component which names a second variable weighs the product of the two, coefficient * v1 * v2, instead of the square of the first. It is optional and empty in a linear component.
Default: a quadratic component is the square of its first variable.
2021308(error): The value of the attribute 'fbc:variable2' of an <userDefinedConstraintComponent> object must be the identifier of an existing <reaction> or <parameter> object defined in the enclosing <model> object.
coefficient
Unlike the coefficient of a flux objective, which is a number written into the file, the coefficient of a component is the identifier of a parameter, so that the weights of a constraint can be changed in one place. In a strict model that parameter has to be constant and its value finite.
2021304(error): The value of the attribute 'fbc:coefficient' of an <userDefinedConstraintComponent> object must be the identifier of an existing <parameter> object defined in the enclosing <model> object.
variableType
The type is linear or quadratic, as in a flux objective: a quadratic component squares its variable, or multiplies it by the second variable where it names one. It is required.
2021306(error): The value of the attribute 'fbc:variableType' of an <userDefinedConstraintComponent> object must conform to the syntax of SBML data type 'FbcVariableType' and may only take on the allowed values of 'FbcVariableType' defined in SBML; that is, the value must be one of the following: 'linear' or 'quadratic'.
Validation rules¶
2021301(error): An <userDefinedConstraintComponent> object may have the optional SBML Level 3 Core attributes 'metaid' and 'sboTerm'. No other attributes from the SBML Level 3 Core namespaces are permitted on an <userDefinedConstraintComponent>.2021302(error): An <userDefinedConstraintComponent> object may have the optional SBML Level 3 Core subobjects for notes and annotations. No other elements from the SBML Level 3 Core namespaces are permitted on an <userDefinedConstraintComponent>.2021303(error): An <userDefinedConstraintComponent> object must have the required attributes 'fbc:coefficient', 'fbc:variable' and 'fbc:variableType', and may have the optional attributes 'fbc:id', 'fbc:name' and 'fbc:variable2'. No other attributes from the SBML Level 3 Flux Balance Constraints namespaces are permitted on an <userDefinedConstraintComponent> object.
Related elements¶
- UserDefinedConstraint: a constraint over a combination of fluxes and parameters, added in Version 3
- Reaction: a process which changes the quantities of species
- Parameter: a named value which the mathematics of the model can use
- Flux Balance Constraints (fbc): the package which describes a constraint based model
Specification¶
SBML Level 3 Package: Flux Balance Constraints, Version 3 Release 1, Section 3.15 (Olivier and Bergmann, COMBINE specification).