[sbml-discuss] SBML L2V2 specification Vote: HANDLING OF NAMESPACES WITHIN ANNOTATIONS

Robert Phair rphair at ix.netcom.com
Tue Dec 6 13:24:47 PST 2005


Is this golden rule a part of the L2v1 spec?

>Remember the golden rule of SBML annotation: You have to record the
annotation >you can't understand as such and serve it back when you're done
with the model.

RDP

Robert D Phair, PhD
Principal
Bioinformatics Services

Chief Scientific Officer
Integrative Bioinformatics Inc
301.437.0601 

-----Original Message-----
From: sbml-discuss-bounces at caltech.edu
[mailto:sbml-discuss-bounces at caltech.edu] On Behalf Of Nicolas Le Novère
Sent: Monday, December 05, 2005 6:41 PM
To: SBML Discussion List
Subject: Re: [sbml-discuss] SBML L2V2 specification Vote: HANDLING OF
NAMESPACES WITHIN ANNOTATIONS


> Here is an example that is actually x and x, from the arrays
> proposal, which is proposed as an "extension" but must be done in
> annotations to make it legal sbml. If you tell me how to make this
> work it will remove my concerns:
>
> initialAssignmentRule is a new rule type that gives the initial
> values to an array variable. If there are more than array variables I
> need an initial assignment rule for each one.
>
> <listOfRules ...>
>
> 	<annotation>
> 	     <initialAssignmentRule xmlns="http://www.computableplant.org/
> ns" variable="u"> ... </initialAssignmentRule>
> 	     <initialAssignmentRule xmlns="http://www.computableplant.org/
> ns" variable="v">...</initialAssignmentRule>
> 	</annotation>
>
> </listOfRules>

Here is what I would do (note that this is not what I did in StochSim,
which annotation system was written before I really faced the problem of
understandanding other people annotations).

 	<annotation xmlns:cp="http://www.computableplant.org/ns">
             <cp:arrays>
                 <cp:initialAssignmentRule variable="u">
                     ...
                 </cp:initialAssignmentRule>
 	         <cp:initialAssignmentRule variable="v">
                     ...
                 </cp:initialAssignmentRule>
             </cp:arrays>
        </annotation>

or

 	<annotation>
             <cp:arrays xmlns:cp="http://www.computableplant.org/ns">
                 <initialAssignmentRule variable="u">
                     ...
                 </initialAssignmentRule>
 	         <initialAssignmentRule variable="v">
                     ...
                 </initialAssignmentRule>
             </cp:arrays>
        </annotation>

or even (a little redundancy is not always bad)

 	<annotation>
             <cp:arrays xmlns:cp="http://www.computableplant.org/ns">
                 <cp:initialAssignmentRule variable="u">
                     ...
                 </cp:initialAssignmentRule>
 	         <cp:initialAssignmentRule variable="v">
                     ...
                 </cp:initialAssignmentRule>
             </cp:arrays>
        </annotation>

The example below can be confusing for instance if there are several
elements listOfDimensions belonging to various namespaces (yes, I know
they can be annotated with different namespaces. It is still confusing).
Remember the golden rule of SBML annotation: You have to record the
annotation you can't understanf as such and serve it back when you're done
with the model. Much easier if the annotation is already sorted out.

NB: below, MathML namespace should be declared,

> And x and y example from the same proposal is the following. This
> could be fixed by putting "listOfDimensions" and "exists" in their
> own namespace but I don't know if that is the correct thing to do.
>
> <parameter id="I" value="1">
> 	<annotation>
> 		<listOfDimensions  xmlns="http://www.computableplant.org/ns"
>
> 			  <dimension id="i" lowerLimit="1" upperLimit="3">
> 			  <dimension id="j" lowerLimit="1" upperLimit="3">
> 		</listOfDimensions>
> 		<exists  xmlns="http://www.computableplant.org/ns" >
> 		  <math>
> 			   <apply>
> 			    <eq/>
> 			    <ci>i</ci>
> 			    <ci>j</ci>
> 			   </apply>
> 		  </math>
> 		</exists>
> 	</annotation>
> </parameter>


--
Nicolas LE NOVÈRE,  Computational Neurobiology,
EMBL-EBI, Wellcome-Trust Genome Campus, Hinxton, Cambridge, CB10 1SD, UK
Tel: +44(0)1223 494 521,  Fax: +44(0)1223 494 468,  Mob: +33(0)689218676
http://www.ebi.ac.uk/~lenov






More information about the Sbml-discuss mailing list