Difference between revisions of "Antimony"

From BioUML platform
Jump to: navigation, search
(BioUML version used, minor fixes)
 
(32 intermediate revisions by 4 users not shown)
Line 1: Line 1:
<h2>Antimony plugin</h2>
+
==Antimony plugin==
 
[[File:Antimony demo.png|thumb|Visual (SBGN) and text-based (Antimony) representations of SBML model in BioUML]]
 
[[File:Antimony demo.png|thumb|Visual (SBGN) and text-based (Antimony) representations of SBML model in BioUML]]
Antimony plugin for BioUML 0.9.6 aims to combine two representations of mathematical model (particularly - SBML model):
+
Antimony plugin for [[BioUML]] {{BioUML current version}} aims to combine two representations of mathematical model (particularly - SBML model):
 
<ul>
 
<ul>
<li>visual representation as BioUML-diagram using extended SBGN notation
+
<li>visual representation as BioUML {{Type link|diagram}} using extended SBGN notation
 
<li>text-based representation using Antimony language<ref>Smith, L.P., Bergmann, F.T., Chandran, D. Sauro, M.H. Antimony: a modular model definition language. Bioinformatics, 2009, 25(18): 2452-2454. {{doi|10.1093/bioinformatics/btp401}}</ref>.
 
<li>text-based representation using Antimony language<ref>Smith, L.P., Bergmann, F.T., Chandran, D. Sauro, M.H. Antimony: a modular model definition language. Bioinformatics, 2009, 25(18): 2452-2454. {{doi|10.1093/bioinformatics/btp401}}</ref>.
 
</ul>
 
</ul>
  
Plguin allows user to edit model both visually and as text.
+
Plugin allows user to edit model both visually and as text.
 
If visual repesentation is changed - antimony text is updated on the fly.<br>
 
If visual repesentation is changed - antimony text is updated on the fly.<br>
Text changes are applyed to the diagram on demand (after pressing "Apply Antimony" button).<br>
+
Text changes are applied to the {{Type link|diagram}} on demand (after pressing "Apply Antimony" button).<br>
 
Besides model representations syncrhonisation, we also try to presereve user diagram layout as well as antimony text format (spaces, comments, etc.)
 
Besides model representations syncrhonisation, we also try to presereve user diagram layout as well as antimony text format (spaces, comments, etc.)
 
<br>
 
<br>
<b>Please note:</b> antimony changes will be applyed to the diagram only after "Apply Antimony" button is pressed.
+
<b>Please note:</b> antimony changes will be applied to the {{Type link|diagram}} only after "Apply Antimony" button is pressed.
If you change diagram before you press this button, all changes in text will be lost!
+
If you change {{Type link|diagram}} before you press this button, all changes in text will be lost!
 
<br>
 
<br>
 
[[File:compartment antimony.png|thumb|Scheme for compartment adding via Antimony]]
 
[[File:compartment antimony.png|thumb|Scheme for compartment adding via Antimony]]
[[File:species.png|thumb|Scheme for species adding via Antimony]]
+
[[File:Antimony adding species.png|thumb|Scheme for species adding via Antimony]]
  
<h2>Features overview</h2>
+
==Features overview==
  
Currently plugin is in alpha version, some features of antimony aren't supported.
+
Currently plugin is in beta version, some features of antimony aren't supported.
 
Also we want to achieve full synchronization between antimony and sbml-model in BioUML.
 
Also we want to achieve full synchronization between antimony and sbml-model in BioUML.
 
And for this purpose we need some additions for the antimony specification.
 
And for this purpose we need some additions for the antimony specification.
Line 26: Line 26:
 
<table  border="1" align="center"  cellspacing="0" cellpadding="4">
 
<table  border="1" align="center"  cellspacing="0" cellpadding="4">
 
<tr bgcolor="#999999">
 
<tr bgcolor="#999999">
<td> Supported within an antimony </td>
+
<td> Supported Antimony features </td>
<td> Necessary additions in the antimony specification</td>
+
<td> Not supported in current version</td>
 
</tr>
 
</tr>
 
<tr>
 
<tr>
 
<td>
 
<td>
 
<ul>
 
<ul>
<li>Creating and removal of species, compartments,</li>
+
<li>Creating and removing of species, compartments,</li>
 
<li>Putting nodes into parental compartments,</li>
 
<li>Putting nodes into parental compartments,</li>
<li>Changing initial values,</li>
+
<li>Initial values changing,</li>
<li>Creating and removal of reaction with reactants and products,</li>
+
<li>Creating and removing of reaction with reactants and products,</li>
<li>Editing kinetic laws of reactions,</li>
+
<li>Editing of reaction kinetic laws,</li>
<li>Creating, removal and editing of functions,</li>
+
<li>Creating, removing and editing of functions,</li>
<li>Creating, removal and editing of scalar and rate equations,</li>
+
<li>Creating, removing and editing of scalar and rate equations,</li>
<li>Mounting constant value for species and variables;</li>
+
<li>Declarating species and variables as constants;</li>
 
</ul>
 
</ul>
 
</td>
 
</td>
 
<td rowspan="3" valign="top" >
 
<td rowspan="3" valign="top" >
 
<ul>
 
<ul>
<li>Algebraic rules</li>
+
        <li>Declaration <i>"DNA strand definitions"</i> isn't supported,</li>
<li>Opportunity to divide initial value and initial assignment</li>
+
        <li>From symbol types, only "species" and "compartment" are supported,</li>
<li>Opportunity to change independently attributes "constant" and "boundary conditional",</li>
+
        <li>Reactions with interactions (inhibition, activation);</li>
<li>"Delay" for events;</li>
+
 
</ul>
 
</ul>
 
</td>
 
</td>
 
</tr>
 
</tr>
 
<tr>
 
<tr>
<td bgcolor="#999999">Antimony features which hadn't supported in alfa-version</td>
+
<td bgcolor="#999999">Necessary additions in the antimony specification</td>
 
</tr>
 
</tr>
 
<tr>
 
<tr>
 
<td>
 
<td>
 
<ul>
 
<ul>
<li>Import statements don't supported,</li>
+
                                <li>Algebraic rules</li>
<li>All declarations must be inside only one model,</li>
+
<li>Distinguishing between initial value and initial assignment with numerical value,</li>
<li>Model can't have parameters,</li>
+
<li>Independent management of "constant" and "boundary conditional" attributes,</li>
<li>Some declarations don't supported: <i>imported models, DNA strand definitions, synchronizations, deletions, display names</i>,</li>
+
<li>From symbol types only  "species" and "compartment" are supported,</li>
+
<li>Reactions with interactions (inhibition, activation) don't use,</li>
+
<li>Also events and initial assignments work incorrectly;</li>
+
 
</ul>
 
</ul>
 
</td>
 
</td>
 
</tr>
 
</tr>
 
</table>
 
</table>
 +
 +
==Composite model==
 +
[[File:SubDiagram.PNG |thumb| Use model definition or external model for adding subdiagram.]]
 +
[[File:Ports.png |thumb| Use parameters of subdiagram or synchronization for adding connection.]]
 +
[[File:CompositDiagram.png |thumb| Visual (SBGN) and text-based (Antimony) representations of composite model.]]
 +
 +
In the beta-version plugin new declarations were added for working with composite models. If antimony text contains few models or declarations outside model then this text corresponds to the composite model. Main model will be created and it contains all models like model definitions.
 +
 +
        <table  border="1" align="center"  cellspacing="0" cellpadding="4">
 +
<tr bgcolor="#999999">
 +
<td> Supported Antimony features </td>
 +
<td> Not supported in current version</td>
 +
</tr>
 +
<tr>
 +
<td>
 +
<ul>
 +
<li>Model definitions,</li>
 +
<li>External models,</li>
 +
<li>Submodels,</li>
 +
<li>Replacing species and parameters from different models;</li>
 +
</ul>
 +
</td>
 +
<td rowspan="4" valign="top" >
 +
<ul>
 +
<li>Sign < * > for defining main model,</li>
 +
<li>Replacing of elements with more than one level of depth
 +
<br><b>Example:</b> s1 is A.B.s2,</li>
 +
                                <li>Replacing of elements other than species and parameters,</li>
 +
<li>Replacing of elements with different types,</li>
 +
                                <li>Import models from other collections,</li>
 +
                                <li>"Deletion" attributes,</li>
 +
                                <li>Operating with submodel elements wich are not defined in model definition as ports explicitly;</li>
 +
</ul>
 +
</td>
 +
</tr>
 +
<tr>
 +
<td bgcolor="#999999">New elements which we have added in Antimony language</td>
 +
</tr>
 +
<tr>
 +
<td>
 +
<ul>
 +
<li>Prefix for different type ports:
 +
                        <ul>
 +
<li><b>contact:</b> "a",</li>
 +
<li><b>input:</b> ">a",</li>
 +
<li><b>output:</b> "<a";</li>
 +
</ul>
 +
<br><b>Example:</b> model nameModel(a,&lt;b,&gt;c);</li>
 +
</ul>
 +
</td>
 +
</tr>
 +
</table>
 +
 +
==Other features==
 +
<b>Attributes.</b> Antimony language has been expended for working with element's attributes. String attribute can be specified by declaration: <b>@elementName.attributeName = "value"</b>. Some attributes are not displayed in the antimony text, but one is able to choose visible attributes in "Additional properties" (tab Options). List of attributes is split by commas.
 +
 +
== References==
 
<References/>
 
<References/>
 +
 +
== See also ==
 +
 +
* [[Visual modeling]]

Latest revision as of 18:08, 21 July 2015

Contents

[edit] Antimony plugin

Visual (SBGN) and text-based (Antimony) representations of SBML model in BioUML

Antimony plugin for BioUML 2023.3 aims to combine two representations of mathematical model (particularly - SBML model):

  • visual representation as BioUML Type-diagram-icon.png diagram using extended SBGN notation
  • text-based representation using Antimony language[1].

Plugin allows user to edit model both visually and as text. If visual repesentation is changed - antimony text is updated on the fly.
Text changes are applied to the Type-diagram-icon.png diagram on demand (after pressing "Apply Antimony" button).
Besides model representations syncrhonisation, we also try to presereve user diagram layout as well as antimony text format (spaces, comments, etc.)
Please note: antimony changes will be applied to the Type-diagram-icon.png diagram only after "Apply Antimony" button is pressed. If you change Type-diagram-icon.png diagram before you press this button, all changes in text will be lost!

Scheme for compartment adding via Antimony
Scheme for species adding via Antimony

[edit] Features overview

Currently plugin is in beta version, some features of antimony aren't supported. Also we want to achieve full synchronization between antimony and sbml-model in BioUML. And for this purpose we need some additions for the antimony specification.

Supported Antimony features Not supported in current version
  • Creating and removing of species, compartments,
  • Putting nodes into parental compartments,
  • Initial values changing,
  • Creating and removing of reaction with reactants and products,
  • Editing of reaction kinetic laws,
  • Creating, removing and editing of functions,
  • Creating, removing and editing of scalar and rate equations,
  • Declarating species and variables as constants;
  • Declaration "DNA strand definitions" isn't supported,
  • From symbol types, only "species" and "compartment" are supported,
  • Reactions with interactions (inhibition, activation);
Necessary additions in the antimony specification
  • Algebraic rules
  • Distinguishing between initial value and initial assignment with numerical value,
  • Independent management of "constant" and "boundary conditional" attributes,

[edit] Composite model

Use model definition or external model for adding subdiagram.
Use parameters of subdiagram or synchronization for adding connection.
Visual (SBGN) and text-based (Antimony) representations of composite model.

In the beta-version plugin new declarations were added for working with composite models. If antimony text contains few models or declarations outside model then this text corresponds to the composite model. Main model will be created and it contains all models like model definitions.

Supported Antimony features Not supported in current version
  • Model definitions,
  • External models,
  • Submodels,
  • Replacing species and parameters from different models;
  • Sign < * > for defining main model,
  • Replacing of elements with more than one level of depth
    Example: s1 is A.B.s2,
  • Replacing of elements other than species and parameters,
  • Replacing of elements with different types,
  • Import models from other collections,
  • "Deletion" attributes,
  • Operating with submodel elements wich are not defined in model definition as ports explicitly;
New elements which we have added in Antimony language
  • Prefix for different type ports:
    • contact: "a",
    • input: ">a",
    • output: "<a";

    Example: model nameModel(a,<b,>c);

[edit] Other features

Attributes. Antimony language has been expended for working with element's attributes. String attribute can be specified by declaration: @elementName.attributeName = "value". Some attributes are not displayed in the antimony text, but one is able to choose visible attributes in "Additional properties" (tab Options). List of attributes is split by commas.

[edit] References

  1. Smith, L.P., Bergmann, F.T., Chandran, D. Sauro, M.H. Antimony: a modular model definition language. Bioinformatics, 2009, 25(18): 2452-2454. doi:10.1093/bioinformatics/btp401

[edit] See also

Personal tools
Namespaces

Variants
Actions
BioUML platform
Community
Modelling
Analysis & Workflows
Collaborative research
Development
Virtual biology
Wiki
Toolbox