<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl"?>
<rdf:RDF xml:lang="en"
         xmlns="http://usefulinc.com/ns/doap#"
         xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
         xmlns:asfext="http://projects.apache.org/ns/asfext#"
         xmlns:foaf="http://xmlns.com/foaf/0.1/">
<!--
    Licensed to the Apache Software Foundation (ASF) under one or more
    contributor license agreements.  See the NOTICE file distributed with
    this work for additional information regarding copyright ownership.
    The ASF licenses this file to You under the Apache License, Version 2.0
    (the "License"); you may not use this file except in compliance with
    the License.  You may obtain a copy of the License at

         http://www.apache.org/licenses/LICENSE-2.0

    Unless required by applicable law or agreed to in writing, software
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
    limitations under the License.
-->
  <Project rdf:about="http://mesos.apache.org">
    <created>2014-06-19</created>
    <license rdf:resource="http://spdx.org/licenses/Apache-2.0" />
    <name>Apache Mesos</name>
    <homepage rdf:resource="http://mesos.apache.org" />
    <asfext:pmc rdf:resource="http://mesos.apache.org" />
    <shortdesc>Apache Mesos is a cluster manager that provides efficient resource isolation
and sharing across distributed applications, or frameworks.</shortdesc>
    <description>Apache Mesos is a cluster manager that provides efficient resource isolation
and sharing across distributed applications, or frameworks. It can run Hadoop,
MPI, Hypertable, Spark, and other frameworks on a dynamically shared pool of
nodes.
</description>
    <bug-database rdf:resource="https://issues.apache.org/jira/browse/MESOS" />
    <mailing-list rdf:resource="http://mesos.apache.org/community/" />
    <download-page rdf:resource="http://mesos.apache.org/downloads/" />
    <programming-language>C++</programming-language>
    <category rdf:resource="http://projects.apache.org/category/cloud" />
    <release>
      <Version>
        <name>Mesos 0.19.0</name>
        <created>2014-06-09</created>
        <revision>0.19.0</revision>
      </Version>
    </release>
    <repository>
      <SVNRepository>
        <location rdf:resource="http://svn.apache.org/repos/asf/mesos/trunk/"/>
        <browse rdf:resource="http://svn.apache.org/repos/asf/mesos/trunk/"/>
      </SVNRepository>
    </repository>
    <maintainer>
      <foaf:Person>
        <foaf:name>Benjamin Hindman</foaf:name>
          <foaf:mbox rdf:resource="mailto:benjamin.hindman@gmail.com"/>
      </foaf:Person>
    </maintainer>
  </Project>
</rdf:RDF>
