



<!doctype html>
<html lang="en" class="no-js">
  <head>
    
      <meta charset="utf-8">
      <meta name="viewport" content="width=device-width,initial-scale=1">
      <meta http-equiv="x-ua-compatible" content="ie=edge">
      
      
      
      
        <meta name="lang:clipboard.copy" content="Copy to clipboard">
      
        <meta name="lang:clipboard.copied" content="Copied to clipboard">
      
        <meta name="lang:search.language" content="en">
      
        <meta name="lang:search.pipeline.stopwords" content="True">
      
        <meta name="lang:search.pipeline.trimmer" content="True">
      
        <meta name="lang:search.result.none" content="No matching documents">
      
        <meta name="lang:search.result.one" content="1 matching document">
      
        <meta name="lang:search.result.other" content="# matching documents">
      
        <meta name="lang:search.tokenizer" content="[\s\-]+">
      
      <link rel="shortcut icon" href="../../assets/images/favicon.png">
      <meta name="generator" content="mkdocs-1.0.4, mkdocs-material-4.4.2">
    
    
      
        <title>Examples (XMI) - Eclipse Hawk</title>
      
    
    
      <link rel="stylesheet" href="../../assets/stylesheets/application.30686662.css">
      
        <link rel="stylesheet" href="../../assets/stylesheets/application-palette.a8b3c06d.css">
      
      
        
        
        <meta name="theme-color" content="#7e57c2">
      
    
    
      <script src="../../assets/javascripts/modernizr.74668098.js"></script>
    
    
      
        <link href="https://fonts.gstatic.com" rel="preconnect" crossorigin>
        <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,400,400i,700|Roboto+Mono&display=fallback">
        <style>body,input{font-family:"Roboto","Helvetica Neue",Helvetica,Arial,sans-serif}code,kbd,pre{font-family:"Roboto Mono","Courier New",Courier,monospace}</style>
      
    
    <link rel="stylesheet" href="../../assets/fonts/material-icons.css">
    
      <link rel="manifest" href="../../assets/images/site.webmanifest">
    
    
      <link rel="stylesheet" href="../../stylesheets/extra.css">
    
    
      
    
    
<!-- FAVICON -->
<link rel="apple-touch-icon" sizes="180x180" href="../../assets/images/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="../../assets/images/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="../../assets/images/favicon-16x16.png">
<link rel="mask-icon" href="../../assets/images/safari-pinned-tab.svg" color="#5bbad5">
<link rel="shortcut icon" href="../../assets/images/favicon.ico">
<meta name="msapplication-TileColor" content="#b91d47">
<meta name="msapplication-config" content="../../assets/images/browserconfig.xml">
<meta name="theme-color" content="#ffffff">

  </head>
  
    
    
    <body dir="ltr" data-md-color-primary="deep-purple" data-md-color-accent="deep-purple">
  
    <svg class="md-svg">
      <defs>
        
        
      </defs>
    </svg>
    <input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer" autocomplete="off">
    <input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search" autocomplete="off">
    <label class="md-overlay" data-md-component="overlay" for="__drawer"></label>
    
      <a href="#example-queries-on-xmi-models" tabindex="1" class="md-skip">
        Skip to content
      </a>
    
    
      <header class="md-header" data-md-component="header">
  <nav class="md-header-nav md-grid">
    <div class="md-flex">
      <div class="md-flex__cell md-flex__cell--shrink">
        <a href="../.." title="Eclipse Hawk" class="md-header-nav__button md-logo">
          
            <img src="../../assets/images/hawk-logo-white.svg" width="24" height="24">
          
        </a>
      </div>
      <div class="md-flex__cell md-flex__cell--shrink">
        <label class="md-icon md-icon--menu md-header-nav__button" for="__drawer"></label>
      </div>
      <div class="md-flex__cell md-flex__cell--stretch">
        <div class="md-flex__ellipsis md-header-nav__title" data-md-component="title">
          
            <span class="md-header-nav__topic">
              Eclipse Hawk
            </span>
            <span class="md-header-nav__topic">
              
                Examples (XMI)
              
            </span>
          
        </div>
      </div>
      <div class="md-flex__cell md-flex__cell--shrink">
        
          <label class="md-icon md-icon--search md-header-nav__button" for="__search"></label>
          
<div class="md-search" data-md-component="search" role="dialog">
  <label class="md-search__overlay" for="__search"></label>
  <div class="md-search__inner" role="search">
    <form class="md-search__form" name="search">
      <input type="text" class="md-search__input" name="query" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="query" data-md-state="active">
      <label class="md-icon md-search__icon" for="__search"></label>
      <button type="reset" class="md-icon md-search__icon" data-md-component="reset" tabindex="-1">
        &#xE5CD;
      </button>
    </form>
    <div class="md-search__output">
      <div class="md-search__scrollwrap" data-md-scrollfix>
        <div class="md-search-result" data-md-component="result">
          <div class="md-search-result__meta">
            Type to start searching
          </div>
          <ol class="md-search-result__list"></ol>
        </div>
      </div>
    </div>
  </div>
</div>
        
      </div>
      
        <div class="md-flex__cell md-flex__cell--shrink">
          <div class="md-header-nav__source">
            


  

<a href="https://git.eclipse.org/c/hawk/hawk.git/" title="Go to repository" class="md-source" data-md-source="">
  
  <div class="md-source__repository">
    Git repository @ Eclipse
  </div>
</a>
          </div>
        </div>
      
    </div>
  </nav>
</header>
    
    <div class="md-container">
      
        
      
      
      <main class="md-main" role="main">
        <div class="md-main__inner md-grid" data-md-component="container">
          
            
              <div class="md-sidebar md-sidebar--primary" data-md-component="navigation">
                <div class="md-sidebar__scrollwrap">
                  <div class="md-sidebar__inner">
                    <nav class="md-nav md-nav--primary" data-md-level="0">
  <label class="md-nav__title md-nav__title--site" for="__drawer">
    <a href="../.." title="Eclipse Hawk" class="md-nav__button md-logo">
      
        <img src="../../assets/images/hawk-logo-white.svg" width="48" height="48">
      
    </a>
    Eclipse Hawk
  </label>
  
    <div class="md-nav__source">
      


  

<a href="https://git.eclipse.org/c/hawk/hawk.git/" title="Go to repository" class="md-source" data-md-source="">
  
  <div class="md-source__repository">
    Git repository @ Eclipse
  </div>
</a>
    </div>
  
  <ul class="md-nav__list" data-md-scrollfix>
    
      
      
      


  <li class="md-nav__item">
    <a href="../.." title="Home" class="md-nav__link">
      Home
    </a>
  </li>

    
      
      
      

  


  <li class="md-nav__item md-nav__item--active md-nav__item--nested">
    
      <input class="md-toggle md-nav__toggle" data-md-toggle="nav-2" type="checkbox" id="nav-2" checked>
    
    <label class="md-nav__link" for="nav-2">
      Basic use
    </label>
    <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
      <label class="md-nav__title" for="nav-2">
        Basic use
      </label>
      <ul class="md-nav__list" data-md-scrollfix>
        
        
          
          
          


  <li class="md-nav__item">
    <a href="../installation/" title="Installation" class="md-nav__link">
      Installation
    </a>
  </li>

        
          
          
          


  <li class="md-nav__item">
    <a href="../core-concepts/" title="Core concepts" class="md-nav__link">
      Core concepts
    </a>
  </li>

        
          
          
          

  


  <li class="md-nav__item md-nav__item--active">
    
    <input class="md-toggle md-nav__toggle" data-md-toggle="toc" type="checkbox" id="__toc">
    
      
    
    
      <label class="md-nav__link md-nav__link--active" for="__toc">
        Examples (XMI)
      </label>
    
    <a href="./" title="Examples (XMI)" class="md-nav__link md-nav__link--active">
      Examples (XMI)
    </a>
    
      
<nav class="md-nav md-nav--secondary">
  
  
    
  
  
    <label class="md-nav__title" for="__toc">Table of contents</label>
    <ul class="md-nav__list" data-md-scrollfix>
      
        <li class="md-nav__item">
  <a href="#all-instances-of-a-type" class="md-nav__link">
    All instances of a type
  </a>
  
</li>
      
        <li class="md-nav__item">
  <a href="#reference-slots-in-a-type" class="md-nav__link">
    Reference slots in a type
  </a>
  
</li>
      
        <li class="md-nav__item">
  <a href="#reference-traversal" class="md-nav__link">
    Reference traversal
  </a>
  
</li>
      
        <li class="md-nav__item">
  <a href="#reverse-reference-traversal" class="md-nav__link">
    Reverse reference traversal
  </a>
  
</li>
      
        <li class="md-nav__item">
  <a href="#range-queries-with-indexed-or-derived-integer-attributes" class="md-nav__link">
    Range queries with indexed or derived integer attributes
  </a>
  
</li>
      
        <li class="md-nav__item">
  <a href="#advanced-example-loops-variables-and-custom-operations" class="md-nav__link">
    Advanced example: loops, variables and custom operations
  </a>
  
</li>
      
      
      
      
      
    </ul>
  
</nav>
    
  </li>

        
          
          
          


  <li class="md-nav__item">
    <a href="../examples-modelio/" title="Examples (Modelio)" class="md-nav__link">
      Examples (Modelio)
    </a>
  </li>

        
          
          
          


  <li class="md-nav__item">
    <a href="../papyrus/" title="Papyrus UML support" class="md-nav__link">
      Papyrus UML support
    </a>
  </li>

        
      </ul>
    </nav>
  </li>

    
      
      
      


  <li class="md-nav__item md-nav__item--nested">
    
      <input class="md-toggle md-nav__toggle" data-md-toggle="nav-3" type="checkbox" id="nav-3">
    
    <label class="md-nav__link" for="nav-3">
      Advanced use
    </label>
    <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
      <label class="md-nav__title" for="nav-3">
        Advanced use
      </label>
      <ul class="md-nav__list" data-md-scrollfix>
        
        
          
          
          


  <li class="md-nav__item">
    <a href="../../advanced-use/graph-as-emf/" title="Graph as EMF model" class="md-nav__link">
      Graph as EMF model
    </a>
  </li>

        
          
          
          


  <li class="md-nav__item">
    <a href="../../advanced-use/advanced-props/" title="Advanced properties" class="md-nav__link">
      Advanced properties
    </a>
  </li>

        
          
          
          


  <li class="md-nav__item">
    <a href="../../advanced-use/meta-queries/" title="Meta-level queries" class="md-nav__link">
      Meta-level queries
    </a>
  </li>

        
          
          
          


  <li class="md-nav__item">
    <a href="../../advanced-use/temporal-queries/" title="Temporal queries" class="md-nav__link">
      Temporal queries
    </a>
  </li>

        
          
          
          


  <li class="md-nav__item">
    <a href="../../advanced-use/oomph/" title="Oomph and Hawk" class="md-nav__link">
      Oomph and Hawk
    </a>
  </li>

        
      </ul>
    </nav>
  </li>

    
      
      
      


  <li class="md-nav__item md-nav__item--nested">
    
      <input class="md-toggle md-nav__toggle" data-md-toggle="nav-4" type="checkbox" id="nav-4">
    
    <label class="md-nav__link" for="nav-4">
      Server
    </label>
    <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
      <label class="md-nav__title" for="nav-4">
        Server
      </label>
      <ul class="md-nav__list" data-md-scrollfix>
        
        
          
          
          


  <li class="md-nav__item">
    <a href="../../server/architecture/" title="Architecture" class="md-nav__link">
      Architecture
    </a>
  </li>

        
          
          
          


  <li class="md-nav__item">
    <a href="../../server/api/" title="Thrift API" class="md-nav__link">
      Thrift API
    </a>
  </li>

        
          
          
          


  <li class="md-nav__item">
    <a href="../../server/api-security/" title="Thrift API security" class="md-nav__link">
      Thrift API security
    </a>
  </li>

        
          
          
          


  <li class="md-nav__item">
    <a href="../../server/deployment/" title="Deployment" class="md-nav__link">
      Deployment
    </a>
  </li>

        
          
          
          


  <li class="md-nav__item">
    <a href="../../server/cli/" title="Console client" class="md-nav__link">
      Console client
    </a>
  </li>

        
          
          
          


  <li class="md-nav__item">
    <a href="../../server/eclipse/" title="Eclipse client" class="md-nav__link">
      Eclipse client
    </a>
  </li>

        
          
          
          


  <li class="md-nav__item">
    <a href="../../server/file-config/" title="File-based configuration" class="md-nav__link">
      File-based configuration
    </a>
  </li>

        
          
          
          


  <li class="md-nav__item">
    <a href="../../server/logging/" title="Logging" class="md-nav__link">
      Logging
    </a>
  </li>

        
      </ul>
    </nav>
  </li>

    
      
      
      


  <li class="md-nav__item md-nav__item--nested">
    
      <input class="md-toggle md-nav__toggle" data-md-toggle="nav-5" type="checkbox" id="nav-5">
    
    <label class="md-nav__link" for="nav-5">
      Developers
    </label>
    <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
      <label class="md-nav__title" for="nav-5">
        Developers
      </label>
      <ul class="md-nav__list" data-md-scrollfix>
        
        
          
          
          


  <li class="md-nav__item">
    <a href="../../developers/run-from-source/" title="Run GUI from source" class="md-nav__link">
      Run GUI from source
    </a>
  </li>

        
          
          
          


  <li class="md-nav__item">
    <a href="../../developers/server-from-source/" title="Run Server from source" class="md-nav__link">
      Run Server from source
    </a>
  </li>

        
          
          
          


  <li class="md-nav__item">
    <a href="../../developers/plain-maven/" title="Build with plain Maven" class="md-nav__link">
      Build with plain Maven
    </a>
  </li>

        
          
          
          


  <li class="md-nav__item">
    <a href="../../developers/website/" title="Work on the website" class="md-nav__link">
      Work on the website
    </a>
  </li>

        
      </ul>
    </nav>
  </li>

    
      
      
      


  <li class="md-nav__item md-nav__item--nested">
    
      <input class="md-toggle md-nav__toggle" data-md-toggle="nav-6" type="checkbox" id="nav-6">
    
    <label class="md-nav__link" for="nav-6">
      Community
    </label>
    <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
      <label class="md-nav__title" for="nav-6">
        Community
      </label>
      <ul class="md-nav__list" data-md-scrollfix>
        
        
          
          
          


  <li class="md-nav__item">
    <a href="https://www.eclipse.org/forums/index.php/f/442/" title="Forum" class="md-nav__link">
      Forum
    </a>
  </li>

        
          
          
          


  <li class="md-nav__item">
    <a href="https://gitlab.eclipse.org/eclipse/hawk/hawk/-/issues/new" title="File a bug" class="md-nav__link">
      File a bug
    </a>
  </li>

        
          
          
          


  <li class="md-nav__item">
    <a href="https://gitlab.eclipse.org/eclipse/hawk/hawk/-/issues" title="Open bugs" class="md-nav__link">
      Open bugs
    </a>
  </li>

        
          
          
          


  <li class="md-nav__item">
    <a href="https://ci.eclipse.org/hawk/" title="Builds" class="md-nav__link">
      Builds
    </a>
  </li>

        
      </ul>
    </nav>
  </li>

    
      
      
      


  <li class="md-nav__item">
    <a href="../../additional-resources/" title="Additional resources" class="md-nav__link">
      Additional resources
    </a>
  </li>

    
  </ul>
</nav>
                  </div>
                </div>
              </div>
            
            
              <div class="md-sidebar md-sidebar--secondary" data-md-component="toc">
                <div class="md-sidebar__scrollwrap">
                  <div class="md-sidebar__inner">
                    
<nav class="md-nav md-nav--secondary">
  
  
    
  
  
    <label class="md-nav__title" for="__toc">Table of contents</label>
    <ul class="md-nav__list" data-md-scrollfix>
      
        <li class="md-nav__item">
  <a href="#all-instances-of-a-type" class="md-nav__link">
    All instances of a type
  </a>
  
</li>
      
        <li class="md-nav__item">
  <a href="#reference-slots-in-a-type" class="md-nav__link">
    Reference slots in a type
  </a>
  
</li>
      
        <li class="md-nav__item">
  <a href="#reference-traversal" class="md-nav__link">
    Reference traversal
  </a>
  
</li>
      
        <li class="md-nav__item">
  <a href="#reverse-reference-traversal" class="md-nav__link">
    Reverse reference traversal
  </a>
  
</li>
      
        <li class="md-nav__item">
  <a href="#range-queries-with-indexed-or-derived-integer-attributes" class="md-nav__link">
    Range queries with indexed or derived integer attributes
  </a>
  
</li>
      
        <li class="md-nav__item">
  <a href="#advanced-example-loops-variables-and-custom-operations" class="md-nav__link">
    Advanced example: loops, variables and custom operations
  </a>
  
</li>
      
      
      
      
      
    </ul>
  
</nav>
                  </div>
                </div>
              </div>
            
          
          <div class="md-content">
            <article class="md-content__inner md-typeset">
              
                
                
                <h1 id="example-queries-on-xmi-models">Example queries on XMI models<a class="headerlink" href="#example-queries-on-xmi-models" title="Permanent link">&para;</a></h1>
<p>These are some sample queries that can be done on any set of indexed XMI-based UML models, assuming that <code>Class::name</code> has been added as an indexed attribute and <code>Class::ownedOperationCount</code> has been defined as a derived attribute (as showed in [[Basic concepts and usage]]). All the queries are written in the <a href="http://www.eclipse.org/epsilon/doc/eol/">Epsilon Object Language</a>.</p>
<p>In order to index XMI-based UML models, you only need to enable the <code>UMLMetaModelResourceFactory</code> and <code>UMLModelResourceFactory</code> plugins when you create a new Hawk instance, and ensure your files have the <code>.uml</code> extension. If you are using any predefined UML data types, you may also want to add a <code>PredefinedUMLLibraries</code> location inside "Indexed Locations": that will integrate those predefined objects into the Hawk graph, allowing you to reference them on queries.</p>
<p>The rest of this article will run on <a href="https://raw.githubusercontent.com/mondo-project/mondo-hawk/gh-pages/examples/models/zoo/zoo.xmi">this toy XMI-based UML file</a>, which was exported from <a href="https://github.com/mondo-project/mondo-hawk/raw/gh-pages/examples/models/zoo/Zoo.modelio.zip">this Modelio 3.2.1 project</a>:</p>
<p><img alt="Example UML model" src="../img/zoo-classes.png" /></p>
<p>To avoid ambiguity in type names, the default namespaces list in the query dialog should include the UML metamodel URI (<code>http://www.eclipse.org/uml2/5.0.0/UML</code> for the above <code>UML.ecore</code> file).</p>
<h2 id="all-instances-of-a-type">All instances of a type<a class="headerlink" href="#all-instances-of-a-type" title="Permanent link">&para;</a></h2>
<div class="codehilite"><pre><span></span><code>return Class.all.size;
</code></pre></div>

<p>Returns the total number of classes within the specified scope. If you leave "Context Files" empty, it'll count all the classes in all the projects. If you put "*OSS.modelio.zip" in "Context Files", it'll count only the classes within the OSS project. This is faster than going through the model because we can go to the Class node and then simply count all the incoming edges with label "ofType".</p>
<p><img alt="Query result" src="../img/query01_all-instances.png" /></p>
<h2 id="reference-slots-in-a-type">Reference slots in a type<a class="headerlink" href="#reference-slots-in-a-type" title="Permanent link">&para;</a></h2>
<div class="codehilite"><pre><span></span><code>return Model.types.select(t|t.name=&#39;Class&#39;).references;
</code></pre></div>

<p>Gives you all the reference slots in the UML "Class" type. This is an example of the queries that can be performed at the "meta" level: more details are available in [[Meta level queries in Hawk]]. The query dialog with the result would look like this:</p>
<p><img alt="Query result" src="../img/query02_refslots.png" /></p>
<h2 id="reference-traversal">Reference traversal<a class="headerlink" href="#reference-traversal" title="Permanent link">&para;</a></h2>
<div class="codehilite"><pre><span></span><code>return Class.all
  .select(c|c.qualifiedName=&#39;zoo::Zebra&#39;)
  .superClass.flatten.name;
</code></pre></div>

<p>Gives you the names of all the superclasses of class <code>Zebra</code> within model <code>zoo</code>.</p>
<p><img alt="Query result" src="../img/query03_reftraversal.png" /></p>
<h2 id="reverse-reference-traversal">Reverse reference traversal<a class="headerlink" href="#reverse-reference-traversal" title="Permanent link">&para;</a></h2>
<div class="codehilite"><pre><span></span><code>return Class.all
  .select(c|c.qualifiedName=&#39;zoo::Animal&#39;)
  .revRefNav_superClass.flatten.name;
</code></pre></div>

<p>Gives the names of all the <em>sub</em>classes of <code>Animal</code> (follows "superClass" in reverse). The UML metamodel doesn't have "subclass" links, but we can use Hawk's automatic support for reverse traversal of references. In general, if <code>x.e</code> is a reference, we can follow it in reverse with <code>x.revRefNav_e</code>. We can also access containers using <code>x.eContainer</code>.</p>
<p><img alt="Query result" src="../img/query04_reversetraversal.png" /></p>
<h2 id="range-queries-with-indexed-or-derived-integer-attributes">Range queries with indexed or derived integer attributes<a class="headerlink" href="#range-queries-with-indexed-or-derived-integer-attributes" title="Permanent link">&para;</a></h2>
<div class="codehilite"><pre><span></span><code>return Class.all.select(c|c.ownedOperationCount &gt; 0).name;
</code></pre></div>

<p>Finds the names of the classes with at least one operation of their own.</p>
<p><img alt="Query result" src="../img/query05_rangequeries.png" /></p>
<h2 id="advanced-example-loops-variables-and-custom-operations">Advanced example: loops, variables and custom operations<a class="headerlink" href="#advanced-example-loops-variables-and-custom-operations" title="Permanent link">&para;</a></h2>
<div class="codehilite"><pre><span></span><code>var counts = Sequence {};
var i = 0;
var n = count(0);
while (n &gt; 0) {
  counts.add(Sequence {&quot;&gt;&quot; + i, n});
  i = i + 1;
  n = count(i);
}

return counts;

operation count(n) {
  return Class.all.select(c|c.ownedOperationCount &gt; n).size;
}
</code></pre></div>

<p><img alt="Query result" src="../img/query06_advanced.png" /></p>
<p>This query produces a sequence of <code>&gt;x, y</code> pairs which indicate that <code>y</code> classes have more than <code>x</code> operations of their own.</p>
                
                  
                
              
              
                


              
            </article>
          </div>
        </div>
      </main>
      
        
<footer class="md-footer">
  
    <div class="md-footer-nav">
      <nav class="md-footer-nav__inner md-grid">
        
          <a href="../core-concepts/" title="Core concepts" class="md-flex md-footer-nav__link md-footer-nav__link--prev" rel="prev">
            <div class="md-flex__cell md-flex__cell--shrink">
              <i class="md-icon md-icon--arrow-back md-footer-nav__button"></i>
            </div>
            <div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title">
              <span class="md-flex__ellipsis">
                <span class="md-footer-nav__direction">
                  Previous
                </span>
                Core concepts
              </span>
            </div>
          </a>
        
        
          <a href="../examples-modelio/" title="Examples (Modelio)" class="md-flex md-footer-nav__link md-footer-nav__link--next" rel="next">
            <div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title">
              <span class="md-flex__ellipsis">
                <span class="md-footer-nav__direction">
                  Next
                </span>
                Examples (Modelio)
              </span>
            </div>
            <div class="md-flex__cell md-flex__cell--shrink">
              <i class="md-icon md-icon--arrow-forward md-footer-nav__button"></i>
            </div>
          </a>
        
      </nav>
    </div>
  
  <div class="md-footer-meta md-typeset">
    <div class="md-footer-meta__inner md-grid">
      <div class="md-footer-copyright">
        
          <div class="md-footer-copyright__highlight">
            Copyright © Eclipse Foundation, Inc. All Rights Reserved.
          </div>
        
        powered by
        <a href="https://www.mkdocs.org">MkDocs</a>
        and
        <a href="https://squidfunk.github.io/mkdocs-material/">Material for MkDocs</a>
      </div>
      <div class="md-footer-copyright hawk-eclipse-links">
          <ul>
              <li><a href="https://www.eclipse.org/legal/privacy.php">Privacy Policy</a></li>
              <li><a href="https://www.eclipse.org/legal/termsofuse.php">Terms of Use</a></li>
              <li><a href="https://www.eclipse.org/legal/copyright.php">Copyright Agent</a></li>
          </ul>
      </div>
      
    </div>
  </div>
</footer>
      
    </div>
    
      <script src="../../assets/javascripts/application.c648116f.js"></script>
      
      <script>app.initialize({version:"1.0.4",url:{base:"../.."}})</script>
      
    
  </body>
</html>