Upload
lieu
View
40
Download
0
Tags:
Embed Size (px)
DESCRIPTION
Needs to be described:. Objects Have multiple states Consist of other objects, that may have multiple states May be connected with each other via different bonds Located in multiple compartments, with two objects within the third can be in three different compartments. Rules: - PowerPoint PPT Presentation
Citation preview
Needs to be described:
• Objects– Have multiple states– Consist of other objects, that may have multiple states– May be connected with each other via different bonds– Located in multiple compartments, with two objects within the third can
be in three different compartments.
• Rules:– Select sets of objects with common properties– Transform sets of objects into another sets of objects, generating
reactions– Add kinetic laws to reactions
• Representational issues (compatible with SBGN)
• Rules application:– Stochastic application– Rules priority, score, confidence– Restrictions on the number of applications
Two approaches to define SBML
• Graph-based approach with the fixed hierarchy (BNG, Simmune, StochSim, Moleculizer, MIM)
• Graph-based approach with an arbitrary level of hierarchy (A Finney)
• Start with the simplest
Main features of the proposal
1. Species are constructed of molecules, molecules – of components.
2. Component = binding site = state variable3. Attributes, variables, stoichiometry = properties
of a component4. Species configuration space is defined by rules
later on, not during molecules declarations.5. Concentrations (all numerics!) are declared
separately from species declaration.
Molecular Entities and Chemical Species graphs
• A Chemical Species Graph C is a fully defined molecular entity or a set of molecular entities.– Any and all variable attributes taking
specific values. Y-P
Shc
Ys-P
Grb2SosYg-U
Ys-U
Yg-P
Grb2Y binding site
UP
Shc
EGF
EGF binding domain E
Grb2 binding site Yg
Shc binding site Ys
EGFR
UP
EGFR binding domain R
UP
SH2
SH3-2
Grb2
Sos
EGFRbinding SH2site
Reaction is a graph rewriting consistent with chemistry
Ys-P
Yg-P
Ys-P
Yg-P
Ys-P
Yg-P
Ys-U
Yg-P
Ys-P
Yg-P
Ys-U
Yg-P
Ys-P
Yg-P
Ys-P
Yg-P
Ys-P
Yg-P
Ys-P
Yg-P
• Mapping ρ: Rρ -> Pρ preserves, adds and removes molecular entity graphs as units.
Pattern graphs and chemical species selected by patterns
Y-P
Shc
Ys-P
Grb2
Sos
Yg-U
Ys-U
Yg-P
Ys-PYs-P
Yg-P Yg-P
Ys-P
Yg-UY-U
ShcYs-PYg-P
Y-P
ShcYs-P
Grb2 Yg-P
Ys-P
Yg-U
Ys-P
Ys-U
Yg-P
Yg-P
Ys-P
Ys-U
Yg-P
Yg-P
Ys-P
Yg-P
Ys-P
Ys-P
Yg-P
Yg-P
Sos
Graph transformation on patterns
• Find reactant chemical species C matched by RP
• Replace image of RP in C by PP via f.
• Preserve edges, vertices and attributes of vertices in C not specified in RP.
• Remove dangling edges.
Ys-P
Yg-P
Ys-P
Yg-P
General XML/SBML structure
SBML L1-L2
UnitsCompartmentsParametersSpeciesReactions Reactants speciesReference Products speciesReference KineticLaw
SBML L3-RBM
Species + components + physicalEntities + bondsReactions Reactants + speciesTemplate Products +? speciesTemplate +? ReactionTemplate
Graph XML
Graph Nodes Edges NodeReferences Transformation RHS GraphReference LHS GraphReference Map NodeToNode EgdeToEdge
Introduction to BioNetGen Language (BNGL)A
b
Y
B
A(b) B(a,Y~U~P,location~Cyt~Nuc)
a
A(b) + B(a) -> A(b!1).B(a!1) p
B(Y~P) -> B(Y~U) da bond between two components
B_tot B()B_unbound B(a)B_bound B(a!+)B_phospho_all B(Y~P!?)B_phospho_unbound B(Y~P)B_phospho_bound B(Y~P!+)A_B_complex A().B()
Molecules
Patterns
Reaction rules
Components and physical entities R(a,b~u~p,g~u~p)
<physicalEntity id=“R“ compartment=“m"/> <listOfStates> <state value="u“ name=“unfolded"/> <state value=“f“ name=“folded"/> </listOfStates> <listOfComponents> <component id="a" componentType="b-site"/> <component id="b" componentType="p-site"> <listOfComponentTypeStates> <componentTypeState value="u" name="unphosphor"/>
<componentTypeState value="p" name="phosphor"/> </listOfComponentTypeStates> </component> <component id="g" componentType="p-site" compartment="ic"/> </listOfComponents></physicalEntity>
component: b-siteid: acompartment: extracellular
component: p-siteid: bcompartment: intracellular
component: p-siteid: gcompartment: intracellular
physicalEntityid: Rstates: u,fcompartment: membrane
Species R(a!1,b~p!2,g~u).L(Fc!1,Fc).Lyn(SH2!2)
id: betastate: p
id: gammastate: u
Lyn2
bondid: 2
1
<species id="S_lig_monomer_Lyn "> <listOfPhysicalEntityInstances> <physicalEntityInstance physicalEntity="L" id="iL"> <listOfComponentInstances> <componentInstance id="i1Fc" component="Fc"/> <listOfBondReferences> <bondReference bond="1"/> </listOfBondReferences> </componentInstance> <componentInstance id="i2Fc" component="Fc"/> </listOfComponentInstances> </physicalEntityInstance> ….. </listOfPhysicalEntityInstances> <listOfBonds> <bond id="1" type="external"/> <bond id="2" type="external"/> </listOfBonds></species>
speciesTemplate
R(a!1).L(Fc!1,Fc) R(a,g~p!?)
<speciesTemplate id="T_L_monomer"> <listOfPhysicalEntitiesIncluded> …. <listOfComponentInstances> …. …
<listOfPhysicalEntitiesIncluded>
<listOfBonds></speciesTemplate>
id: i1Fccomponent: Fcconnectivity: bound
speciesType: T_lig_monomer
id: ialphacomponent: alphaconnectivity: bound
id: i2Fccomponent: Fcconnectivity: unbound
physicalEntityIncluded: FceRI
physicalEntityIncluded: Lig
1bondid: 1type: external
component: b-siteid: aconnectivity: unbound
component: p-siteid: gcomponentValue: p
speciesTypestate: u
SpeciesPattern: P_lig_bound_once
speciesTypeIncludedInstance: Fcid: i1FcextBonds: 1bondReference: 1
speciesTypeInstance: Ligid: iLig
speciesTypeIncludedInstance: Fcid: i2FcextBonds: 0 id: gamma
state: u
id: betastate: p
Lyn
FceRI
1
SpeciesPattern: P_lig_bound_one_or_more
speciesTypeIncludedInstance: Fcid: i1FcextBonds: 1bondReference: 1
speciesTypeInstance: Ligid: iLig
SpeciesPattern: P_ligand_bound_two_times
speciesTypeIncludedInstance: Fcid: i1FcextBonds: 1bondReference: 1
speciesTypeInstance: Ligid: iLig
speciesTypeIncludedInstance: Fcid: i2FcextBonds: 1bondReference: 2
not specified - canhave as many bondsas allowed bymaxExternalBonds
1 1
2
FceRI
FceRI
1
FceRI
1
FceRI
2
FceRI
1
FceRI
2
Lyn3
id: gammastate: u
id: betastate: p
id: gammastate: u
id: betastate: p
id: gammastate: u
id: gammastate: u
id: betastate: p
id: gammastate: u
id: betastate: p
id: betastate: p
id: gammastate: u
id: betastate: p
1a Species: S_lig_bound_once1b
2a
1c
2b 2c
3a 3b Species
SpeciesSpecies
Species
1
Reactions and reaction rules
Option 1:
<reaction>
<listOfReactants>
<speciesTemplate id=“R"/>
<speciesReference species="L"/>
</listOfReactants>
<listOfProducts>
<speciesTemplate id=“R-L"/>
</listOfProrducts>
</reactionRule>
Option 2:
<reactionRule>
<listOfReactants>
<speciesTemplate id="T_monomer"/>
<speciesReference species="T_free_L"/>
</listOfReactants>
<reactionTemplate>
<SpeciesTemplateChange>
<bond …>
<kineticLaw>
……
</kineticLaw>
</speciesTemplateChange>
</reactionTemplate>
</reactionRule>
ReactionRule specification: graph-based approach
<reaction>
<listOfReactants>
<speciesTemplate id=“R">
……
</speciesTemplate>
<speciesTemplate id=“L”/>
……
</speciesTemplate>
</listOfReactants>
<listOfProducts> <speciesTemplate id=“R-L"> …… </speciesTemplate>
</listOfProrducts>
<kineticLaw>
…..
</kineticLaw>
</reaction>
id: i1Fccomponent: Fcconnectivity: bound
id: iacomponenet: aconnectivity: bound
id: i2Fccomponent: Fcconnectivity: unbound
physicalEntityIncluded: Lig
1bondid: 1
id: i1Fccomponent: Fcconnectivity: unbound
id: iacomponenet: aconnectivity: bound
id: i2Fccomponent: Fcconnectivity: unbound
Reactant: speciesType T_monomerphysicalEntityIncluded: R
Reactant: speciesType T_free_ligandphysicalEntityIncluded: L
Product: speciesType T_L_monomer
physicalEntityIncluded: FceRI
R(a) + L(Fc,Fc) -> R(a!1).L(Fc!1,Fc)
ReactionRule specification: chemistry-based approach
<reaction>
<listOfReactants>
<speciesTemplate id=“R">
…
</speciesTemplate>
<speciesTempalte id="L"/>
…
</speciesTemplate>
</listOfReactants>
<reactionTemplate> <physicalEntitiesReplacements> <ExternalBondsReplacements>
</reactionTemplate>
</reaction>
Ys-P
Yg-P
Ys-P
Yg-P
Ys-P
Yg-P
Ys-U
Yg-P
Ys-P
Yg-P
Ys-U
Yg-P
Ys-P
Yg-P
Ys-P
Yg-P
Ys-P
Yg-P
Ys-P
Yg-P
A
a
B
a
How to select A as reactant and transform into B while preserving states of component a?
Easy to do operationally, but harder to define using standard semantics of chemical semantics.
Need notion of mapping.
Challenge: L3M should encompass.
Reaction or ReactionRule
R(a) + L(Fc,Fc) -> R(a!1).L(Fc!1,Fc)
<reaction id="Ligand_bind" reversible="true">
<listOfReactants>
<speciesTemplate id="T_monomer"/>
<speciesTemplate species="T_free_L"/>
</listOfReactants>
<reactionTemplate>
<SpeciesTemplateChange>
<bond …>
<kineticLaw>
……
</kineticLaw>
</speciesTemplateChange>
</reactionTemplate>
</reactionRule>
id: i1Fccomponent: Fcconnectivity: bound
id: iacomponenet: aconnectivity: bound
id: i2Fccomponent: Fcconnectivity: unbound
physicalEntityIncluded: Lig
1bondid: 1
id: i1Fccomponent: Fcconnectivity: unbound
id: iacomponenet: aconnectivity: bound
id: i2Fccomponent: Fcconnectivity: unbound
Reactant: speciesType T_monomerphysicalEntityIncluded: R
Reactant: speciesType T_free_ligandphysicalEntityIncluded: L
Product: speciesType T_L_monomer
physicalEntityIncluded: FceRI
Logic and Range (BioPAX)
<physicalEntity id="R" > <listOfComponents> <component id="a"> <listOfStates> <state id="sta1"/> ……
<state id="sta6"/> </listOfStates> </component> </listOfComponents></physicalEntity>
<speciesTemplate id="T_R"> <listOfPhysicalEntityInstances> <physicalEntityInstance physicalEntity="R" id="iR"> <listOfComponentInstances> <componentInstance value="ia" component="a" state=“ NOT sta1"/> <componentInstance value="ia" component=“a" state="sta1" OR "sta2"/> <componentInstance value="ia" component=“a" state="[sta3… sta5]"/> </listOfComponentInstances> </physicalEntityInstance> </listOfPhysicalEntityInstances></speciesTemplate>
Arbitrary level of hierarchy
• Why not specify components and physicalEntities as speciesTypes?
• Advantage: generality
• Problem: does not allowed by current SBML standard
• Cost: complexity of connectivity
<speciesType id="Lig">
<listOfSpeciesTypesIncluded>
<speciesTypeIncluded id="Fc" speciesType="b-site" multiplicity="2“>
</listOfSpeciesTypesIncluded>
</speciesType>
speciesTypeIncluded: b-siteid: Fcmultitplicity:2compartment: extracellular
speciesTypeclass: ”component”id: p-sitestates: u,p
speciesTypeclass: physicalEntityid: Lig
speciesTypeclass: ”component”id: b-site
speciesType
speciesTypeIncluded
<speciesType id="p-site" defaultStateValue=“u”> <listOfSpeciesTypeStates>
<speciesTypeState value="u" name="unphosphorylated"/><speciesTypeState value="p" name="phosphorylated"/
</listOfSpeciesTypeStates></speciesType>
speciesType
id : SId name : string {use="optional"} class: string {"component", "physicalEntity", …} {use="optional"}speciesTypeState: string [0..*] {use="optional"} speciesTypeIncluded: speciesTypeIncluded[0..*]compartment: Sid {use="optional"}
<speciesType id="p-site" class="components" name="site_of_phosphorylation“ defaultStateValue=“u”> <listOfSpeciesTypeStates>
<speciesTypeState value="u" name="unphosphorylated"/><speciesTypeState value="p" name="phosphorylated"/
</listOfSpeciesTypeStates></speciesType>
speciesTypeIncluded: b-siteid: Fcmultitplicity:2compartment: extracellular
speciesTypeclass: ”component”id: p-sitestates: u,p
speciesTypeclass: physicalEntityid: Lig
speciesTypeclass: ”component”id: b-site
speciesTypeIncluded
Id: SId
name : string {use="optional"}
multiplicity: int { minInclusive="0" use="optional" default="1"}
maxExternalBonds: int { minInclusive="0" use="optional" default="1"}
maxInternalBonds: int { minInclusive="0" use="optional" default="0"}
compartment: Sid {use="optional"}
<speciesType class="physicalEntity" id="Lig">
<listOfSpeciesTypesIncluded>
<speciesTypeIncluded id="Fc" speciesType="b-site" multiplicity="2“>
</listOfSpeciesTypesIncluded>
</speciesType>
speciesTypeIncluded: b-siteid: Fcmultitplicity:2compartment: extracellular
speciesTypeclass: ”component”id: p-sitestates: u,p
speciesTypeclass: physicalEntityid: Lig
speciesTypeclass: ”component”id: b-site
<speciesType class="physicalEntity" id="R"> <listOfSpeciesTypesIncluded> <speciesTypeIncluded id="a" speciesType="b-site" maxInternalBonds ="1"> <listOfBondReferences> <bondReference bond="1"/> </listOfBondReferences> <speciesTypeIncluded/> <speciesTypeIncluded id="b" speciesType="p-site" maxInternalBonds =“1"> <listOfBondReferences> <bondReference bond="1"/> </listOfBondReferences> <speciesTypeIncluded/> </listOfSpeciesTypesIncluded> <listOfBonds> <bond id="1" bondType="internal"/> </listOfBonds></speciesType>
BondsspeciesType: R speciesTypeIncluded: b-site
id: amaxInternalBonds:1
speciesTypeIncluded: p-siteid: bmaxInternalBonds:2
bondtype: internalid: 1
id : SId {use="optional"} name : string {use="optional"} speciesTypeInstance: speciesType[0..*]compartment: Sid {use="optional"}
speciesTypeInstanceid : SId speciesTypeValue: speciesTypeValue {use="optional"} name : string {use="optional"}multiplicity: int { minInclusive="0" use="optional" default="1"} extBonds: int { minInclusive="0" maxInclusive="maxExtBonds" use="optional"}intBonds: int { minInclusive="0" maxInclusive="maxIntBonds" use="optional"}
speciesTemplate