<?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://predictionio.apache.org/">
    <created>2016-05-26</created>
    <license rdf:resource="http://spdx.org/licenses/Apache-2.0" />
    <name>Apache PredictionIO</name>
    <homepage rdf:resource="http://predictionio.apache.org/" />
    <asfext:pmc rdf:resource="http://apache.org" />
    <shortdesc>PredictionIO is an open source Machine Learning Server built on top of state-of-the-art open source stack, that enables developers to manage and deploy production-ready predictive services for various kinds of machine learning tasks.</shortdesc>
    <description>PredictionIO is an open source Machine Learning Server built on top of state-of-the-art open source stack, that enables developers to manage and deploy production-ready predictive services for various kinds of machine learning tasks.</description>
    <bug-database rdf:resource="https://issues.apache.org/jira/browse/PIO" />
    <mailing-list rdf:resource="http://predictionio.apache.org/support/" />
    <programming-language>Scala</programming-language>
    <category rdf:resource="http://projects.apache.org/category/big-data" />
    <repository>
      <GitRepository>
        <location rdf:resource="https://git-wip-us.apache.org/repos/asf/predictionio.git"/>
        <browse rdf:resource="https://git-wip-us.apache.org/repos/asf/predictionio.git"/>
      </GitRepository>
    </repository>
    <maintainer>
      <foaf:Person>
        <foaf:name>Donald Szeto</foaf:name>
          <foaf:mbox rdf:resource="mailto:donald@apache.org"/>
      </foaf:Person>
    </maintainer>
  </Project>
</rdf:RDF>
