short summary of sbml and the sbml development processsbml.org/images/c/ca/sbml-2011-06.pdf ·...
TRANSCRIPT
Short Summary of SBML and the SBML Development Process
Michael Hucka, Ph.D.
Control and Dynamical SystemsDivision of Engineering and Applied Science
California Institute of TechnologyPasadena, CA, USA
1Monday, June 20, 2011
Format for representing quantitative models
• Defines object model + rules for its use
- Serialized to XML
Neutral with respect to modeling framework
• ODE vs. stochastic vs. ...
A lingua franca for software
• Not procedural
SBML = Systems Biology Markup Language
2Monday, June 20, 2011
The reaction is central: a process occurring at a given rate
• Participants are pools of entities (species)
Models can further include:
• Other constants & variables
• Compartments
• Explicit math
• Discontinuous events
Basic parts of SBML
naA + nbBf([A],[B],[P ],...)−−−−−−−−−−−−→npP
ncCf(...)−−−→ ndD + neE + nfF
...
Can be anything conceptually compatible
• Unit definitions
• Annotations
3Monday, June 20, 2011
Some basics of SBML model encoding
c
n
Well-stirred compartments
4Monday, June 20, 2011
Some basics of SBML model encoding
c
n
protein A protein B
gene mRNAn mRNAc
Species pools are located in compartments
5Monday, June 20, 2011
Some basics of SBML model encoding
c
n
protein A protein B
gene mRNAn mRNAc
Reactions can involve any species anywhere
6Monday, June 20, 2011
Some basics of SBML model encoding
c
n
protein A protein B
gene mRNAn mRNAc
Reactions can cross compartment boundaries
7Monday, June 20, 2011
Reaction/process rates can be (almost) arbitrary formulas
Some basics of SBML model encoding
c
n
protein A protein B
gene mRNAn mRNAc
f1(x)
f2(x)
f3(x)f4(x)
f5(x)
8Monday, June 20, 2011
“Rules”: equations expressing relationships in addition to reaction sys.
Some basics of SBML model encoding
c
n
protein A protein B
gene mRNAn mRNAc
f1(x)
f2(x)
f3(x)
g1(x)g2(x)
.
.
.
f4(x)
f5(x)
9Monday, June 20, 2011
“Events”: discontinuous actions triggered by system conditions
Some basics of SBML model encoding
c
n
protein A protein B
gene mRNAn mRNAc
f1(x)
f2(x)
f3(x)
g1(x)g2(x)
.
.
.
Event1: when (...condition...), do (...assignments...)
Event2: when (...condition...), do (...assignments...)
...
f4(x)
f5(x)
10Monday, June 20, 2011
Event1: when (...condition...), do (...assignments...)
Event2: when (...condition...), do (...assignments...)
...
Some basics of SBML model encoding
c
n
protein A protein B
gene mRNAn mRNAc
f1(x)
f2(x)
f3(x)
g1(x)g2(x)
.
.
.
f4(x)
f5(x)
“This event represents ...”
“This is identified by GO id # ...”
“This is an enzymatic reaction with EC # ...”
“This is a transport into the nucleus ...” “This compartment
represents the nucleus ...”
11Monday, June 20, 2011
Basic structure of an SBML model & example XML
<Beginning of SBML model definition>List of function definitionsList of unit definitionsList of compartmentsList of speciesList of parametersList of initial assignmentsList of rulesList of “constraints”List of reactionsList of events<End of SBML model definition>
...
...
Conceptual XML
Most components are optional
12Monday, June 20, 2011
<species metaid="metaid_0000009" id="species_3" compartment="c_1"> <annotation> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:bqbiol="http://biomodels.net/biology-qualifiers/" > <rdf:Description rdf:about="#metaid_0000009"> <bqbiol:is> <rdf:Bag> <rdf:li rdf:resource="urn:miriam:obo.chebi:CHEBI%3A15996"/> <rdf:li rdf:resource="urn:miriam:kegg.compound:C00044"/> </rdf:Bag> </bqbiol:is> </rdf:Description> </rdf:RDF> </annotation> </species>
SBML defines a syntax for annotations
13Monday, June 20, 2011
<species metaid="metaid_0000009" id="species_3" compartment="c_1"> <annotation> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:bqbiol="http://biomodels.net/biology-qualifiers/" > <rdf:Description rdf:about="#metaid_0000009"> <bqbiol:is> <rdf:Bag> <rdf:li rdf:resource="urn:miriam:obo.chebi:CHEBI%3A15996"/> <rdf:li rdf:resource="urn:miriam:kegg.compound:C00044"/> </rdf:Bag> </bqbiol:is> </rdf:Description> </rdf:RDF> </annotation> </species>
SBML defines a syntax for annotations
<rdf:Bag> <rdf:li rdf:resource="urn:miriam:obo.chebi:CHEBI%3A15996"/> <rdf:li rdf:resource="urn:miriam:kegg.compound:C00044"/> </rdf:Bag>
Data references
13Monday, June 20, 2011
<species metaid="metaid_0000009" id="species_3" compartment="c_1"> <annotation> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:bqbiol="http://biomodels.net/biology-qualifiers/" > <rdf:Description rdf:about="#metaid_0000009"> <bqbiol:is> <rdf:Bag> <rdf:li rdf:resource="urn:miriam:obo.chebi:CHEBI%3A15996"/> <rdf:li rdf:resource="urn:miriam:kegg.compound:C00044"/> </rdf:Bag> </bqbiol:is> </rdf:Description> </rdf:RDF> </annotation> </species>
SBML defines a syntax for annotations
<bqbiol:is>
</bqbiol:is>
Relationship qualifier
13Monday, June 20, 2011
Current SBML specifications
Current specifications:
• Level 3 Version 1 Core
- 6 Oct. 2010
• Level 2 Version 4
- 22 Dec. 2008
• Level 1 Version 2
- 28 Aug. 2003
On Nature Precedings & sbml.org/Documents14Monday, June 20, 2011
Evolution of features took time & practical experience
Level 1 Level 2 Level 3predefined math
functionsuser-defined functions user-defined functions
text-string math notation MathML subset MathML subset
reserved namespaces for annotations
no reserved namespaces for annotations
no reserved namespaces for annotations
no controlled annotation scheme
RDF-based controlled annotation scheme
RDF-based controlled annotation scheme
no discrete events discrete events discrete events
default values defined default values defined no default values
monolithic monolithic modular
15Monday, June 20, 2011
SBML Level 3 is modular:
• “Core” defines common aspects
• “Packages” add optional features
- Models declare which packages they use
- Tools can tell their users which packages they support
• Analogy to XML — XML is core, then there’s XPath, MathML, etc.
Rationale: even if a tool isn’t equipped to handle a given package, probably can still interpret some aspects of the model
Additional expected benefit: decouple development of individual L3 pkgs
Cannot keep growing the feature set indefinitely
16Monday, June 20, 2011
Level 3 package Active? libSBML 5 implementation?
Graph layout
Groups
Spatial
Flux balance constraints
Hierarchical composition (in progress)
Multicomponent species
Annotations
Graph rendering
Distribution & ranges
Qualitative models
Dynamic structures
Arrays & sets
✓✓✓✓✓✓
✓✓
✓
✓✓
17Monday, June 20, 2011
Using Level 3 packages in SBML models
18Monday, June 20, 2011
Using Level 3 packages in SBML models
Use XML namespaces to reference the package definition
18Monday, June 20, 2011
Using Level 3 packages in SBML models
Declare package is being used and whether interpreter
must be able to understand the package in order to produce the intended mathematical behavior
18Monday, June 20, 2011
Using package constructs
Package constructs prefixed with package namespace
19Monday, June 20, 2011
SBML Development Process Progress
http://sbml.org/Documents/SBML_Development_Process20Monday, June 20, 2011
Proc
ess
for
intr
oduc
ing
new
L3
pack
ages
Pre-proposal stage
Proposal stage
Proposal voting/selection stage
Proposal acceptance stage
Package specification development
21Monday, June 20, 2011
Start
Is a relevantproposal already being
developed?
Is it goodenough (maybe with small
changes) for your goals?
Stop
Propose the idea on sbml-discuss
Do people agreethe idea and approach are
novel & worth doing?
Enter proposal idea & summary at http://sbml.org/issue-tracker
Develop proposal details & produce a document followingthe Level 3 proposal template.
Add proposal to the appropriate area in the SBML Level 3 section of the SBML.org Community Wiki.
Post on sbml-discuss to notify the SBML community about
the new proposal.
Iterate on proposal design based on feedback (if needed).
StopYes
No
No
Yes
No
Yes
You may wish to participate in the development of the existing proposal. Contact the authors.
Pre-
prop
osal
& p
ropo
sal s
tage
s
Pre-proposal stageProposal stage
Level 3 Proposal Flowchart
22Monday, June 20, 2011
Proposal stage in more detail
Steps:
1. Use SBML issue tracker to logproposal intention
2. Use Level 3 package proposal template to write proposal
3. Have proposal added to table on http://sbml.org/Community/Wiki
4. Engage community via sbml-discuss mailing list
5. Iron out issues
http://sbml.org/issue-tracker
23Monday, June 20, 2011
Proposal voting/selection stage
1. After a period of discussion, a formal vote can be called
2. SBML Editors create an electronic voting form
3. Chair of the SBML Editors calls for a vote
4. SBML Editors report the outcome
a. 50% or more vote to accept ➜ accepted
b. Over 50% vote to reject ➜ rejected
c. Otherwise ➜ revise
5. If accepted, SBML Editors form a Package Working Group (PWG)
a. Membership must contain at least one of the package propers + at least one SBML Editor (+ anyone else interested)
b. Mailing list attached to the PWG: sbml-label (e.g., sbml-multi)
24Monday, June 20, 2011
Proposal acceptance stage
Is there only one proposal for this area?
• Yes ➜ Go to specification development stage
• No ➜ Select between alternatives
- (More discussion, voting, etc.—see process description)
25Monday, June 20, 2011
Table on http://sbml.org/Community/Wiki
26Monday, June 20, 2011
Representationformat
Model Procedures Results
Minimal inforequirements
Semantics—
Mathematical
Other
SBRML
?
annotations annotations annotations
(Credit: Nicolas Le Novère)27Monday, June 20, 2011
People on SBML Team & BioModels TeamSBML Team BioModels.net Team
Michael Hucka Nicolas Le NovèreSarah Keating Camille Laibe
Frank Bergmann Nicolas RodriguezLucian Smith Nick Juty
Nicolas Rodriguez Lukas EndlerLinda Taddeo Vijayalakshmi ChelliahAkiya Joukarou Chen LiAkira Funahashi Harish Dharuri
Kimberley Begley Lu LiBruce Shapiro Enuo HeAndrew Finney Mélanie CourtotBen Bornstein Alexander Broicher
Ben Kovitz Arnaud HenryHamid Bolouri Marco DonizelliHerbert SauroJo Matthews
Maria Schilstra
VisionariesHiroaki Kitano
John Doyle
28Monday, June 20, 2011
National Institute of General Medical Sciences (USA)
European Molecular Biology Laboratory (EMBL)ELIXIR (UK)
Beckman Institute, Caltech (USA)
Keio University (Japan)
JST ERATO Kitano Symbiotic Systems Project (Japan) (to 2003)
National Science Foundation (USA)
International Joint Research Program of NEDO (Japan)
JST ERATO-SORST Program (Japan)
Japanese Ministry of Agriculture
Japanese Ministry of Educ., Culture, Sports, Science and Tech.
BBSRC (UK)
DARPA IPTO Bio-SPICE Bio-Computation Program (USA)
Air Force Office of Scientific Research (USA)
STRI, University of Hertfordshire (UK)
Molecular Sciences Institute (USA)
Agencies to thank for supporting SBML & BioModels.net29Monday, June 20, 2011