*Structure Class* **ASSIGNMENT-RULE**

## Package:

`CL-SBML`

## Class Precedence List:

ASSIGNMENT-RULE, RULE, SBML-BASE, STRUCTURE-CLASS, T.

## Slots:

- VARIABLE: default value NIL, type (OR SYMBOL STRING), initarg :VARIABLE.

## Description:

The instances of this structure class represent SBML assignment rule definitions.

Assignement Rules are used to express equations that set the values of variables. The left-hand side (the VARIABLE field) of an assignment rule can refer to the identifier of a SPECIES, COMPARTMENT, or PARAMETER.

The accessor ASSIGNMENT-RULE-VARIABLE can be used to set or modify the filed.

## Affected By:

None.

## Exceptional Situations:

None.

## See Also:

SBML-BASE, RULE, ALGEBRAIC-RULE, RATE-RULE, ASSIGNMENT-RULE-P, ASSIGNMENT-RULE-VARIABLE and MAKE-ASSIGNMENT-RULE.

## Notes:

### Constraints

Two or more RATE-RULE or ASSIGNMENT-RULE structures cannot have the same left-hand side or VARIABLE field value in an SBML model definition. In all cases, as would be expected, the units of the formula representing the right hand side, the MATH field, are identical to the units associated with the left hand side, the VARIABLE field, when that VARIABLE appears in other formulae.

### Types

**SBML** states that the values of the VARIABLE
field should be of type SID (`SId`

.) The definition here
is more liberal, as the type specifier SID is defined in terms of
SATISFIES, which is a notorious complication in
the **CL** type system. If the need arises, the type
specification of the slots can be made stricter.