153
EBI is an Outstation of the European Molecular Biology Laboratory. Sarah Keating LibSBML

LibSBML - open source software development

Embed Size (px)

Citation preview

Page 1: LibSBML - open source software development

EBI is an Outstation of the European Molecular Biology Laboratory.

Sarah Keating

LibSBML

Page 2: LibSBML - open source software development

Overview 1. Brief overview of SBML

2. Evolution of libSBML

3. Does libSBML benefit SBML ?

4. Interlude

5. Users

6. Development

7. Issues

Page 3: LibSBML - open source software development

Overview 1. Brief overview of SBML

2. Evolution of libSBML

3. Does libSBML benefit SBML ?

4. Interlude

5. Users

6. Development

7. Issues

Page 4: LibSBML - open source software development

Overview 1. Brief overview of SBML

2. Evolution of libSBML

3. Does libSBML benefit SBML ?

4. Interlude

5. Users

6. Development

7. Issues

Page 5: LibSBML - open source software development

What are the outcomes of modelling/simulation ?

Page 6: LibSBML - open source software development

Models

many forms

What are the outcomes of modelling/simulation ?

Page 7: LibSBML - open source software development

How do we communicate a model ?

Publish a paper

Page 8: LibSBML - open source software development

Species s with initial concentration 2 nM reacts with species c with initial concentration 5 nM with a rate of p*s*c. Here are the equations:

dspdtdc

cspdtds

⋅⋅−=

⋅⋅= PROBLEMS

What is the value of p ?

Is this a typo ?

How do we communicate a model ?

Page 9: LibSBML - open source software development

Publish code

How do we communicate a model ?

Page 10: LibSBML - open source software development

Code for various models

How do we communicate a model ?

Page 11: LibSBML - open source software development

Potential software

How do we communicate a model ?

Page 12: LibSBML - open source software development

How do we communicate a model ?

Page 13: LibSBML - open source software development

How do we communicate a model ?

Page 14: LibSBML - open source software development

Hard, if not impossible, to reproduce a model

UNLESS

Interoperable data format

How do we communicate a model ?

Page 15: LibSBML - open source software development

A machine-readable format for representing computational models in systems biology – a tool neutral exchange format

Brief (very brief) overview of SBML

More information on SBML: http://www.cds.caltech.edu/~mhucka/tmp/mhucka-ccb-2012.pdf

Page 16: LibSBML - open source software development

Independent of modelling formalism

Brief (very brief) overview of SBML

<?xml version="1.0" encoding="UTF-8"?> <sbml xmlns="http://www.sbml.org/sbml/level3/version1/core" level="3" version="1"> <model id="dimerization“ timeUnits="second" > <listOfCompartments> <compartment id="Cell" size="1e-15" spatialDimensions="3”/> </listOfCompartments> <listOfSpecies> <species id="P" compartment="Cell" initialAmount="301”/> <species id="P2" compartment="Cell" initialAmount="0" /> </listOfSpecies> <listOfInitialAssignments> <initialAssignment symbol="y"> <math xmlns="http://www.w3.org/1998/Math/MathML"> <cn> 3.2 </cn> </math> </initialAssignment> </listOfInitialAssignments> </model> </sbml>

Expressed in XML

Page 17: LibSBML - open source software development

Independent of modelling formalism

Brief (very brief) overview of SBML

<?xml version="1.0" encoding="UTF-8"?> <sbml xmlns="http://www.sbml.org/sbml/level3/version1/core" level="3" version="1"> <model id="dimerization“ timeUnits="second" > <listOfCompartments> <compartment id="Cell" size="1e-15" spatialDimensions="3”/> </listOfCompartments> <listOfSpecies> <species id="P" compartment="Cell" initialAmount="301”/> <species id="P2" compartment="Cell" initialAmount="0" /> </listOfSpecies> <listOfInitialAssignments> <initialAssignment symbol="y"> <math xmlns="http://www.w3.org/1998/Math/MathML"> <cn> 3.2 </cn> </math> </initialAssignment> </listOfInitialAssignments> </model> </sbml>

Expressed in XML

Page 18: LibSBML - open source software development

Overview 1. Brief overview of SBML

2. Evolution of libSBML

3. Does libSBML benefit SBML ?

4. Interlude

5. Users

6. Development

7. Issues

Page 19: LibSBML - open source software development

Evolution of libSBML

2000 2001 2002 SBML Project begins

20

Page 20: LibSBML - open source software development

Evolution of libSBML

2000 2001 2002 20

SBML L1V1

SBML Project begins

Page 21: LibSBML - open source software development

Evolution of libSBML

2001 2002 2003

SBML L1V1

Page 22: LibSBML - open source software development

Evolution of libSBML

2001 2002 2003

SBML L1V1

Page 23: LibSBML - open source software development

Evolution of libSBML

2002 2003

V1

2004

Page 24: LibSBML - open source software development

Evolution of libSBML

2002 2003

V1

2004

libSBML-1.0.0

Page 25: LibSBML - open source software development

What is libSBML ?

Page 26: LibSBML - open source software development

• API library for working with SBML

What is libSBML ?

Page 27: LibSBML - open source software development

What is libSBML ?

libSBML-1 allowed you to • read

Page 28: LibSBML - open source software development

What is libSBML ?

libSBML-1 allowed you to • read

• create

Page 29: LibSBML - open source software development

What is libSBML ?

libSBML-1 allowed you to • read

• create

• manipulate

Page 30: LibSBML - open source software development

What is libSBML ?

libSBML-1 allowed you to • read

• create

• manipulate

• write

Page 31: LibSBML - open source software development

What is libSBML ?

libSBML-1 allowed you to • read

• create

• manipulate

• write

• validate

Page 32: LibSBML - open source software development

• Standard ANSI C libSBML-1

LGPL licence

What is libSBML ?

Page 33: LibSBML - open source software development

Evolution of libSBML

2002 2003

V1

2004

libSBML-1.0.0

Page 34: LibSBML - open source software development

Evolution of libSBML

2002 2003

V1

2004

libSBML-1.0.0

SBML L2V1

Page 35: LibSBML - open source software development

Evolution of libSBML

2002 2003

V1

2004

libSBML-1.0.0

SBML L2V1

libSBML-2.0.0

Page 36: LibSBML - open source software development

What is libSBML ?

libSBML-2 allowed you to • read

• create

• manipulate

• write

• validate

Page 37: LibSBML - open source software development

What is libSBML ?

libSBML-2 allowed you to • read

• create

• manipulate

• write

• validate

• convert between levels/versions

L1V1 L2V1

Page 38: LibSBML - open source software development

• Standard ANSI C++ libSBML-2

LGPL licence

What is libSBML ?

Page 39: LibSBML - open source software development

• Standard ANSI C++ libSBML-2

LGPL licence

What is libSBML ?

C Java Python

Page 40: LibSBML - open source software development

Evolution of libSBML

2002 2003

V1

2004

libSBML-1.0.0

SBML L2V1

libSBML-2.0.0

Page 41: LibSBML - open source software development

Evolution of libSBML

2002 2003

V1

2004

libSBML-1.0.0

SBML L2V1

libSBML-2.0.0

SBML L1V2

Page 42: LibSBML - open source software development

Evolution of libSBML

2002 2003 2004

libSBML-1.0.0

SBML L2V1

libSBML-2.0.0

SBML L2V1

20

Page 43: LibSBML - open source software development

Evolution of libSBML

2002 2003 2004

libSBML-1.0.0

SBML L2V1

libSBML-2.0.0

SBML L2V1

20

libSBML-2.2.0

Page 44: LibSBML - open source software development

Evolution of libSBML

2003 2004

bSBML-1.0.0

SBML L2V1

libSBML-2.0.0

SBML L2V1

2005

libSBML-2.2.0 20

Page 45: LibSBML - open source software development

Evolution of libSBML

2004

ML-2.0.0

L L2V1

2005

libSBML-2.2.0 2006 20

Page 46: LibSBML - open source software development

Evolution of libSBML

2004

ML-2.0.0

L L2V1

2005

libSBML-2.2.0 2006 20

libSBML-3.0.0-a

Page 47: LibSBML - open source software development

libSBML-3

What is libSBML ?

Page 48: LibSBML - open source software development

libSBML-3

What is libSBML ?

Significantly changed the API

Page 49: LibSBML - open source software development

libSBML-3

What is libSBML ?

Significantly changed the API

... Not good for users

Page 50: LibSBML - open source software development

Evolution of libSBML

2004

ML-2.0.0

L L2V1

2005

libSBML-2.2.0 2006 20

libSBML-3.0.0-a

Page 51: LibSBML - open source software development

Evolution of libSBML

04

2.0.0

2V1

2005

libSBML-2.2.0 2006 2007

libSBML-3.0.0-a

SBML L2V2

Page 52: LibSBML - open source software development

Evolution of libSBML

5 2006 2007

libSBML-3.0.0-a

SBML L2V2

2008

Page 53: LibSBML - open source software development

Evolution of libSBML

5 2006 2007

libSBML-3.0.0-a

SBML L2V2

2008

libSBML-3.0.0

Page 54: LibSBML - open source software development

Evolution of libSBML

5 2006 2007

libSBML-3.0.0-a

SBML L2V2

2008

libSBML-3.0.0

SBML L2V3

Page 55: LibSBML - open source software development

Evolution of libSBML

006 2007

BML-3.0.0-a

SBML L2V2

2008

libSBML-3.0.0

SBML L2V3

2009

Page 56: LibSBML - open source software development

Evolution of libSBML

006 2007

BML-3.0.0-a

SBML L2V2

2008

libSBML-3.0.0

SBML L2V3

2009

SBML L2V4

Page 57: LibSBML - open source software development

Evolution of libSBML

007 2008

libSBML-3.0.0

SBML L2V3

2009

SBML L2V4

2010

Page 58: LibSBML - open source software development

Evolution of libSBML

007 2008

libSBML-3.0.0

SBML L2V3

2009

SBML L2V4

2010

libSBML-4.0.0-b1

Page 59: LibSBML - open source software development

libSBML-4

What is libSBML ?

Significantly changed the API

Page 60: LibSBML - open source software development

libSBML-4

What is libSBML ?

Significantly changed the API

This time we involved the user

Page 61: LibSBML - open source software development

Evolution of libSBML

007 2008

libSBML-3.0.0

SBML L2V3

2009

SBML L2V4

2010

libSBML-4.0.0-b1

Page 62: LibSBML - open source software development

Evolution of libSBML

2008

.0.0

V3

2009

SBML L2V4

2010

libSBML-4.0.0-b1 20

Page 63: LibSBML - open source software development

Evolution of libSBML

2008

.0.0

V3

2009

SBML L2V4

2010

libSBML-4.0.0-b1 20

libSBML3.4.0

Page 64: LibSBML - open source software development

Evolution of libSBML

2008

.0.0

V3

2009

SBML L2V4

2010

libSBML-4.0.0-b1 20

libSBML3.4.0

libSBML4.0.0

Page 65: LibSBML - open source software development

Evolution of libSBML

2009

V4

2010

-4.0.0-b1 2011

libSBML3.4.0

libSBML4.0.0

20

Page 66: LibSBML - open source software development

Evolution of libSBML

2009

V4

2010

-4.0.0-b1 2011

libSBML3.4.0

libSBML4.0.0

20

SBML L3V1

Page 67: LibSBML - open source software development

Evolution of libSBML

2009

V4

2010

-4.0.0-b1 2011

libSBML3.4.0

libSBML4.0.0

20

SBML L3V1

libSBML-4.2.0

Page 68: LibSBML - open source software development

Evolution of libSBML

2009

V4

2010

-4.0.0-b1 2011

libSBML3.4.0

libSBML4.0.0

20

SBML L3V1

libSBML-4.2.0 libSBML-5.0.0

Page 69: LibSBML - open source software development

libSBML-5

What is libSBML ?

Page 70: LibSBML - open source software development

libSBML-5

What is libSBML ?

Seamlessly replaced libSBML-4

Page 71: LibSBML - open source software development

libSBML-5

What is libSBML ?

Seamlessly replaced libSBML-4

but added modular support for SBML L3 packages

Page 72: LibSBML - open source software development

Evolution of libSBML

2009

V4

2010

-4.0.0-b1 2011

libSBML3.4.0

libSBML4.0.0

20

SBML L3V1

libSBML-4.2.0 libSBML-5.0.0

Page 73: LibSBML - open source software development

Evolution of libSBML

2010 2011

libSBML4.0.0

2012

SBML L3V1

libSBML-4.2.0 libSBML-5.0.0 20

libSBML-5.6.0

Page 74: LibSBML - open source software development

• Standard ANSI C++ libSBML-5.6

LGPL licence

What is libSBML ?

C Java Python C# MATLAB Octave Perl R Ruby

Page 75: LibSBML - open source software development

Overview 1. Brief overview of SBML

2. Evolution of libSBML

3. Does libSBML benefit SBML ?

4. Interlude

5. Users

6. Development

7. Issues

Page 76: LibSBML - open source software development

Does libSBML benefit SBML ?

Page 77: LibSBML - open source software development

0

50

100

150

200

250

2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012

(counted in middle of each year)

Number of tools supporting SBML

Does libSBML benefit SBML ?

Page 78: LibSBML - open source software development

0

50

100

150

200

250

2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012

(counted in middle of each year)

Number of tools supporting SBML

libSBML-1.0.0

Does libSBML benefit SBML ?

Page 79: LibSBML - open source software development

0

50

100

150

200

250

2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012

(counted in middle of each year)

Number of tools supporting SBML

libSBML-1.0.0

Does libSBML benefit SBML ?

Page 80: LibSBML - open source software development

Does libSBML benefit SBML ?

Page 81: LibSBML - open source software development

Benefits of libSBML

Page 82: LibSBML - open source software development

Benefits of libSBML

• closely mimic SBML structure

Page 83: LibSBML - open source software development

Benefits of libSBML

Model UML diagram from SBML specification

Page 84: LibSBML - open source software development

Benefits of libSBML

Page 85: LibSBML - open source software development

Benefits of libSBML SBase

id: SId name: string { use=”optional” } compartmentType: SId { use=”optional” } spatialDimensions: int { use=”optional” default=”3” } size: double { use=”optional” } units: UnitSId { use=”optional” } outside: SId { use=”optional” } constant: boolean { use=”optional” default=”true” }

Compartment

Page 86: LibSBML - open source software development

Benefits of libSBML

Page 87: LibSBML - open source software development

Benefits of libSBML

Page 88: LibSBML - open source software development

Benefits of libSBML

• closely mimic SBML structure

Page 89: LibSBML - open source software development

Benefits of libSBML

• closely mimic SBML structure

• API for working with annotations

Page 90: LibSBML - open source software development

Minimum Information

Requested In the

Annotation of biochemical Models

Benefits of libSBML

Page 91: LibSBML - open source software development

Benefits of libSBML

Standard scheme for machine-readable annotations

- Authorship, publication info

- Links to other data resources

Semantics of the mathematics

Guidelines for model quality Defined by SBML

Page 92: LibSBML - open source software development

Benefits of libSBML

Standard scheme for machine-readable annotations

- Authorship, publication info

- Links to other data resources

Semantics of the mathematics

Guidelines for model quality Within the annotation

Page 93: LibSBML - open source software development

Benefits of libSBML

ModelHistory class

Page 94: LibSBML - open source software development

Benefits of libSBML

CVTerm class

Page 95: LibSBML - open source software development

Benefits of libSBML

<rdf:RDF> <rdf:Description rdf:about="#_000001"> <dc:creator rdf:parseType="Resource"> <vCard:Family>Le Novère</vCard:Family> <vCard:Given>Nicolas</vCard:Given> <vCard:EMAIL>[email protected]</vCard:EMAIL> <vCard:Orgname>EMBL-EBI</vCard:Orgname> </dc:creator> <dcterms:created rdf:parseType="Resource"> <dcterms:W3CDTF>2005-02-02T14:56:11Z <bqmodel:is> <rdf:li rdf:resource="urn:miriam:biomodels.db:BIOMD0000000001"/> </bqmodel:is> <bqmodel:isDescribedBy> <rdf:li rdf:resource="urn:miriam:pubmed:8983160"/> </bqmodel:isDescribedBy>

Page 96: LibSBML - open source software development

Benefits of libSBML

Standard scheme for machine-readable annotations

- Authorship, publication info

Semantics of the mathematics

Guidelines for model quality Defined by SBO

- Links to other data resources

Page 97: LibSBML - open source software development

<listOfSpecies> <species id="P" compartment="Cell" initialAmount="301" hasOnlySubstanceUnits="true" boundaryCondition="false" constant="false" sboTerm="SBO:0000252"/> <species id="P2" compartment="Cell" initialAmount="0" hasOnlySubstanceUnits="true" boundaryCondition="false" constant="false" sboTerm="SBO:0000420"/> </listOfSpecies>

Benefits of libSBML

Page 98: LibSBML - open source software development

Benefits of libSBML

• closely mimic SBML structure

• API for working with annotations

Page 99: LibSBML - open source software development

Benefits of libSBML

• closely mimic SBML structure

• interfaces to different languages

• API for working with annotations

Page 100: LibSBML - open source software development

• Standard ANSI C++ language bindings

C Java Python C# MATLAB Octave Perl R Ruby

Benefits of libSBML

Contributed by users

Page 101: LibSBML - open source software development

language bindings

Benefits of libSBML

PHP

Pascal ???

Page 102: LibSBML - open source software development

Benefits of libSBML

• closely mimic SBML structure

• interfaces to different languages

• API for working with annotations

Page 103: LibSBML - open source software development

Benefits of libSBML

• closely mimic SBML structure

• XML parsers

• interfaces to different languages

• API for working with annotations

Page 104: LibSBML - open source software development

Benefits of libSBML

Abstract XML Layer

XML Parser XMLInput Stream

XMLOutput Stream

XMLToken

XMLNode

XMLAttributes

Expat Attributes

Xerces Attributes

LibXML Attributes

Page 105: LibSBML - open source software development

Benefits of libSBML

• closely mimic SBML structure

• XML parsers

• interfaces to different languages

• API for working with annotations

Page 106: LibSBML - open source software development

Benefits of libSBML

• closely mimic SBML structure

• XML parsers

• develop in line with specification

• interfaces to different languages

• API for working with annotations

Page 107: LibSBML - open source software development

Benefits of libSBML

Page 108: LibSBML - open source software development

Two branches for release

Benefits of libSBML

Page 109: LibSBML - open source software development

Benefits of libSBML

Page 110: LibSBML - open source software development

Benefits of libSBML

Stable branch - code from accepted SBML - installers for the above

Page 111: LibSBML - open source software development

Benefits of libSBML

Page 112: LibSBML - open source software development

Benefits of libSBML

Experimental branch - src - code from core and any L3 packages with code under development

Page 113: LibSBML - open source software development

Benefits of libSBML

Page 114: LibSBML - open source software development

Benefits of libSBML

Experimental branch - binaries - built with ALL experimental code

Page 115: LibSBML - open source software development

Benefits of libSBML

• closely mimic SBML structure

• XML parsers

• develop in line with specification

• interfaces to different languages

• API for working with annotations

Page 116: LibSBML - open source software development

Benefits of libSBML

• closely mimic SBML structure

• XML parsers

• develop in line with specification

• backwards compatibility

• interfaces to different languages

• API for working with annotations

Page 117: LibSBML - open source software development

Overview 1. Brief overview of SBML

2. Evolution of libSBML

3. Does libSBML benefit SBML ?

4. Interlude

5. Users

6. Development

7. Issues

Page 118: LibSBML - open source software development

Interlude

Page 119: LibSBML - open source software development

Interlude

keating-libsbml-taster

SPIN_OSS – shared folder - keating

Page 120: LibSBML - open source software development

Overview 1. Brief overview of SBML

2. Evolution of libSBML

3. Does libSBML benefit SBML ?

4. Interlude

5. Users

6. Development

7. Issues

Page 121: LibSBML - open source software development

Who are our users ?

Page 122: LibSBML - open source software development

Who are our users ?

Page 123: LibSBML - open source software development

Who are our users ?

docs 4%

src code 24%

installers 72%

libSBML downloads

Page 124: LibSBML - open source software development

Who are our users ?

Mac OS X 28%

Win 36%

Linux 36%

Figures here do not include installers that target a particular programming language (e.g. R, MATLAB)

Installer downloads

Page 125: LibSBML - open source software development

Who are our users ?

Mac OS X 28%

Win 36%

Linux-32-deb

7% Linux-32-rpm

3%

Linux-64-deb 14% Linux-64-rpm

12% Other 36%

Installer downloads

Figures here do not include installers that target a particular programming language (e.g. R, MATLAB)

Page 126: LibSBML - open source software development

Who are our users ?

Win 36%

Linux 36%

MacOSX - snow leopard

9%

Mac OS X - lion 19%

Other 28%

Installer downloads

Figures here do not include installers that target a particular programming language (e.g. R, MATLAB)

Page 127: LibSBML - open source software development

Who are our users ?

Installer downloads

Figures here do not include installers that target a particular programming language (e.g. R, MATLAB)

Mac OS X 28%

Linux 36%

Win32 17%

Win64 19%

Other 36%

Page 128: LibSBML - open source software development

Who are our users ?

MATLAB

R

Python 2.5 Python 2.6

Python 2.7 Python 3.2

Targeted win installers

Page 129: LibSBML - open source software development

Who are our users ?

Targeted win installers

R

Python 2.5

Python 2.6

Python 2.7

Python 3.2

Page 130: LibSBML - open source software development

Who are our users ?

VCell – The Virtual Cell

iBioSim

Page 131: LibSBML - open source software development

Overview 1. Brief overview of SBML

2. Evolution of libSBML

3. Does libSBML benefit SBML ?

4. Interlude

5. Users

6. Development

7. Issues

Page 132: LibSBML - open source software development

Development

Page 133: LibSBML - open source software development

Development

Test driven development

10200 unit tests

43500 assertions

4330 invalid SBML files – test validation code

Page 134: LibSBML - open source software development

Development

Simplified Wrapper and Interface Generator

language interfaces

Java Python C# Perl Ruby R

Page 135: LibSBML - open source software development

Development

Autogenerate test code for bindings

Nightly builds

Stable release cycle (ish)

Autogenerate documentation

Page 136: LibSBML - open source software development

Development

Open Build Service – create linux installers

Future ...

Include libSBML in the linux distributions

Code refactoring

Page 137: LibSBML - open source software development

Overview 1. Brief overview of SBML

2. Evolution of libSBML

3. Does libSBML benefit SBML ?

4. Interlude

5. Users

6. Development

7. Issues

Page 138: LibSBML - open source software development

Issues we face as Open Source Developers

Page 139: LibSBML - open source software development

Issues we face as Open Source Developers

How well do we know our users ?

Page 140: LibSBML - open source software development

Issues we face as Open Source Developers

How well do we know our users ?

What are THEIR requirements ?

Page 141: LibSBML - open source software development

Issues we face as Open Source Developers

How well do we know our users ?

How do our design decisions impact them ?

Page 142: LibSBML - open source software development

Who are our users ?

Should we do this ?

Page 143: LibSBML - open source software development

Issues we face as Open Source Developers

Which OS/versions/compilers etc. to support ?

Page 144: LibSBML - open source software development

Issues we face as Open Source Developers

Linux Different versions using different defaults for other programs

http://stackoverflow.com/questions/10960805/apt-get-install-for-different-python-versions

ubuntu 10.04 with python2.6 by default

Ideally Maverick would support Python 2.6, 2.7, and 3.2 (beta), with Python 2.7 as the default.

Page 145: LibSBML - open source software development

Issues we face as Open Source Developers

Dependence on other third party developers

How do we keep up ?

Page 146: LibSBML - open source software development

Issues we face as Open Source Developers

Managing community contributions

Who has access ?

What if they break stuff ?

Page 147: LibSBML - open source software development

Issues we face as Open Source Developers

Managing community contributions

Attribution

Page 148: LibSBML - open source software development

Issues we face as Open Source Developers

How well do we know our users ?

Which OS/versions/compilers etc. to support ?

Dependence on other third party developers

Managing community contributions

Page 149: LibSBML - open source software development

Issues we face as Open Source Developers

Page 150: LibSBML - open source software development

Lucian Smith

Mike Hucka

Frank Bergmann

Linda Taddeo

Nicolas Rodriguez

Sarah Keating

SBML Team

Previous members:

Akira Funahashi; Andrew Finney; Ben Bornstein; Akiya Jouraku; Ben Kovitz; Herbert Sauro; Maria Schilstra; Jo Matthews; Hamid Bolouri;

John Doyle; Hiroaki Kitano

U. of Washington, USA

Caltech, USA

University of Heidelberg, DE

Caltech, USA

EMBL-EBI, UK

EMBL-EBI, UK

Page 151: LibSBML - open source software development

Community

Page 152: LibSBML - open source software development

• Gordon Ball • Alex Gutteridge

• Bill Denny • Stefan Hoops

• Christoph Flamm • Totte Karlsson

• Akira Funahashi • Moriyoshi Koizumi

• Ralph Gauges • Rainer Machné

• Martin Ginkel • Nicolas Rodriguez

Acknowledgements

Page 153: LibSBML - open source software development

Acknowledgements

๏ NIH National Institute of General Medical Sciences (USA) ๏ 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. ๏ EMBL-EBI (UK) ๏ BBSRC e-Science Initiative (UK) ๏ DARPA IPTO Bio-SPICE Bio-Computation Program (USA) ๏ Air Force Office of Scientific Research (USA) ๏ STRI, University of Hertfordshire (UK) ๏ Beckman Institute, Caltech (USA) ๏ Molecular Sciences Institute (USA)

SBML Funding over the years