The following is a summary of the definition of the SBML identifier type
UnitSId
, which defines the permitted syntax of identifiers.
We express the syntax using an extended form of BNF notation:
letter ::= 'a'..'z','A'..'Z'
digit ::= '0'..'9'
idChar ::= letter | digit | '_'
SId ::= ( letter | '_' ) idChar*
The characters (
and )
are used for grouping, the
character *
"zero or more times", and the character
|
indicates logical "or". The equality of SBML unit
identifiers is determined by an exact character sequence match; i.e.,
comparisons must be performed in a case-sensitive manner. In addition,
there are a few conditions for the uniqueness of unit identifiers in an
SBML model. Please consult the SBML specifications for the exact
formulations.