Systems Biology Markup Language (SBML)

Slides:



Advertisements
Similar presentations
Three-Step Database Design
Advertisements

Look for other standards: - BioPAX (composition) - CellML (aggregation) - Other SBML L3 extensions (modules - rule-based modeling)
SPECIAL TOPIC XML. Introducing XML XML (eXtensible Markup Language) ◦A language used to create structured documents XML vs HTML ◦XML is designed to transport.
SBML2Murphi: a Translator from a Biology Markup Language to Murphy Andrea Romei Ciclo di Seminari su Model Checking Dipartimento di Informatica Università.
CellDesigner Tutorial Laurence Calzone, Andrei Zinovyev UMR U900 INSERM/Institut Curie/Ecole des Mines de Paris Wednesday, April 30th.
Computational Biology, Part 19 Cell Simulation: Virtual Cell Robert F. Murphy, Shann-Ching Chen, Justin Newberg Copyright  All rights reserved.
Department of Informatics, UC Irvine SDCL Collaboration Laboratory Software Design and sdcl.ics.uci.edu 1 Informatics 43 Introduction to Software Engineering.
10-Jun-15Anatoly Sorokin Existing Standards in Systems Biology Anatoly Sorokin Computation Systems Biology Group University of Edinburgh.
Analysis Modeling Over view of today’s lesson T he analysis model is the first technical representation of a system. Analysis modeling uses a combination.
M.Sc. of Advanced Software Engineering CO7206 System Reengineering XML & AST Many Slides are by Georgios Koutsoukos.
Use of Ontologies in the Life Sciences: BioPax Graciela Gonzalez, PhD (some slides adapted from presentations available at
C++ Training Datascope Lawrence D’Antonio Lecture 11 UML.
© Copyright Eliyahu Brutman Programming Techniques Course.
Sharif University of Technology1 Design and Use-case Realization Software Engineering Laboratory Fall 2006.
Introduction to XML This material is based heavily on the tutorial by the same name at
Chapter 6– Artifacts of the process
Session outline 1.Standards and the problem of data integration Example: PSICQUIC and the PSICQUIC game 2.Introduction to ontologies. Exploring the Gene.
Information storage: Introduction of database 10/7/2004 Xiangming Mu.
16-1 The World Wide Web The Web An infrastructure of distributed information combined with software that uses networks as a vehicle to exchange that information.
CPS120: Introduction to Computer Science The World Wide Web Nell Dale John Lewis.
Lecture 3: Pathway Generation Tool I: CellDesigner: A modeling tool of biochemical networks Y.Z. Chen Department of Pharmacy National University of Singapore.
SOFTWARE ENGINEERING BIT-8 APRIL, 16,2008 Introduction to UML.
TDDD43 XML and RDF Slides based on slides by Lena Strömbäck and Fang Wei-Kleiner 1.
Bioinformatics Dr. Víctor Treviño BT4007
Breakout Report: Model and Data Sharing Working Group Peter Hunter auckland.ac.nzauckland.ac.nz Herbert Sauro uw.edu uw.edu Jim Bassingthwaighte uw.edu.
A Z Approach in Validating ORA-SS Data Models Scott Uk-Jin Lee Jing Sun Gillian Dobbie Yuan Fang Li.
XHTML,XML M.Abdullah Mrian. What is the XHTML Why XHTML ?
Data Management David Nathan & Peter Austin & Robert Munro.
By: Dan Johnson & Jena Block. RDF definition What is Semantic web? Search Engine Example What is RDF? Triples Vocabularies RDF/XML Why RDF?
Needs to be described: Objects – Have multiple states – Consist of other objects, that may have multiple states – May be connected with each other via.
METACASE. WHAT THIS PRESENTATION IS ABOUT  What’s META MODELING?  What’s METACASE?  METAEDIT+ 5.1 EVALUTION PROGRAM  Diagram and its kinds.
Content and Computer Platforms Week 3. Today’s goals Obtaining, describing, indexing content –XML –Metadata Preparing for the installation of Dspace –Computers.
XML eXtensible Markup Language. Topics  What is XML  An XML example  Why is XML important  XML introduction  XML applications  XML support CSEB.
BIological NetwOrk Manager Cytoscape plugin Andrei Zinovyev Institut Curie/INSERM/Ecole de Mines, UMR 900 “Computational Systems Biology of Cancer”
WEB APPLICATION DEVELOPMENT For More visit:
LibAnnotationSBML Neil Swainston Manchester Centre for Integrative Systems Biology 29 March 2009.
Scientific Applications of XML Arvind Hulgeri, Shantanu Godbole
Department of Informatics, UC Irvine SDCL Collaboration Laboratory Software Design and sdcl.ics.uci.edu 1 Informatics 43 Introduction to Software Engineering.
Introduction To OOP 1.0 Fundamentals Of Java Programming Language 2.0 Exception Handling 3.0 Classes, Inheritance And Polymorphism © 2011 | PN AZRINA.
Course Instructor: Kashif Ihsan 1. Chapter # 3 2.
XML – A Quick Introduction Kerry Raymond (stolen from others)
XML Basics A brief introduction to XML in general 1XML Basics.
Sharing Models. How Can I Exchange Models? SBML (Systems Biology Markup Language): de facto standard for representing cellular networks. A large number.
CS 157B: Database Management Systems II February 11 Class Meeting Department of Computer Science San Jose State University Spring 2013 Instructor: Ron.
Tools, Formats, & Solutions.  Survey of literature found 3 interesting ways Petri Nets are used  BioPNML – Petri Nets for Bio  GJobDL – Petri Nets.
Systems Biology Markup Language Ranjit Randhawa Department of Computer Science Virginia Tech.
Metamodeling and Modeling language for Systems Biology SB-UML Magali ROUX-ROUQUIE CNRS, Paris.
A database of biological pathways and processes (borrowed from a presentation created by Steve Jupe)
Chapter – 8 Software Tools.
Tools in Bioinformatics Ontologies and pathways. Why are ontologies needed? A free text is the best way to describe what a protein does to a human reader.
Object Oriented Analysis and Design Introduction to Rational Rose.
XML BASICS and more…. What is XML? In common:  XML is a standard, simple, self-describing way of encoding both text and data so that content can be processed.
Parsing XML XDocument and LINQ
Course Outcomes of Object Oriented Modeling Design (17630,C604)
Pathway Analysis June 13, 2017.
GO : the Gene Ontology & Functional enrichment analysis
XML QUESTIONS AND ANSWERS
Data Exchange & Public Reference Data
Rumbaugh’s Objectmodeling Technique
Data Dictionaries ER Diagram.
Business Process Measures
By HITESHWAR KUMAR AZAD Ph.D Scholar
Prepared for Md. Zakir Hossain Lecturer, CSE, DUET Prepared by Miton Chandra Datta
ELECTRONIC MAIL SECURITY
ELECTRONIC MAIL SECURITY
Javascript & jQuery XML.
Software Design Lecture : 15.
The Systems Biology Graphical Notation:
Test Your Tech Blogging is: Someone's online journal.
Database Design Hacettepe University
Presentation transcript:

Systems Biology Markup Language (SBML) Jannis Uhlendorf

Motivation Typical representations of biological models: function dy = nop450(t,y) dy=zeros(7,1); dy(1)= -y(7)*(6*10^(-12))*0.0463067*(y(1)-y(2)); dy(2)= ((6*10^(-12))*0.0463067*(y(1)-y(2)))-3.3*25.55*(y(2)/(0.53+y(2))); dy(3)= 3.3*25.55*(y(2)/(0.53+y(2)))-0.0871*25.55*(y(3)/(0.94+y(3))); dy(4)= .0871*25.55*(y(3)/(0.94+y(3)))- 0.6*25.55*(y(4)/(0.16+y(4))); dy(5)= 0.6*25.55*(y(4)/(0.16+y(4))) - 25.4*25.55*(y(5)/(20+y(5))); if y(6) > 2*10^(-10) dy(6)= 25.4*25.55*(y(5)/(20+y(5))) -1.5789*10^(-10) else dy(6) = 25.4*25.55*(y(5)/(20+y(5))) end if y(6) > 0.0005 if y(7) > 1.6*10^11 dy(7)=0 dy(7) = 5*10^6 dy(7) = 0 Problems: How to exchange models between different software tools? How to share models with other researchers? source:http://2013.igem.org/Team:SydneyUni_Australia/Modelling_Output

SBML What is SBML? machine readable format for computational models in biology aimed representing biochemical reactions can also be used for other processes (e.g. population models) based on XML (eXtensible Markup Language) resource for more information: http://sbml.org

SBML software and models > 250 software tools support SBML Raise of the amount of SBML tools over the last decade > 1000 SBML models available

SBML Structure SBML Document (root) Model Compartment Species Reaction

SBML Structure Compartment ID: Cytosol size: 1 fL Source: philschatz.com A compartment is a container that has a defined size (volume or area in case of membranes), for instance the cytosol or cell membrane

SBML Structure Compartment Species ID: cytosol size: 1 fL ID: ATP initial conc.: 50 mM Compartment: cytosol A species defines a biochemical entity that can participate in reactions, for instance Glucose-6-phospate

SBML Structure Compartment Species ID: cytosol size: 1 fL ID: ATP initial conc.: 50 mM compartment: cytosol Reaction ID: Hexokinase reactants: ATP, Glucose products: ADP, Glc-6-Ph. modifiers: Glc-6-Ph. kinetic law: kf*ATP*Glc - .. A reaction describes a transformation, transport or binding process.

XML eXtensible Markup Language standard for storing textual information meta format that can be user defined examples: OpenDocument (OpenOffice) XHTML SVG

XML elements <message> Hello World </message> XML element with start end end tag (a tag starts with < and ends with >) empty XML element XML attributes <message>          Hello World </message> <message/>  <message sender=”Jannis” /> 

XML has a treee structure Nesting of XML elements <bookshelf location="hallway" >         <color>blue </color>         <book title="Momo" author="Michael E" >            <p>In old, old times, when the ...</p>         </book>         <book title="Pippi Longst" author="Astrid L" >                 <p>At the end of a little ...</p>         </book> </bookshelf>

XML elements vs attributes XML attributes <person>  <gender>female</gender> <firtname>Anna</firstname> <lastname>Smith</lastname> </person>  <person gender=”female”>  <firtname>Anna</firstname> <lastname>Smith</lastname> </person> 

Right and wrong Well-formed Not well-formed <bookshelf location="hallway" >         <color>blue </color> </bookshelf> <bookshelf location="hallway" > <color>blue </bookshelf> </color>

SBML code SBML compartment SBML species <listOfCompartments> <compartment id="cytosol" size="1e-14"/> </listOfCompartments>3 SBML species <listOfSpecies> <species compartment="cytosol" id="ES" initialAmount="0" name="ES"/> <species compartment="cytosol" id="P" initialAmount="0" name="P"/> <species compartment="cytosol" id="S" initialAmount="1e-20" name="S"/> <species compartment="cytosol" id="E" initialAmount="5e-21" name="E"/> </listOfSpecies>

Full SBML model ATP + NADH ↔ ADP + NADPH <?xml version="1.0" encoding="UTF-8"?> <sbml xmlns="http://www.sbml.org/sbml/level2/version1" version="1" level="2" > <model id="model" > <listOfCompartments > <compartment size="1" id="GO 0005623" name="cell" > </listOfCompartments > <listOfSpecies > <species initialConcentration="1" compartment="GO 0005623" id="ATP" name="ATP" > <species initialConcentration="1" compartment="GO 0005623" id="NADH" name="NADH" > <species initialConcentration="2" compartment="GO 0005623" id="ADP" name="ADP" > <species initialConcentration="2" compartment="GO 0005623" id="NADPH" name="NADPH" > <species initialConcentration="1" compartment="GO 0005623" id="enzyme" name="2.7.1.86" > </listOfSpecies > <listOfReactions > <reaction id="R00105" name="ATP NADH 2 phosphotransferase" > <listOfReactants > <speciesReference species="ATP" > <speciesReference species="NADH" > </listOfReactants > <listOfProducts > <speciesReference species="ADP" > <speciesReference species="NADPH" > </listOfProducts > <listOfModiers > <modierSpeciesReference species="enzyme" > </listOfModiers > </reaction > </listOfReactions > </model > </sbml> ATP + NADH ↔ ADP + NADPH

Full SBML model ATP + NADH ↔ ADP + NADPH <?xml version="1.0" encoding="UTF-8"?> <sbml xmlns="http://www.sbml.org/sbml/level2/version1" version="1" level="2" > <model id="model" > <listOfCompartments > <compartment size="1" id="GO 0005623" name="cell" > </listOfCompartments > <listOfSpecies > <species initialConcentration="1" compartment="GO 0005623" id="ATP" name="ATP" > <species initialConcentration="1" compartment="GO 0005623" id="NADH" name="NADH" > <species initialConcentration="2" compartment="GO 0005623" id="ADP" name="ADP" > <species initialConcentration="2" compartment="GO 0005623" id="NADPH" name="NADPH" > <species initialConcentration="1" compartment="GO 0005623" id="enzyme" name="2.7.1.86" > </listOfSpecies > <listOfReactions > <reaction id="R00105" name="ATP NADH 2 phosphotransferase" > <listOfReactants > <speciesReference species="ATP" > <speciesReference species="NADH" > </listOfReactants > <listOfProducts > <speciesReference species="ADP" > <speciesReference species="NADPH" > </listOfProducts > <listOfModiers > <modierSpeciesReference species="enzyme" > </listOfModiers > </reaction > </listOfReactions > </model > </sbml> ATP + NADH ↔ ADP + NADPH

Full SBML model ATP + NADH ↔ ADP + NADPH <?xml version="1.0" encoding="UTF-8"?> <sbml xmlns="http://www.sbml.org/sbml/level2/version1" version="1" level="2" > <model id="model" > <listOfCompartments > <compartment size="1" id="GO 0005623" name="cell" > </listOfCompartments > <listOfSpecies > <species initialConcentration="1" compartment="GO 0005623" id="ATP" name="ATP" > <species initialConcentration="1" compartment="GO 0005623" id="NADH" name="NADH" > <species initialConcentration="2" compartment="GO 0005623" id="ADP" name="ADP" > <species initialConcentration="2" compartment="GO 0005623" id="NADPH" name="NADPH" > <species initialConcentration="1" compartment="GO 0005623" id="enzyme" name="2.7.1.86" > </listOfSpecies > <listOfReactions > <reaction id="R00105" name="ATP NADH 2 phosphotransferase" > <listOfReactants > <speciesReference species="ATP" > <speciesReference species="NADH" > </listOfReactants > <listOfProducts > <speciesReference species="ADP" > <speciesReference species="NADPH" > </listOfProducts > <listOfModiers > <modierSpeciesReference species="enzyme" > </listOfModiers > </reaction > </listOfReactions > </model > </sbml> ATP + NADH ↔ ADP + NADPH

Full SBML model ATP + NADH ↔ ADP + NADPH <?xml version="1.0" encoding="UTF-8"?> <sbml xmlns="http://www.sbml.org/sbml/level2/version1" version="1" level="2" > <model id="model" > <listOfCompartments > <compartment size="1" id="GO 0005623" name="cell" > </listOfCompartments > <listOfSpecies > <species initialConcentration="1" compartment="GO 0005623" id="ATP" name="ATP" > <species initialConcentration="1" compartment="GO 0005623" id="NADH" name="NADH" > <species initialConcentration="2" compartment="GO 0005623" id="ADP" name="ADP" > <species initialConcentration="2" compartment="GO 0005623" id="NADPH" name="NADPH" > <species initialConcentration="1" compartment="GO 0005623" id="enzyme" name="2.7.1.86" > </listOfSpecies > <listOfReactions > <reaction id="R00105" name="ATP NADH 2 phosphotransferase" > <listOfReactants > <speciesReference species="ATP" > <speciesReference species="NADH" > </listOfReactants > <listOfProducts > <speciesReference species="ADP" > <speciesReference species="NADPH" > </listOfProducts > <listOfModiers > <modierSpeciesReference species="enzyme" > </listOfModiers > </reaction > </listOfReactions > </model > </sbml> ATP + NADH ↔ ADP + NADPH

Antimony Human readable and human writable model definition language Allows conversion to and from SBML Antimony SBML A - > B; <?xml version="1.0" encoding="UTF-8"?> ... <listOfCompartments> <compartment id="default_compartment" spatialDimensions="3" size="1" constant="true"/> </listOfCompartments> <listOfSpecies> <species id="A" compartment="default_compartment"/> <species id="B" compartment="default_compartment"/> </listOfSpecies> <listOfReactions> <reaction id="_J0”> <listOfReactants> <speciesReference species="A" stoichiometry="1" constant="true"/> </listOfReactants> <listOfProducts> <speciesReference species="B" stoichiometry="1" constant="true"/> </listOfProducts> Lucian P. Smith, Frank T. Bergmann, Deepak Chandran, Herbert M. Sauro; Antimony: a modular model definition language. Bioinformatics 2009; 25 (18): 2452-2454. doi: 10.1093/bioinformatics/btp401

Antimony Compartments compartment c1; Species species ATP in c1; Reaction Glucose + ATP → Glucose-6P; k1*Glucose*ATP Events E1: at (time>50): ATP=0

Model annotation Problem: how to define the biological meaning of SBML elements? e.g. Glc stands for Glucose?, D-Glucose? L-Glucose?

Model annotation Hynne Teusink ==

Model annotation Solution: MIRIAM annotations link SBML elements to unique database entries (some) Databases relevant for annotation: KEGG (reactions, species) GeneOntology (compartments, species, reactions) ChEBI (small molecules) UniProt (proteins) Subject Predicate Object ATP isVersionOf Reactome ID 154722

MIRIAM qualifiers Biology Qualifiers is hasPart isPartOf isVersionOf hasVersion isHomologTo isDescribedBy isEncodedBy encodes occursIn Model Qualifiers

Graphic visualization - SBGN SBGN is an effort to standardize the graphical notation used in maps of biochemical and cellular processes studied in Systems Biology. www.sbgn.org

SBGN – Why is it needed? Too many different kinds of graphical notations for biochemical network diagrams

Electronic engineering has a universal graphical language

SBGN - The universal graphical language for Systems Biology

SBGN consists of 3 different languages Process Description Language Entity Relationship Language Activity Flow Language

3 SBGN languages 1. Activity Flow Language (AF): depicts the information flow between entities in a network. Used to represent perturbation effects and describe coarse-grained interaction networks.

3 SBGN languages 2. Entity Relationship Language (ER): shows all relationships in which an entity participates, regardless of temporal aspects. Can be used to describe the molecular biology.

3 SBGN languages 3. Process Description Language (PD): shows temporal courses of biochemical interactions. An entity can appear multiple times to visualize all molecular interactions.