M1: hierarchical graph (GXL-Representation)
M0:     GXL     Graph
 available instances:
              
M1:     GXL     Graph     UML    
M2:     GXL     Graph     UML    
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE gxl SYSTEM "http://www.gupro.de/GXL/gxl-1.0.dtd">
<!-- hierarchical graph schema 05.02.2002 -->
<gxl xmlns:xlink=" http://www.w3.org/1999/xlink">
  <graph id="hierarchicalGraph-schema" edgeids=" true" edgemode=" directed" hypergraph=" false">
    <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#gxl-1.0" xlink:type=" simple"/>
    <node id="hierarchicalGraphSchema">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#GraphClass" xlink:type=" simple"/>
      <attr name=" name">
        <string> hierarchicalGraphSchema</string>
      </attr>
    </node>
    <edge id="c1" to="Function" from="hierarchicalGraphSchema">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#contains" xlink:type=" simple"/>
    </edge>
    <node id="Function">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#NodeClass" xlink:type=" simple"/>
      <attr name=" name">
        <string> Function</string>
      </attr>
      <attr name=" isabstract">
        <bool> false</bool>
      </attr>
    </node>
    <edge id="e22" to="name" from="Function">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#hasAttribute" xlink:type=" simple"/>
    </edge>
    <node id="Asg">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#GraphClass" xlink:type=" simple"/>
      <attr name=" name">
        <string> asg</string>
      </attr>
    </node>
    <edge id="e1" to="Asg" from="Function">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#hasAsComponentGraph" xlink:type=" simple"/>
      <attr name=" role">
        <string/>
      </attr>
      <attr name=" limits">
        <tup>
          <int> 1</int>
          <int> 1</int>
        </tup>
      </attr>
      <attr name=" isordered">
        <bool> false</bool>
      </attr>
    </edge>
    <edge id="c3" to="Stmt" from="Asg">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#contains" xlink:type=" simple"/>
    </edge>
    <node id="Stmt">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#NodeClass" xlink:type=" simple"/>
      <attr name=" name">
        <string> Stmt</string>
      </attr>
      <attr name=" isabstract">
        <bool> true</bool>
      </attr>
    </node>
    <edge id="c4" to="IfStmt" from="Asg">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#contains" xlink:type=" simple"/>
    </edge>
    <node id="IfStmt">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#NodeClass" xlink:type=" simple"/>
      <attr name=" name">
        <string> IfStmt</string>
      </attr>
      <attr name=" isabstract">
        <bool> false</bool>
      </attr>
    </node>
    <edge id="i2" to="Stmt" from="IfStmt">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#isA" xlink:type=" simple"/>
    </edge>
    <edge id="c5" to="ReturnStmt" from="Asg">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#contains" xlink:type=" simple"/>
    </edge>
    <node id="ReturnStmt">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#NodeClass" xlink:type=" simple"/>
      <attr name=" name">
        <string> ReturnStmt</string>
      </attr>
      <attr name=" isabstract">
        <bool> false</bool>
      </attr>
    </node>
    <edge id="i1" to="Stmt" from="ReturnStmt">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#isA" xlink:type=" simple"/>
    </edge>
    <edge id="c6" to="Expression" from="Asg">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#contains" xlink:type=" simple"/>
    </edge>
    <node id="Expression">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#NodeClass" xlink:type=" simple"/>
      <attr name=" name">
        <string> Expression</string>
      </attr>
      <attr name=" isabstract">
        <bool> true</bool>
      </attr>
    </node>
    <edge id="c7" to="isReturnValue" from="Asg">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#contains" xlink:type=" simple"/>
    </edge>
    <node id="isReturnValue">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#EdgeClass" xlink:type=" simple"/>
      <attr name=" name">
        <string> isReturnValue</string>
      </attr>
      <attr name=" isabstract">
        <bool> false</bool>
      </attr>
      <attr name=" isdirected">
        <bool> true</bool>
      </attr>
    </node>
    <edge id="e5" to="Expression" from="isReturnValue">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#from" xlink:type=" simple"/>
      <attr name=" limits">
        <tup>
          <int> 1</int>
          <int> 1</int>
        </tup>
      </attr>
      <attr name=" isordered">
        <bool> false</bool>
      </attr>
    </edge>
    <edge id="e6" to="ReturnStmt" from="isReturnValue">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#to" xlink:type=" simple"/>
      <attr name=" limits">
        <tup>
          <int> 0</int>
          <int> -1</int>
        </tup>
      </attr>
      <attr name=" isordered">
        <bool> false</bool>
      </attr>
    </edge>
    <edge id="c8" to="OpExpr" from="Asg">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#contains" xlink:type=" simple"/>
    </edge>
    <node id="OpExpr">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#NodeClass" xlink:type=" simple"/>
      <attr name=" name">
        <string> OpExpr</string>
      </attr>
      <attr name=" isabstract">
        <bool> false</bool>
      </attr>
    </node>
    <edge id="i3" to="Expression" from="OpExpr">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#isA" xlink:type=" simple"/>
    </edge>
    <edge id="c9" to="Variable" from="Asg">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#contains" xlink:type=" simple"/>
    </edge>
    <node id="Variable">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#NodeClass" xlink:type=" simple"/>
      <attr name=" name">
        <string> Variable</string>
      </attr>
      <attr name=" isabstract">
        <bool> false</bool>
      </attr>
    </node>
    <node id="name">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#AttributeClass" xlink:type=" simple"/>
      <attr name=" name">
        <string> name</string>
      </attr>
    </node>
    <node id="domain_string">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#String" xlink:type=" simple"/>
    </node>
    <edge id="e3" to="name" from="Variable">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#hasAttribute" xlink:type=" simple"/>
    </edge>
    <edge id="e4" to="domain_string" from="name">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#hasDomain" xlink:type=" simple"/>
    </edge>
    <edge id="i4" to="Expression" from="Variable">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#isA" xlink:type=" simple"/>
    </edge>
    <edge id="c10" to="Interface" from="Asg">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#contains" xlink:type=" simple"/>
    </edge>
    <node id="Interface">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#NodeClass" xlink:type=" simple"/>
      <attr name=" name">
        <string> Interface</string>
      </attr>
      <attr name=" isabstract">
        <bool> false</bool>
      </attr>
    </node>
    <edge id="c11" to="isFormalOutput" from="Asg">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#contains" xlink:type=" simple"/>
    </edge>
    <node id="isFormalOutput">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#EdgeClass" xlink:type=" simple"/>
      <attr name=" name">
        <string> isFormalOutput</string>
      </attr>
      <attr name=" isabstract">
        <bool> false</bool>
      </attr>
      <attr name=" isdirected">
        <bool> true</bool>
      </attr>
    </node>
    <edge id="e11" to="Variable" from="isFormalOutput">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#from" xlink:type=" simple"/>
      <attr name=" limits">
        <tup>
          <int> 0</int>
          <int> -1</int>
        </tup>
      </attr>
      <attr name=" isordered">
        <bool> false</bool>
      </attr>
    </edge>
    <edge id="e8" to="Interface" from="isFormalOutput">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#to" xlink:type=" simple"/>
      <attr name=" limits">
        <tup>
          <int> 0</int>
          <int> -1</int>
        </tup>
      </attr>
      <attr name=" isordered">
        <bool> false</bool>
      </attr>
    </edge>
    <edge id="c12" to="isFormalInput" from="Asg">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#contains" xlink:type=" simple"/>
    </edge>
    <node id="isFormalInput">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#EdgeClass" xlink:type=" simple"/>
      <attr name=" name">
        <string> isFormalInput</string>
      </attr>
      <attr name=" isabstract">
        <bool> false</bool>
      </attr>
      <attr name=" isdirected">
        <bool> true</bool>
      </attr>
    </node>
    <edge id="e10" to="Variable" from="isFormalInput">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#from" xlink:type=" simple"/>
      <attr name=" limits">
        <tup>
          <int> 0</int>
          <int> -1</int>
        </tup>
      </attr>
      <attr name=" isordered">
        <bool> true</bool>
      </attr>
    </edge>
    <edge id="e9" to="Interface" from="isFormalInput">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#to" xlink:type=" simple"/>
      <attr name=" limits">
        <tup>
          <int> 0</int>
          <int> -1</int>
        </tup>
      </attr>
      <attr name=" isordered">
        <bool> false</bool>
      </attr>
    </edge>
    <edge id="c13" to="Operator" from="Asg">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#contains" xlink:type=" simple"/>
    </edge>
    <node id="Operator">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#NodeClass" xlink:type=" simple"/>
      <attr name=" name">
        <string> Operator</string>
      </attr>
      <attr name=" isabstract">
        <bool> false</bool>
      </attr>
    </node>
    <edge id="e7" to="name" from="Operator">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#hasAttribute" xlink:type=" simple"/>
    </edge>
    <edge id="c14" to="isOperator" from="Asg">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#contains" xlink:type=" simple"/>
    </edge>
    <node id="isOperator">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#CompositionClass" xlink:type=" simple"/>
      <attr name=" name">
        <string> isOperator</string>
      </attr>
      <attr name=" isabstract">
        <bool> false</bool>
      </attr>
      <attr name=" isdirected">
        <bool> true</bool>
      </attr>
      <attr name=" aggregate">
        <enum> from</enum>
      </attr>
    </node>
    <edge id="e20" to="Operator" from="isOperator">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#from" xlink:type=" simple"/>
      <attr name=" limits">
        <tup>
          <int> 0</int>
          <int> 1</int>
        </tup>
      </attr>
      <attr name=" isordered">
        <bool> false</bool>
      </attr>
    </edge>
    <edge id="e18" to="OpExpr" from="isOperator">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#to" xlink:type=" simple"/>
      <attr name=" limits">
        <tup>
          <int> 0</int>
          <int> -1</int>
        </tup>
      </attr>
      <attr name=" isordered">
        <bool> false</bool>
      </attr>
    </edge>
    <edge id="c15" to="isOperand" from="Asg">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#contains" xlink:type=" simple"/>
    </edge>
    <node id="isOperand">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#CompositionClass" xlink:type=" simple"/>
      <attr name=" name">
        <string> isOperand</string>
      </attr>
      <attr name=" isabstract">
        <bool> false</bool>
      </attr>
      <attr name=" isdirected">
        <bool> true</bool>
      </attr>
      <attr name=" aggregate">
        <enum> from</enum>
      </attr>
    </node>
    <edge id="e21" to="Expression" from="isOperand">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#from" xlink:type=" simple"/>
      <attr name=" limits">
        <tup>
          <int> 0</int>
          <int> -1</int>
        </tup>
      </attr>
      <attr name=" isordered">
        <bool> false</bool>
      </attr>
    </edge>
    <edge id="e19" to="OpExpr" from="isOperand">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#to" xlink:type=" simple"/>
      <attr name=" limits">
        <tup>
          <int> 0</int>
          <int> -1</int>
        </tup>
      </attr>
      <attr name=" isordered">
        <bool> false</bool>
      </attr>
    </edge>
    <edge id="c16" to="isFalseStmt" from="Asg">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#contains" xlink:type=" simple"/>
    </edge>
    <node id="isFalseStmt">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#CompositionClass" xlink:type=" simple"/>
      <attr name=" name">
        <string> isFalseStmt</string>
      </attr>
      <attr name=" isabstract">
        <bool> false</bool>
      </attr>
      <attr name=" isdirected">
        <bool> true</bool>
      </attr>
      <attr name=" aggregate">
        <enum> from</enum>
      </attr>
    </node>
    <edge id="e13" to="Stmt" from="isFalseStmt">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#from" xlink:type=" simple"/>
      <attr name=" limits">
        <tup>
          <int> 0</int>
          <int> -1</int>
        </tup>
      </attr>
      <attr name=" isordered">
        <bool> false</bool>
      </attr>
    </edge>
    <edge id="e15" to="IfStmt" from="isFalseStmt">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#to" xlink:type=" simple"/>
      <attr name=" limits">
        <tup>
          <int> 0</int>
          <int> 1</int>
        </tup>
      </attr>
      <attr name=" isordered">
        <bool> false</bool>
      </attr>
    </edge>
    <edge id="c17" to="isTrueStmt" from="Asg">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#contains" xlink:type=" simple"/>
    </edge>
    <node id="isTrueStmt">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#CompositionClass" xlink:type=" simple"/>
      <attr name=" name">
        <string> isTrueStmt</string>
      </attr>
      <attr name=" isabstract">
        <bool> false</bool>
      </attr>
      <attr name=" isdirected">
        <bool> true</bool>
      </attr>
      <attr name=" aggregate">
        <enum> from</enum>
      </attr>
    </node>
    <edge id="e12" to="Stmt" from="isTrueStmt">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#from" xlink:type=" simple"/>
      <attr name=" limits">
        <tup>
          <int> 0</int>
          <int> -1</int>
        </tup>
      </attr>
      <attr name=" isordered">
        <bool> false</bool>
      </attr>
    </edge>
    <edge id="e16" to="IfStmt" from="isTrueStmt">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#to" xlink:type=" simple"/>
      <attr name=" limits">
        <tup>
          <int> 0</int>
          <int> 1</int>
        </tup>
      </attr>
      <attr name=" isordered">
        <bool> false</bool>
      </attr>
    </edge>
    <edge id="c18" to="isPredicate" from="Asg">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#contains" xlink:type=" simple"/>
    </edge>
    <node id="isPredicate">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#CompositionClass" xlink:type=" simple"/>
      <attr name=" name">
        <string> isPredicate</string>
      </attr>
      <attr name=" isabstract">
        <bool> false</bool>
      </attr>
      <attr name=" isdirected">
        <bool> true</bool>
      </attr>
      <attr name=" aggregate">
        <enum> from</enum>
      </attr>
    </node>
    <edge id="e14" to="OpExpr" from="isPredicate">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#from" xlink:type=" simple"/>
      <attr name=" limits">
        <tup>
          <int> 0</int>
          <int> 1</int>
        </tup>
      </attr>
      <attr name=" isordered">
        <bool> false</bool>
      </attr>
    </edge>
    <edge id="e17" to="IfStmt" from="isPredicate">
      <type xlink:href="http://www.gupro.de/GXL/gxl-1.0.gxl#to" xlink:type=" simple"/>
      <attr name=" limits">
        <tup>
          <int> 0</int>
          <int> -1</int>
        </tup>
      </attr>
      <attr name=" isordered">
        <bool> false</bool>
      </attr>
    </edge>
  </graph>
</gxl>