<?xml version="1.0"?>

<!--  FILE :  pentose_phosphate_pathway_model.xml

CREATED :  31st May 2002

LAST MODIFIED : 5th April 2003

AUTHOR :  Catherine Lloyd
          The Bioengineering Institute
          The University of Auckland
          
MODEL STATUS :  This model conforms to the CellML 1.0 Specification released on
                10th August 2001, and the 16/01/2002 CellML Metadata 1.0
                Specification.

DESCRIPTION :  This file contains a CellML description of a generic model of the
               pentose phosphate pathway.

CHANGES:  
   22/07/2002 - CML - Added more metadata.
  05/04/2003 - AAC - Changed the model name so the model loads in the database 
                     easier.
-->


<model name="the_pentose_phosphate_pathway_model" pathway_editor:rendering_config_file="pentose_phosphate_pathway_CellMLrender.xml" xmlns="http://www.cellml.org/cellml/1.0#" xmlns:cellml="http://www.cellml.org/cellml/1.0#" xmlns:cmeta="http://www.cellml.org/metadata/1.0#" xmlns:pathway_editor="http://www.physiome.com/pathway_editor/1.0#">
  
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:bqs="http://www.cellml.org/bqs/1.0#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:vCard="http://www.w3.org/2001/vcard-rdf/3.0#">
    
<!--
      The following RDF block contains metadata that applies to this document
      as a whole, as indicated by the empty about attribute on the 
      <rdf:Description> element.
    -->

    
<rdf:Description rdf:about="">
      
<!--
        The Model Builder Metadata.  The Dublin Core "creator" element is used  
        to indicate the person who translated the model into CellML.
      -->

      
<dc:creator rdf:parseType="Resource">
        
<vCard:N rdf:parseType="Resource">
          
<vCard:Family>Lloyd</vCard:Family>
          
<vCard:Given>Catherine</vCard:Given>
          
<vCard:Other>May</vCard:Other>
        
</vCard:N>
        
<vCard:EMAIL rdf:parseType="Resource">
          
<rdf:value>c.lloyd@auckland.ac.nz</rdf:value>
          
<rdf:type rdf:resource="http://imc.org/vCard/3.0#internet" />
        
</vCard:EMAIL>
        
<vCard:ORG rdf:parseType="Resource">
          
<vCard:Orgname>The University of Auckland</vCard:Orgname>
          
<vCard:Orgunit>The Bioengineering Institute</vCard:Orgunit>
        
</vCard:ORG>
      
</dc:creator>
      
      
<!--
        The Creation Date metadata. This is the date on which the model
        was translated into CellML.
      -->

      
<dcterms:created rdf:parseType="Resource">
        
<dcterms:W3CDTF>2002-05-31</dcterms:W3CDTF>
      
</dcterms:created>
      
      
<!--
        The Last Modified Date metadata. This is the date on which
        the model was last changed.
      -->

      
<cmeta:modification rdf:parseType="Resource">
        
<rdf:value>
          Changed the model name so the model loads in the database easier.
        
</rdf:value>
        
<cmeta:modifier rdf:parseType="Resource">
          
<vCard:N rdf:parseType="Resource">
            
<vCard:Family>Cuellar</vCard:Family>
            
<vCard:Given>Autumn</vCard:Given>
            
<vCard:Other>A</vCard:Other>
          
</vCard:N>
        
</cmeta:modifier>
        
<dcterms:modified rdf:parseType="Resource"> 
          
<dcterms:W3CDTF>2003-04-05</dcterms:W3CDTF>
        
</dcterms:modified>
      
</cmeta:modification>
      
<cmeta:modification rdf:parseType="Resource">
        
<rdf:value>
          Added more metadata.
        
</rdf:value>
        
<cmeta:modifier rdf:parseType="Resource">
          
<vCard:N rdf:parseType="Resource">
            
<vCard:Family>Lloyd</vCard:Family>
            
<vCard:Given>Catherine</vCard:Given>
            
<vCard:Other>May</vCard:Other>
          
</vCard:N>
        
</cmeta:modifier>
        
<dcterms:modified rdf:parseType="Resource"> 
          
<dcterms:W3CDTF>2002-07-22</dcterms:W3CDTF>
        
</dcterms:modified>
      
</cmeta:modification>
      
      
<!-- The Publisher metadata. -->
      
<dc:publisher>
        The University of Auckland, Bioengineering Institute
      
</dc:publisher>
    
</rdf:Description>
    
    
<!--
      The following metadata refers to the model itself, as indicated by the
      reference to the ID "pentose_phosphate_pathway_model", which is declared
      on the <model> element.
    -->

    
<rdf:Description rdf:about="#pentose_phosphate_pathway_model">
      
<!-- A human readable name for the model. -->
      
<dc:title>A Generic Model Of The Pentose Phosphate Pathway</dc:title>
      
      
<!-- A comment regarding the model. -->
      
<cmeta:comment rdf:parseType="Resource">
        
<rdf:value>
          Below is a CellML description of a general model of the metabolic
          pentose phosphate pathway.  It is not based on a specific published 
          mathematical model, but instead it is based on a textbook defined 
          pathway.  The general sequential structure and all the reactant, 
          product and enzyme components are included.  Michaelis-Menten enzyme 
          kinetics are assumed.
          
          The purpose of this description is to illustrate how CellML can be
          used to model a general metabolic pathway.
        
</rdf:value>
        
<!-- The creator of the comment. -->
        
<dc:creator>
          
<vCard:FN>Catherine Lloyd</vCard:FN>
        
</dc:creator>
      
</cmeta:comment>
      
      
<cmeta:species>Homo sapiens</cmeta:species>
      
      
<!--  Keyword(s) -->
      
<bqs:reference rdf:parseType="Resource">
        
<dc:subject rdf:parseType="Resource">
          
<bqs:subject_type>keyword</bqs:subject_type>
          
<rdf:value>metabolism</rdf:value>
        
</dc:subject>
      
</bqs:reference>
      
      
<bqs:Book rdf:parseType="Resource">
        
<dc:creator rdf:parseType="Resource">
          
<bqs:Person rdf:parseType="Resource">
            
<vCard:N rdf:parseType="Resource">
              
<vCard:Family>Bronk</vCard:Family>
              
<vCard:Given>J</vCard:Given>
              
<vCard:Other>Ramsey</vCard:Other>
            
</vCard:N>
          
</bqs:Person>
        
</dc:creator>
        
<dc:title>Human Metabolism</dc:title>
        
<dcterms:issued rdf:parseType="Resource">
          
<dcterms:W3CDTF>1999</dcterms:W3CDTF>
        
</dcterms:issued>
        
<dc:publisher rdf:parseType="Resource">
          
<bqs:Organisation>Addison Wesley Longman Limited</bqs:Organisation>
          
<bqs:Property rdf:parseType="Resource">
            
<bqs:property_type>location</bqs:property_type>
            
<rdf:value>England</rdf:value>
          
</bqs:Property>
        
</dc:publisher>
      
</bqs:Book>
    
</rdf:Description>
  
</rdf:RDF>
  
  
<!--
    We start the model definition with a definition of some named
    sets of units for use throughout the model.
  -->

  
  
<units name="micromolar">
     
<unit prefix="micro" units="mole" />
     
<unit units="litre" exponent="-1" />
   
</units>
   
   
<units name="flux">
      
<unit units="micromolar" />
      
<unit units="second" exponent="-1" />
   
</units>
   
   
<units name="first_order_rate_constant">
     
<unit units="second" exponent="-1" />
   
</units>
   
   
<units name="second_order_rate_constant">
     
<unit units="micromolar" exponent="-1" />
     
<unit units="second" exponent="-1" />
   
</units>
   
   
<units name="third_order_rate_constant">
     
<unit units="micromolar" exponent="-2" />
     
<unit units="second" exponent="-1" />
   
</units>
   
   
<!--  
    The following component is defined for modelling convenience.  It contains 
    all the universal variables, in this case, only time.
  -->

   
<component name="global_variables">
      
<variable name="time" public_interface="out" units="second" />
   
</component>
   
   
<!--  
    The following components describe all the metabolites - both reactants and 
    products - involved in glycolysis.
   -->

      
   
<component name="Glucose_6_phosphate" cmeta:id="Glucose_6_phosphate">
      
<variable name="Glucose_6_phosphate" public_interface="out" initial_value="1.0" units="micromolar" />
      
<variable name="delta_Glucose_6_phosphate_rxn0" public_interface="in" units="flux" />
      
<variable name="time" public_interface="in" units="second" />
      
<math xmlns="http://www.w3.org/1998/Math/MathML">
         
<apply>
            
<eq />
            
<apply>
               
<diff />
               
<bvar>
                  
<ci>time</ci>
               
</bvar>
               
<ci>Glucose_6_phosphate</ci>
            
</apply>
            
<ci>delta_Glucose_6_phosphate_rxn0</ci>
         
</apply>
      
</math>
   
</component>
   
   
<component name="Phosphoglucono_lactone_6" cmeta:id="Phosphoglucono_lactone_6">
      
<variable name="Phosphoglucono_lactone_6" public_interface="out" initial_value="1.0" units="micromolar" />
      
<variable name="delta_Phosphoglucono_lactone_6_rxn0" public_interface="in" units="flux" />
      
<variable name="delta_Phosphoglucono_lactone_6_rxn1" public_interface="in" units="flux" />
      
<variable name="time" public_interface="in" units="second" />
      
<math xmlns="http://www.w3.org/1998/Math/MathML">
         
<apply>
            
<eq />
            
<apply>
               
<diff />
               
<bvar>
                  
<ci>time</ci>
               
</bvar>
               
<ci>Phosphoglucono_lactone_6</ci>
            
</apply>
            
<apply>
               
<plus />
               
<ci>delta_Phosphoglucono_lactone_6_rxn0</ci>
               
<ci>delta_Phosphoglucono_lactone_6_rxn1</ci>
            
</apply>
         
</apply>
      
</math>
   
</component>
   
   
<component name="Phosphogluconate_6" cmeta:id="Phosphogluconate_6">
      
<variable name="Phosphogluconate_6" public_interface="out" initial_value="1.0" units="micromolar" />
      
<variable name="delta_Phosphogluconate_6_rxn1" public_interface="in" units="flux" />
      
<variable name="delta_Phosphogluconate_6_rxn2" public_interface="in" units="flux" />
      
<variable name="time" public_interface="in" units="second" />
      
<math xmlns="http://www.w3.org/1998/Math/MathML">
         
<apply>
            
<eq />
            
<apply>
               
<diff />
               
<bvar>
                  
<ci>time</ci>
               
</bvar>
               
<ci>Phosphogluconate_6</ci>
            
</apply>
            
<apply>
               
<plus />
               
<ci>delta_Phosphogluconate_6_rxn1</ci>
               
<ci>delta_Phosphogluconate_6_rxn2</ci>
            
</apply>
         
</apply>
      
</math>
   
</component>
   
   
<component name="Ribulose_5_phosphate" cmeta:id="Ribulose_5_phosphate">
      
<variable name="Ribulose_5_phosphate" public_interface="out" initial_value="1.0" units="micromolar" />
      
<variable name="delta_Ribulose_5_phosphate_rxn2" public_interface="in" units="flux" />
      
<variable name="delta_Ribulose_5_phosphate_rxn3" public_interface="in" units="flux" />
      
<variable name="delta_Ribulose_5_phosphate_rxn4" public_interface="in" units="flux" />
      
<variable name="time" public_interface="in" units="second" />
      
<math xmlns="http://www.w3.org/1998/Math/MathML">
         
<apply>
            
<eq />
            
<apply>
               
<diff />
               
<bvar>
                  
<ci>time</ci>
               
</bvar>
               
<ci>Ribulose_5_phosphate</ci>
            
</apply>
            
<apply>
               
<plus />
               
<ci>delta_Ribulose_5_phosphate_rxn2</ci>
               
<ci>delta_Ribulose_5_phosphate_rxn3</ci>
               
<ci>delta_Ribulose_5_phosphate_rxn4</ci>
            
</apply>
         
</apply>
      
</math>
   
</component>
  
   
<component name="Xylulose_5_phosphate" cmeta:id="Xylulose_5_phosphate">
      
<variable name="Xylulose_5_phosphate" public_interface="out" initial_value="1.0" units="micromolar" />
      
<variable name="delta_Xylulose_5_phosphate_rxn3" public_interface="in" units="flux" />
      
<variable name="delta_Xylulose_5_phosphate_rxn7" public_interface="in" units="flux" />
      
<variable name="delta_Xylulose_5_phosphate_rxn5" public_interface="in" units="flux" />
      
<variable name="time" public_interface="in" units="second" />
      
<math xmlns="http://www.w3.org/1998/Math/MathML">
         
<apply>
            
<eq />
            
<apply>
               
<diff />
               
<bvar>
                  
<ci>time</ci>
               
</bvar>
               
<ci>Xylulose_5_phosphate</ci>
            
</apply>
            
<apply>
               
<plus />
               
<ci>delta_Xylulose_5_phosphate_rxn3</ci>
               
<ci>delta_Xylulose_5_phosphate_rxn7</ci>
               
<ci>delta_Xylulose_5_phosphate_rxn5</ci>
            
</apply>
         
</apply>
      
</math>
   
</component>
  
   
<component name="Ribose_5_phosphate" cmeta:id="Ribose_5_phosphate">
      
<variable name="Ribose_5_phosphate" public_interface="out" initial_value="1.0" units="micromolar" />
      
<variable name="delta_Ribose_5_phosphate_rxn4" public_interface="in" units="flux" />
      
<variable name="delta_Ribose_5_phosphate_rxn5" public_interface="in" units="flux" />
      
<variable name="time" public_interface="in" units="second" />
      
<math xmlns="http://www.w3.org/1998/Math/MathML">
         
<apply>
            
<eq />
            
<apply>
               
<diff />
               
<bvar>
                  
<ci>time</ci>
               
</bvar>
               
<ci>Ribose_5_phosphate</ci>
            
</apply>
            
<apply>
               
<plus />
               
<ci>delta_Ribose_5_phosphate_rxn4</ci>
               
<ci>delta_Ribose_5_phosphate_rxn5</ci>
            
</apply>
         
</apply>
      
</math>
   
</component>
   
   
<component name="Glyceraldehyde_3_phosphate" cmeta:id="Glyceraldehyde_3_phosphate">
      
<variable name="Glyceraldehyde_3_phosphate" public_interface="out" initial_value="1.0" units="micromolar" />
      
<variable name="delta_Glyceraldehyde_3_phosphate_rxn5" public_interface="in" units="flux" />
      
<variable name="delta_Glyceraldehyde_3_phosphate_rxn10" public_interface="in" units="flux" />
      
<variable name="delta_Glyceraldehyde_3_phosphate_rxn6" public_interface="in" units="flux" />
      
<variable name="delta_Glyceraldehyde_3_phosphate_rxn7" public_interface="in" units="flux" />
      
<variable name="time" public_interface="in" units="second" />
      
<math xmlns="http://www.w3.org/1998/Math/MathML">
         
<apply>
            
<eq />
            
<apply>
               
<diff />
               
<bvar>
                  
<ci>time</ci>
               
</bvar>
               
<ci>Glyceraldehyde_3_phosphate</ci>
            
</apply>
            
<apply>
               
<plus />
               
<ci>delta_Glyceraldehyde_3_phosphate_rxn5</ci>
               
<ci>delta_Glyceraldehyde_3_phosphate_rxn10</ci>
               
<ci>delta_Glyceraldehyde_3_phosphate_rxn6</ci>
               
<ci>delta_Glyceraldehyde_3_phosphate_rxn7</ci>
            
</apply>
         
</apply>
      
</math>
   
</component>
  
   
<component name="Sedoheptulose_7_phosphate" cmeta:id="Sedoheptulose_7_phosphate">
      
<variable name="Sedoheptulose_7_phosphate" public_interface="out" initial_value="1.0" units="micromolar" />
      
<variable name="delta_Sedoheptulose_7_phosphate_rxn5" public_interface="in" units="flux" />
      
<variable name="delta_Sedoheptulose_7_phosphate_rxn6" public_interface="in" units="flux" />
      
<variable name="time" public_interface="in" units="second" />
      
<math xmlns="http://www.w3.org/1998/Math/MathML">
         
<apply>
            
<eq />
            
<apply>
               
<diff />
               
<bvar>
                  
<ci>time</ci>
               
</bvar>
               
<ci>Sedoheptulose_7_phosphate</ci>
            
</apply>
            
<apply>
               
<plus />
               
<ci>delta_Sedoheptulose_7_phosphate_rxn5</ci>
               
<ci>delta_Sedoheptulose_7_phosphate_rxn6</ci>
            
</apply>
         
</apply>
      
</math>
   
</component>
   
   
<component name="Erythrose_4_phosphate" cmeta:id="Erythrose_4_phosphate">
      
<variable name="Erythrose_4_phosphate" public_interface="out" initial_value="1.0" units="micromolar" />
      
<variable name="delta_Erythrose_4_phosphate_rxn6" public_interface="in" units="flux" />
      
<variable name="delta_Erythrose_4_phosphate_rxn7" public_interface="in" units="flux" />
      
<variable name="time" public_interface="in" units="second" />
      
<math xmlns="http://www.w3.org/1998/Math/MathML">
         
<apply>
            
<eq />
            
<apply>
               
<diff />
               
<bvar>
                  
<ci>time</ci>
               
</bvar>
               
<ci>Erythrose_4_phosphate</ci>
            
</apply>
            
<apply>
               
<plus />
               
<ci>delta_Erythrose_4_phosphate_rxn6</ci>
               
<ci>delta_Erythrose_4_phosphate_rxn7</ci>
            
</apply>
         
</apply>
      
</math>
   
</component>
  
   
<component name="Fructose_6_phosphate" cmeta:id="Fructose_6_phosphate">
      
<variable name="Fructose_6_phosphate" public_interface="out" initial_value="1.0" units="micromolar" />
      
<variable name="delta_Fructose_6_phosphate_rxn6" public_interface="in" units="flux" />
      
<variable name="delta_Fructose_6_phosphate_rxn9" public_interface="in" units="flux" />
      
<variable name="delta_Fructose_6_phosphate_rxn7" public_interface="in" units="flux" />
      
<variable name="delta_Fructose_6_phosphate_rxn8" public_interface="in" units="flux" />
      
<variable name="time" public_interface="in" units="second" />
      
<math xmlns="http://www.w3.org/1998/Math/MathML">
         
<apply>
            
<eq />
            
<apply>
               
<diff />
               
<bvar>
                  
<ci>time</ci>
               
</bvar>
               
<ci>Fructose_6_phosphate</ci>
            
</apply>
            
<apply>
               
<plus />
               
<ci>delta_Fructose_6_phosphate_rxn6</ci>
               
<ci>delta_Fructose_6_phosphate_rxn9</ci>
               
<ci>delta_Fructose_6_phosphate_rxn7</ci>
               
<ci>delta_Fructose_6_phosphate_rxn8</ci>
            
</apply>
         
</apply>
      
</math>
   
</component>
   
   
<component name="NADP" cmeta:id="NADP">
      
<variable name="NADP" public_interface="out" initial_value="1.0" units="micromolar" />
      
<variable name="delta_NADP_rxn0" public_interface="in" units="flux" />
      
<variable name="delta_NADP_rxn2" public_interface="in" units="flux" />
      
<variable name="time" public_interface="in" units="second" />
      
<math xmlns="http://www.w3.org/1998/Math/MathML">
         
<apply>
            
<eq />
            
<apply>
               
<diff />
               
<bvar>
                  
<ci>time</ci>
               
</bvar>
               
<ci>NADP</ci>
            
</apply>
            
<apply>
               
<plus />
               
<ci>delta_NADP_rxn0</ci>
               
<ci>delta_NADP_rxn2</ci>
            
</apply>
         
</apply>
      
</math>
   
</component>
  
   
<component name="NADPH" cmeta:id="NADPH">
      
<variable name="NADPH" public_interface="out" initial_value="1.0" units="micromolar" />
      
<variable name="delta_NADPH_rxn0" public_interface="in" units="flux" />
      
<variable name="delta_NADPH_rxn2" public_interface="in" units="flux" />
      
<variable name="time" public_interface="in" units="second" />
      
<math xmlns="http://www.w3.org/1998/Math/MathML">
         
<apply>
            
<eq />
            
<apply>
               
<diff />
               
<bvar>
                  
<ci>time</ci>
               
</bvar>
               
<ci>NADPH</ci>
            
</apply>
            
<apply>
               
<plus />
               
<ci>delta_NADPH_rxn0</ci>
               
<ci>delta_NADPH_rxn2</ci>
            
</apply>
         
</apply>
      
</math>
   
</component>
  
   
<component name="H" cmeta:id="H">
      
<variable name="H" public_interface="out" initial_value="1.0" units="micromolar" />
      
<variable name="delta_H_rxn0" public_interface="in" units="flux" />
      
<variable name="time" public_interface="in" units="second" />
      
<math xmlns="http://www.w3.org/1998/Math/MathML">
         
<apply>
            
<eq />
            
<apply>
               
<diff />
               
<bvar>
                  
<ci>time</ci>
               
</bvar>
               
<ci>H</ci>
            
</apply>
            
<ci>delta_H_rxn0</ci>
         
</apply>
      
</math>
   
</component>
   
   
<component name="H2O" cmeta:id="H2O">
      
<variable name="H2O" public_interface="out" initial_value="1.0" units="micromolar" />
      
<variable name="delta_H2O_rxn1" public_interface="in" units="flux" />
      
<variable name="delta_H2O_rxn9" public_interface="in" units="flux" />
      
<variable name="time" public_interface="in" units="second" />
      
<math xmlns="http://www.w3.org/1998/Math/MathML">
         
<apply>
            
<eq />
            
<apply>
               
<diff />
               
<bvar>
                  
<ci>time</ci>
               
</bvar>
               
<ci>H2O</ci>
            
</apply>
            
<apply>
               
<plus />
               
<ci>delta_H2O_rxn1</ci>
               
<ci>delta_H2O_rxn9</ci>
            
</apply>
         
</apply>
      
</math>
   
</component>
   
   
<component name="CO2" cmeta:id="CO2">
      
<variable name="CO2" public_interface="out" initial_value="1.0" units="micromolar" />
      
<variable name="delta_CO2_rxn2" public_interface="in" units="flux" />
      
<variable name="time" public_interface="in" units="second" />
      
<math xmlns="http://www.w3.org/1998/Math/MathML">
         
<apply>
            
<eq />
            
<apply>
               
<diff />
               
<bvar>
                  
<ci>time</ci>
               
</bvar>
               
<ci>CO2</ci>
            
</apply>
            
<ci>delta_CO2_rxn2</ci>
         
</apply>
      
</math>
   
</component>
  
   
<component name="Fructose_1_6_bisphosphate" cmeta:id="Fructose_1_6_bisphosphate">
      
<variable name="Fructose_1_6_bisphosphate" public_interface="out" initial_value="1.0" units="micromolar" />
      
<variable name="delta_Fructose_1_6_bisphosphate_rxn8" public_interface="in" units="flux" />
      
<variable name="delta_Fructose_1_6_bisphosphate_rxn9" public_interface="in" units="flux" />
      
<variable name="delta_Fructose_1_6_bisphosphate_rxn10" public_interface="in" units="flux" />
      
<variable name="time" public_interface="in" units="second" />
      
<math xmlns="http://www.w3.org/1998/Math/MathML">
         
<apply>
            
<eq />
            
<apply>
               
<diff />
               
<bvar>
                  
<ci>time</ci>
               
</bvar>
               
<ci>Fructose_1_6_bisphosphate</ci>
            
</apply>
            
<apply>
               
<plus />
               
<ci>delta_Fructose_1_6_bisphosphate_rxn8</ci>
               
<ci>delta_Fructose_1_6_bisphosphate_rxn9</ci>
               
<ci>delta_Fructose_1_6_bisphosphate_rxn10</ci>
            
</apply>
         
</apply>
      
</math>
   
</component>
   
   
<component name="Pi" cmeta:id="Pi">
      
<variable name="Pi" public_interface="out" initial_value="1.0" units="