libSBML Python API  5.18.0
Hierarchical Model Composition

The libSBML “comp” extension implements support for the SBML Level 3 Hierarchical Model Composition package. It can be used in SBML Level 3 Version 1 and Version 2 documents.

Introduction

In the context of SBML, hierarchical model composition refers to the ability to include models as submodels inside another model. The goal is to support the ability of modelers and software tools to do such things as (1) decompose larger models into smaller ones, as a way to manage complexity; (2) incorporate multiple instances of a given model within one or more enclosing models, to avoid literal duplication of repeated elements; and (3) create libraries of reusable, tested models, much as is done in software development and other engineering fields. SBML Level 3 Version 1 Core, by itself, has no direct support for allowing a model to include other models as submodels. The Level 3 Hierarchical Model Composition package adds the missing capabilities. The figure below illustrates some of the scenarios targeted by this package.

Two examples of model configuration supported by the “comp” package: (left) a model composed of a submodel that is itself composed of submodels; (right) a model composed of submodels, one of which is defined in an external file.

Authors

The primary authors of the SBML Level 3 Hierarchical Model Composition specification are Lucian P. Smith, Michael Hucka, Stefan Hoops, Andrew Finney, Martin Ginkel, Chris J. Myers, Ion Moraru and Wolfram Liebermeister.

The specification for this SBML package

This API documentation for libSBML does not provide a complete explanation of the SBML Level 3 Hierarchical Model Composition (“comp”) package. If you are developing software that uses “comp”, you are strongly urged to read the actual specification for the package. A link to the specification document current is provided below, along with a link to the page of known issues (if any).

Specification for SBML Level 3 Hierarchical Model Composition, current at the time of this libSBML release (5.18.0). Note: an Internet connection is required to access these documents.
Specification (in PDF format) Known issues
Hierarchical Model Composition package, Version 1 Release 3 Errata page
More...

Classes

class  libsbml.CompBase
 comp Convenience class for SBase-derived classes. More...
 
class  libsbml.CompExtension
 comp Base extension class for the package. More...
 
class  libsbml.CompFlatteningConverter
 comp 'Flattens' a model, removing composition. More...
 
class  libsbml.CompModelPlugin
 comp Extension of Model. More...
 
class  libsbml.CompPkgNamespaces
 comp SBMLNamespaces extension for the package. More...
 
class  libsbml.CompSBasePlugin
 comp Extension of SBase. More...
 
class  libsbml.CompSBMLDocumentPlugin
 comp Extension of SBMLDocument. More...
 
class  libsbml.Deletion
 comp Deletion of an object from a submodel. More...
 
class  libsbml.ExternalModelDefinition
 comp A reference to an externally-defined model. More...
 
class  libsbml.ListOfDeletions
 comp A list of Deletion objects. More...
 
class  libsbml.ListOfExternalModelDefinitions
 comp A list of ExternalModelDefinition objects. More...
 
class  libsbml.ListOfModelDefinitions
 comp A list of ModelDefinition objects. More...
 
class  libsbml.ListOfPorts
 comp A list of Port objects. More...
 
class  libsbml.ListOfReplacedElements
 comp A list of ReplacedElement objects. More...
 
class  libsbml.ListOfSubmodels
 comp A list of Submodel objects. More...
 
class  libsbml.ModelDefinition
 comp A model used in model composition. More...
 
class  libsbml.Port
 comp An interface to be used in composition. More...
 
class  libsbml.ReplacedBy
 comp Indicates an object replaced by another. More...
 
class  libsbml.ReplacedElement
 comp Indicates an object replaces another. More...
 
class  libsbml.Replacing
 comp Convenience class. More...
 
class  libsbml.SBaseRef
 comp Base class for references to objects. More...
 
class  libsbml.SBMLFileResolver
 comp Resolves documents stored on a file system. More...
 
class  libsbml.SBMLResolver
 comp Base class for SBML resolvers. More...
 
class  libsbml.SBMLResolverRegistry
 comp Registry of all SBML resolvers. More...
 
class  libsbml.SBMLUri
 comp Utility class for handling URIs. More...
 
class  libsbml.Submodel
 comp A model instance inside another model. More...
 

Detailed Description

The libSBML “comp” extension implements support for the SBML Level 3 Hierarchical Model Composition package. It can be used in SBML Level 3 Version 1 and Version 2 documents.

Introduction

In the context of SBML, hierarchical model composition refers to the ability to include models as submodels inside another model. The goal is to support the ability of modelers and software tools to do such things as (1) decompose larger models into smaller ones, as a way to manage complexity; (2) incorporate multiple instances of a given model within one or more enclosing models, to avoid literal duplication of repeated elements; and (3) create libraries of reusable, tested models, much as is done in software development and other engineering fields. SBML Level 3 Version 1 Core, by itself, has no direct support for allowing a model to include other models as submodels. The Level 3 Hierarchical Model Composition package adds the missing capabilities. The figure below illustrates some of the scenarios targeted by this package.

Two examples of model configuration supported by the “comp” package: (left) a model composed of a submodel that is itself composed of submodels; (right) a model composed of submodels, one of which is defined in an external file.

Authors

The primary authors of the SBML Level 3 Hierarchical Model Composition specification are Lucian P. Smith, Michael Hucka, Stefan Hoops, Andrew Finney, Martin Ginkel, Chris J. Myers, Ion Moraru and Wolfram Liebermeister.

The specification for this SBML package

This API documentation for libSBML does not provide a complete explanation of the SBML Level 3 Hierarchical Model Composition (“comp”) package. If you are developing software that uses “comp”, you are strongly urged to read the actual specification for the package. A link to the specification document current is provided below, along with a link to the page of known issues (if any).

Specification for SBML Level 3 Hierarchical Model Composition, current at the time of this libSBML release (5.18.0). Note: an Internet connection is required to access these documents.
Specification (in PDF format) Known issues
Hierarchical Model Composition package, Version 1 Release 3 Errata page