libSBML C API  libSBML 5.20.4 C API
Loading...
Searching...
No Matches
Core libSBML

Detailed Description

SBML Level 3 introduced a modular architecture, in which SBML Level 3 Core is usable in its own right (much like SBML Levels 1 and 2 before it), and optional SBML Level 3 Packages add features to this Core. To support this architecture, libSBML is itself divided into a core libSBML and optional extensions.

Differences between core libSBML and extensions to libSBML

Core libSBML corresponds to the features of SBML Levels 1 to 3 Core; they are always available, and require applications to understand only the SBML core specifications. The classes listed on the rest of this page constitute libSBML's implementation of SBML Levels 1–3, without any SBML Level 3 packages.

By contrast, the libSBML extensions are plug-ins that each implement support for a given SBML Level 3 package. Separate pages of this API manual describe the libSBML extensions for those SBML Level 3 packages that are supported at this time. They are grouped under the section titled Level 3 Extensions. The stable releases of libSBML only include extensions for officially-released package specifications; additional, experimental extensions may be available for other Level 3 packages that may not yet have been finalized by the SBML community. You can find copies of these experimental extensions at the download site for libSBML on SourceForge.net.

Summary of core SBML objects implemented in libSBML

Each type of component in a plain SBML model (i.e., one that does not use any SBML packages) is described using a specific type of SBML data object that organizes the relevant information. The top level of an SBML model definition consists of lists of these components, with every list being optional. The next table enumerates the lists and objects defined by core SBML; also shown are the SBML Level+Version combinations for which they are valid.

SBML components and corresponding libSBML objects.
Level & Version LibSBML container object LibSBML data object(s)
Level 2 Version 1 and higher ListOfFunctionDefinitionsFunctionDefinition
Level 2 Version 1 and higher ListOfUnitDefinitionsUnitDefinition
Level 2 Versions 2–5 ListOfCompartmentTypesCompartmentType
Level 1 and higher ListOfCompartmentsCompartment
Level 2 Versions 2–5 ListOfSpeciesTypesSpeciesType
Level 1 and higher ListOfSpeciesSpecies
Level 1 and higher ListOfParametersParameter
Level 2 Version  and higher ListOfInitialAssignmentsInitialAssignment
Level 1 and higher ListOfRulesAssignmentRule, AlgebraicRule, RateRule
Level 2 Version  and higher ListOfConstraintsConstraint
Level 1 and higher ListOfReactionsReaction
Level 2 Version 1 and higher ListOfEventsEvent

The list of classes below constitutes the public API of core libSBML. The list includes classes that are not defined in any SBML specification; these utility classes are provided by libSBML to implement various kinds of functionality useful in the context of working with SBML content.

Data Structures

class  AlgebraicRule_t
 
class  AssignmentRule_t
 
class  ASTNode_t
 
class  Compartment_t
 
class  CompartmentType_t
 
class  Constraint_t
 
class  ConversionOption_t
 
class  ConversionProperties_t
 
class  CVTerm_t
 
class  Date_t
 
class  DefinitionURLRegistry_t
 
class  Delay_t
 
class  ElementFilter_t
 
class  Event_t
 
class  EventAssignment_t
 
class  ExpressionAnalyser_t
 
class  FormulaTokenizer_t
 @_tstruct_t _tFormulaTokenizer_t_t @_tsbmlbrief_t{_tcore_t} _tTracks_t _tthe_t _tstate_t _tof_t _ttokenizing_t _ta_t _tformula_t _tstring_t. More...
 
class  FunctionDefinition_t
 
class  InitialAssignment_t
 
class  KineticLaw_t
 
class  L3ParserSettings_t
 
class  List_t
 
class  ListOf_t
 
class  ListOfCompartments_t
 
class  ListOfCompartmentTypes_t
 
class  ListOfConstraints_t
 
class  ListOfEventAssignments_t
 
class  ListOfEvents_t
 
class  ListOfFunctionDefinitions_t
 
class  ListOfInitialAssignments_t
 
class  ListOfLocalParameters_t
 
class  ListOfParameters_t
 
class  ListOfReactions_t
 
class  ListOfRules_t
 
class  ListOfSpecies_t
 
class  ListOfSpeciesReferences_t
 
class  ListOfSpeciesTypes_t
 
class  ListOfUnitDefinitions_t
 
class  ListOfUnits_t
 
class  LocalParameter_t
 
class  Model_t
 
class  ModelCreator_t
 
class  ModelHistory_t
 
class  ModifierSpeciesReference_t
 
class  Parameter_t
 
class  Priority_t
 
class  RateRule_t
 
class  RDFAnnotationParser_t
 
class  Reaction_t
 
class  Rule_t
 
class  SBase_t
 
class  SBaseExtensionPoint_t
 
class  SBasePlugin_t
 
class  SBasePluginCreator_t
 
class  SBasePluginCreatorBase_t
 
class  SBMLConstructorException_t
 
class  SBMLConverter_t
 
class  SBMLConverterRegistry_t
 
class  SBMLDocument_t
 
class  SBMLDocumentPlugin_t
 
class  SBMLDocumentPluginNotRequired_t
 
class  SBMLError_t
 
class  SBMLErrorLog_t
 
class  SBMLExtension_t
 
class  SBMLExtensionException_t
 
class  SBMLExtensionNamespaces_t
 
class  SBMLExtensionRegister_t
 
class  SBMLExtensionRegistry_t
 
class  SBMLFunctionDefinitionConverter_t
 
class  SBMLIdConverter_t
 
class  SBMLInferUnitsConverter_t
 
class  SBMLInitialAssignmentConverter_t
 
class  SBMLInternalValidator_t
 
class  SBMLLevel1Version1Converter_t
 
class  SBMLLevelVersionConverter_t
 
class  SBMLLocalParameterConverter_t
 
class  SBMLNamespaces_t
 
class  SBMLRateOfConverter_t
 
class  SBMLRateRuleConverter_t
 
class  SBMLReactionConverter_t
 
class  SBMLReader_t
 
class  SBMLRuleConverter_t
 
class  SBMLStripPackageConverter_t
 
class  SBMLUnitsConverter_t
 
class  SBMLValidator_t
 
class  SBMLVisitor_t
 
class  SBMLWriter_t
 
class  SBO_t
 
class  SimpleSpeciesReference_t
 
class  Species_t
 
class  SpeciesReference_t
 
class  SpeciesType_t
 
class  StoichiometryMath_t
 
class  SyntaxChecker_t
 
class  Trigger_t
 
class  Unit_t
 
class  UnitDefinition_t
 
class  Validator_t
 
class  VConstraint_t
 
class  XMLAttributes_t
 
class  XMLConstructorException_t
 
class  XMLError_t
 
class  XMLErrorLog_t
 
class  XMLInputStream_t
 
class  XMLLogOverride_t
 
class  XMLNamespaces_t
 
class  XMLNode_t
 
class  XMLOutputStream_t
 
class  XMLToken_t
 
class  XMLTriple_t
 

Data Structure Documentation

◆ AlgebraicRule_t

class AlgebraicRule_t

◆ AssignmentRule_t

class AssignmentRule_t

◆ ASTNode_t

class ASTNode_t

◆ Compartment_t

class Compartment_t

◆ CompartmentType_t

class CompartmentType_t

◆ Constraint_t

class Constraint_t

◆ ConversionOption_t

class ConversionOption_t

◆ ConversionProperties_t

class ConversionProperties_t

◆ CVTerm_t

class CVTerm_t

◆ Date_t

class Date_t

◆ DefinitionURLRegistry_t

class DefinitionURLRegistry_t

◆ Delay_t

class Delay_t

◆ ElementFilter_t

class ElementFilter_t

◆ Event_t

class Event_t

◆ EventAssignment_t

class EventAssignment_t

◆ ExpressionAnalyser_t

class ExpressionAnalyser_t

◆ FormulaTokenizer_t

class FormulaTokenizer_t
Data Fields
char * formula

Field used to store the formula string.

unsigned int pos

Field used to store the current parsing position.

◆ FunctionDefinition_t

class FunctionDefinition_t

◆ InitialAssignment_t

class InitialAssignment_t

◆ KineticLaw_t

class KineticLaw_t

◆ L3ParserSettings_t

class L3ParserSettings_t

◆ List_t

class List_t

◆ ListOf_t

class ListOf_t

◆ ListOfCompartments_t

class ListOfCompartments_t

◆ ListOfCompartmentTypes_t

class ListOfCompartmentTypes_t

◆ ListOfConstraints_t

class ListOfConstraints_t

◆ ListOfEventAssignments_t

class ListOfEventAssignments_t

◆ ListOfEvents_t

class ListOfEvents_t

◆ ListOfFunctionDefinitions_t

class ListOfFunctionDefinitions_t

◆ ListOfInitialAssignments_t

class ListOfInitialAssignments_t

◆ ListOfLocalParameters_t

class ListOfLocalParameters_t

◆ ListOfParameters_t

class ListOfParameters_t

◆ ListOfReactions_t

class ListOfReactions_t

◆ ListOfRules_t

class ListOfRules_t

◆ ListOfSpecies_t

class ListOfSpecies_t

◆ ListOfSpeciesReferences_t

class ListOfSpeciesReferences_t

◆ ListOfSpeciesTypes_t

class ListOfSpeciesTypes_t

◆ ListOfUnitDefinitions_t

class ListOfUnitDefinitions_t

◆ ListOfUnits_t

class ListOfUnits_t

◆ LocalParameter_t

class LocalParameter_t

◆ Model_t

class Model_t

◆ ModelCreator_t

class ModelCreator_t

◆ ModelHistory_t

class ModelHistory_t

◆ ModifierSpeciesReference_t

class ModifierSpeciesReference_t

◆ Parameter_t

class Parameter_t

◆ Priority_t

class Priority_t

◆ RateRule_t

class RateRule_t

◆ RDFAnnotationParser_t

class RDFAnnotationParser_t

◆ Reaction_t

class Reaction_t

◆ Rule_t

class Rule_t

◆ SBase_t

class SBase_t

◆ SBaseExtensionPoint_t

class SBaseExtensionPoint_t

◆ SBasePlugin_t

class SBasePlugin_t

◆ SBasePluginCreator_t

class SBasePluginCreator_t

◆ SBasePluginCreatorBase_t

class SBasePluginCreatorBase_t

◆ SBMLConstructorException_t

class SBMLConstructorException_t

◆ SBMLConverter_t

class SBMLConverter_t

◆ SBMLConverterRegistry_t

class SBMLConverterRegistry_t

◆ SBMLDocument_t

class SBMLDocument_t

◆ SBMLDocumentPlugin_t

class SBMLDocumentPlugin_t

◆ SBMLDocumentPluginNotRequired_t

class SBMLDocumentPluginNotRequired_t

◆ SBMLError_t

class SBMLError_t

◆ SBMLErrorLog_t

class SBMLErrorLog_t

◆ SBMLExtension_t

class SBMLExtension_t

◆ SBMLExtensionException_t

class SBMLExtensionException_t

◆ SBMLExtensionNamespaces_t

class SBMLExtensionNamespaces_t

◆ SBMLExtensionRegister_t

class SBMLExtensionRegister_t

◆ SBMLExtensionRegistry_t

class SBMLExtensionRegistry_t

◆ SBMLFunctionDefinitionConverter_t

class SBMLFunctionDefinitionConverter_t

◆ SBMLIdConverter_t

class SBMLIdConverter_t

◆ SBMLInferUnitsConverter_t

class SBMLInferUnitsConverter_t

◆ SBMLInitialAssignmentConverter_t

class SBMLInitialAssignmentConverter_t

◆ SBMLInternalValidator_t

class SBMLInternalValidator_t

◆ SBMLLevel1Version1Converter_t

class SBMLLevel1Version1Converter_t

◆ SBMLLevelVersionConverter_t

class SBMLLevelVersionConverter_t

◆ SBMLLocalParameterConverter_t

class SBMLLocalParameterConverter_t

◆ SBMLNamespaces_t

class SBMLNamespaces_t

◆ SBMLRateOfConverter_t

class SBMLRateOfConverter_t

◆ SBMLRateRuleConverter_t

class SBMLRateRuleConverter_t

◆ SBMLReactionConverter_t

class SBMLReactionConverter_t

◆ SBMLReader_t

class SBMLReader_t

◆ SBMLRuleConverter_t

class SBMLRuleConverter_t

◆ SBMLStripPackageConverter_t

class SBMLStripPackageConverter_t

◆ SBMLUnitsConverter_t

class SBMLUnitsConverter_t

◆ SBMLValidator_t

class SBMLValidator_t

◆ SBMLVisitor_t

class SBMLVisitor_t

◆ SBMLWriter_t

class SBMLWriter_t

◆ SBO_t

class SBO_t

◆ SimpleSpeciesReference_t

class SimpleSpeciesReference_t

◆ Species_t

class Species_t

◆ SpeciesReference_t

class SpeciesReference_t

◆ SpeciesType_t

class SpeciesType_t

◆ StoichiometryMath_t

class StoichiometryMath_t

◆ SyntaxChecker_t

class SyntaxChecker_t

◆ Trigger_t

class Trigger_t

◆ Unit_t

class Unit_t

◆ UnitDefinition_t

class UnitDefinition_t

◆ Validator_t

class Validator_t

◆ VConstraint_t

class VConstraint_t

◆ XMLAttributes_t

class XMLAttributes_t

◆ XMLConstructorException_t

class XMLConstructorException_t

◆ XMLError_t

class XMLError_t

◆ XMLErrorLog_t

class XMLErrorLog_t

◆ XMLInputStream_t

class XMLInputStream_t

◆ XMLLogOverride_t

class XMLLogOverride_t

◆ XMLNamespaces_t

class XMLNamespaces_t

◆ XMLNode_t

class XMLNode_t

◆ XMLOutputStream_t

class XMLOutputStream_t

◆ XMLToken_t

class XMLToken_t

◆ XMLTriple_t

class XMLTriple_t