SBML, SBML Packages, SED-ML, COMBINE Archive, and more is a presentation about standards for representing computational models in systems biology. It introduces SBML (Systems Biology Markup Language) as a format for exchanging models of biological processes between software tools. It describes extensions to SBML called packages that add new modeling constructs. It also briefly mentions related standards like SED-ML and COMBINE Archive.
9654467111 Call Girls In Raj Nagar Delhi Short 1500 Night 6000
SBML, SBML Packages, SED-ML, COMBINE Archive, and more
1. SBML, SBML Packages, SED-ML,
COMBINE Archive, and more
Michael Hucka, Ph.D.
on behalf of many people
NIH MSM Satellite Meeting, Sep. 10, 2015, Bethesda, MD, USA
Email: mhucka@caltech.edu Twitter: @mhucka
6. Need flexible way to exchange results
between tools (and researchers)
7.
8. Format for representing models of biological processes
• Data structures + principles + serialization to XML
• (Mostly) Declarative, not procedural—not a scripting language
(Mostly) neutral with respect to modeling framework
• E.g., ODE, stochastic systems, etc.
Does not store experimental data, or simulation descriptions
• But software may write their own metadata (annotations) in SBML
For software to read/write, not humans
SBML = Systems Biology Markup Language
10. SBML is a file format based on XML
Don’t work with it directly! Let software do it.
11. The process is central
• Literally called“reaction”(not necessarily biochemical)
• Participants are pools of entities of the same kind (“species”)
• Species are located in containers (“compartments”)
- Core SBML assumes well-mixed compartments (but see Level 3)
Models can further include:
• Discontinuous events
• Explicitly-written math
Core SBML concepts are fairly simple
• Unit definitions
• Annotations
• Other constants & variables
na1 A nb1 B+ nc1 C
f1(...)
na2 A nd2 D+ ne1 E
f2(...)
...
nc3 C nf3 F
f3(...)
+ ng3 G
12. Core SBML constructs support many types of models
Typical ODE models (e.g., cell differentiation)
Conductance-based models (e.g., Hodgin-Huxley)
Typically do not use SBML “reaction” construct,
but instead use “rate rules” construct
Neural models (e.g., spiking neurons)
Typically use “events” for discontinuous changes
Pharmacokinetic/dynamics models
“Species”arenotrequiredtobebiochemicalentities
Infectious diseases BioModels Database model
#MODEL1008060001
BioModels Database model
#BIOMD0000000451
BioModels Database model
#BIOMD0000000020
BioModels Database model
#BIOMD0000000127
BioModels Database model
#BIOMD0000000234
Example of model type Example model
List originally by Nicolas Le Novére
13. Many examples of SBML and software resources are available
Accepted by dozens of journals *
100’s of software tools available today
• 280+ listed in SBML Software Guide †
1000’s of models available
• ... in public databases, e.g.,
BioModels Database, Reactome
• ... as supplementary data to papers
• ... in private repositories
* http://sbml.org/Documents/Publications_known_to_accept_submissions_in_SBML_format
† http://sbml.org/SBML_Software_Guide
http://sbml.org
14. libSBML
• Written in portable C++
- Linux, Mac, Windows
• APIs for C, C++, C#, Java,
JavaScript, MATLAB, Octave,
Perl, PHP, Python, Ruby
• Reads, writes, validates SBML
• Many other features: e.g., unit
checking & conversion
JSBML
• Pure Java
• API very similar to libSBML,
but more Java-ish
• Reads,writes,manipulatesSBML
• Additional Java-relevant APIs
such as listeners
API libraries for supporting SBML
Both are free, open-source under LGPL
http://sbml.org/Software/libSBML http://sbml.org/Software/JSBML
15. Related effort: CellML
Feature SBML CellML
Overall scope
Core: algebraic, ODE, DAE, DDE,
stochastic. Level3: rule-based,
constraint-based, qualitative, PDE.
algebraic, ODE, DAE.
Built-in constructs Numerous; constructs add
predefined semantics
Few; models use
components & pure math
Math features Subset of“content”MathML Full“content”MathML
Events Yes No
Time delays Yes No
Units Yes Yes
Compartments Yes Yes via nested components
Annotations 1) Subset of RDF
2) Explicit SBO term attributes
Full RDF
User-defined
functions
Yes In principle, via MathML
lambda statements
Modularity Yes (in Level 3) – model
structure-oriented
Yes – math-oriented
Extensible syntax Yes (in Level 3) No
18. Level 3 package What it supports
Hierarchicalmodelcomposition Models composed from other models/parts ✔
Flux balance constraints Constraint-based (a.k.a. steady-state) models ✔
Qualitative models Petri net, Boolean, and similar model types ✔
Graph layout Storing layouts of network diagrams ✔
Arrays Arrays of components 🕒
Distributions Statistical distributions of values 🕒
Groups Grouping elements for conceptual purposes 🕒
Multicomponent/state species Rule-based descriptions of entities with features 🕒
Spatial Nonhomogeneous spatial models 🕒
Dynamic structures Creation/destruction of entities during simulation 🕒
Graph rendering Storing graphical symbols used in Layout diagrams 🕒
Annotations Richer annotation syntax !
Status
19. Level 3 package What it supports
Hierarchicalmodelcomposition Models composed from other models/parts ✔
Flux balance constraints Constraint-based (a.k.a. steady-state) models ✔
Qualitative models Petri net, Boolean, and similar model types ✔
Graph layout Storing layouts of network diagrams ✔
Arrays Arrays of components 🕒
Distributions Statistical distributions of values 🕒
Groups Grouping elements for conceptual purposes 🕒
Multicomponent/state species Rule-based descriptions of entities with features 🕒
Spatial Nonhomogeneous spatial models 🕒
Dynamic structures Creation/destruction of entities during simulation 🕒
Graph rendering Storing graphical symbols used in Layout diagrams 🕒
Annotations Richer annotation syntax !
Status
Implementations being tested
Implementations being tested
Implementations being tested
Implementations being tested
Implementations being tested
20. SBMLLevel3package:HierarchicalModelComposition(“comp”)
Defines syntax for composing models from other models (or fragments)
Developed by Lucian Smith, Mike Hucka, Stefan Hoops, Chris Myers,
Andrew Finney, Martin Ginkel, Ion Moraru, Wolfram Liebermeister
Species ...
Compartments ...
Parameters ...
Reactions ...
Model“A”
Core SBML
Species ...
Compartments ...
Parameters ...
Reactions ...
Model“A”
With hierarchical model composition
Species ...
Compartments ...
Parameters ...
Reactions ...
Model“B”
Species ...
Compartments ...
Parameters ...
Reactions ...
Model“C”
21. The‘comp’package supports multiple arrangements
Species ...
Compartments ...
Parameters ...
Reactions ...
Model“A”
Species ...
Compartments ...
Parameters ...
Reactions ...
Model“B”
Separate files (possibly in databases)
Species ...
Compartments ...
Parameters ...
Reactions ...
Model“C”
Model“C”
Model“D”
Species ...
Compartments ...
Parameters ...
Reactions ...
Model“D”
Model“B”
Substitutions
and deletions
of entities can
be defined
22. Results can be“flattened”to plain SBML Level 3 Core
Allows tools to read L3 +‘comp’models as if they were just plain L3
Algorithm is implemented in libSBML
Species ...
Compartments ...
Parameters ...
Reactions ...
Model“A”
Species ...
Compartments ...
Parameters ...
Reactions ...
Model“B”
Species ...
Compartments ...
Parameters ...
Reactions ...
Model“C”
Model“C”
Model“D”
Species ...
Compartments ...
Parameters ...
Reactions ...
Model“D”
Model“B”
Species ...
Compartments ...
Parameters ...
Reactions ...
Model“A”
SBML Level 3 CoreOriginal SBML Level 3 Core + SBML‘comp’
23. Define syntax for constraint-based (e.g., flux-balance analysis) models
• E.g. problem: optimize a specific property subject to constraints on
reaction fluxes and other parameters
Developed by Brett Olivier and Frank Bergmann, with considerable
community discussion and feedback for Version 2.
• Version 2 is essentially final
Implemented in libSBML, JSBML; supported in CMBPy, FAME, SBW;
converters available to/from CORBA Toolbox
SBML Level 3 package: Flux Balance Constraints (“fbc”)
http://sbml.org/Documents/Specifications/SBML_Level_3/Packages/fbc
24. SBMLLevel3package:Multistate&Multicomponentspecies
Core SBML lacks support for structured entities and pattern rules
• Different states of molecular entities must be different entities/species
SBML Level 3 effort for“multi”aims to add support for structures & patterns
• First proposals were by Finney, Blinov, Faeder, Hlavacek, Le Novère
• Revived by F. Zhang from Simmune group (Meier-Schellersheim et al.)
• Aspects of new effort: species types, binding sites, complexes, rules
http://sbml.org/Documents/Specifications/SBML_Level_3/Packages/multi
25. SBML Level 3 package: Spatial Processes (“spatial”)
Main components:
• Definition of coordinate systems
• Definition of patches of spatial geometries, called domains
• Mapping of SBML compartments, species, & parameters to domains
• Definition of molecular transport mechanisms (advection,
diffusion, boundary conditions)
• Mapping of molecular transport mechanisms to domains
Developed mostly by Jim Schaff & Anu Lakshminarayana (VCell), with
recent input and involvement from Devin Sullivan (U. Pittsburgh)
• Beta implementation for libSBML available today
http://sbml.org/Documents/Specifications/SBML_Level_3/Packages/spatial
27. Many people contributed to the development of SBML
Mike Hucka, Sarah Keating, Frank Bergmann, Lucian Smith,
Andrew Finney, Herbert Sauro, Hamid Bolouri, Ben Bornstein,
Maria Schilstra, Jo Matthews, Bruce Shapiro, LindaTaddeo,
Akira Funahashi, Akiya Juraku, Ben Kovitz, Nicolas Rodriguez,
Andreas Dräger, AlexThomas
SBML&
JSBMLTeam:
SBML Editors: Mike Hucka, Frank Bergmann, Andreas Dräger, Sarah Keating,
Nicolas Le Novère, Chris Myers, Lucian Smith, Stefan Hoops,
Sven Sahle, James Schaff, DagmarWaltemath, DarrenWilkinson,
Brett Olivier
SBML Package
authors(sofar):
Duncan Berenguier, Frank Bergmann, Claudine Chaouiya,
Andreas Dräger, Andrew Finney, Ralph Gauges, Colin Gillespie,
Martin Ginkel,Tomás Helikar, Stefan Hoops, Sarah Keating, Anu
Lakshminarayana, Nicolas Le Novère,Wolfram Liebermeister,
Martin Meier-Schellerscheim, Stuart Moodie, Ion Moraru, Chris
Myers, Aurélien Naldi, Brett Olivier, Ursula Rost, Lucian Smith,
Sven Sahle, James Schaff, Devin P. Sullivan, DenisThieffry,
Martijn P. van Iersel, LeandroWatanabe, KatjaWengler, Darren
Wilkinson, Maciej Swat (EBI), Fengkai Zhang
28. SBML funding sources over the past 15 years
NationalInstituteofGeneralMedicalSciences(USA)
Air Force Office of Scientific Research (USA)
BBSRC (UK)
Beckman Institute, Caltech (USA)
DARPA IPTO Bio-SPICE Bio-Computation Program (USA)
Drug Disease Model Resources (EU-EFPIA Innovative Medicine Initiate)
ELIXIR (UK)
European Molecular Biology Laboratory (EMBL)
Google Summer of Code
International Joint Research Program of NEDO (Japan)
Japanese Ministry of Agriculture
Japanese Ministry of Education, Culture, Sports, Science andTechnology
JST ERATO Kitano Symbiotic Systems Project (Japan) (to 2003)
JST ERATO-SORST Program (Japan)
Keio University (Japan)
Molecular Sciences Institute (USA)
National Science Foundation (USA)
STRI, University of Hertfordshire (UK)
33. Structuredformatsprovidesyntaxandonlylimitedsemantics
Modelers are free to choose names
Problems:
• No universal agreement
• Software can’t recognize
arbitrary names
Need standard schemes for
machine-readable annotations
• Entity identities
• Mathematical semantics
• Links to other data resources
• Authorship & pub. info
Low info
content
No standard
identifiers
34. Element in
the model
Entity elsewhere
(e.g., in a database)
relationship qualifier
(optional)
Annotations at their simplest
35. SBML supports two annotation schemes
SBO (Systems Biology Ontology)
• For mathematical semantics
• One SBML object ← one SBO term
• Short, compact, tightly coupled but limited scope
MIRIAM (Minimum Information Requested In the Annotation of Models)
• For any kind of annotation
• One SBML object ← multiple MIRIAM annotations
• Larger, more free-form, wider scope
Both are externalized and independent of SBML
39. MIRIAM(MinimumInformationRequestedIntheAnnotationofModels)
Addresses 2 general areas of annotation needs:
MIRIAM is not specific to SBML
Requirements for reference
correspondence
Scheme for encoding
annotations
Annotations for
attributing model
creators & sources
Annotations for
referring to external
data resources
40. MIRIAM(MinimumInformationRequestedIntheAnnotationofModels)
Addresses 2 general areas of annotation needs:
MIRIAM is not specific to SBML
Requirements for reference
correspondence
Scheme for encoding
annotations
Annotations for
attributing model
creators & sources
Annotations for
referring to external
data resources
Annotations for
referring to external
data resources
41. Why might you care?
http://www.ebi.ac.uk/chebi
Low info
content
42. Why might you care?
http://www.ebi.ac.uk/chebi
Low info
content
Known by different names –
do you want to write all of
them into your model?
salicylic acid
44. Resolving resource identifiers
MIRIAM Registry supports the creation of globally unique identifiers
• Example MIRIAM identifier:
urn:miriam:ec-code:1.1.1.1
• Provides various data about the
resource, including alternate servers
• Provides web services
identifiers.org is layered on top of that and provides resolvable URIs
• Can type it in a web browser!
• Example identifiers.org URI:
http://identifiers.org/ec-code/1.1.1.1
45. Summary:whycareaboutstandardwaysofwritingannotations?
Structured, machine-readable annotations increase your model’s utility
• Allow more precise identification of model components
- Understand model structure
- Search/discover models
- Compare models
• Adds a semantic layer—integrates knowledge into the model
- Helps recipients understand the underlying biology
- Allows for better reuse of models
- Supports conversion of models from one form to another
47. Another problem: software can’t read figure legends
?
BIOMD0000000319 in BioModels Database
Decroly & Goldbeter, PNAS, 1982
48. SED-ML = Simulation Experiment Description ML
Application-independent format
•Captures procedures, algorithms, parameter values
Can be used for
•Simulation experiments encoding parametrizations & perturbations
•Simulations using more than one model and/or method
•Data manipulations to produce plot(s)
http://sedml.org
Simulation
Model
Task Data generators
Reports
50. The problem
Multiple files usually comprise a single simulation experiment
• Model(s) file(s), possibly in multiple formats
• Simulation set-up (e.g., in SED-ML format)
• Parameter settings data files
• Diagrams (e.g., in SBGN format)
• Other files…
All the files need to be communicated together
• Opportunity to lose or mix up files during exchange & sharing
51. Open Modeling EXchange format (OMEX)
COMBINE Archive format =
single file that supports exchange
of all information necessary for any
modeling and simulation
experiment
• Not SBML-specific at all
• Not programming-language
specific
• Not domain specific
OMEX = file format for COMBINE Archive
• ZIP file containing manifest file (in XML form) + other files
• Use of ZIP leverages many existing programming libraries
http://co.mbine.org/documents/archive